]> git.sur5r.net Git - openldap/commitdiff
don't lookup dg* attrs more than needed (ITS#5583)
authorPierangelo Masarati <ando@openldap.org>
Sun, 29 Jun 2008 21:50:05 +0000 (21:50 +0000)
committerPierangelo Masarati <ando@openldap.org>
Sun, 29 Jun 2008 21:50:05 +0000 (21:50 +0000)
servers/slapd/overlays/dynlist.c

index ba9a9d2ac51772064c4a027733d09169e0e0ddb9..2cbf53e79fa648e5913ef8cdd1413bbd8bf8432e 100644 (file)
@@ -1557,22 +1557,26 @@ dynlist_db_open(
                }
        }
 
-       rc = slap_str2ad( "dgIdentity", &ad_dgIdentity, &text );
-       if ( rc != LDAP_SUCCESS ) {
-               snprintf( cr->msg, sizeof( cr->msg),
-                       "unable to fetch attributeDescription \"dgIdentity\": %d (%s)",
-                       rc, text );
-               Debug( LDAP_DEBUG_ANY, "dynlist_db_open: %s\n", cr->msg, 0, 0 );
-               /* Just a warning */
+       if ( ad_dgIdentity == NULL ) {
+               rc = slap_str2ad( "dgIdentity", &ad_dgIdentity, &text );
+               if ( rc != LDAP_SUCCESS ) {
+                       snprintf( cr->msg, sizeof( cr->msg),
+                               "unable to fetch attributeDescription \"dgIdentity\": %d (%s)",
+                               rc, text );
+                       Debug( LDAP_DEBUG_ANY, "dynlist_db_open: %s\n", cr->msg, 0, 0 );
+                       /* Just a warning */
+               }
        }
 
-       rc = slap_str2ad( "dgAuthz", &ad_dgAuthz, &text );
-       if ( rc != LDAP_SUCCESS ) {
-               snprintf( cr->msg, sizeof( cr->msg),
-                       "unable to fetch attributeDescription \"dgAuthz\": %d (%s)",
-                       rc, text );
-               Debug( LDAP_DEBUG_ANY, "dynlist_db_open: %s\n", cr->msg, 0, 0 );
-               /* Just a warning */
+       if ( ad_dgAuthz == NULL ) {
+               rc = slap_str2ad( "dgAuthz", &ad_dgAuthz, &text );
+               if ( rc != LDAP_SUCCESS ) {
+                       snprintf( cr->msg, sizeof( cr->msg),
+                               "unable to fetch attributeDescription \"dgAuthz\": %d (%s)",
+                               rc, text );
+                       Debug( LDAP_DEBUG_ANY, "dynlist_db_open: %s\n", cr->msg, 0, 0 );
+                       /* Just a warning */
+               }
        }
 
        return 0;