Log Message:
-----------
Here is a patch to fix win32 ssl builds. Summary of changes:
* Links with -leay32 and -lssleay32 instead of crypto and ssl. On win32,
"crypto and ssl" is only used for static linking.
* Initializes SSL in the backend and not just in the postmaster. We
cannot pass the SSL context from the postmaster through the parameter
file, because it contains function pointers.
* Split one error check in be-secure.c. Previously we could not tell
which of three calls actually failed. The previous code also returned
incorrect error messages if SSL_accept() failed - that function needs to
use SSL_get_error() on the return value, can't just use the error queue.
* Since the win32 implementation uses non-blocking sockets "behind the
scenes" in order to deliver signals correctly, implements a version of
SSL_accept() that can handle this. Also, add a wait function in case
SSL_read or SSL_write() needs more data.
Magnus Hagander
Modified Files:
--------------
pgsql-server:
configure (r1.398 -> r1.399)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/configure.diff?r1=1.398&r2=1.399)
configure.in (r1.379 -> r1.380)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/configure.in.diff?r1=1.379&r2=1.380)
pgsql-server/src/backend/libpq:
be-secure.c (r1.51 -> r1.52)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/libpq/be-secure.c.diff?r1=1.51&r2=1.52)
pgsql-server/src/backend/port/win32:
socket.c (r1.6 -> r1.7)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/port/win32/socket.c.diff?r1=1.6&r2=1.7)
pgsql-server/src/backend/postmaster:
postmaster.c (r1.425 -> r1.426)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/postmaster/postmaster.c.diff?r1=1.425&r2=1.426)
pgsql-server/src/include:
pg_config.h.in (r1.79 -> r1.80)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/pg_config.h.in.diff?r1=1.79&r2=1.80)
pgsql-server/src/include/port:
win32.h (r1.36 -> r1.37)
(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/port/win32.h.diff?r1=1.36&r2=1.37)
---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend