LDAPControl * ldap_control_dup(LDAPControl *ctrl) { LDAPControl *newctrl; if ((newctrl = (LDAPControl *)calloc(1, sizeof(LDAPControl))) == NULL) return (NULL); if (ldap_control_copy_contents(newctrl, ctrl) != LDAP_SUCCESS) { free(newctrl); return (NULL); } return(newctrl); }
/* * return a malloc'd copy of "ctrl" (NULL if memory allocation fails) */ static LDAPControl * /* LDAP_CALL */ /* keep this routine internal for now */ ldap_control_dup( LDAPControl *ctrl ) { LDAPControl *rctrl; if (( rctrl = (LDAPControl *)NSLDAPI_MALLOC( sizeof( LDAPControl ))) == NULL ) { return( NULL ); } if ( ldap_control_copy_contents( rctrl, ctrl ) != LDAP_SUCCESS ) { NSLDAPI_FREE( rctrl ); return( NULL ); } return( rctrl ); }