]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/slap.h
Plug mutex/rwlock leaks (destroy them)
[openldap] / servers / slapd / slap.h
index b8147826091f9aca6b555614c25e590d7644aa26..a85a939c9b9335324710e816f579c39bbf112ca3 100644 (file)
@@ -421,6 +421,7 @@ struct Syntax {
 #define SLAP_SYNTAX_HIDE       0x8000U /* hide (do not publish) */
 #endif
 #define        SLAP_SYNTAX_HARDCODE    0x10000U        /* This is hardcoded schema */
+#define        SLAP_SYNTAX_DN          0x20000U        /* Treat like a DN */
 
        Syntax                          **ssyn_sups;
 
@@ -1285,7 +1286,9 @@ typedef enum slap_style_e {
        ACL_STYLE_SELF,
        ACL_STYLE_IP,
        ACL_STYLE_IPV6,
-       ACL_STYLE_PATH
+       ACL_STYLE_PATH,
+
+       ACL_STYLE_NONE
 } slap_style_t;
 
 typedef struct AuthorizationInformation {
@@ -1540,6 +1543,7 @@ typedef struct AccessControlState {
 
        /* Value dependent acl where processing can restart */
        AccessControl  *as_vd_acl;
+       int as_vd_acl_present;
        int as_vd_acl_count;
        slap_mask_t             as_vd_mask;
 
@@ -1550,7 +1554,7 @@ typedef struct AccessControlState {
        /* True if started to process frontend ACLs */
        int as_fe_done;
 } AccessControlState;
-#define ACL_STATE_INIT { NULL, ACL_NONE, NULL, 0, ACL_PRIV_NONE, -1, 0 }
+#define ACL_STATE_INIT { NULL, ACL_NONE, NULL, 0, 0, ACL_PRIV_NONE, -1, 0 }
 
 typedef struct AclRegexMatches {        
        int dn_count;
@@ -1584,12 +1588,19 @@ LDAP_SLAPD_V (int) slapMode;
 #define        SLAP_TOOL_READONLY      0x0400
 #define        SLAP_TOOL_QUICK         0x0800
 #define SLAP_TOOL_NO_SCHEMA_CHECK      0x1000
+#define SLAP_TOOL_VALUE_CHECK  0x2000
 
 #define SB_TLS_DEFAULT         (-1)
 #define SB_TLS_OFF             0
 #define SB_TLS_ON              1
 #define SB_TLS_CRITICAL                2
 
+typedef struct slap_keepalive {
+       int sk_idle;
+       int sk_probes;
+       int sk_interval;
+} slap_keepalive;
+
 typedef struct slap_bindconf {
        struct berval sb_uri;
        int sb_version;
@@ -1604,6 +1615,7 @@ typedef struct slap_bindconf {
        struct berval sb_realm;
        struct berval sb_authcId;
        struct berval sb_authzId;
+       slap_keepalive sb_keepalive;
 #ifdef HAVE_TLS
        void *sb_tls_ctx;
        char *sb_tls_cert;