diff options
-rw-r--r-- | source3/include/proto.h | 2 | ||||
-rw-r--r-- | source3/smbd/notify_internal.c | 7 | ||||
-rw-r--r-- | source3/smbd/server.c | 2 |
3 files changed, 5 insertions, 6 deletions
diff --git a/source3/include/proto.h b/source3/include/proto.h index 1687186268..1aefe66ce8 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -4949,7 +4949,7 @@ struct notify_context *notify_init(TALLOC_CTX *mem_ctx, struct server_id server, struct messaging_context *messaging_ctx, struct event_context *ev, connection_struct *conn); -bool notify_internal_parent_init(void); +bool notify_internal_parent_init(TALLOC_CTX *mem_ctx); NTSTATUS notify_add(struct notify_context *notify, struct notify_entry *e0, void (*callback)(void *, const struct notify_event *), void *private_data); diff --git a/source3/smbd/notify_internal.c b/source3/smbd/notify_internal.c index d1475d2f7a..1dc10bbab5 100644 --- a/source3/smbd/notify_internal.c +++ b/source3/smbd/notify_internal.c @@ -130,7 +130,7 @@ struct notify_context *notify_init(TALLOC_CTX *mem_ctx, struct server_id server, return notify; } -bool notify_internal_parent_init(void) +bool notify_internal_parent_init(TALLOC_CTX *mem_ctx) { struct tdb_wrap *db1, *db2; @@ -144,15 +144,14 @@ bool notify_internal_parent_init(void) * work. */ - db1 = tdb_wrap_open(talloc_autofree_context(), lock_path("notify.tdb"), + db1 = tdb_wrap_open(mem_ctx, lock_path("notify.tdb"), 0, TDB_SEQNUM|TDB_CLEAR_IF_FIRST, O_RDWR|O_CREAT, 0644); if (db1 == NULL) { DEBUG(1, ("could not open notify.tdb: %s\n", strerror(errno))); return false; } - db2 = tdb_wrap_open(talloc_autofree_context(), - lock_path("notify_onelevel.tdb"), + db2 = tdb_wrap_open(mem_ctx, lock_path("notify_onelevel.tdb"), 0, TDB_CLEAR_IF_FIRST, O_RDWR|O_CREAT, 0644); if (db2 == NULL) { DEBUG(1, ("could not open notify_onelevel.tdb: %s\n", diff --git a/source3/smbd/server.c b/source3/smbd/server.c index 2322d1fb4e..6cc7907cbb 100644 --- a/source3/smbd/server.c +++ b/source3/smbd/server.c @@ -1130,7 +1130,7 @@ extern void build_options(bool screen); exit(1); } - if (!notify_internal_parent_init()) { + if (!notify_internal_parent_init(smbd_event_context())) { exit(1); } |