]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
Last minute LDIF empty value bug fix
authorKurt Zeilenga <kurt@openldap.org>
Tue, 3 Oct 2000 22:23:04 +0000 (22:23 +0000)
committerKurt Zeilenga <kurt@openldap.org>
Tue, 3 Oct 2000 22:23:04 +0000 (22:23 +0000)
CHANGES
clients/tools/ldapmodify.c
libraries/libldif/line64.c

diff --git a/CHANGES b/CHANGES
index 58e3eae2ebafd0bcd1215a01b277726967d7ed13..42fd905c8583b5c0ce6e2bae4493b14b7dc9c4b5 100644 (file)
--- 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
index 59f2ce0911f2254136d207aea02b45954fb69407..2bb835a64e024741955d2575287384b4f76a59a9 100644 (file)
@@ -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 ) {
index e101cd9e3ecfa4ae01911c30e355c7fc7137b8d0..947d35a616768dce83bfc28a8fc0bbb98ab3121f 100644 (file)
@@ -116,7 +116,7 @@ ldif_parse_line(
 
        if ( *s == '\0' ) {
                /* no value */
-               value = NULL;
+               value = "";
                vlen = 0;
                goto done;
        }