[Midnightbsd-cvs] mports [23516] trunk/mail/cclient: modernize and update ssl config
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Sat May 12 10:50:03 EDT 2018
Revision: 23516
http://svnweb.midnightbsd.org/mports/?rev=23516
Author: laffer1
Date: 2018-05-12 10:50:02 -0400 (Sat, 12 May 2018)
Log Message:
-----------
modernize and update ssl config
Modified Paths:
--------------
trunk/mail/cclient/Makefile
Added Paths:
-----------
trunk/mail/cclient/files/patch-src_osdep_unix_ssl__unix.c
Modified: trunk/mail/cclient/Makefile
===================================================================
--- trunk/mail/cclient/Makefile 2018-05-12 14:44:51 UTC (rev 23515)
+++ trunk/mail/cclient/Makefile 2018-05-12 14:50:02 UTC (rev 23516)
@@ -2,6 +2,7 @@
PORTNAME= cclient
PORTVERSION= 2007f
+PORTREVISION= 1
PORTEPOCH= 1
CATEGORIES= mail devel ipv6
MASTER_SITES= ftp://ftp.cac.washington.edu/imap/%SUBDIR%/ \
@@ -14,36 +15,46 @@
MAINTAINER= ports at MidnightBSD.org
COMMENT= Mark Crispin's C-client mail access routines
+
LICENSE= apache2
+LICENSE_FILE= ${WRKSRC}/LICENSE.txt
-OPTIONS= SSL "Compile with SSL support" on \
- SSL_AND_PLAINTEXT "Allow plain text passwords and SSL" off \
- IPV6 "Support IPv6" on \
- MBX_DEFAULT "Use MBX as default mailbox format" off
+CONFLICTS_INSTALL= panda-cclient-20*
-.include <bsd.port.pre.mk>
+OPTIONS_DEFINE= SSL SSL_AND_PLAINTEXT IPV6 MBX_DEFAULT
+OPTIONS_DEFAULT= SSL
+SSL_AND_PLAINTEXT_DESC= Allow plain text passwords and SSL
+MBX_DEFAULT_DESC= Use MBX as default mailbox format
+ALL_TARGET= bsf
+MAKE_JOBS_UNSAFE= yes
USE_LDCONFIG= yes
-ALL_TARGET= bsf
-.if defined(WITHOUT_SSL)
+
+SSL_USES= ssl
+
+.include <bsd.mport.options.mk>
+
+.if ${PORT_OPTIONS:MSSL}
+PKGMESSAGE= pkg-message-ssl
+.endif
+
+.if ! ${PORT_OPTIONS:MSSL}
MAKE_ARGS+= SSLTYPE=none SSLDIR=${OPENSSLBASE}
.else
-USE_OPENSSL= yes
-.if defined(WITH_SSL_AND_PLAINTEXT)
-MAKE_ARGS+= SSLTYPE=unix
+.if ${PORT_OPTIONS:MSSL_AND_PLAINTEXT}
+MAKE_ARGS+= SSLTYPE=unix SSLDIR=${OPENSSLDIR}
.else
-MAKE_ARGS+= SSLTYPE=unix.nopwd
+MAKE_ARGS+= SSLTYPE=unix.nopwd SSLDIR=${OPENSSLDIR}
.endif
.endif
-MAKE_JOBS_UNSAFE= yes
-
WRKSRC= ${WRKDIR}/${DISTNAME}
+MAKE_ARGS+= EXTRACFLAGS="${CFLAGS}"
SHLIBBASE= c-client4
SHLIBMAJ= 9
SHLIBNAME= lib${SHLIBBASE}.so.${SHLIBMAJ}
-MAKE_ENV= SHLIBNAME=${SHLIBNAME} SHLIBBASE=${SHLIBBASE}
+MAKE_ENV+= SHLIBNAME=${SHLIBNAME} SHLIBBASE=${SHLIBBASE}
PLIST_SUB= SHLIBNAME=${SHLIBNAME} SHLIBBASE=${SHLIBBASE}
post-patch:
@@ -52,11 +63,18 @@
.endfor
@${REINPLACE_CMD} -e "s:/etc/ssl/certs:${PREFIX}/certs:g; \
s:/etc/ssl/private:${PREFIX}/certs:g" ${WRKSRC}/Makefile
-.if !defined(WITHOUT_IPV6)
+ @${REINPLACE_CMD} -e "s:/etc/c-client.cf:${PREFIX}/etc/c-client.cf:" \
+ ${WRKSRC}/src/osdep/unix/env_unix.h
+.if ${PORT_OPTIONS:MSSL}
+ @${REINPLACE_CMD} -e " \
+ s:SSLINCLUDE=/usr/include/openssl SSLLIB=/usr/lib:SSLINCLUDE=${OPENSSLINC} SSLLIB=${OPENSSLLIB}: \
+ " ${WRKSRC}/Makefile
+.endif
+.if ${PORT_OPTIONS:MIPV6}
@${REINPLACE_CMD} -e "s|^IP=4|IP=6|" ${WRKSRC}/Makefile \
${WRKSRC}/src/osdep/unix/Makefile
.endif
-.if defined(WITH_MBX_DEFAULT)
+.if ${PORT_OPTIONS:MMBX_DEFAULT}
@${REINPLACE_CMD} -e "s|^CREATEPROTO=unixproto|CREATEPROTO=mbxproto|" \
${WRKSRC}/src/osdep/unix/Makefile
.endif
@@ -73,7 +91,7 @@
post-build:
@${ECHO_CMD} "#define CCLIENT_PORTVERSION \"${PORTVERSION}\"" >${PORTREV_H}
-.if !defined(WITHOUT_SSL)
+.if ${PORT_OPTIONS:MSSL}
@${ECHO_CMD} "#define CCLIENT_SSLENABLED \"yes\"" >>${PORTREV_H}
.else
@${ECHO_CMD} "#define CCLIENT_SSLENABLED \"no\"" >>${PORTREV_H}
@@ -84,23 +102,13 @@
.for f in ${HEADERS}
${INSTALL_DATA} ${WRKSRC}/c-client/${f} ${PREFIX}/include/c-client
.endfor
- ${INSTALL} ${COPY} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \
- ${WRKSRC}/c-client/${SHLIBNAME} ${PREFIX}/lib
- ${LN} -sf ${SHLIBNAME} ${PREFIX}/lib/lib${SHLIBBASE}.so
+ ${INSTALL_LIB} ${WRKSRC}/c-client/${SHLIBNAME} ${STAGEDIR}${PREFIX}/lib
+ ${LN} -sf ${SHLIBNAME} ${STAGEDIR}${PREFIX}/lib/lib${SHLIBBASE}.so
${INSTALL_DATA} ${WRKSRC}/c-client/c-client.a \
- ${PREFIX}/lib/lib${SHLIBBASE}.a
- ${INSTALL_DATA} ${WRKSRC}/c-client/CFLAGS ${PREFIX}/include/c-client
- ${INSTALL_DATA} ${WRKSRC}/c-client/LDFLAGS ${PREFIX}/include/c-client
- ${INSTALL_DATA} ${WRKSRC}/c-client/OSCFLAGS ${PREFIX}/include/c-client
+ ${STAGEDIR}${PREFIX}/lib/lib${SHLIBBASE}.a
+ ${INSTALL_DATA} ${WRKSRC}/c-client/CFLAGS ${STAGEDIR}${PREFIX}/include/c-client
+ ${INSTALL_DATA} ${WRKSRC}/c-client/LDFLAGS ${STAGEDIR}${PREFIX}/include/c-client
+ ${INSTALL_DATA} ${WRKSRC}/c-client/OSCFLAGS ${STAGEDIR}${PREFIX}/include/c-client
+ ${INSTALL_DATA} ${PORTREV_H} ${STAGEDIR}${PREFIX}/include/c-client
-post-install:
- ${INSTALL_DATA} ${PORTREV_H} ${PREFIX}/include/c-client
-.if !defined(WITHOUT_SSL)
- @${ECHO} "================================================================================"
- @${ECHO} "Warning: You have chosen to include SSL support. Applications/ports that use"
- @${ECHO} "the cclient library but do not support SSL may stop working or have problems"
- @${ECHO} "linking. Linking them explicitly with ssl (-lssl -lcrypto) may or may not help."
- @${ECHO} "================================================================================"
-.endif
-
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
Added: trunk/mail/cclient/files/patch-src_osdep_unix_ssl__unix.c
===================================================================
--- trunk/mail/cclient/files/patch-src_osdep_unix_ssl__unix.c (rev 0)
+++ trunk/mail/cclient/files/patch-src_osdep_unix_ssl__unix.c 2018-05-12 14:50:02 UTC (rev 23516)
@@ -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 :
Property changes on: trunk/mail/cclient/files/patch-src_osdep_unix_ssl__unix.c
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
More information about the Midnightbsd-cvs
mailing list