address ITS#4586

This commit is contained in:
Pierangelo Masarati 2006-06-12 15:52:23 +00:00
parent aa6bd34724
commit 7e275fdc2c

View File

@ -605,6 +605,14 @@ log_cf_gen(ConfigArgs *c)
case SLAP_CONFIG_EMIT: case SLAP_CONFIG_EMIT:
switch( c->type ) { switch( c->type ) {
case LOG_DB: case LOG_DB:
if ( li->li_db == NULL ) {
snprintf( c->msg, sizeof( c->msg ),
"accesslog: \"logdb <suffix>\" must be specified" );
Debug( LDAP_DEBUG_ANY, "%s: %s \"%s\"\n",
c->log, c->msg, c->value_dn.bv_val );
rc = 1;
break;
}
value_add( &c->rvalue_vals, li->li_db->be_suffix ); value_add( &c->rvalue_vals, li->li_db->be_suffix );
value_add( &c->rvalue_nvals, li->li_db->be_nsuffix ); value_add( &c->rvalue_nvals, li->li_db->be_nsuffix );
break; break;
@ -690,7 +698,7 @@ log_cf_gen(ConfigArgs *c)
ch_free( la ); ch_free( la );
} }
} else { } else {
log_attr *la, **lp; log_attr *la = NULL, **lp;
int i; int i;
for ( lp = &li->li_oldattrs, i=0; i < c->valx; i++ ) { for ( lp = &li->li_oldattrs, i=0; i < c->valx; i++ ) {
@ -708,7 +716,8 @@ log_cf_gen(ConfigArgs *c)
case LOG_DB: case LOG_DB:
li->li_db = select_backend( &c->value_ndn, 0, 0 ); li->li_db = select_backend( &c->value_ndn, 0, 0 );
if ( !li->li_db ) { if ( !li->li_db ) {
sprintf( c->msg, "<%s> no matching backend found for suffix", snprintf( c->msg, sizeof( c->msg ),
"<%s> no matching backend found for suffix",
c->argv[0] ); c->argv[0] );
Debug( LDAP_DEBUG_ANY, "%s: %s \"%s\"\n", Debug( LDAP_DEBUG_ANY, "%s: %s \"%s\"\n",
c->log, c->msg, c->value_dn.bv_val ); c->log, c->msg, c->value_dn.bv_val );
@ -1426,6 +1435,13 @@ accesslog_db_open(
int rc; int rc;
void *thrctx; void *thrctx;
if ( li->li_db == NULL ) {
Debug( LDAP_DEBUG_ANY,
"accesslog: \"logdb <suffix>\" must be specified.\n",
0, 0, 0 );
return 1;
}
if ( slapMode & SLAP_TOOL_MODE ) if ( slapMode & SLAP_TOOL_MODE )
return 0; return 0;