From 267e07c5e91dc188a3cd293c6eb09b78ae15276d Mon Sep 17 00:00:00 2001 From: Rene Ladan Date: Wed, 16 Jan 2019 11:02:35 +0000 Subject: mail/imap-uw: remove support for expired mail/drac --- mail/imap-uw/Makefile | 8 +- mail/imap-uw/files/patch-src_imapd_Makefile | 6 +- mail/imap-uw/files/patch-src_imapd_imapd.c | 89 -------------------- mail/imap-uw/files/patch-src_ipopd_Makefile | 6 +- mail/imap-uw/files/patch-src_ipopd_ipop3d.c | 122 +--------------------------- mail/imap-uw/files/pkg-message.in | 7 +- 6 files changed, 5 insertions(+), 233 deletions(-) delete mode 100644 mail/imap-uw/files/patch-src_imapd_imapd.c (limited to 'mail') diff --git a/mail/imap-uw/Makefile b/mail/imap-uw/Makefile index 5d3f208480a1..dace888e0f05 100644 --- a/mail/imap-uw/Makefile +++ b/mail/imap-uw/Makefile @@ -33,21 +33,15 @@ ALL_TARGET= bsf # This port must have the same SSL settings as mail/cclient, which it depends on # To make MBX format the default mailbox format, change the settings of cclient -OPTIONS_DEFINE= SSL SSL_AND_PLAINTEXT DRAC NETSCAPE_BRAIN_DAMAGE DOCS +OPTIONS_DEFINE= SSL SSL_AND_PLAINTEXT NETSCAPE_BRAIN_DAMAGE DOCS OPTIONS_DEFAULT= SSL OPTIONS_SUB= yes SSL_AND_PLAINTEXT_DESC= Allow plain text passwords and SSL -DRAC_DESC= Dynamically open MTA for relaying NETSCAPE_BRAIN_DAMAGE_DESC= See Makefile for documentation .include -.if ${PORT_OPTIONS:MDRAC} -BUILD_DEPENDS= ${LOCALBASE}/lib/libdrac.a:mail/drac -MAKE_ARGS+= WITH_DRAC=yes -.endif - .if ! ${PORT_OPTIONS:MSSL} MAKE_ARGS+= SSLTYPE=none SSLDIR=${OPENSSLBASE} .else diff --git a/mail/imap-uw/files/patch-src_imapd_Makefile b/mail/imap-uw/files/patch-src_imapd_Makefile index 0eb221b2e8ee..830bd8a87a73 100644 --- a/mail/imap-uw/files/patch-src_imapd_Makefile +++ b/mail/imap-uw/files/patch-src_imapd_Makefile @@ -55,7 +55,7 @@ clean: rm -f *.o imapd || true ---- 37,63 ---- +--- 37,59 ---- # causes the "Manage Mail" menu item to open the given URL, e.g. to point to # an alternative IMAP client (e.g. Pine) or perhaps to a homebrew mail # account management page. @@ -71,10 +71,6 @@ -DALERTFILE=\"$(ALERT)\" -DNNTPFILE=\"$(NNTP)\" \ -DUSERALERTFILE=\"$(USERALERT)\" -DSHUTDOWNFILE=\"$(SHUTDOWN)\" ! LDFLAGS+= $(EXTRALDFLAGS) -L$(LOCALBASE)/lib -lc-client4 -! .if defined(WITH_DRAC) -! CFLAGS+= -DETC_DIR=\"$(PREFIX)/etc\" -DDRAC_AUTH -! LDFLAGS+= -ldrac -! .endif all: imapd diff --git a/mail/imap-uw/files/patch-src_imapd_imapd.c b/mail/imap-uw/files/patch-src_imapd_imapd.c deleted file mode 100644 index a1dc32829b12..000000000000 --- a/mail/imap-uw/files/patch-src_imapd_imapd.c +++ /dev/null @@ -1,89 +0,0 @@ ---- src/imapd/imapd.c.orig 2008-11-18 19:46:59.000000000 +0100 -+++ src/imapd/imapd.c 2009-01-16 10:23:02.000000000 +0100 -@@ -37,6 +37,11 @@ - #include "newsrc.h" - #include - -+#ifdef DRAC_AUTH -+#include -+#include -+#include -+#endif /* DRAC_AUTH */ - - #define CRLF PSOUT ("\015\012") /* primary output terpri */ - -@@ -207,6 +212,12 @@ - - /* Global storage */ - -+#ifdef DRAC_AUTH -+#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 = "404"; /* edit number of this server */ - char *logout = "Logout"; /* syslogreason for logout */ - char *goodbye = NIL; /* bye reason */ -@@ -283,7 +294,50 @@ - msg_string_next, /* get next byte in string structure */ - msg_string_setpos /* set position in string structure */ - }; -- -+ -+#ifdef DRAC_AUTH -+/* DRAC Authorization -+ */ -+void drac_auth () -+{ -+ if (time (0) > lastdrac + DRACTIMEOUT) -+ { -+ FILE *dracconf; -+ char host[100]; -+ char *drachost; -+ char *err; -+ char *p; -+ -+ if ( (dracconf = fopen(ETC_DIR "/dracd.host", "r")) == NULL) -+ { -+ syslog (LOG_INFO, "dracd: error opening %s/dracd.host config file",ETC_DIR); -+ exit(1); -+ } -+ -+ fgets(host, 100, dracconf); -+ p = strchr(host, '\n'); -+ if(p != NULL) -+ *p = '\0'; -+ fclose(dracconf); -+ -+ if( drachost = (host) ) -+ { -+ struct sockaddr_in sin; -+ int sinlen = sizeof (struct sockaddr_in); -+ char *client = getpeername (0,(struct sockaddr *) &sin,(void *) &sinlen) ? -+ "UNKNOWN" : inet_ntoa (sin.sin_addr); -+ -+ lastdrac = time(0); -+ -+ if (dracauth(drachost, inet_addr(client), &err) != 0) -+ syslog (LOG_INFO, err); -+ else -+ syslog (LOG_INFO, "dracd: authorized ip %s", client); -+ } -+ } -+} -+#endif /* DRAC_AUTH */ -+ - /* Main program */ - - int main (int argc,char *argv[]) -@@ -1525,6 +1579,9 @@ - lasterror ()); - return; - } -+ #ifdef DRAC_AUTH -+ drac_auth(); -+ #endif /* DRAC_AUTH */ - /* change in number of messages? */ - if (existsquelled || (nmsgs != stream->nmsgs)) { - PSOUT ("* "); diff --git a/mail/imap-uw/files/patch-src_ipopd_Makefile b/mail/imap-uw/files/patch-src_ipopd_Makefile index 2464eff218fd..a538cb910b16 100644 --- a/mail/imap-uw/files/patch-src_ipopd_Makefile +++ b/mail/imap-uw/files/patch-src_ipopd_Makefile @@ -1,6 +1,6 @@ --- src/ipopd/Makefile.orig Wed Oct 25 01:55:07 2000 +++ src/ipopd/Makefile Mon Oct 1 03:44:26 2001 -@@ -19,29 +19,25 @@ +@@ -19,29 +19,21 @@ C = ../c-client @@ -15,10 +15,6 @@ -LDFLAGS = $(CCLIENTLIB) `cat $C/LDFLAGS` +CFLAGS+= -DNFSKLUDGE -I$(LOCALBASE)/include/c-client +LDFLAGS+= -L$(LOCALBASE)/lib -lc-client4 -+.if defined(WITH_DRAC) -+CFLAGS+= -DDRAC_AUTH -DETC_DIR=\"$(PREFIX)/etc\" -+LDFLAGS+= -ldrac -+.endif ipopd: ipop2d ipop3d diff --git a/mail/imap-uw/files/patch-src_ipopd_ipop3d.c b/mail/imap-uw/files/patch-src_ipopd_ipop3d.c index a9f3715c6158..0b3fb92483ee 100644 --- a/mail/imap-uw/files/patch-src_ipopd_ipop3d.c +++ b/mail/imap-uw/files/patch-src_ipopd_ipop3d.c @@ -1,86 +1,6 @@ --- src/ipopd/ipop3d.c.orig 2008-06-04 20:18:34.000000000 +0200 +++ src/ipopd/ipop3d.c 2009-01-16 10:19:50.000000000 +0100 -@@ -34,6 +34,11 @@ - #include - #include "c-client.h" - -+#ifdef DRAC_AUTH -+#include -+#include -+#include -+#endif /* DRAC_AUTH */ - - #define CRLF PSOUT ("\015\012") /* primary output terpri */ - -@@ -59,6 +64,12 @@ - - /* Global storage */ - -+#ifdef DRAC_AUTH -+#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 = "104"; /* edit number of this server */ - short state = AUTHORIZATION; /* server state */ - short critical = NIL; /* non-zero if in critical code */ -@@ -100,7 +111,53 @@ - int mbxopen (char *mailbox); - long blat (char *text,long lines,unsigned long size,STRING *st); - void rset (); -- -+#ifdef DRAC_AUTH -+void drac_auth(); -+#endif /* DRAC_AUTH */ -+ -+#ifdef DRAC_AUTH -+/* DRAC Authorization -+ */ -+void drac_auth () -+{ -+ if (time (0) > lastdrac + DRACTIMEOUT) -+ { -+ FILE *dracconf; -+ char host[100]; -+ char *drachost; -+ char *err; -+ char *p; -+ -+ if ( (dracconf = fopen(ETC_DIR "/dracd.host", "r")) == NULL) -+ { -+ syslog (LOG_INFO, "dracd: error opening %s/dracd.host config file",ETC_DIR); -+ exit(1); -+ } -+ -+ fgets(host, 100, dracconf); -+ p = strchr(host, '\n'); -+ if(p != NULL) -+ *p = '\0'; -+ fclose(dracconf); -+ -+ if( drachost = (host) ) -+ { -+ struct sockaddr_in sin; -+ int sinlen = sizeof (struct sockaddr_in); -+ char *client = getpeername (0,(struct sockaddr *) &sin,(void *) &sinlen) ? -+ "UNKNOWN" : inet_ntoa (sin.sin_addr); -+ -+ lastdrac = time(0); -+ -+ if (dracauth(drachost, inet_addr(client), &err) != 0) -+ syslog (LOG_INFO, err); -+ else -+ syslog (LOG_INFO, "dracd: authorized ip %s", client); -+ } -+ } -+} -+#endif /* DRAC_AUTH */ -+ - /* Main program */ - - int main (int argc,char *argv[]) -@@ -113,7 +170,7 @@ +@@ -113,7 +113,7 @@ (((s = strrchr (argv[0],'/')) || (s = strrchr (argv[0],'\\'))) ? s+1 : argv[0]) : "ipop3d"; /* set service name before linkage */ @@ -89,43 +9,3 @@ #include "linkage.c" /* initialize server */ server_init (pgmname,"pop3","pop3s",clkint,kodint,hupint,trmint,NIL); -@@ -228,9 +285,13 @@ - syslog (LOG_INFO,"AUTHENTICATE %s failure host=%.80s",s, - tcp_clienthost ()); - } -- else if ((state = mbxopen ("INBOX")) == TRANSACTION) -+ else if ((state = mbxopen ("INBOX")) == TRANSACTION) { -+ #ifdef DRAC_AUTH -+ drac_auth(); -+ #endif /* DRAC_AUTH */ - syslog (LOG_INFO,"Auth user=%.80s host=%.80s nmsgs=%lu/%lu", - user,tcp_clienthost (),nmsgs,stream->nmsgs); -+ } - else syslog (LOG_INFO,"Auth user=%.80s host=%.80s no mailbox", - user,tcp_clienthost ()); - } -@@ -260,9 +321,13 @@ - PSOUT ("-ERR Missing APOP argument\015\012"); - else if (!(user = apop_login (challenge,s,t,argc,argv))) - PSOUT ("-ERR Bad APOP\015\012"); -- else if ((state = mbxopen ("INBOX")) == TRANSACTION) -+ else if ((state = mbxopen ("INBOX")) == TRANSACTION) { -+ #ifdef DRAC_AUTH -+ drac_auth(); -+ #endif /* DRAC_AUTH */ - syslog (LOG_INFO,"APOP user=%.80s host=%.80s nmsgs=%lu/%lu", - user,tcp_clienthost (),nmsgs,stream->nmsgs); -+ } - else syslog (LOG_INFO,"APOP user=%.80s host=%.80s no mailbox", - user,tcp_clienthost ()); - } -@@ -665,6 +730,9 @@ - /* attempt the login */ - if (server_login (user,pass,t,argc,argv)) { - int ret = mbxopen ("INBOX"); -+ #ifdef DRAC_AUTH -+ drac_auth(); -+ #endif /* DRAC_AUTH */ - if (ret == TRANSACTION) /* mailbox opened OK? */ - syslog (LOG_INFO,"%sLogin user=%.80s host=%.80s nmsgs=%lu/%lu", - t ? "Admin " : "",user,tcp_clienthost (),nmsgs,stream->nmsgs); diff --git a/mail/imap-uw/files/pkg-message.in b/mail/imap-uw/files/pkg-message.in index 62b3f7d2c277..45db728c1dcb 100644 --- a/mail/imap-uw/files/pkg-message.in +++ b/mail/imap-uw/files/pkg-message.in @@ -31,12 +31,7 @@ dir accessed. WITHOUT_SSL - build without SSL/encryption support. WITH_SSL_AND_PLAINTEXT - build with SSL/encryption support, but allow non-encrypted logins. -%%DRAC%%================================================================================ -%%DRAC%%To have DRAC working, you must create ${PREFIX}/etc/dracd.host, containing -%%DRAC%%the hostname of the DRAC server: -%%DRAC%% -%%DRAC%%localhost -%%DRAC%%================================================================================ +%%SSL%%================================================================================ %%SSL%% %%SSL%%To create and install a new SSL certificate for imapd and ipop3d, type \"make %%SSL%%cert\". Or install manually in ${PREFIX}/certs. -- cgit v1.2.3