diff options
author | nsayer <nsayer@FreeBSD.org> | 2001-04-05 11:21:41 +0800 |
---|---|---|
committer | nsayer <nsayer@FreeBSD.org> | 2001-04-05 11:21:41 +0800 |
commit | 61d131ceda76e708bfa28b0dbff41ad2fd08ea41 (patch) | |
tree | 37b8038f36cc9f5df7c3fedf0581a0a1b9ddb9d8 /mail/imap-uw | |
parent | e3e1278a6aafe4e9d71f7a5fde3cd614672d991a (diff) | |
download | freebsd-ports-graphics-61d131ceda76e708bfa28b0dbff41ad2fd08ea41.tar.gz freebsd-ports-graphics-61d131ceda76e708bfa28b0dbff41ad2fd08ea41.tar.zst freebsd-ports-graphics-61d131ceda76e708bfa28b0dbff41ad2fd08ea41.zip |
Mega cclient port SSL commit redux. This time with maintainer approval.
1. Add support for building cclient with SSL. Warn about the possibility
that some ports may have been missed and need ssl added at link time.
2. Update cclient and imap-uw to latest versions.
3. Fix pine4 to add ssl libraries. This can be used as a model for what
other ports may need to do.
4. Release MAINTAINERship (by request).
Submitted by: anders@fix.no
Approved by: petef@databits.net
Diffstat (limited to 'mail/imap-uw')
-rw-r--r-- | mail/imap-uw/Makefile | 40 | ||||
-rw-r--r-- | mail/imap-uw/distinfo | 2 | ||||
-rw-r--r-- | mail/imap-uw/files/patch-ab | 42 | ||||
-rw-r--r-- | mail/imap-uw/files/patch-ac | 16 | ||||
-rw-r--r-- | mail/imap-uw/files/patch-ah | 22 | ||||
-rw-r--r-- | mail/imap-uw/files/patch-ai | 46 | ||||
-rw-r--r-- | mail/imap-uw/pkg-message | 9 |
7 files changed, 99 insertions, 78 deletions
diff --git a/mail/imap-uw/Makefile b/mail/imap-uw/Makefile index 8135a1dc42e..323cc803231 100644 --- a/mail/imap-uw/Makefile +++ b/mail/imap-uw/Makefile @@ -6,7 +6,7 @@ # PORTNAME= imap -PORTVERSION= 2000c +PORTVERSION= 0104031813 CATEGORIES= mail MASTER_SITES= ftp://ftp.cac.washington.edu/imap/%SUBDIR%/ \ ftp://ftp.funet.fi/pub/mirrors/ftp.cac.washington.edu/mail/%SUBDIR%/ \ @@ -14,18 +14,25 @@ MASTER_SITES= ftp://ftp.cac.washington.edu/imap/%SUBDIR%/ \ ftp://ftp.uni-halle.de/pub/mail/pine/%SUBDIR%/ MASTER_SITE_SUBDIR= . old PKGNAMESUFFIX= -uw -DISTFILES= ${DISTNAME}.tar.Z \ - imap-utils.tar.Z +DISTNAME= imap-2001.BETA.SNAP-${PORTVERSION} +DISTFILES= ${DISTNAME}.tar.Z imap-utils.tar.Z -MAINTAINER= petef@databits.net +MAINTAINER= ports@freebsd.org LIB_DEPENDS= c-client4.8:${PORTSDIR}/mail/cclient .if defined(WITH_DRAC) BUILD_DEPENDS= ${LOCALBASE}/lib/libdrac.a:${PORTSDIR}/mail/drac .endif +.if defined(WITH_SSL) +USE_OPENSSL= yes +.endif MAN8= ipopd.8 imapd.8 +.if defined(WITH_SSL) +ALL_TARGET= bsf SSLTYPE=unix +.else ALL_TARGET= bsf +.endif .include <bsd.port.pre.mk> @@ -49,8 +56,9 @@ do-install: ${INSTALL_MAN} \ ${WRKSRC}/src/ipopd/ipopd.8c ${PREFIX}/man/man8/ipopd.8 -.if defined(WITH_DRAC) post-install: + @${CAT} ${PKGMESSAGE} +.if defined(WITH_DRAC) @${ECHO} "================================================================================" @${ECHO} "To have DRAC working, you must create ${PREFIX}/etc/dracd.host, containing" @${ECHO} "the hostname of the DRAC server:" @@ -58,8 +66,26 @@ post-install: @${ECHO} "localhost" @${ECHO} "================================================================================" .endif +.if defined(WITH_SSL) + @${ECHO} "To create and install a new SSL certificate for imapd and ipop3d, type \"make" + @${ECHO} "cert\"." + @${ECHO} + @${ECHO} "Example inetd config for the SSL services:" + @${ECHO} + @${ECHO} "pop3s stream tcp nowait root /usr/local/libexec/ipop3d ipop3d" + @${ECHO} "imaps stream tcp nowait root /usr/local/libexec/imapd imapd" + @${ECHO} + @${ECHO} "Remember to recompile and reinstall your cclient port with SSL support too, if" + @${ECHO} "you had it installed without SSL support." + @${ECHO} + @${ECHO} "================================================================================" +.endif -post-install: - @${CAT} ${PKGMESSAGE} +cert: + @${INSTALL} -d -o root -g wheel -m 0755 ${PREFIX}/certs + @openssl req -new -x509 -days 365 -nodes -config ${FILESDIR}/imap-uw.cnf -out ${PREFIX}/certs/imapd.pem -keyout ${PREFIX}/certs/imapd.pem + @openssl x509 -subject -dates -fingerprint -noout -in ${PREFIX}/certs/imapd.pem + @${CHMOD} 700 ${PREFIX}/certs/imapd.pem + @${LN} -s ${PREFIX}/certs/imapd.pem ${PREFIX}/certs/ipop3d.pem .include <bsd.port.post.mk> diff --git a/mail/imap-uw/distinfo b/mail/imap-uw/distinfo index 3437048116b..e60e98d340b 100644 --- a/mail/imap-uw/distinfo +++ b/mail/imap-uw/distinfo @@ -1,2 +1,2 @@ -MD5 (imap-2000c.tar.Z) = 90bdc0670812234a0589286798575980 +MD5 (imap-2001.BETA.SNAP-0104031813.tar.Z) = 327a8494019c07880072a855eb24060f MD5 (imap-utils.tar.Z) = a6453029f201b32e9ed761e662c47b0f diff --git a/mail/imap-uw/files/patch-ab b/mail/imap-uw/files/patch-ab index 350c51374d2..58e39fa4b7e 100644 --- a/mail/imap-uw/files/patch-ab +++ b/mail/imap-uw/files/patch-ab @@ -1,15 +1,33 @@ ---- src/osdep/unix/Makefile.old Tue Oct 31 22:55:01 2000 -+++ src/osdep/unix/Makefile Sun Dec 31 19:11:17 2000 -@@ -23,7 +23,7 @@ +--- src/osdep/unix/Makefile.orig Tue Mar 6 07:07:37 2001 ++++ src/osdep/unix/Makefile Tue Apr 3 23:48:08 2001 +@@ -22,16 +22,23 @@ + EXTRAAUTHENTICATORS= - SPECIALAUTHENTICATORS= EXTRADRIVERS=mbox -PASSWDTYPE=std +PASSWDTYPE=pam + SSLTYPE=none + + + # Extended flags needed for SSL. You may need to modify. + +-SSLDIR=/usr/local/ssl ++.if ${OSVERSION} >= 400014 ++SSLDIR=/usr ++SSLCERTS=$(PREFIX)/certs ++SSLINCLUDE=$(SSLDIR)/include/openssl ++SSLLIB=$(SSLDIR)/lib ++.else ++SSLDIR=$(PREFIX) + SSLCERTS=$(SSLDIR)/certs +-SSLINCLUDE=$(SSLDIR)/include ++SSLINCLUDE=$(SSLDIR)/include/openssl + SSLLIB=$(SSLDIR)/lib ++.endif + SSLCRYPTO=-lcrypto - # Extended flags needed for non-standard passwd types. You may need to modify. -@@ -37,7 +37,7 @@ +@@ -60,7 +67,7 @@ # AFSLDFLAGS may also need -L/usr/ucblib -lucb DCECFLAGS= -DDCE_MINIMAL -DPASSWD_OVERRIDE=\"/opt/pop3/passwd/passwd\" DCELDFLAGS= -ldce @@ -18,7 +36,7 @@ # Build parameters normally set by the individual port -@@ -74,7 +74,7 @@ +@@ -97,7 +104,7 @@ # Commands possibly overriden by the individual port ARRC=ar rc @@ -27,7 +45,7 @@ LN=ln -s RANLIB=ranlib -@@ -92,7 +92,7 @@ +@@ -115,7 +122,7 @@ dummy.o pseudo.o netmsg.o flstring.o fdstring.o \ rfc822.o nntp.o smtp.o imap4r1.o pop3.o \ unix.o mbox.o mbx.o mmdf.o tenex.o mtx.o news.o phile.o mh.o mx.o @@ -36,12 +54,12 @@ CAT=cat MAKE=make -@@ -175,6 +175,15 @@ +@@ -198,6 +205,15 @@ BASECFLAGS="-g -B/usr/lib/big/ -Dvoid=char -Dconst=" \ RANLIB=true ARRC="ar -rc" +bfp: # FreeBSD Pluggable Authentication Modules -+ $(BUILD) `cat EXTRASPECIALS` OS=bsi SIGTYPE=psx CHECKPW=pam \ ++ $(BUILD) `cat SPECIALS` OS=bsi SIGTYPE=psx CHECKPW=pam \ + SPOOLDIR=/var \ + ACTIVEFILE=/usr/local/news/lib/active \ + RSHPATH=/usr/bin/rsh \ @@ -52,7 +70,7 @@ bs3: # BSD/i386 3.0 or higher $(BUILD) `$(CAT) SPECIALS` OS=bsi \ CHECKPW=bsi LOGINPW=bsi CRXTYPE=nfs \ -@@ -190,12 +199,13 @@ +@@ -213,12 +229,13 @@ bsf: # FreeBSD $(BUILD) `$(CAT) SPECIALS` OS=$@ \ @@ -69,7 +87,7 @@ bsi: # BSD/i386 $(BUILD) `$(CAT) SPECIALS` OS=$@ \ -@@ -704,7 +714,7 @@ +@@ -754,7 +771,7 @@ build: clean once $(ARCHIVE) diff --git a/mail/imap-uw/files/patch-ac b/mail/imap-uw/files/patch-ac index bbdf5938b56..5529938f0d1 100644 --- a/mail/imap-uw/files/patch-ac +++ b/mail/imap-uw/files/patch-ac @@ -1,18 +1,19 @@ ---- src/imapd/Makefile.orig Tue Jan 9 16:08:17 2001 -+++ src/imapd/Makefile Sun Feb 4 11:54:00 2001 -@@ -18,9 +18,9 @@ +--- src/imapd/Makefile.orig Tue Apr 3 23:54:13 2001 ++++ src/imapd/Makefile Wed Apr 4 00:05:39 2001 +@@ -18,10 +18,10 @@ # CPYRIGHT, included with this Distribution. -ALERT=/etc/imapd.alert +ALERT=$(PREFIX)/etc/imapd.alert USERALERT=.imapalert + SHUTDOWN=/etc/nologin -ANO=/etc/anonymous.newsgroups +ANO=$(PREFIX)/etc/anonymous.newsgroups SHELL= /bin/sh -@@ -39,21 +39,23 @@ +@@ -40,22 +40,24 @@ # Get local definitions from c-client directory C = ../c-client @@ -22,13 +23,14 @@ -CFLAGS = -I$C `cat $C/CFLAGS` $(EXTRACFLAGS) -DANOFILE=\"$(ANO)\" \ +.if defined(WITH_DRAC) +CFLAGS = `cat $C/CFLAGS` -DANOFILE=\"$(ANO)\" -DETC_DIR=\"$(PREFIX)/etc\" \ -+ -DALERTFILE=\"$(ALERT)\" -DUSERALERTFILE=\"$(USERALERT)\" -DDRAC_AUTH ++ -DALERTFILE=\"$(ALERT)\" -DUSERALERTFILE=\"$(USERALERT)\" -DDRAC_AUTH \ ++ -DSHUTDOWNFILE=\"$(SHUTDOWN)\" +LDFLAGS = $(EXTRALDFLAGS) `cat $C/LDFLAGS` -ldrac +.else +CFLAGS = `cat $C/CFLAGS` -DANOFILE=\"$(ANO)\" \ - -DALERTFILE=\"$(ALERT)\" -DUSERALERTFILE=\"$(USERALERT)\" + -DALERTFILE=\"$(ALERT)\" -DUSERALERTFILE=\"$(USERALERT)\" \ + -DSHUTDOWNFILE=\"$(SHUTDOWN)\" -LDFLAGS = $(CCLIENTLIB) `cat $C/LDFLAGS` -+ +LDFLAGS = $(EXTRALDFLAGS) `cat $C/LDFLAGS` +.endif diff --git a/mail/imap-uw/files/patch-ah b/mail/imap-uw/files/patch-ah index 7be00ff5b4e..11985385b6a 100644 --- a/mail/imap-uw/files/patch-ah +++ b/mail/imap-uw/files/patch-ah @@ -1,6 +1,6 @@ ---- src/ipopd/ipop3d.c.orig Sun Dec 10 14:31:14 2000 -+++ src/ipopd/ipop3d.c Tue Mar 27 07:10:35 2001 -@@ -35,6 +35,11 @@ +--- src/ipopd/ipop3d.c.old Wed Apr 4 00:19:48 2001 ++++ src/ipopd/ipop3d.c Wed Apr 4 00:28:24 2001 +@@ -28,6 +28,11 @@ #include <time.h> #include "c-client.h" @@ -10,22 +10,22 @@ +#include <stdlib.h> +#endif /* DRAC_AUTH */ - /* Autologout timer */ - #define KODTIMEOUT 60*5 -@@ -61,6 +66,12 @@ + #define CRLF PSOUT ("\015\012") /* primary output terpri */ + +@@ -57,6 +62,12 @@ /* Global storage */ +#ifdef DRAC_AUTH -+#define DRACTIMEOUT 10*60 /* check every 10 minutes */ -+time_t lastdrac = 0; /* time of last drac check */ ++#define DRACTIMEOUT 10*60 /* check every 10 minutes */ ++time_t lastdrac = 0; /* time of last drac check */ +extern char *getenv (); +#endif /* DRAC_AUTH */ -+ - char *version = "2000.70"; /* server version */ ++ + char *version = "2001.75"; /* server version */ short state = AUTHORIZATION; /* server state */ short critical = NIL; /* non-zero if in critical code */ -@@ -104,7 +115,7 @@ +@@ -100,7 +111,7 @@ #include "linkage.c" /* initialize server */ server_init ((s = strrchr (argv[0],'/')) ? s + 1 : argv[0], diff --git a/mail/imap-uw/files/patch-ai b/mail/imap-uw/files/patch-ai index 15edac731c5..bdf728892d2 100644 --- a/mail/imap-uw/files/patch-ai +++ b/mail/imap-uw/files/patch-ai @@ -1,15 +1,6 @@ ---- src/imapd/imapd.c.orig Tue Jan 9 16:11:44 2001 -+++ src/imapd/imapd.c Tue Mar 27 07:16:48 2001 -@@ -17,7 +17,7 @@ - * The full text of our legal notices is contained in the file called - * CPYRIGHT, included with this Distribution. - */ -- -+ - /* Primary I/O calls */ - - #define PBIN getchar /* primary byte input */ -@@ -43,6 +43,11 @@ +--- src/imapd/imapd.c.old Wed Apr 4 00:31:43 2001 ++++ src/imapd/imapd.c Wed Apr 4 00:34:15 2001 +@@ -29,6 +29,11 @@ #include "c-client.h" #include <sys/stat.h> @@ -19,40 +10,22 @@ +#include <stdlib.h> +#endif /* DRAC_AUTH */ - /* Timeouts and timers */ - -@@ -66,7 +71,7 @@ - #define SELECT 1 - #define OPEN 2 - #define LOGOUT 3 -- -+ - /* Body text fetching */ + #define CRLF PSOUT ("\015\012") /* primary output terpri */ - typedef struct text_args { -@@ -98,7 +103,7 @@ - char *date; /* current date */ - STRING *message; /* strintstruct of message */ - } MSGDATA; -- -+ - /* Function prototypes */ - - int main (int argc,char *argv[]); -@@ -181,6 +186,12 @@ +@@ -171,6 +176,12 @@ /* Global storage */ +#ifdef DRAC_AUTH -+#define DRACTIMEOUT 10*60 /* check every 10 minutes */ -+time_t lastdrac = 0; /* time of last drac check */ ++#define DRACTIMEOUT 10*60 /* check every 10 minutes */ ++time_t lastdrac = 0; /* time of last drac check */ +extern char *getenv (); +#endif /* DRAC_AUTH */ + - char *version = "2000.287"; /* version number of this server */ + char *version = "2001.297"; /* version number of this server */ time_t alerttime = 0; /* time of last alert */ time_t sysalerttime = 0; /* time of last system alert */ -@@ -1139,6 +1150,44 @@ +@@ -1160,6 +1171,45 @@ lasterror ()); return; } @@ -94,6 +67,7 @@ + } + } +#endif /* DRAC_AUTH */ ++ /* change in number of messages? */ if (existsquelled || (nmsgs != stream->nmsgs)) { PSOUT ("* "); diff --git a/mail/imap-uw/pkg-message b/mail/imap-uw/pkg-message index a2687d0f55d..ab37cbb21a5 100644 --- a/mail/imap-uw/pkg-message +++ b/mail/imap-uw/pkg-message @@ -5,10 +5,11 @@ pop2 stream tcp nowait root /usr/local/libexec/ipop2d ipop2d pop3 stream tcp nowait root /usr/local/libexec/ipop3d ipop3d imap4 stream tcp nowait root /usr/local/libexec/imapd imapd -If PAM authentication support has been compiled in you may need to add the -following lines to /etc/pam.conf: +If PAM authentication support has been compiled in you may need to add +something like the following lines to /etc/pam.conf (PAM authentication is +default): imap auth required pam_unix.so try_first_pass imap account required pam_unix.so try_first_pass -pop auth required pam_unix.so try_first_pass -pop account required pam_unix.so try_first_pass +pop3 auth required pam_unix.so try_first_pass +pop3 account required pam_unix.so try_first_pass |