Diff for /servers/slapd/slap.h between versions 1.452.2.16 and 1.452.2.24

version 1.452.2.16, 2004/04/12 18:20:12 version 1.452.2.24, 2004/08/30 17:47:12
Line 1 Line 1
 /* slap.h - stand alone ldap server include file */  /* slap.h - stand alone ldap server include file */
 /* $OpenLDAP: pkg/ldap/servers/slapd/slap.h,v 1.452.2.15 2004/04/06 18:16:01 kurt Exp $ */  /* $OpenLDAP: pkg/ldap/servers/slapd/slap.h,v 1.452.2.23 2004/07/16 19:32:01 kurt Exp $ */
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.  /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *   *
  * Copyright 1998-2004 The OpenLDAP Foundation.   * Copyright 1998-2004 The OpenLDAP Foundation.
Line 133  LDAP_BEGIN_DECL Line 133  LDAP_BEGIN_DECL
         || (c) == '(' || (c) == ')' || !ASCII_PRINTABLE(c) )          || (c) == '(' || (c) == ')' || !ASCII_PRINTABLE(c) )
   
 #define DN_ESCAPE(c)    ((c) == SLAP_ESCAPE_CHAR)  #define DN_ESCAPE(c)    ((c) == SLAP_ESCAPE_CHAR)
 #define DN_SEPARATOR(c) ((c) == ',' || (c) == ';')  /* NOTE: for consistency, this macro must only operate
    * on normalized/pretty DN, such that ';' is never used
    * as RDN separator, and all occurrences of ';' must be escaped */
   #define DN_SEPARATOR(c) ((c) == ',')
 #define RDN_ATTRTYPEANDVALUE_SEPARATOR(c) ((c) == '+') /* RFC 2253 */  #define RDN_ATTRTYPEANDVALUE_SEPARATOR(c) ((c) == '+') /* RFC 2253 */
 #define RDN_SEPARATOR(c) (DN_SEPARATOR(c) || RDN_ATTRTYPEANDVALUE_SEPARATOR(c))  #define RDN_SEPARATOR(c) (DN_SEPARATOR(c) || RDN_ATTRTYPEANDVALUE_SEPARATOR(c))
 #define RDN_NEEDSESCAPE(c)      ((c) == '\\' || (c) == '"')  #define RDN_NEEDSESCAPE(c)      ((c) == '\\' || (c) == '"')
Line 145  LDAP_BEGIN_DECL Line 148  LDAP_BEGIN_DECL
 #define OID_CHAR(c)     ( OID_LEADCHAR(c) || OID_SEPARATOR(c) )  #define OID_CHAR(c)     ( OID_LEADCHAR(c) || OID_SEPARATOR(c) )
   
 #define ATTR_LEADCHAR(c)        ( DESC_LEADCHAR(c) || OID_LEADCHAR(c) )  #define ATTR_LEADCHAR(c)        ( DESC_LEADCHAR(c) || OID_LEADCHAR(c) )
 #define ATTR_CHAR(c)    ( DESC_CHAR((c)) || (c) == '.' )  #define ATTR_CHAR(c)    ( DESC_CHAR((c)) || OID_SEPARATOR(c) )
   
 #define AD_LEADCHAR(c)  ( ATTR_CHAR(c) )  #define AD_LEADCHAR(c)  ( ATTR_LEADCHAR(c) )
 #define AD_CHAR(c)              ( ATTR_CHAR(c) || (c) == ';' )  #define AD_CHAR(c)              ( ATTR_CHAR(c) || (c) == ';' )
   
 #define SLAP_NUMERIC(c) ( ASCII_DIGIT(c) || ASCII_SPACE(c) )  #define SLAP_NUMERIC(c) ( ASCII_DIGIT(c) || ASCII_SPACE(c) )
Line 789  struct slap_internal_schema { Line 792  struct slap_internal_schema {
         AttributeDescription *si_ad_subtreeSpecification;          AttributeDescription *si_ad_subtreeSpecification;
   
         /* subschema subentry attribute descriptions */          /* subschema subentry attribute descriptions */
         AttributeDescription *si_ad_ditStructureRules;  
         AttributeDescription *si_ad_ditContentRules;  
         AttributeDescription *si_ad_nameForms;  
         AttributeDescription *si_ad_objectClasses;  
         AttributeDescription *si_ad_attributeTypes;          AttributeDescription *si_ad_attributeTypes;
           AttributeDescription *si_ad_ditContentRules;
           AttributeDescription *si_ad_ditStructureRules;
         AttributeDescription *si_ad_ldapSyntaxes;          AttributeDescription *si_ad_ldapSyntaxes;
         AttributeDescription *si_ad_matchingRules;          AttributeDescription *si_ad_matchingRules;
         AttributeDescription *si_ad_matchingRuleUse;          AttributeDescription *si_ad_matchingRuleUse;
           AttributeDescription *si_ad_nameForms;
           AttributeDescription *si_ad_objectClasses;
   
         /* Aliases & Referrals */          /* Aliases & Referrals */
         AttributeDescription *si_ad_aliasedObjectName;          AttributeDescription *si_ad_aliasedObjectName;
Line 845  struct slap_internal_schema { Line 848  struct slap_internal_schema {
         Syntax          *si_syn_distinguishedName;          Syntax          *si_syn_distinguishedName;
         Syntax          *si_syn_integer;          Syntax          *si_syn_integer;
         Syntax          *si_syn_octetString;          Syntax          *si_syn_octetString;
   
           /* Schema Syntaxes */
           Syntax          *si_syn_attributeTypeDesc;
           Syntax          *si_syn_ditContentRuleDesc;
           Syntax          *si_syn_ditStructureRuleDesc;
           Syntax          *si_syn_ldapSyntaxDesc;
           Syntax          *si_syn_matchingRuleDesc;
           Syntax          *si_syn_matchingRuleUseDesc;
           Syntax          *si_syn_nameFormDesc;
           Syntax          *si_syn_objectClassDesc;
 };  };
   
 typedef struct slap_attr_assertion {  typedef struct slap_attr_assertion {
Line 1287  struct slap_limits_set { Line 1300  struct slap_limits_set {
         int     lms_s_pr_total;          int     lms_s_pr_total;
 };  };
   
   /* Note: this is different from LDAP_NO_LIMIT (0); slapd internal use only */
   #define SLAP_NO_LIMIT                   -1
   #define SLAP_MAX_LIMIT                  2147483647
   
 struct slap_limits {  struct slap_limits {
         unsigned                lm_flags;       /* type of pattern */          unsigned                lm_flags;       /* type of pattern */
 #define SLAP_LIMITS_UNDEFINED           0x0000U  #define SLAP_LIMITS_UNDEFINED           0x0000U
Line 1379  typedef struct syncinfo_s { Line 1396  typedef struct syncinfo_s {
         char                            **si_attrs;          char                            **si_attrs;
         int                                     si_type;          int                                     si_type;
         time_t                          si_interval;          time_t                          si_interval;
                   time_t                          *si_retryinterval;
                   int                                     *si_retrynum_init;
                   int                                     *si_retrynum;
                 struct sync_cookie      si_syncCookie;                  struct sync_cookie      si_syncCookie;
         int                                     si_manageDSAit;          int                                     si_manageDSAit;
         int                                     si_slimit;          int                                     si_slimit;
Line 1390  typedef struct syncinfo_s { Line 1410  typedef struct syncinfo_s {
                 LDAP_STAILQ_ENTRY( syncinfo_s ) si_next;                  LDAP_STAILQ_ENTRY( syncinfo_s ) si_next;
 } syncinfo_t;  } syncinfo_t;
   
   LDAP_TAILQ_HEAD( be_pcl, slap_csn_entry );
   
 struct slap_backend_db {  struct slap_backend_db {
         BackendInfo     *bd_info;       /* pointer to shared backend info */          BackendInfo     *bd_info;       /* pointer to shared backend info */
   
Line 1535  struct slap_backend_db { Line 1557  struct slap_backend_db {
         char    *be_replogfile; /* replication log file (in master)        */          char    *be_replogfile; /* replication log file (in master)        */
         struct berval be_update_ndn;    /* allowed to make changes (in replicas) */          struct berval be_update_ndn;    /* allowed to make changes (in replicas) */
         BerVarray       be_update_refs; /* where to refer modifying clients to */          BerVarray       be_update_refs; /* where to refer modifying clients to */
         LDAP_TAILQ_HEAD( be_pcl, slap_csn_entry )       be_pending_csn_list;          struct          be_pcl  *be_pending_csn_list;
         ldap_pvt_thread_mutex_t                                 be_pcl_mutex;          ldap_pvt_thread_mutex_t                                 be_pcl_mutex;
           ldap_pvt_thread_mutex_t                                 *be_pcl_mutexp;
         struct berval                                                   be_context_csn;          struct berval                                                   be_context_csn;
         ldap_pvt_thread_mutex_t                                 be_context_csn_mutex;          ldap_pvt_thread_mutex_t                                 be_context_csn_mutex;
         LDAP_STAILQ_HEAD( be_si, syncinfo_s )   be_syncinfo; /* For syncrepl */          LDAP_STAILQ_HEAD( be_si, syncinfo_s )   be_syncinfo; /* For syncrepl */
Line 1821  struct slap_backend_info { Line 1844  struct slap_backend_info {
   
         slap_mask_t     bi_flags; /* backend flags */          slap_mask_t     bi_flags; /* backend flags */
 #define SLAP_BFLAG_MONITOR                      0x0001U /* a monitor backend */  #define SLAP_BFLAG_MONITOR                      0x0001U /* a monitor backend */
   #define SLAP_BFLAG_NOLASTMODCMD         0x0010U
 #define SLAP_BFLAG_INCREMENT            0x0100U  #define SLAP_BFLAG_INCREMENT            0x0100U
 #define SLAP_BFLAG_ALIASES                      0x1000U  #define SLAP_BFLAG_ALIASES                      0x1000U
 #define SLAP_BFLAG_REFERRALS            0x2000U  #define SLAP_BFLAG_REFERRALS            0x2000U
Line 1834  struct slap_backend_info { Line 1858  struct slap_backend_info {
 #define SLAP_REFERRALS(be)      (SLAP_BFLAGS(be) & SLAP_BFLAG_REFERRALS)  #define SLAP_REFERRALS(be)      (SLAP_BFLAGS(be) & SLAP_BFLAG_REFERRALS)
 #define SLAP_SUBENTRIES(be)     (SLAP_BFLAGS(be) & SLAP_BFLAG_SUBENTRIES)  #define SLAP_SUBENTRIES(be)     (SLAP_BFLAGS(be) & SLAP_BFLAG_SUBENTRIES)
 #define SLAP_DYNAMIC(be)        (SLAP_BFLAGS(be) & SLAP_BFLAG_DYNAMIC)  #define SLAP_DYNAMIC(be)        (SLAP_BFLAGS(be) & SLAP_BFLAG_DYNAMIC)
   #define SLAP_NOLASTMODCMD(be)   (SLAP_BFLAGS(be) & SLAP_BFLAG_NOLASTMODCMD)
   #define SLAP_LASTMODCMD(be)     (!SLAP_NOLASTMODCMD(be))
   
         char **bi_controls;             /* supported controls */          char **bi_controls;             /* supported controls */
   
Line 1893  typedef unsigned long PagedResultsCookie Line 1919  typedef unsigned long PagedResultsCookie
 typedef struct slap_paged_state {  typedef struct slap_paged_state {
         Backend *ps_be;          Backend *ps_be;
         PagedResultsCookie ps_cookie;          PagedResultsCookie ps_cookie;
         ID ps_id;  
         int ps_count;          int ps_count;
 } PagedResultsState;  } PagedResultsState;
   
Line 2031  typedef struct slap_op { Line 2056  typedef struct slap_op {
         char o_do_not_cache;    /* don't cache groups from this op */          char o_do_not_cache;    /* don't cache groups from this op */
         char o_is_auth_check;   /* authorization in progress */          char o_is_auth_check;   /* authorization in progress */
   
   #define SLAP_IGNORED_CONTROL -1
 #define SLAP_NO_CONTROL 0  #define SLAP_NO_CONTROL 0
 #define SLAP_NONCRITICAL_CONTROL 1  #define SLAP_NONCRITICAL_CONTROL 1
 #define SLAP_CRITICAL_CONTROL 2  #define SLAP_CRITICAL_CONTROL 2

Removed from v.1.452.2.16  
changed lines
  Added in v.1.452.2.24


______________
© Copyright 1998-2020, OpenLDAP Foundation, info@OpenLDAP.org