Added "kernel change notify" boolean to allow easier valgrind testing.
authorJeremy Allison <jra@samba.org>
Thu, 12 Dec 2002 02:01:53 +0000 (02:01 +0000)
committerJeremy Allison <jra@samba.org>
Thu, 12 Dec 2002 02:01:53 +0000 (02:01 +0000)
Jeremy.
(This used to be commit ac856fbb96e5ed21992972805b27cc8c3f9377df)

source3/param/loadparm.c
source3/smbd/notify.c

index 101e8e7ad14d6e524516b55c0154b481755895a2..009a94ff7f2e70c753f47366e9c9dcb85d61ad24 100644 (file)
@@ -272,6 +272,7 @@ typedef struct
        BOOL bUseSpnego;
        BOOL bUnixExtensions;
        BOOL bDisableNetbios;
+       BOOL bKernelChangeNotify;
        int restrict_anonymous;
        int name_cache_timeout;
        param_opt_struct *param_opt;
@@ -864,6 +865,7 @@ static struct parm_struct parm_table[] = {
        {"deadtime", P_INTEGER, P_GLOBAL, &Globals.deadtime, NULL, NULL, FLAG_DEVELOPER},
        {"getwd cache", P_BOOL, P_GLOBAL, &use_getwd_cache, NULL, NULL, FLAG_DEVELOPER},
        {"keepalive", P_INTEGER, P_GLOBAL, &keepalive, NULL, NULL, FLAG_ADVANCED | FLAG_DEVELOPER},
+       {"kernel change notify", P_BOOL, P_GLOBAL, &Globals.bKernelChangeNotify, NULL, NULL, FLAG_DEVELOPER},
        
        {"lpq cache time", P_INTEGER, P_GLOBAL, &Globals.lpqcachetime, NULL, NULL, FLAG_DEVELOPER},
        {"max smbd processes", P_INTEGER, P_GLOBAL, &Globals.iMaxSmbdProcesses, NULL, NULL, FLAG_DEVELOPER},
@@ -1335,6 +1337,7 @@ static void init_globals(void)
        Globals.min_wins_ttl = 60 * 60 * 6;     /* 6 hours default. */
        Globals.machine_password_timeout = 60 * 60 * 24 * 7;    /* 7 days default. */
        Globals.change_notify_timeout = 60;     /* 1 minute default. */
+       Globals.bKernelChangeNotify = True;     /* On if we have it. */
        Globals.ReadSize = 16 * 1024;
        Globals.lm_announce = 2;        /* = Auto: send only if LM clients found */
        Globals.lm_interval = 60;
@@ -1667,6 +1670,7 @@ FN_GLOBAL_BOOL(lp_use_mmap, &Globals.bUseMmap)
 FN_GLOBAL_BOOL(lp_unix_extensions, &Globals.bUnixExtensions)
 FN_GLOBAL_BOOL(lp_use_spnego, &Globals.bUseSpnego)
 FN_GLOBAL_BOOL(lp_hostname_lookups, &Globals.bHostnameLookups)
+FN_GLOBAL_BOOL(lp_kernel_change_notify, &Globals.bKernelChangeNotify)
 FN_GLOBAL_INTEGER(lp_os_level, &Globals.os_level)
 FN_GLOBAL_INTEGER(lp_max_ttl, &Globals.max_ttl)
 FN_GLOBAL_INTEGER(lp_max_wins_ttl, &Globals.max_wins_ttl)
index 0895ddaf8789bf2d01cec9824126c25e7146111b..de1b3317780dee3f360961b620fda0c23e71d24a 100644 (file)
@@ -207,7 +207,8 @@ BOOL change_notify_set(char *inbuf, files_struct *fsp, connection_struct *conn,
 BOOL init_change_notify(void)
 {
 #if HAVE_KERNEL_CHANGE_NOTIFY
-       cnotify = kernel_notify_init();
+       if (lp_kernel_change_notify())
+               cnotify = kernel_notify_init();
 #endif
        if (!cnotify) cnotify = hash_notify_init();