]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/aclparse.c
Missed a test in AttributeDescription commit
[openldap] / servers / slapd / aclparse.c
index 54661b75dad86b360540a5545ae934768985ed8d..c18f36e27f3559bde7306282e50c8025d53b6587 100644 (file)
@@ -136,9 +136,9 @@ parse_acl(
                                split( argv[i], '=', &left, &right );
                                split( left, '.', &left, &style );
 
-                               if ( right == NULL || *right == '\0' ) {
+                               if ( right == NULL ) {
                                        fprintf( stderr,
-       "%s: line %d: missing \"=\" in (or value after) \"%s\" in to clause\n",
+       "%s: line %d: missing \"=\" in \"%s\" in to clause\n",
                                            fname, lineno, left );
                                        acl_usage();
                                }
@@ -393,7 +393,9 @@ parse_acl(
 
 
                                        if( !is_at_syntax( b->a_dn_at->ad_type,
-                                               SLAPD_DN_SYNTAX ) )
+                                               SLAPD_DN_SYNTAX ) &&
+                                               !is_at_syntax( b->a_dn_at->ad_type,
+                                               SLAPD_NAMEUID_SYNTAX ))
                                        {
                                                fprintf( stderr,
                                                        "%s: line %d: dnattr \"%s\": "
@@ -508,7 +510,9 @@ parse_acl(
                                        }
 
                                        if( !is_at_syntax( b->a_group_at->ad_type,
-                                               SLAPD_DN_SYNTAX ) )
+                                               SLAPD_DN_SYNTAX ) &&
+                                           !is_at_syntax( b->a_group_at->ad_type,
+                                               SLAPD_NAMEUID_SYNTAX ) )
                                        {
                                                fprintf( stderr,
                                                        "%s: line %d: group \"%s\": inappropriate syntax: %s\n",
@@ -535,7 +539,7 @@ parse_acl(
                                                        fprintf( stderr,
                                                                "%s: line %d: group: \"%s\" not allowed by \"%s\"\n",
                                                                fname, lineno,
-                                                               b->a_group_at->ad_cname->bv_val,
+                                                               b->a_group_at->ad_cname.bv_val,
                                                                b->a_group_oc->soc_oid );
                                                        acl_usage();
                                                }
@@ -1196,7 +1200,7 @@ print_access( Access *b )
        }
 
        if ( b->a_dn_at != NULL ) {
-               fprintf( stderr, " dnattr=%s", b->a_dn_at->ad_cname->bv_val );
+               fprintf( stderr, " dnattr=%s", b->a_dn_at->ad_cname.bv_val );
        }
 
        if ( b->a_group_pat != NULL ) {
@@ -1207,7 +1211,7 @@ print_access( Access *b )
                                b->a_group_oc->soc_oclass.oc_oid );
 
                        if ( b->a_group_at ) {
-                               fprintf( stderr, " attributeType: %s", b->a_group_at->ad_cname->bv_val );
+                               fprintf( stderr, " attributeType: %s", b->a_group_at->ad_cname.bv_val );
                        }
                }
     }
@@ -1230,25 +1234,25 @@ print_access( Access *b )
 
 #ifdef SLAPD_ACI_ENABLED
        if ( b->a_aci_at != NULL ) {
-               fprintf( stderr, " aci=%s", b->a_aci_at->ad_cname->bv_val );
+               fprintf( stderr, " aci=%s", b->a_aci_at->ad_cname.bv_val );
        }
 #endif
 
        /* Security Strength Factors */
        if ( b->a_authz.sai_ssf ) {
-               fprintf( stderr, " ssf=%ud",
+               fprintf( stderr, " ssf=%u",
                        b->a_authz.sai_ssf );
        }
        if ( b->a_authz.sai_transport_ssf ) {
-               fprintf( stderr, " transport_ssf=%ud",
+               fprintf( stderr, " transport_ssf=%u",
                        b->a_authz.sai_transport_ssf );
        }
        if ( b->a_authz.sai_tls_ssf ) {
-               fprintf( stderr, " tls_ssf=%ud",
+               fprintf( stderr, " tls_ssf=%u",
                        b->a_authz.sai_tls_ssf );
        }
        if ( b->a_authz.sai_sasl_ssf ) {
-               fprintf( stderr, " sasl_ssf=%ud",
+               fprintf( stderr, " sasl_ssf=%u",
                        b->a_authz.sai_sasl_ssf );
        }