mail/qmail-tls: Fix build with LibreSSL

- Replace direct struct access with get/setters

PR:		218590
Approved by:	erdgeist (maintainer)
MFH:		2017Q3
This commit is contained in:
Bernard Spil 2017-07-27 11:20:12 +00:00
parent 89c959fd19
commit 02bc8b0d80
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=446735

View file

@ -0,0 +1,26 @@
--- qmail-remote.c.orig 2017-05-14 13:50:09 UTC
+++ qmail-remote.c
@@ -266,7 +266,7 @@ char *append;
{
#ifdef TLS
/* shouldn't talk to the client unless in an appropriate state */
- int state = ssl ? ssl->state : SSL_ST_BEFORE;
+ int state = SSL_get_state(ssl);
if (state & SSL_ST_OK || (!smtps && state & SSL_ST_BEFORE))
#endif
substdio_putsflush(&smtpto,"QUIT\r\n");
--- ssl_timeoutio.c.orig 2017-05-14 13:50:09 UTC
+++ ssl_timeoutio.c
@@ -74,10 +74,10 @@ int ssl_timeoutrehandshake(int t, int rf
SSL_renegotiate(ssl);
r = ssl_timeoutio(SSL_do_handshake, t, rfd, wfd, ssl, NULL, 0);
- if (r <= 0 || ssl->type == SSL_ST_CONNECT) return r;
+ if (r <= 0 || SSL_get_state(ssl) == SSL_ST_CONNECT) return r;
/* this is for the server only */
- ssl->state = SSL_ST_ACCEPT;
+ SSL_set_connect_state(ssl);
return ssl_timeoutio(SSL_do_handshake, t, rfd, wfd, ssl, NULL, 0);
}