]> git.ipfire.org Git - thirdparty/openldap.git/commitdiff
ITS#9458 fix connection_init failure reset
authorHoward Chu <hyc@openldap.org>
Mon, 8 Feb 2021 00:57:28 +0000 (00:57 +0000)
committerHoward Chu <hyc@openldap.org>
Mon, 8 Feb 2021 00:57:28 +0000 (00:57 +0000)
servers/slapd/connection.c

index 44c3fc63df600efe7bc649db1018bc491ef7ecba..0c7d4c54b1e639f4589d30409287642081cc5b00 100644 (file)
@@ -553,8 +553,15 @@ Connection * connection_init(
                BER_BVZERO( &c->c_peer_name );
 
                ber_sockbuf_free( c->c_sb );
-               c->c_sb = NULL;
+               c->c_sb = ber_sockbuf_alloc( );
+               {
+                       ber_len_t max = sockbuf_max_incoming;
+                       ber_sockbuf_ctrl( c->c_sb, LBER_SB_OPT_SET_MAX_INCOMING, &max );
+               }
+
                c->c_sd = AC_SOCKET_INVALID;
+               c->c_conn_state = SLAP_C_INVALID;
+               c->c_struct_state = SLAP_C_UNUSED;
                ldap_pvt_thread_mutex_unlock( &c->c_mutex );
 
                return NULL;