]> git.sur5r.net Git - openldap/commitdiff
ITS#4339 attributeoptions patch from Ralf Haferkamp @ SuSE
authorHoward Chu <hyc@openldap.org>
Fri, 13 Jan 2006 16:42:34 +0000 (16:42 +0000)
committerHoward Chu <hyc@openldap.org>
Fri, 13 Jan 2006 16:42:34 +0000 (16:42 +0000)
servers/slapd/ad.c
servers/slapd/bconfig.c
servers/slapd/proto-slap.h

index c81422bda8030e4e95b1097259bc7b99bbdba286..7183d5e59fb6f3d5efac1b6e7987d470150f4092 100644 (file)
@@ -1177,6 +1177,13 @@ ad_define_option( const char *name, const char *fname, int lineno )
        return 0;
 }
 
+void ad_unparse_options( BerVarray *res ){
+       int i;
+    for ( i=0; i < option_count; i++ ) {
+       ber_bvarray_add( res, ber_bvdup( &(options[i].name) ));
+    }
+}
+
 /* Find the definition of the option name or prefix matching the arguments */
 static Attr_option *
 ad_find_option_definition( const char *opt, int optlen )
index 1014ec7fed302e82395e970c37537e0c0ce1a693..18a22edcb9d0f56e4c3dcbf29a34688e1e289616 100644 (file)
@@ -788,6 +788,9 @@ config_generic(ConfigArgs *c) {
                                rc = 1;
                        }
                        break;
+               case CFG_ATOPT:
+                       ad_unparse_options( &c->rvalue_vals );
+                       break;
                case CFG_OC: {
                        ConfigFile *cf = c->private;
                        if ( !cf )
index 41ddfe18043e8a66534f842494704398b1f47ee4..82f754e5dcb1ac182c4a316b6497a82f48c6f014 100644 (file)
@@ -172,6 +172,7 @@ LDAP_SLAPD_F (AttributeName *) file2anlist LDAP_P((
 LDAP_SLAPD_F (int) an_find LDAP_P(( AttributeName *a, struct berval *s ));
 LDAP_SLAPD_F (int) ad_define_option LDAP_P(( const char *name,
        const char *fname, int lineno ));
+LDAP_SLAPD_F (void) ad_unparse_options LDAP_P(( BerVarray *res ));
 
 LDAP_SLAPD_F (MatchingRule *) ad_mr(
        AttributeDescription *ad,