summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/include/proto.h2
-rw-r--r--source3/smbd/notify_internal.c7
-rw-r--r--source3/smbd/server.c2
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);
}