Changeset 860 for vendor/current/source3/lib/serverid.c
- Timestamp:
- May 12, 2014, 8:58:38 PM (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
vendor/current/source3/lib/serverid.c
r746 r860 35 35 }; 36 36 37 static struct db_context *db_ptr = NULL; 38 39 static struct db_context *serverid_init(TALLOC_CTX *mem_ctx, 40 bool readonly) 41 { 42 db_ptr = db_open(mem_ctx, lock_path("serverid.tdb"), 43 0, TDB_DEFAULT|TDB_CLEAR_IF_FIRST|TDB_INCOMPATIBLE_HASH, 44 readonly ? O_RDONLY : O_RDWR | O_CREAT, 45 0644); 46 return db_ptr; 47 } 48 37 49 bool serverid_parent_init(TALLOC_CTX *mem_ctx) 38 50 { 39 struct tdb_wrap *db;40 41 51 /* 42 52 * Open the tdb in the parent process (smbd) so that our … … 45 55 */ 46 56 47 db = tdb_wrap_open(mem_ctx, lock_path("serverid.tdb"), 48 0, TDB_DEFAULT|TDB_CLEAR_IF_FIRST|TDB_INCOMPATIBLE_HASH, O_RDWR|O_CREAT, 49 0644); 50 if (db == NULL) { 57 if (serverid_init(mem_ctx, false) == NULL) { 51 58 DEBUG(1, ("could not open serverid.tdb: %s\n", 52 59 strerror(errno))); 53 60 return false; 54 61 } 62 55 63 return true; 56 64 } 57 65 66 bool serverid_init_readonly(TALLOC_CTX *mem_ctx) 67 { 68 if (serverid_init(mem_ctx, true) == NULL) { 69 DEBUG(1, ("could not open serverid.tdb: %s\n", 70 strerror(errno))); 71 return false; 72 } 73 74 return true; 75 } 76 58 77 static struct db_context *serverid_db(void) 59 78 { 60 static struct db_context *db; 61 62 if (db != NULL) { 63 return db; 64 } 65 db = db_open(NULL, lock_path("serverid.tdb"), 0, 66 TDB_DEFAULT|TDB_CLEAR_IF_FIRST|TDB_INCOMPATIBLE_HASH, O_RDWR|O_CREAT, 0644); 67 return db; 79 if (db_ptr != NULL) { 80 return db_ptr; 81 } 82 83 return serverid_init(NULL, false); 68 84 } 69 85
Note:
See TracChangeset
for help on using the changeset viewer.