]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/config.c
userPassword/authPassword can be safely subtyped (though I wouldn't
[openldap] / servers / slapd / config.c
index 23a4599f06db5cd63229b62a8b70530d4ba89b56..d89f9cb21b395cc0b5b23678346ec0156a04ab83 100644 (file)
@@ -11,6 +11,7 @@
 
 #include <ac/string.h>
 #include <ac/ctype.h>
+#include <ac/signal.h>
 #include <ac/socket.h>
 #include <ac/errno.h>
 
@@ -40,6 +41,7 @@ slap_mask_t           global_disallows = 0;
 slap_mask_t            global_requires = 0;
 slap_ssf_set_t global_ssf_set;
 char           *replogfile;
+int            global_gentlehup = 0;
 int            global_idletimeout = 0;
 char   *global_host = NULL;
 char   *global_realm = NULL;
@@ -1651,7 +1653,6 @@ read_config( const char *fname )
                                       "%s: line %d: old objectclass format not supported.\n",
                                       fname, lineno, 0 );
 #endif
-
                        }
 
                /* specify an attribute type */
@@ -2039,6 +2040,22 @@ read_config( const char *fname )
                                }
                        }
 
+#ifdef SIGHUP
+               /* turn on/off gentle SIGHUP handling */
+               } else if ( strcasecmp( cargv[0], "gentlehup" ) == 0 ) {
+                       if ( cargc < 2 ) {
+                               Debug( LDAP_DEBUG_ANY,
+    "%s: line %d: missing on|off in \"gentlehup <on|off>\" line\n",
+                                   fname, lineno, 0 );
+                               return( 1 );
+                       }
+                       if ( strcasecmp( cargv[1], "off" ) == 0 ) {
+                               global_gentlehup = 0;
+                       } else {
+                               global_gentlehup = 1;
+                       }
+#endif
+
                /* set idle timeout value */
                } else if ( strcasecmp( cargv[0], "idletimeout" ) == 0 ) {
                        int i;