From 0825317a354b39efaea1c8927a1151c8780180fd Mon Sep 17 00:00:00 2001 From: Kurt Zeilenga Date: Tue, 3 Oct 2000 22:23:04 +0000 Subject: [PATCH] Last minute LDIF empty value bug fix --- CHANGES | 1 + clients/tools/ldapmodify.c | 10 ++++++++++ libraries/libldif/line64.c | 2 +- 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/CHANGES b/CHANGES index 58e3eae2eb..42fd905c85 100644 --- a/CHANGES +++ b/CHANGES @@ -11,6 +11,7 @@ OpenLDAP 2.0.5 Release Fixed -lldap first/next attribute bug (ITS#778) Fixed -lldap (v2) rebind URL bug Fixed -lldap msgfree NULL bug (ITS#800) + Fixed -lldif empty value bug Fixed -llber stringal len=0 bug Updated -llber bprint routine Build Environment diff --git a/clients/tools/ldapmodify.c b/clients/tools/ldapmodify.c index 59f2ce0911..2bb835a64e 100644 --- a/clients/tools/ldapmodify.c +++ b/clients/tools/ldapmodify.c @@ -1022,6 +1022,16 @@ domodify( fprintf( stderr, "%s: no attributes to change or add (entry=\"%s\")\n", prog, dn ); return( LDAP_PARAM_ERROR ); + } + + for ( i = 0; pmods[ i ] != NULL; ++i ) { + op = pmods[ i ]->mod_op & ~LDAP_MOD_BVALUES; + if( op == LDAP_MOD_ADD && ( pmods[i]->mod_bvalues == NULL )) { + fprintf( stderr, + "%s: attribute \"%s\" has no values (entry=\"%s\")\n", + prog, pmods[i]->mod_type, dn ); + return LDAP_PARAM_ERROR; + } } if ( verbose ) { diff --git a/libraries/libldif/line64.c b/libraries/libldif/line64.c index e101cd9e3e..947d35a616 100644 --- a/libraries/libldif/line64.c +++ b/libraries/libldif/line64.c @@ -116,7 +116,7 @@ ldif_parse_line( if ( *s == '\0' ) { /* no value */ - value = NULL; + value = ""; vlen = 0; goto done; }