]> git.sur5r.net Git - openldap/commitdiff
ITS#6775
authorQuanah Gibson-Mount <quanah@openldap.org>
Tue, 4 Jan 2011 21:50:52 +0000 (21:50 +0000)
committerQuanah Gibson-Mount <quanah@openldap.org>
Tue, 4 Jan 2011 21:50:52 +0000 (21:50 +0000)
CHANGES
clients/tools/common.c

diff --git a/CHANGES b/CHANGES
index 76671cbaa999f4545515247e378ec1480e1895e6..ad3c378a2e18e79b46076c5d4cf3c76eacf25d6b 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -14,6 +14,7 @@ OpenLDAP 2.4.24 Engineering
        Added slapo-sssvlv multiple sorts per connection (ITS#6686)
        Added contrib/kinit for kerberos tickets
        Added contrib/noopsrch for entry counting (ITS#6598)
+       Fixed client tools control logging (ITS#6775)
        Fixed liblber to not close invalid sockets (ITS#6585)
        Fixed liblber unmatched brace handling (ITS#6764)
        Fixed liblber error setting (ITS#6732)
index b191fa3935e4a04502d943c16c4d1750ec643a72..bb3a2200844d22ed5b892fabbe54c37f2c159bf8 100644 (file)
@@ -1860,6 +1860,7 @@ print_prepostread( LDAP *ld, LDAPControl *ctrl, struct berval *what)
                while ( ber_scanf( ber, "{m" /*}*/, &bv ) != LBER_ERROR ) {
                        int             i;
                        BerVarray       vals = NULL;
+                       char            *str = NULL;
 
                        if ( ber_scanf( ber, "[W]", &vals ) == LBER_ERROR ||
                                vals == NULL )
@@ -1867,14 +1868,25 @@ print_prepostread( LDAP *ld, LDAPControl *ctrl, struct berval *what)
                                /* error? */
                                return 1;
                        }
+
+                       if ( ldif ) {
+                               char *ptr;
+
+                               str = malloc( bv.bv_len + STRLENOF(": ") + 1 );
+
+                               ptr = str;
+                               ptr = lutil_strncopy( ptr, bv.bv_val, bv.bv_len );
+                               ptr = lutil_strcopy( ptr, ": " );
+                       }
                
                        for ( i = 0; vals[ i ].bv_val != NULL; i++ ) {
                                tool_write_ldif(
                                        ldif ? LDIF_PUT_COMMENT : LDIF_PUT_VALUE,
-                                       bv.bv_val, vals[ i ].bv_val, vals[ i ].bv_len );
+                                       ldif ? str : bv.bv_val, vals[ i ].bv_val, vals[ i ].bv_len );
                        }
 
                        ber_bvarray_free( vals );
+                       if ( str ) free( str );
                }
        }
 
@@ -1954,7 +1966,8 @@ print_paged_results( LDAP *ld, LDAPControl *ctrl )
                }
 
                tool_write_ldif( ldif ? LDIF_PUT_COMMENT : LDIF_PUT_VALUE,
-                       "pagedresults", buf, ptr - buf );
+                       ldif ? "pagedresults: " : "pagedresults",
+                       buf, ptr - buf );
        }
 
        return 0;
@@ -1974,7 +1987,7 @@ print_sss( LDAP *ld, LDAPControl *ctrl )
                        err, ldap_err2string(err), attr ? " " : "", attr ? attr : "" );
 
                tool_write_ldif( ldif ? LDIF_PUT_COMMENT : LDIF_PUT_VALUE,
-                       "sortResult", buf, rc );
+                       ldif ? "sortResult: " : "sortResult", buf, rc );
        }
 
        return rc;
@@ -2014,7 +2027,7 @@ print_vlv( LDAP *ld, LDAPControl *ctrl )
                        ber_memfree( bv.bv_val );
 
                tool_write_ldif( ldif ? LDIF_PUT_COMMENT : LDIF_PUT_VALUE,
-                       "vlvResult", buf, rc );
+                       ldif ? "vlvResult" : "vlvResult", buf, rc );
        }
 
        return rc;
@@ -2174,7 +2187,7 @@ print_ppolicy( LDAP *ld, LDAPControl *ctrl )
                }
 
                tool_write_ldif( ldif ? LDIF_PUT_COMMENT : LDIF_PUT_VALUE,
-                       "ppolicy", buf, ptr - buf );
+                       ldif ? "ppolicy: " : "ppolicy", buf, ptr - buf );
        }
 
        return rc;