From: <sc...@us...> - 2004-03-12 20:52:09
|
Update of /cvsroot/aolserver/nsopenssl In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12246 Modified Files: ChangeLog nsopenssl.c ssl.c Log Message: Fix to allow mixed case params; thanks to Noah Robin at AOL. Index: ChangeLog =================================================================== RCS file: /cvsroot/aolserver/nsopenssl/ChangeLog,v retrieving revision 1.99 retrieving revision 1.100 diff -C2 -d -r1.99 -r1.100 *** ChangeLog 29 Feb 2004 14:12:54 -0000 1.99 --- ChangeLog 12 Mar 2004 20:32:18 -0000 1.100 *************** *** 1,2 **** --- 1,13 ---- + 2004-03-12 Scott Goodwin <sc...@sc...> + + * nsopenssl.c: Changed couple of STREQ's for STRIEQ's so sslcontext + could be upper, lower or mixed case. Thanks to Noah Robin (sitz AT + aol.net). + + 2004-03-02 Scott Goodwin <sc...@sc...> + + * ssl.c: Changed SSL handshake failure to be a warning instead of an + error. + 2004-02-29 Scott Goodwin <sc...@sc...> Index: nsopenssl.c =================================================================== RCS file: /cvsroot/aolserver/nsopenssl/nsopenssl.c,v retrieving revision 1.69 retrieving revision 1.70 diff -C2 -d -r1.69 -r1.70 *** nsopenssl.c 29 Feb 2004 14:12:55 -0000 1.69 --- nsopenssl.c 12 Mar 2004 20:32:19 -0000 1.70 *************** *** 342,349 **** if (sslcontext != NULL) { Ns_Log(Notice, "%s (%s): default SSL context for %s is %s", MODULE, server, name, value); ! if (STREQ(name, "server")) { thisServer->defaultservercontext = value; Ns_Log(Notice, "default server SSL context: %s", thisServer->defaultservercontext); ! } else if (STREQ(name, "client")) { thisServer->defaultclientcontext = value; Ns_Log(Notice, "default client SSL context: %s", thisServer->defaultclientcontext); --- 342,349 ---- if (sslcontext != NULL) { Ns_Log(Notice, "%s (%s): default SSL context for %s is %s", MODULE, server, name, value); ! if (STRIEQ(name, "server")) { thisServer->defaultservercontext = value; Ns_Log(Notice, "default server SSL context: %s", thisServer->defaultservercontext); ! } else if (STRIEQ(name, "client")) { thisServer->defaultclientcontext = value; Ns_Log(Notice, "default client SSL context: %s", thisServer->defaultclientcontext); Index: ssl.c =================================================================== RCS file: /cvsroot/aolserver/nsopenssl/ssl.c,v retrieving revision 1.58 retrieving revision 1.59 diff -C2 -d -r1.58 -r1.59 *** ssl.c 1 Mar 2004 15:52:49 -0000 1.58 --- ssl.c 12 Mar 2004 20:32:22 -0000 1.59 *************** *** 835,838 **** --- 835,839 ---- { int rc = 0; + /* XXX defer to sslconn->socket ... */ SOCKET socket = SSL_get_fd(sslconn->ssl); *************** *** 855,863 **** case SSL_ERROR_WANT_WRITE: //Ns_Log(Debug, "Handshake(%d): SSL_ERROR_WANT_WRITE (rc = %d)", socket, rc); break; case SSL_ERROR_WANT_READ: - /* We want to read but socket's nothing to read yet */ //Ns_Log(Debug, "Handshake(%d): SSL_ERROR_WANT_READ (rc = %d)", socket, rc); break; --- 856,870 ---- case SSL_ERROR_WANT_WRITE: //Ns_Log(Debug, "Handshake(%d): SSL_ERROR_WANT_WRITE (rc = %d)", socket, rc); + /* XXX need write wait at this point */ break; case SSL_ERROR_WANT_READ: //Ns_Log(Debug, "Handshake(%d): SSL_ERROR_WANT_READ (rc = %d)", socket, rc); + if (rc < 0 + && ns_sockerrno == EWOULDBLOCK + && Ns_SockWait(sslconn->socket, NS_SOCK_READ, sslconn->recvwait) != NS_OK) + { + return NS_ERROR; + } break; *************** *** 892,896 **** } ! Ns_Log(Error, "%s (%s): SSL handshake failed", MODULE, sslconn->server); return NS_ERROR; } --- 899,904 ---- } ! Ns_Log(Warning, "%s (%s): SSL handshake failed (might be normal if client does not have CA cert)", MODULE, sslconn->server); ! return NS_ERROR; } |