]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/config.h
ITS#4458 re-encode passwd request
[openldap] / servers / slapd / config.h
index a1ca2208ece40a353caa8f07b6963b868899e018..e99d00954785e8061c5fbe6ddc17be0cf9307ecc 100644 (file)
@@ -2,7 +2,7 @@
 /* $OpenLDAP$ */
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *
- * Copyright 1998-2005 The OpenLDAP Foundation.
+ * Copyright 1998-2006 The OpenLDAP Foundation.
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -43,19 +43,19 @@ typedef enum {
 } ConfigType;
 
 #define ARGS_USERLAND  0x00000fff
-#define ARGS_TYPES     0x000ff000
-#define ARGS_POINTER   0x0003f000
-#define ARGS_NUMERIC   0x0000f000
+
+/* types are enumerated, not a bitmask */
+#define ARGS_TYPES     0x0000f000
 #define ARG_INT                0x00001000
 #define ARG_LONG       0x00002000
-#define ARG_BER_LEN_T  0x00004000
-#define ARG_ON_OFF     0x00008000
-#define ARG_STRING     0x00010000
-#define ARG_BERVAL     0x00020000
-#define ARG_DN         0x00040000
-#define ARG_IGNORED    0x00080000
+#define ARG_BER_LEN_T  0x00003000
+#define ARG_ON_OFF     0x00004000
+#define ARG_STRING     0x00005000
+#define ARG_BERVAL     0x00006000
+#define ARG_DN         0x00007000
 
-#define ARGS_SYNTAX    0xfff00000
+#define ARGS_SYNTAX    0xffff0000
+#define ARG_IGNORED    0x00080000
 #define ARG_PRE_BI     0x00100000
 #define ARG_PRE_DB     0x00200000
 #define ARG_DB         0x00400000      /* Only applies to DB */
@@ -165,7 +165,7 @@ void init_config_argv( ConfigArgs *c );
 int init_config_attrs(ConfigTable *ct);
 int init_config_ocs( ConfigOCs *ocs );
 int config_parse_vals(ConfigTable *ct, ConfigArgs *c, int valx);
-int config_parse_add(ConfigTable *ct, ConfigArgs *c);
+int config_parse_add(ConfigTable *ct, ConfigArgs *c, int valx);
 int read_config_file(const char *fname, int depth, ConfigArgs *cf,
        ConfigTable *cft );
 
@@ -173,8 +173,14 @@ ConfigTable * config_find_keyword(ConfigTable *ct, ConfigArgs *c);
 Entry * config_build_entry( Operation *op, SlapReply *rs, CfEntryInfo *parent,
        ConfigArgs *c, struct berval *rdn, ConfigOCs *main, ConfigOCs *extra );
 
+int config_shadow( ConfigArgs *c, int flag );
+#define        config_slurp_shadow(c)  config_shadow((c), SLAP_DBFLAG_SLURP_SHADOW)
+#define        config_sync_shadow(c)   config_shadow((c), SLAP_DBFLAG_SYNC_SHADOW)
+
        /* Make sure we don't exceed the bits reserved for userland */
 #define        config_check_userland(last) \
        assert( ( ( (last) - 1 ) & ARGS_USERLAND ) == ( (last) - 1 ) );
 
+#define        SLAP_X_ORDERED_FMT      "{%d}"
+
 #endif /* CONFIG_H */