[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: (ITS#6714) Patch - Mozilla NSS - implement full non-blocking semantics

On 12/10/2010 09:03 PM, Howard Chu wrote:
> rmeggins@redhat.com wrote:
>> I "rebased" the patch on top of a recent change:
>> revision 1.24
>> date: 2010/12/06 10:31:59;  author: hallvard;  state: Exp;  lines: +5 
>> -17
>> ITS#6625 Remove some LDAP_R_COMPILEs
> I didn't quite understand the point of the discussion of SSLv2 clients 
> in the comments on this patch, but committed it anyway.
Thanks.  I usually defer to Bob Relyea - he insists this is secure, and 
will not use SSLv2 if it is explicitly disabled (which it is in the 
OpenLDAP implementation).
> I would hope that nobody is still using SSLv2 these days. Also if a 
> StartTLS request fails, then the rest of the code in tlsm.c should 
> never even be reached; the TLS sockbuf layer wouldn't be installed.
In my testing, openldap server was calling the tls session_accept 
function after the client failed to start tls.  Because the failure was 
on the client side (e.g. a bogus CA cert), the server left the 
connection flagged with c_needs_tls_accept, and called 
ldap_pvt_tls_accept() on the next read.  I've confirmed this using both 
openldap 2.4 with openssl and with moznss.  openssl also checks for 
sslv2 incoming connections, but handles error cases better (e.g. it 
looks for http connections), including the case where the header bytes 
don't match a known sslv2, v3, or tls handshake.  See 
ssl23_get_client_hello() for more information.
>> The new patch is here:
>> ftp://ftp.openldap.org/incoming/openldap-2.4.23-use-non-blocking-semantics-20101208.patch 
>> This patch file is derived from OpenLDAP Software. All of the
>> modifications to OpenLDAP Software represented in the following
>> patch(es) were developed by Red Hat. Red Hat has not assigned rights
>> and/or interest in this work to any party. I, Rich Megginson am
>> authorized by Red Hat, my employer, to release this work under the
>> following terms.
>> Red Hat hereby place the following modifications to OpenLDAP Software
>> (and only these modifications) into the public domain. Hence, these
>> modifications may be freely used and/or redistributed for any purpose
>> with or without attribution and/or other notice.