]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/config.c
declare oc_bvfind_undef()
[openldap] / servers / slapd / config.c
index 0373b85df8b83b5a58b5510c335858d4449f4aaa..fff7f5390ccc63bf664c9d94ce9b1b9cda6aebc6 100644 (file)
@@ -56,7 +56,6 @@ char          *ldap_srvtab = "";
 char           **default_passwd_hash = NULL;
 struct berval default_search_base = BER_BVNULL;
 struct berval default_search_nbase = BER_BVNULL;
-unsigned               num_subordinates = 0;
 
 ber_len_t sockbuf_max_incoming = SLAP_SB_MAX_INCOMING_DEFAULT;
 ber_len_t sockbuf_max_incoming_auth= SLAP_SB_MAX_INCOMING_AUTH;
@@ -140,7 +139,6 @@ enum {
        CFG_SALT,
        CFG_LIMITS,
        CFG_RO,
-       CFG_SUB,
        CFG_SASLOPT,
        CFG_REWRITE,
        CFG_DEPTH,
@@ -192,7 +190,6 @@ ConfigTable SystemConfiguration[] = {
   { "sizelimit",               2,  2,  0,  "limit",    ARG_MAGIC|CFG_SIZE,     &config_sizelimit,              NULL, NULL, NULL },
   { "timelimit",               2,  2,  0,  "limit",    ARG_MAGIC|CFG_TIME,     &config_timelimit,              NULL, NULL, NULL },
   { "limits",                  2,  2,  0,  "limits",   ARG_DB|ARG_MAGIC|CFG_LIMITS, &config_generic,           NULL, NULL, NULL },
-  { "subordinate",             1,  1,  0,  "sub",      ARG_DB|ARG_MAGIC|CFG_SUB, &config_generic,              NULL, NULL, NULL },
   { "overlay",                 2,  2,  0,  "overlay",  ARG_DB|ARG_MAGIC,       &config_overlay,                NULL, NULL, NULL },
   { "suffix",                  2,  2,  0,  "suffix",   ARG_DB|ARG_MAGIC,       &config_suffix,                 NULL, NULL, NULL },
   { "maxDerefDepth",           2,  2,  0,  "depth",    ARG_DB|ARG_INT|ARG_MAGIC|CFG_DEPTH, &config_generic,    NULL, NULL, NULL },
@@ -377,8 +374,7 @@ int parse_config_table(ConfigTable *Conf, ConfigArgs *c) {
                        case ARG_STRING: {
                                char *cc = *((char**)Conf[i].arg_item);
                                if(cc) ch_free(cc);     /* potential memory leak */
-                               cc = c->value_string;
-                               /* memcpy(Conf[i].arg_item, &c->value_string, sizeof(void *)); */
+                               *(char **)Conf[i].arg_item = c->value_string;
                                break;
                                }
        }
@@ -574,11 +570,6 @@ config_generic(ConfigArgs *c) {
                                c->be->be_restrictops &= ~SLAP_RESTRICT_OP_WRITES;
                        break;
 
-               case CFG_SUB:
-                       SLAP_DBFLAGS(c->be) |= SLAP_DBFLAG_GLUE_SUBORDINATE;
-                       num_subordinates++;
-                       break;
-
                case CFG_SASLOPT:
                        /* XXX slap_sasl_config doesn't actually use the line argument */
                        if(slap_sasl_config(c->argc, c->argv, c->line, c->fname, c->lineno))
@@ -709,7 +700,7 @@ int
 config_search_base(ConfigArgs *c) {
        struct berval dn;
        int rc;
-       if(c->bi || c->be) {
+       if(c->bi || c->be != frontendDB) {
                Debug(LDAP_DEBUG_ANY, "%s: line %lu: defaultSearchBase line must appear "
                        "prior to any backend or database definition\n",
                        c->fname, c->lineno, 0);