mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-12-28 18:49:34 -05:00
Protect Debug messages from NULL pointers
This commit is contained in:
parent
e8f222d032
commit
c06ed65f2a
2 changed files with 21 additions and 16 deletions
|
|
@ -439,7 +439,7 @@ dnNormalize(
|
|||
assert( val != NULL );
|
||||
assert( out != NULL );
|
||||
|
||||
Debug( LDAP_DEBUG_TRACE, ">>> dnNormalize: <%s>\n", val->bv_val, 0, 0 );
|
||||
Debug( LDAP_DEBUG_TRACE, ">>> dnNormalize: <%s>\n", val->bv_val ? val->bv_val : "", 0, 0 );
|
||||
|
||||
if ( val->bv_len != 0 ) {
|
||||
LDAPDN dn = NULL;
|
||||
|
|
@ -478,7 +478,7 @@ dnNormalize(
|
|||
ber_dupbv_x( out, val, ctx );
|
||||
}
|
||||
|
||||
Debug( LDAP_DEBUG_TRACE, "<<< dnNormalize: <%s>\n", out->bv_val, 0, 0 );
|
||||
Debug( LDAP_DEBUG_TRACE, "<<< dnNormalize: <%s>\n", out->bv_val ? out->bv_val : "", 0, 0 );
|
||||
|
||||
return LDAP_SUCCESS;
|
||||
}
|
||||
|
|
@ -495,7 +495,7 @@ rdnNormalize(
|
|||
assert( val != NULL );
|
||||
assert( out != NULL );
|
||||
|
||||
Debug( LDAP_DEBUG_TRACE, ">>> dnNormalize: <%s>\n", val->bv_val, 0, 0 );
|
||||
Debug( LDAP_DEBUG_TRACE, ">>> dnNormalize: <%s>\n", val->bv_val ? val->bv_val : "", 0, 0 );
|
||||
if ( val->bv_len != 0 ) {
|
||||
LDAPRDN rdn = NULL;
|
||||
int rc;
|
||||
|
|
@ -536,7 +536,7 @@ rdnNormalize(
|
|||
ber_dupbv_x( out, val, ctx );
|
||||
}
|
||||
|
||||
Debug( LDAP_DEBUG_TRACE, "<<< dnNormalize: <%s>\n", out->bv_val, 0, 0 );
|
||||
Debug( LDAP_DEBUG_TRACE, "<<< dnNormalize: <%s>\n", out->bv_val ? out->bv_val : "", 0, 0 );
|
||||
|
||||
return LDAP_SUCCESS;
|
||||
}
|
||||
|
|
@ -551,7 +551,7 @@ dnPretty(
|
|||
assert( val != NULL );
|
||||
assert( out != NULL );
|
||||
|
||||
Debug( LDAP_DEBUG_TRACE, ">>> dnPretty: <%s>\n", val->bv_val, 0, 0 );
|
||||
Debug( LDAP_DEBUG_TRACE, ">>> dnPretty: <%s>\n", val->bv_val ? val->bv_val : "", 0, 0 );
|
||||
|
||||
if ( val->bv_len == 0 ) {
|
||||
ber_dupbv_x( out, val, ctx );
|
||||
|
|
@ -593,7 +593,7 @@ dnPretty(
|
|||
}
|
||||
}
|
||||
|
||||
Debug( LDAP_DEBUG_TRACE, "<<< dnPretty: <%s>\n", out->bv_val, 0, 0 );
|
||||
Debug( LDAP_DEBUG_TRACE, "<<< dnPretty: <%s>\n", out->bv_val ? out->bv_val : "", 0, 0 );
|
||||
|
||||
return LDAP_SUCCESS;
|
||||
}
|
||||
|
|
@ -608,7 +608,7 @@ rdnPretty(
|
|||
assert( val != NULL );
|
||||
assert( out != NULL );
|
||||
|
||||
Debug( LDAP_DEBUG_TRACE, ">>> dnPretty: <%s>\n", val->bv_val, 0, 0 );
|
||||
Debug( LDAP_DEBUG_TRACE, ">>> rdnPretty: <%s>\n", val->bv_val ? val->bv_val : "", 0, 0 );
|
||||
|
||||
if ( val->bv_len == 0 ) {
|
||||
ber_dupbv_x( out, val, ctx );
|
||||
|
|
@ -652,7 +652,7 @@ rdnPretty(
|
|||
}
|
||||
}
|
||||
|
||||
Debug( LDAP_DEBUG_TRACE, "<<< dnPretty: <%s>\n", out->bv_val, 0, 0 );
|
||||
Debug( LDAP_DEBUG_TRACE, "<<< dnPretty: <%s>\n", out->bv_val ? out->bv_val : "", 0, 0 );
|
||||
|
||||
return LDAP_SUCCESS;
|
||||
}
|
||||
|
|
@ -671,7 +671,7 @@ dnPrettyNormalDN(
|
|||
|
||||
Debug( LDAP_DEBUG_TRACE, ">>> dn%sDN: <%s>\n",
|
||||
flags == SLAP_LDAPDN_PRETTY ? "Pretty" : "Normal",
|
||||
val->bv_val, 0 );
|
||||
val->bv_val ? val->bv_val : "", 0 );
|
||||
|
||||
if ( val->bv_len == 0 ) {
|
||||
return LDAP_SUCCESS;
|
||||
|
|
@ -718,7 +718,7 @@ dnPrettyNormal(
|
|||
struct berval *normal,
|
||||
void *ctx)
|
||||
{
|
||||
Debug( LDAP_DEBUG_TRACE, ">>> dnPrettyNormal: <%s>\n", val->bv_val, 0, 0 );
|
||||
Debug( LDAP_DEBUG_TRACE, ">>> dnPrettyNormal: <%s>\n", val->bv_val ? val->bv_val : "", 0, 0 );
|
||||
|
||||
assert( val != NULL );
|
||||
assert( pretty != NULL );
|
||||
|
|
@ -786,7 +786,8 @@ dnPrettyNormal(
|
|||
}
|
||||
|
||||
Debug( LDAP_DEBUG_TRACE, "<<< dnPrettyNormal: <%s>, <%s>\n",
|
||||
pretty->bv_val, normal->bv_val, 0 );
|
||||
pretty->bv_val ? pretty->bv_val : "",
|
||||
normal->bv_val ? normal->bv_val : "", 0 );
|
||||
|
||||
return LDAP_SUCCESS;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -157,27 +157,31 @@ rwm_dn_massage(
|
|||
int rc = 0;
|
||||
struct berval mdn;
|
||||
static char *dmy = "";
|
||||
char *in_val;
|
||||
|
||||
assert( dc != NULL );
|
||||
assert( in != NULL );
|
||||
assert( dn != NULL );
|
||||
|
||||
/* protect from NULL berval */
|
||||
in_val = in->bv_val ? in->bv_val : dmy;
|
||||
|
||||
rc = rewrite_session( dc->rwmap->rwm_rw, dc->ctx,
|
||||
( in->bv_val ? in->bv_val : dmy ),
|
||||
dc->conn, &mdn.bv_val );
|
||||
in_val, dc->conn, &mdn.bv_val );
|
||||
switch ( rc ) {
|
||||
case REWRITE_REGEXEC_OK:
|
||||
if ( !BER_BVISNULL( &mdn ) && mdn.bv_val != in->bv_val ) {
|
||||
if ( !BER_BVISNULL( &mdn ) && mdn.bv_val != in_val ) {
|
||||
mdn.bv_len = strlen( mdn.bv_val );
|
||||
*dn = mdn;
|
||||
} else {
|
||||
*dn = *in;
|
||||
dn->bv_len = in->bv_len;
|
||||
dn->bv_val = in_val;
|
||||
}
|
||||
rc = LDAP_SUCCESS;
|
||||
|
||||
Debug( LDAP_DEBUG_ARGS,
|
||||
"[rw] %s: \"%s\" -> \"%s\"\n",
|
||||
dc->ctx, in->bv_val, dn->bv_val );
|
||||
dc->ctx, in_val, dn->bv_val );
|
||||
break;
|
||||
|
||||
case REWRITE_REGEXEC_UNWILLING:
|
||||
|
|
|
|||
Loading…
Reference in a new issue