]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/controls.c
minor naming cleanup; improvements to DN mapping layer; major docs update
[openldap] / servers / slapd / controls.c
index 9b98a911903660740d94a4f25fa7d9c739b06a10..34cf6cf731942e1030b12ff47f6f1bd5e7dede72 100644 (file)
@@ -1,7 +1,7 @@
 /* $OpenLDAP$ */
 /* This work is part of OpenLDAP Software <http://www.openldap.org/>.
  *
- * Copyright 1998-2004 The OpenLDAP Foundation.
+ * Copyright 1998-2005 The OpenLDAP Foundation.
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -192,7 +192,7 @@ register_supported_control(const char *controloid,
        if ( controloid == NULL ) return LDAP_PARAM_ERROR;
 
        /* sanity check - should never happen */
-       for ( i = 1; slap_known_controls[ i ]; i++ ) {
+       for ( i = 0; slap_known_controls[ i ]; i++ ) {
                if ( strcmp( controloid, slap_known_controls[ i ] ) == 0 ) {
                        Debug( LDAP_DEBUG_ANY,
                                "Control %s already registered.\n",
@@ -221,8 +221,8 @@ register_supported_control(const char *controloid,
        sc->sc_cid = num_known_controls;
 
        /* Update slap_known_controls, too. */
-       slap_known_controls[num_known_controls++] = sc->sc_oid;
-       slap_known_controls[num_known_controls] = NULL;
+       slap_known_controls[num_known_controls-1] = sc->sc_oid;
+       slap_known_controls[num_known_controls++] = NULL;
 
        LDAP_SLIST_NEXT( sc, sc_next ) = NULL;
        LDAP_SLIST_INSERT_HEAD( &controls_list, sc, sc_next );
@@ -1040,7 +1040,9 @@ static int parsePreRead (
                an[i].an_oc_exclude = 0;
                rc = slap_bv2ad( &an[i].an_name, &an[i].an_desc, &dummy );
                if ( rc != LDAP_SUCCESS && ctrl->ldctl_iscritical ) {
-                       rs->sr_text = dummy ? dummy : "postread control: unknown attributeType";
+                       rs->sr_text = dummy
+                               ? dummy
+                               : "postread control: unknown attributeType";
                        return rc;
                }
        }
@@ -1096,7 +1098,9 @@ static int parsePostRead (
                an[i].an_oc_exclude = 0;
                rc = slap_bv2ad( &an[i].an_name, &an[i].an_desc, &dummy );
                if ( rc != LDAP_SUCCESS && ctrl->ldctl_iscritical ) {
-                       rs->sr_text = dummy ? dummy : "postread control: unknown attributeType";
+                       rs->sr_text = dummy
+                               ? dummy
+                               : "postread control: unknown attributeType";
                        return rc;
                }
        }