]> git.sur5r.net Git - openldap/commitdiff
Add slap_find_control_id
authorHoward Chu <hyc@openldap.org>
Sat, 27 Nov 2004 11:45:07 +0000 (11:45 +0000)
committerHoward Chu <hyc@openldap.org>
Sat, 27 Nov 2004 11:45:07 +0000 (11:45 +0000)
servers/slapd/controls.c
servers/slapd/proto-slap.h

index 5ccca5b4ad72c71bfb3a242ae50486107cce6178..da339a55e8e985810cca0b4d2269f2daf5060369 100644 (file)
@@ -348,6 +348,19 @@ find_ctrl( const char *oid )
        return NULL;
 }
 
+int
+slap_find_control_id(
+       const char *oid,
+       int *cid )
+{
+       slap_control *ctrl = find_ctrl( oid );
+       if ( ctrl && cid ) {
+               *cid = ctrl->sc_cid;
+               return LDAP_SUCCESS;
+       }
+       return LDAP_CONTROL_NOT_FOUND;
+}
+
 void slap_free_ctrls(
        Operation *op,
        LDAPControl **ctrls )
index d3e8f64c1560d26a14a693a3dbd4076096cb5b32..fb453692a923fb4503a561001748f13a58797852 100644 (file)
@@ -397,6 +397,7 @@ LDAP_SLAPD_F (int) slap_controls_init LDAP_P ((void));
 LDAP_SLAPD_F (void) controls_destroy LDAP_P ((void));
 LDAP_SLAPD_F (int) controls_root_dse_info LDAP_P ((Entry *e));
 LDAP_SLAPD_F (int) get_supported_controls LDAP_P (( char ***ctrloidsp, slap_mask_t **ctrlmasks ));
+LDAP_SLAPD_F (int) slap_find_control_id LDAP_P (( const char *oid, int *cid ));
 
 /*
  * config.c