The SSL/TLS support in Qt4 was broken during the notBefore/notAfter
reshuffling way back in August last year. You'd get an error such as

[21:54:10] W:QSslSocket: cannot call unresolved function X509_getm_notBefore
Segmentation fault (core dumped)

No one complained until rsadowski showed it to me here in Bucharest.
Once this has seen more testing it should probably land in -stable,
I would appreciate some help with that.

Index: Makefile
===================================================================
RCS file: /var/cvs/ports/x11/qt4/Makefile,v
retrieving revision 1.158
diff -u -p -r1.158 Makefile
--- Makefile    12 Jul 2019 20:51:20 -0000      1.158
+++ Makefile    11 Nov 2019 21:40:26 -0000
@@ -25,14 +25,14 @@ PKGNAME-main =              qt4-${PKGVERSION}
 PKGNAME-debug =                qt4-debug-${PKGVERSION}
 FULLPKGNAME-html =     qt4-html-${PKGVERSION}
 FULLPKGPATH-html =     ${BASE_PKGPATH},-html
-REVISION-main =                19
-REVISION-mysql =       6
-REVISION-postgresql =  6
-REVISION-sqlite2 =     6
-REVISION-tds =         6
+REVISION-main =                20
+REVISION-mysql =       7
+REVISION-postgresql =  7
+REVISION-sqlite2 =     7
+REVISION-tds =         7
 REVISION-debug =       3
-REVISION-examples =    7
-REVISION-html =                3
+REVISION-examples =    8
+REVISION-html =                4
 
 # XXX qmake include parser is bogus
 DPB_PROPERTIES =       parallel        nojunk
Index: patches/patch-src_network_ssl_qsslsocket_openssl_symbols_p_h
===================================================================
RCS file: 
/var/cvs/ports/x11/qt4/patches/patch-src_network_ssl_qsslsocket_openssl_symbols_p_h,v
retrieving revision 1.1
diff -u -p -r1.1 patch-src_network_ssl_qsslsocket_openssl_symbols_p_h
--- patches/patch-src_network_ssl_qsslsocket_openssl_symbols_p_h        27 Aug 
2018 03:54:57 -0000      1.1
+++ patches/patch-src_network_ssl_qsslsocket_openssl_symbols_p_h        11 Nov 
2019 20:07:24 -0000
@@ -3,14 +3,23 @@ $OpenBSD: patch-src_network_ssl_qsslsock
 Index: src/network/ssl/qsslsocket_openssl_symbols_p.h
 --- src/network/ssl/qsslsocket_openssl_symbols_p.h.orig
 +++ src/network/ssl/qsslsocket_openssl_symbols_p.h
-@@ -410,8 +410,8 @@ DSA *q_d2i_DSAPrivateKey(DSA **a, unsigned char **pp, 
+@@ -360,6 +360,8 @@ int q_X509_get_ext_count(X509 *a);
+ void *q_X509_get_ext_d2i(X509 *a, int b, int *c, int *d);
+ X509_NAME *q_X509_get_issuer_name(X509 *a);
+ X509_NAME *q_X509_get_subject_name(X509 *a);
++ASN1_TIME *q_X509_getm_notBefore(const X509 *x);
++ASN1_TIME *q_X509_getm_notAfter(const X509 *x);
+ int q_X509_verify_cert(X509_STORE_CTX *ctx);
+ int q_X509_NAME_entry_count(X509_NAME *a);
+ X509_NAME_ENTRY *q_X509_NAME_get_entry(X509_NAME *a,int b);
+@@ -410,8 +412,8 @@ DSA *q_d2i_DSAPrivateKey(DSA **a, unsigned char **pp, 
  #define q_sk_SSL_CIPHER_value(st, i) q_SKM_sk_value(SSL_CIPHER, (st), (i))
  #define q_SSL_CTX_add_extra_chain_cert(ctx,x509) \
          q_SSL_CTX_ctrl(ctx,SSL_CTRL_EXTRA_CHAIN_CERT,0,(char *)x509)
 -#define q_X509_get_notAfter(x) X509_get_notAfter(x)
 -#define q_X509_get_notBefore(x) X509_get_notBefore(x)
-+#define q_X509_getm_notAfter(x) X509_getm_notAfter(x)
-+#define q_X509_getm_notBefore(x) X509_getm_notBefore(x)
++#define q_X509_getm_notAfter(x) q_X509_getm_notAfter(x)
++#define q_X509_getm_notBefore(x) q_X509_getm_notBefore(x)
  #define q_EVP_PKEY_assign_RSA(pkey,rsa) 
q_EVP_PKEY_assign((pkey),EVP_PKEY_RSA,\
                                        (char *)(rsa))
  #define q_EVP_PKEY_assign_DSA(pkey,dsa) 
q_EVP_PKEY_assign((pkey),EVP_PKEY_DSA,\

Reply via email to