summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/smbd/notify_internal.c7
-rw-r--r--source3/smbd/proto.h3
-rw-r--r--source3/smbd/service.c6
3 files changed, 5 insertions, 11 deletions
diff --git a/source3/smbd/notify_internal.c b/source3/smbd/notify_internal.c
index c600c30457..63b7865b13 100644
--- a/source3/smbd/notify_internal.c
+++ b/source3/smbd/notify_internal.c
@@ -86,15 +86,10 @@ static int notify_destructor(struct notify_context *notify)
*/
struct notify_context *notify_init(TALLOC_CTX *mem_ctx,
struct messaging_context *messaging_ctx,
- struct event_context *ev,
- connection_struct *conn)
+ struct event_context *ev)
{
struct notify_context *notify;
- if (!lp_change_notify(conn->params)) {
- return NULL;
- }
-
notify = talloc(mem_ctx, struct notify_context);
if (notify == NULL) {
return NULL;
diff --git a/source3/smbd/proto.h b/source3/smbd/proto.h
index fe09d0221e..ee91e9453d 100644
--- a/source3/smbd/proto.h
+++ b/source3/smbd/proto.h
@@ -545,8 +545,7 @@ NTSTATUS inotify_watch(struct sys_notify_context *ctx,
struct notify_context *notify_init(TALLOC_CTX *mem_ctx,
struct messaging_context *messaging_ctx,
- struct event_context *ev,
- connection_struct *conn);
+ struct event_context *ev);
bool notify_internal_parent_init(TALLOC_CTX *mem_ctx);
NTSTATUS notify_add(struct notify_context *notify, connection_struct *conn,
struct notify_entry *e0,
diff --git a/source3/smbd/service.c b/source3/smbd/service.c
index a78fa2921f..79e935d5d2 100644
--- a/source3/smbd/service.c
+++ b/source3/smbd/service.c
@@ -697,11 +697,11 @@ static NTSTATUS make_connection_snum(struct smbd_server_connection *sconn,
/* Any error exit after here needs to call the disconnect hook. */
on_err_call_dis_hook = true;
- if ((!conn->printer) && (!conn->ipc)) {
+ if ((!conn->printer) && (!conn->ipc) &&
+ lp_change_notify(conn->params)) {
conn->notify_ctx = notify_init(conn,
sconn->msg_ctx,
- sconn->ev_ctx,
- conn);
+ sconn->ev_ctx);
}
/*