]> git.sur5r.net Git - openldap/commitdiff
ITS#6639
authorQuanah Gibson-Mount <quanah@openldap.org>
Sun, 12 Dec 2010 02:47:27 +0000 (02:47 +0000)
committerQuanah Gibson-Mount <quanah@openldap.org>
Sun, 12 Dec 2010 02:47:27 +0000 (02:47 +0000)
CHANGES
libraries/libldap/sasl.c

diff --git a/CHANGES b/CHANGES
index d037893c4068c417dfa66f8eae94e7ed3a5d0020..7187d5aed8b5ba39237313faa690249372ac6366 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -3,6 +3,7 @@ OpenLDAP 2.4 Change Log
 OpenLDAP 2.4.24 Engineering
        Fixed liblber to not close invalid sockets (ITS#6585)
        Fixed libldap dnssrv port format specifier (ITS#6644)
+       Fixed libldap sasl partial write handling (ITS#6639)
        Fixed ldapsearch segfault with deref (ITS#6638)
        Fixed slapd acl parsing overflow (ITS#6611)
        Fixed slapd modify to return actual error (ITS#6581)
index 6aa8cce49791cda8720636d6f88c8589c4cee24d..8856ef78d556b74607390d2e2b548460565af3b7 100644 (file)
@@ -733,8 +733,9 @@ sb_sasl_generic_write( Sockbuf_IO_Desc *sbiod, void *buf, ber_len_t len)
                return ret;
        } else if ( p->buf_out.buf_ptr != p->buf_out.buf_end ) {
                /* partial write? pretend nothing got written */
-               len2 = 0;
                p->flags |= LDAP_PVT_SASL_PARTIAL_WRITE;
+               sock_errset(EAGAIN);
+               len2 = -1;
        }
 
        /* return number of bytes encoded, not written, to ensure