diff options
| author | Manuel Mausz <manuel@mausz.at> | 2018-06-27 01:06:16 +0200 |
|---|---|---|
| committer | manuel <manuel@mausz.at> | 2018-06-27 01:15:54 +0200 |
| commit | 7ec4ffbdbc562c4a2909d9bf4f3093072e0e3ac1 (patch) | |
| tree | 4552a41d0ff55b69303ca8c6070ec9f6be1819fe /ssl_timeoutio.c | |
| parent | d382146c1145dcd3a4108f1b753fcb1250fd9750 (diff) | |
| download | qmail-7ec4ffbdbc562c4a2909d9bf4f3093072e0e3ac1.tar.gz qmail-7ec4ffbdbc562c4a2909d9bf4f3093072e0e3ac1.tar.bz2 qmail-7ec4ffbdbc562c4a2909d9bf4f3093072e0e3ac1.zip | |
OpenSSL 1.1 compatibility
This adds compatibility for OpenSSL 1.1
Since renegotiation is removed from TLS 1.3 we also removed support for
authentication via client certificates (control/tlsclients). In general
this is still supported by TLS 1.3 however I'm just lazy and we don't
need this feature anyway.
This also adds optional support for OpenSSL configuration commands for
qmail-smtpd and qmail-remote. Commands are loaded from control/opensslconf.
For a list of supported commands see
https://www.openssl.org/docs/man1.0.2/ssl/SSL_CONF_cmd.html#SUPPORTED-CONFIGURATION-FILE-COMMANDS
Diffstat (limited to 'ssl_timeoutio.c')
| -rw-r--r-- | ssl_timeoutio.c | 13 |
1 files changed, 0 insertions, 13 deletions
diff --git a/ssl_timeoutio.c b/ssl_timeoutio.c index 5b2dc9d..30025d5 100644 --- a/ssl_timeoutio.c +++ b/ssl_timeoutio.c | |||
| @@ -68,19 +68,6 @@ int ssl_timeoutconn(int t, int rfd, int wfd, SSL *ssl) | |||
| 68 | return r; | 68 | return r; |
| 69 | } | 69 | } |
| 70 | 70 | ||
| 71 | int ssl_timeoutrehandshake(int t, int rfd, int wfd, SSL *ssl) | ||
| 72 | { | ||
| 73 | int r; | ||
| 74 | |||
| 75 | SSL_renegotiate(ssl); | ||
| 76 | r = ssl_timeoutio(SSL_do_handshake, t, rfd, wfd, ssl, NULL, 0); | ||
| 77 | if (r <= 0 || ssl->type == SSL_ST_CONNECT) return r; | ||
| 78 | |||
| 79 | /* this is for the server only */ | ||
| 80 | ssl->state = SSL_ST_ACCEPT; | ||
| 81 | return ssl_timeoutio(SSL_do_handshake, t, rfd, wfd, ssl, NULL, 0); | ||
| 82 | } | ||
| 83 | |||
| 84 | int ssl_timeoutread(int t, int rfd, int wfd, SSL *ssl, char *buf, int len) | 71 | int ssl_timeoutread(int t, int rfd, int wfd, SSL *ssl, char *buf, int len) |
| 85 | { | 72 | { |
| 86 | if (!buf) return 0; | 73 | if (!buf) return 0; |
