]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/back-ldap/extended.c
fix memory handling
[openldap] / servers / slapd / back-ldap / extended.c
index 8eef4d317e5089e19ba2acac7c9ccb218b1f776b..5c631ba4a1caebcf2071cfc14f7beaf10166d750 100644 (file)
@@ -122,7 +122,7 @@ retry:
                op->o_ctrls, NULL, &msgid );
 
        if ( rc == LDAP_SUCCESS ) {
-               if ( ldap_result( lc->lc_ld, msgid, 1, NULL, &res ) == -1 ) {
+               if ( ldap_result( lc->lc_ld, msgid, LDAP_MSG_ALL, NULL, &res ) == -1 ) {
                        ldap_get_option( lc->lc_ld, LDAP_OPT_ERROR_NUMBER, &rc );
                        ldap_back_freeconn( op, lc, 0 );
                        lc = NULL;
@@ -135,6 +135,7 @@ retry:
                                        (char **)&rs->sr_matched,
                                        (char **)&rs->sr_text,
                                        NULL, NULL, 0 );
+#ifndef LDAP_NULL_IS_NULL
                        if ( rs->sr_matched && rs->sr_matched[ 0 ] == '\0' ) {
                                free( (char *)rs->sr_matched );
                                rs->sr_matched = NULL;
@@ -143,6 +144,7 @@ retry:
                                free( (char *)rs->sr_text );
                                rs->sr_text = NULL;
                        }
+#endif /* LDAP_NULL_IS_NULL */
                        if ( rc == LDAP_SUCCESS ) {
                                if ( rs->sr_err == LDAP_SUCCESS ) {
                                        struct berval   newpw;