Fix -USLAP_NVALUES

This commit is contained in:
Kurt Zeilenga 2003-02-26 03:12:02 +00:00
parent 25886d989a
commit 46a2616b83
2 changed files with 12 additions and 10 deletions

View File

@ -413,7 +413,7 @@ slap_mods2entry(
for( i=0; attr->a_vals[i].bv_val; i++ ) {
/* count them */
}
for( j=0; mods->sml_nvalues[j].bv_val; j++ ) {
for( j=0; mods->sml_values[j].bv_val; j++ ) {
/* count them */
}
j++; /* NULL */
@ -423,13 +423,14 @@ slap_mods2entry(
/* should check for duplicates */
AC_MEMCPY( &attr->a_vals[i], mods->sml_nvalues,
AC_MEMCPY( &attr->a_vals[i], mods->sml_values,
sizeof( struct berval ) * j );
/* trim the mods array */
ch_free( mods->sml_nvalues );
mods->sml_nvalues = NULL;
ch_free( mods->sml_values );
mods->sml_values = NULL;
#ifdef SLAP_NVALUES
if( attr->a_nvals ) {
attr->a_nvals = ch_realloc( attr->a_nvals,
sizeof( struct berval ) * (i+j) );
@ -441,6 +442,7 @@ slap_mods2entry(
ch_free( mods->sml_nvalues );
mods->sml_nvalues = NULL;
}
#endif
continue;
#else

View File

@ -562,7 +562,7 @@ int slap_mods_check(
/*
* check values
*/
if( ml->sml_nvalues != NULL ) {
if( ml->sml_values != NULL ) {
ber_len_t nvals;
slap_syntax_validate_func *validate =
ad->ad_type->sat_syntax->ssyn_validate;
@ -583,14 +583,14 @@ int slap_mods_check(
* check that each value is valid per syntax
* and pretty if appropriate
*/
for( nvals = 0; ml->sml_nvalues[nvals].bv_val; nvals++ ) {
for( nvals = 0; ml->sml_values[nvals].bv_val; nvals++ ) {
struct berval pval;
if( pretty ) {
rc = pretty( ad->ad_type->sat_syntax,
&ml->sml_nvalues[nvals], &pval );
&ml->sml_values[nvals], &pval );
} else {
rc = validate( ad->ad_type->sat_syntax,
&ml->sml_nvalues[nvals] );
&ml->sml_values[nvals] );
}
if( rc != 0 ) {
@ -602,8 +602,8 @@ int slap_mods_check(
}
if( pretty ) {
ber_memfree( ml->sml_nvalues[nvals].bv_val );
ml->sml_nvalues[nvals] = pval;
ber_memfree( ml->sml_values[nvals].bv_val );
ml->sml_values[nvals] = pval;
}
}