return( NULL );
}
- if ( be_issuffix( be, dn ) ) {
+ if ( be != NULL && be_issuffix( be, dn ) ) {
return( NULL );
}
return( NULL );
}
- if ( be_issuffix( be, dn ) ) {
+ if ( be != NULL && be_issuffix( be, dn ) ) {
return( NULL );
}
void
build_new_dn( char ** new_dn, char *e_dn, char * p_dn, char * newrdn )
{
+
+ if ( p_dn == NULL ) {
+
+ *new_dn = ch_strdup( newrdn );
+ return;
+
+ }
*new_dn = (char *) ch_malloc( strlen( p_dn ) + strlen( newrdn ) + 3 );
if ( dn_type( e_dn ) == DN_X500 ) {
strcpy( *new_dn, newrdn );
- strcat( *new_dn, ", " );
+ strcat( *new_dn, "," );
strcat( *new_dn, p_dn );
} else {