aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Zander <riggs@FreeBSD.org>2018-03-10 14:44:27 +0000
committerThomas Zander <riggs@FreeBSD.org>2018-03-10 14:44:27 +0000
commitaec6fb0fb3ff02aed3df92d905207b9bfa8563e9 (patch)
tree0695a64ecd9965b581828c424052c3049dffc256
parentd69e75cfd35906fa01a707fb0d7ac8ec892168c4 (diff)
downloadports-aec6fb0fb3ff02aed3df92d905207b9bfa8563e9.tar.gz
ports-aec6fb0fb3ff02aed3df92d905207b9bfa8563e9.zip
Un-break with SSL OPTION (default)
PR: 225885 Submitted by: brnrd MFH: 2018Q1
Notes
Notes: svn path=/head/; revision=464076
-rw-r--r--mail/cclient/Makefile4
-rw-r--r--mail/cclient/files/patch-src_osdep_unix_ssl__unix.c26
2 files changed, 27 insertions, 3 deletions
diff --git a/mail/cclient/Makefile b/mail/cclient/Makefile
index 625cc362e5f4..a34d08227792 100644
--- a/mail/cclient/Makefile
+++ b/mail/cclient/Makefile
@@ -3,7 +3,7 @@
PORTNAME= cclient
PORTVERSION= 2007f
-PORTREVISION= 2
+PORTREVISION= 3
PORTEPOCH= 1
CATEGORIES= mail devel ipv6
MASTER_SITES= ftp://ftp.cac.washington.edu/imap/%SUBDIR%/ \
@@ -26,8 +26,6 @@ OPTIONS_DEFAULT= SSL
SSL_AND_PLAINTEXT_DESC= Allow plain text passwords and SSL
MBX_DEFAULT_DESC= Use MBX as default mailbox format
-BROKEN_SSL= openssl-devel
-
ALL_TARGET= bsf
MAKE_JOBS_UNSAFE= yes
USE_LDCONFIG= yes
diff --git a/mail/cclient/files/patch-src_osdep_unix_ssl__unix.c b/mail/cclient/files/patch-src_osdep_unix_ssl__unix.c
new file mode 100644
index 000000000000..549908690ab9
--- /dev/null
+++ b/mail/cclient/files/patch-src_osdep_unix_ssl__unix.c
@@ -0,0 +1,26 @@
+--- src/osdep/unix/ssl_unix.c.orig 2011-07-23 00:20:10 UTC
++++ src/osdep/unix/ssl_unix.c
+@@ -270,9 +270,9 @@ static char *ssl_start_work (SSLSTREAM *
+ (err = ssl_validate_cert (cert = SSL_get_peer_certificate (stream->con),
+ host))) {
+ /* application callback */
+- if (scq) return (*scq) (err,host,cert ? cert->name : "???") ? NIL : "";
++ if (scq) return (*scq) (err,host,cert ? X509_get_subject_name(cert) : "???") ? NIL : "";
+ /* error message to return via mm_log() */
+- sprintf (tmp,"*%.128s: %.255s",err,cert ? cert->name : "???");
++ sprintf (tmp,"*%.128s: %.255s",err,cert ? X509_get_subject_name(cert) : "???");
+ return ssl_last_error = cpystr (tmp);
+ }
+ return NIL;
+@@ -322,9 +322,9 @@ static char *ssl_validate_cert (X509 *ce
+ /* make sure have a certificate */
+ if (!cert) ret = "No certificate from server";
+ /* and that it has a name */
+- else if (!cert->name) ret = "No name in certificate";
++ else if (!X509_get_subject_name(cert)) ret = "No name in certificate";
+ /* locate CN */
+- else if (s = strstr (cert->name,"/CN=")) {
++ else if (s = strstr (X509_get_subject_name(cert),"/CN=")) {
+ if (t = strchr (s += 4,'/')) *t = '\0';
+ /* host name matches pattern? */
+ ret = ssl_compare_hostnames (host,s) ? NIL :