]> git.sur5r.net Git - openldap/blobdiff - libraries/libldap/abandon.c
Sync with HEAD
[openldap] / libraries / libldap / abandon.c
index a69aa4dc20b4dae6bf58a92f11f5a49bb5e1eba6..551940d1b1655dbbe13d3584db06cf2be8dd05ae 100644 (file)
@@ -110,11 +110,11 @@ do_abandon(
        ber_int_t origid,
        ber_int_t msgid,
        LDAPControl **sctrls,
-       LDAPControl **cctrls)
+       LDAPControl **cctrls )
 {
        BerElement      *ber;
        int             i, err, sendabandon;
-       ber_int_t *old_abandon;
+       ber_int_t       *old_abandon;
        Sockbuf         *sb;
        LDAPRequest     *lr;
 
@@ -191,23 +191,24 @@ do_abandon(
                        i = ++(ld)->ld_msgid;
 #ifdef LDAP_CONNECTIONLESS
                        if ( LDAP_IS_UDP(ld) ) {
-                           err = ber_write( ber, ld->ld_options.ldo_peer,
-                               sizeof(struct sockaddr), 0);
+                               err = ber_write( ber, ld->ld_options.ldo_peer,
+                                       sizeof(struct sockaddr), 0);
                        }
                        if ( LDAP_IS_UDP(ld) && ld->ld_options.ldo_version ==
-                               LDAP_VERSION2) {
-                           char *dn = ld->ld_options.ldo_cldapdn;
-                           if (!dn) dn = "";
-                           err = ber_printf( ber, "{isti",  /* '}' */
-                               i, dn,
-                               LDAP_REQ_ABANDON, msgid );
+                               LDAP_VERSION2 )
+                       {
+                               char *dn = ld->ld_options.ldo_cldapdn;
+                               if (!dn) dn = "";
+                               err = ber_printf( ber, "{isti",  /* '}' */
+                                       i, dn,
+                                       LDAP_REQ_ABANDON, msgid );
                        } else
 #endif
                        {
-                           /* create a message to send */
-                           err = ber_printf( ber, "{iti",  /* '}' */
-                               i,
-                               LDAP_REQ_ABANDON, msgid );
+                               /* create a message to send */
+                               err = ber_printf( ber, "{iti",  /* '}' */
+                                       i,
+                                       LDAP_REQ_ABANDON, msgid );
                        }
 
                        if( err == -1 ) {
@@ -244,7 +245,7 @@ do_abandon(
                                        sb = ld->ld_sb;
                                }
 
-                               if ( ber_flush( sb, ber, 1 ) != 0 ) {
+                               if ( ber_flush2( sb, ber, LBER_FLUSH_FREE_ALWAYS ) != 0 ) {
                                        ld->ld_errno = LDAP_SERVER_DOWN;
                                        err = -1;
                                } else {