aboutsummaryrefslogtreecommitdiffstats
path: root/mail/cyrus-imapd24
diff options
context:
space:
mode:
authorume <ume@FreeBSD.org>2005-12-21 01:35:41 +0800
committerume <ume@FreeBSD.org>2005-12-21 01:35:41 +0800
commit9cef6eb07589368f7cbd5f9c27d6b534d8dd4388 (patch)
tree9c0ac7f5e4ebc15fbeebb4da1ffb73ae8e8729fb /mail/cyrus-imapd24
parent49819824a3b5f9e724ebc4ae059507f2c3b4db6e (diff)
downloadfreebsd-ports-graphics-9cef6eb07589368f7cbd5f9c27d6b534d8dd4388.tar.gz
freebsd-ports-graphics-9cef6eb07589368f7cbd5f9c27d6b534d8dd4388.tar.zst
freebsd-ports-graphics-9cef6eb07589368f7cbd5f9c27d6b534d8dd4388.zip
Update to 2.3.1.
Diffstat (limited to 'mail/cyrus-imapd24')
-rw-r--r--mail/cyrus-imapd24/Makefile5
-rw-r--r--mail/cyrus-imapd24/distinfo6
-rw-r--r--mail/cyrus-imapd24/files/drac_auth.patch294
-rw-r--r--mail/cyrus-imapd24/files/patch-imap::Makefile.in27
-rw-r--r--mail/cyrus-imapd24/files/patch-man::Makefile.in9
5 files changed, 5 insertions, 336 deletions
diff --git a/mail/cyrus-imapd24/Makefile b/mail/cyrus-imapd24/Makefile
index a2ca02cc213..6b88245b489 100644
--- a/mail/cyrus-imapd24/Makefile
+++ b/mail/cyrus-imapd24/Makefile
@@ -6,7 +6,7 @@
#
PORTNAME= cyrus-imapd
-PORTVERSION= 2.3.0
+PORTVERSION= 2.3.1
#PORTREVISION= 0
CATEGORIES= mail ipv6
MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
@@ -181,8 +181,7 @@ CONFIGURE_ARGS+=--enable-netscapehack
.endif
.if defined(WITH_DRAC)
-#EXTRA_PATCHES+= ${WRKSRC}/contrib/drac_auth.patch
-EXTRA_PATCHES+= ${FILESDIR}/drac_auth.patch
+EXTRA_PATCHES+= ${WRKSRC}/contrib/drac_auth.patch
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-cmulocal::berkdb.m4 \
${FILESDIR}/extra-patch-cmulocal::ucdsnmp.m4 \
${FILESDIR}/extra-patch-configure.in
diff --git a/mail/cyrus-imapd24/distinfo b/mail/cyrus-imapd24/distinfo
index 8878e6d2791..e4ac443a55d 100644
--- a/mail/cyrus-imapd24/distinfo
+++ b/mail/cyrus-imapd24/distinfo
@@ -1,3 +1,3 @@
-MD5 (cyrus-imapd-2.3.0.tar.gz) = db628d09f65567ffaed0e8e276ff70ed
-SHA256 (cyrus-imapd-2.3.0.tar.gz) = add45a75b1f04df3cd0ccfe85ad361aa4c3a240c4fa23143bee39ef8873a49f4
-SIZE (cyrus-imapd-2.3.0.tar.gz) = 2209689
+MD5 (cyrus-imapd-2.3.1.tar.gz) = cde15876d5c953bba9ad9f7811aff695
+SHA256 (cyrus-imapd-2.3.1.tar.gz) = 79f95ed36160056f5ca60fad312fda8c6c95eafeab44f49b360b4a02790f156c
+SIZE (cyrus-imapd-2.3.1.tar.gz) = 2212999
diff --git a/mail/cyrus-imapd24/files/drac_auth.patch b/mail/cyrus-imapd24/files/drac_auth.patch
deleted file mode 100644
index 7369bb39839..00000000000
--- a/mail/cyrus-imapd24/files/drac_auth.patch
+++ /dev/null
@@ -1,294 +0,0 @@
-Index: configure.in
-diff -u configure.in.orig configure.in
---- configure.in.orig Wed Apr 13 05:05:20 2005
-+++ configure.in Sat Dec 10 16:16:15 2005
-@@ -1003,6 +1003,19 @@
- SNMP_SUBDIRS=""
- AC_SUBST(SNMP_SUBDIRS)
-
-+dnl
-+dnl Test for DRAC
-+dnl
-+DRACLIBS=
-+AC_ARG_WITH(drac, [ --with-drac=DIR use DRAC library in <DIR> [no] ],
-+ if test -d "$withval"; then
-+ LDFLAGS="$LDFLAGS -L${withval}"
-+ AC_CHECK_LIB(drac, dracauth,
-+ AC_DEFINE(DRAC_AUTH,[],[Build DRAC support?])
-+ DRACLIBS="-ldrac")
-+ fi)
-+AC_SUBST(DRACLIBS)
-+
- CMU_LIBWRAP
- CMU_UCDSNMP
-
-Index: imap/Makefile.in
-diff -u imap/Makefile.in.orig imap/Makefile.in
---- imap/Makefile.in.orig Fri Nov 18 00:46:14 2005
-+++ imap/Makefile.in Sat Dec 10 16:17:44 2005
-@@ -66,6 +66,7 @@
- SIEVE_LIBS = @SIEVE_LIBS@
- IMAP_COM_ERR_LIBS = @IMAP_COM_ERR_LIBS@
- LIB_WRAP = @LIB_WRAP@
-+DRAC_LIBS = @DRACLIBS@
- LIBS = $(IMAP_LIBS) $(IMAP_COM_ERR_LIBS)
- DEPLIBS = ../lib/libcyrus.a ../lib/libcyrus_min.a @DEPLIBS@
-
-@@ -202,17 +203,17 @@
- imapd: xversion $(IMAPDOBJS) mutex_fake.o libimap.a $(DEPLIBS) $(SERVICE)
- $(CC) $(LDFLAGS) -o imapd \
- $(SERVICE) $(IMAPDOBJS) mutex_fake.o \
-- libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP)
-+ libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS)
-
- imapd.pure: $(IMAPDOBJS) mutex_fake.o libimap.a $(DEPLIBS) $(SERVICE)
- $(PURIFY) $(PUREOPT) $(CC) $(LDFLAGS) -o imapd.pure \
- $(SERVICE) $(IMAPDOBJS) mutex_fake.o libimap.a \
-- $(DEPLIBS) $(LIBS) $(LIB_WRAP)
-+ $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS)
-
- imapd.quant: $(IMAPDOBJS) mutex_fake.o libimap.a $(DEPLIBS) $(SERVICE)
- $(QUANTIFY) $(QUANTOPT) $(CC) $(LDFLAGS) -o imapd.quant \
- $(SERVICE) $(IMAPDOBJS) mutex_fake.o libimap.a \
-- $(DEPLIBS) $(LIBS) $(LIB_WRAP)
-+ $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS) $(DRAC_LIBS)
-
- mupdate: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o tls.o \
- libimap.a $(DEPLIBS)
-@@ -230,7 +231,7 @@
- pop3d: pop3d.o proxy.o backend.o tls.o mutex_fake.o libimap.a \
- $(DEPLIBS) $(SERVICE)
- $(CC) $(LDFLAGS) -o pop3d pop3d.o proxy.o backend.o tls.o $(SERVICE) \
-- mutex_fake.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP)
-+ mutex_fake.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(DRAC_LIBS)
-
- nntpd: nntpd.o proxy.o backend.o index.o smtpclient.o spool.o tls.o \
- mutex_fake.o nntp_err.o libimap.a $(DEPLIBS) $(SERVICE)
-Index: imap/imapd.c
-diff -u -p imap/imapd.c.orig imap/imapd.c
---- imap/imapd.c.orig Tue Nov 22 04:48:36 2005
-+++ imap/imapd.c Sat Dec 10 16:16:16 2005
-@@ -172,6 +172,18 @@ static struct proxy_context imapd_proxyc
- 1, 1, &imapd_authstate, &imapd_userisadmin, &imapd_userisproxyadmin
- };
-
-+#ifdef DRAC_AUTH
-+static struct {
-+ int interval; /* dracd "ping" interval; 0 = disabled */
-+ unsigned long clientaddr;
-+ struct prot_waitevent *event;
-+} drac;
-+
-+extern int dracconn(char *server, char **errmsg);
-+extern int dracsend(unsigned long userip, char **errmsg);
-+extern int dracdisc(char **errmsg);
-+#endif /* DRAC_AUTH */
-+
- /* current sub-user state */
- static struct mailbox mboxstruct;
- static struct mailbox *imapd_mailbox;
-@@ -637,6 +649,23 @@ int service_init(int argc, char **argv,
- idle_init();
- }
-
-+#ifdef DRAC_AUTH
-+ /* setup for sending DRAC "pings" */
-+ drac.event = NULL;
-+ drac.interval = config_getint(IMAPOPT_DRACINTERVAL);
-+ if (drac.interval < 0) drac.interval = 0;
-+ if (drac.interval) {
-+ char *err;
-+
-+ if (dracconn((char*) config_getstring(IMAPOPT_DRACHOST), &err) != 0) {
-+ /* disable DRAC */
-+ drac.interval = 0;
-+ syslog(LOG_ERR, "dracconn: %s", err);
-+ syslog(LOG_ERR, "DRAC notifications disabled");
-+ }
-+ }
-+#endif /* DRAC_AUTH */
-+
- /* create connection to the SNMP listener, if available. */
- snmp_connect(); /* ignore return code */
- snmp_set_str(SERVER_NAME_VERSION,CYRUS_VERSION);
-@@ -741,6 +770,15 @@ int service_main(int argc __attribute__(
- imapd_haveaddr = 1;
- }
- }
-+
-+#ifdef DRAC_AUTH
-+ if (((struct sockaddr *)&imapd_remoteaddr)->sa_family == AF_INET)
-+ drac.clientaddr = ((struct sockaddr_in *)&imapd_remoteaddr)->sin_addr.s_addr;
-+ else
-+ drac.clientaddr = 0;
-+ } else {
-+ drac.clientaddr = 0;
-+#endif /* DRAC_AUTH */
- }
-
- /* create the SASL connection */
-@@ -783,6 +821,11 @@ int service_main(int argc __attribute__(
- prot_flush(imapd_out);
- snmp_increment(ACTIVE_CONNECTIONS, -1);
-
-+#ifdef DRAC_AUTH
-+ if (drac.event) prot_removewaitevent(imapd_in, drac.event);
-+ drac.event = NULL;
-+#endif /* DRAC_AUTH */
-+
- /* cleanup */
- imapd_reset();
-
-@@ -873,6 +916,10 @@ void shut_down(int code)
-
- cyrus_done();
-
-+#ifdef DRAC_AUTH
-+ if (drac.interval) (void) dracdisc((char **)NULL);
-+#endif /* DRAC_AUTH */
-+
- exit(code);
- }
-
-@@ -932,6 +979,35 @@ static void imapd_check(struct backend *
- }
- }
-
-+#ifdef DRAC_AUTH
-+/*
-+ * Ping dracd every 'drac.interval' minutes
-+ * to let it know that we are still connected
-+ */
-+struct prot_waitevent *drac_ping(struct protstream *s,
-+ struct prot_waitevent *ev, void *rock)
-+{
-+ char *err;
-+ static int nfailure = 0;
-+
-+ if (dracsend(drac.clientaddr, &err) != 0) {
-+ syslog(LOG_ERR, "dracsend: %s", err);
-+ if (++nfailure >= 3) {
-+ /* can't contact dracd for 3 consecutive tries - disable DRAC */
-+ prot_removewaitevent(s, ev);
-+ drac.event = NULL;
-+ syslog(LOG_ERR, "DRAC notifications disabled");
-+ return NULL;
-+ }
-+ }
-+ else
-+ nfailure = 0;
-+
-+ ev->mark = time(NULL) + (drac.interval * 60);
-+ return ev;
-+}
-+#endif /* DRAC_AUTH */
-+
- /*
- * Top-level command loop parsing
- */
-@@ -2030,6 +2106,11 @@ void cmd_login(char *tag, char *user)
-
- prot_printf(imapd_out, "%s OK %s\r\n", tag, reply);
-
-+#ifdef DRAC_AUTH
-+ if (drac.interval && drac.clientaddr)
-+ drac.event = prot_addwaitevent(imapd_in, 0 /* now */, drac_ping, NULL);
-+#endif /* DRAC_AUTH */
-+
- /* Create telemetry log */
- imapd_logfd = telemetry_log(imapd_userid, imapd_in, imapd_out, 0);
-
-@@ -2178,6 +2259,11 @@ cmd_authenticate(char *tag, char *authty
-
- prot_setsasl(imapd_in, imapd_saslconn);
- prot_setsasl(imapd_out, imapd_saslconn);
-+
-+#ifdef DRAC_AUTH
-+ if (drac.interval && drac.clientaddr)
-+ drac.event = prot_addwaitevent(imapd_in, 0 /* now */, drac_ping, NULL);
-+#endif /* DRAC_AUTH */
-
- /* Create telemetry log */
- imapd_logfd = telemetry_log(imapd_userid, imapd_in, imapd_out, 0);
-Index: imap/pop3d.c
-diff -u -p imap/pop3d.c.orig imap/pop3d.c
---- imap/pop3d.c.orig Sat Jun 4 08:07:46 2005
-+++ imap/pop3d.c Sat Dec 10 16:16:16 2005
-@@ -103,6 +103,10 @@ extern char *optarg;
- extern int opterr;
-
-
-+#ifdef DRAC_AUTH
-+static int drac_enabled;
-+extern int dracauth(char *server, unsigned long userip, char **errmsg);
-+#endif /* DRAC_AUTH */
-
- #ifdef HAVE_SSL
- static SSL *tls_conn;
-@@ -507,6 +511,10 @@ int service_main(int argc __attribute__(
- prot_settimeout(popd_in, timeout*60);
- prot_setflushonread(popd_in, popd_out);
-
-+#ifdef DRAC_AUTH
-+ drac_enabled = (config_getint(IMAPOPT_DRACINTERVAL) > 0);
-+#endif /* DRAC_AUTH */
-+
- if (kflag) kpop();
-
- /* we were connected on pop3s port so we should do
-@@ -1636,6 +1644,21 @@ int openinbox(void)
- popd_mailbox = &mboxstruct;
- proc_register("pop3d", popd_clienthost, popd_userid,
- popd_mailbox->name);
-+
-+#ifdef DRAC_AUTH
-+ if (drac_enabled &&
-+ ((struct sockaddr *)&popd_remoteaddr)->sa_family == AF_INET) {
-+ char *err;
-+
-+ if (dracauth((char*) config_getstring(IMAPOPT_DRACHOST),
-+ ((struct sockaddr_in *)&popd_remoteaddr)->sin_addr.s_addr, &err) != 0) {
-+ /* disable DRAC */
-+ drac_enabled = 0;
-+ syslog(LOG_ERR, "dracauth: %s", err);
-+ syslog(LOG_ERR, "DRAC notifications disabled");
-+ }
-+ }
-+#endif /* DRAC_AUTH */
- }
-
- /* Create telemetry log */
-Index: imap/version.c
-diff -u -p imap/version.c.orig imap/version.c
---- imap/version.c.orig Thu Feb 17 06:06:19 2005
-+++ imap/version.c Sat Dec 10 16:16:16 2005
-@@ -151,6 +151,10 @@ void id_response(struct protstream *pout
- snprintf(env_buf + strlen(env_buf), MAXIDVALUELEN - strlen(env_buf),
- "; %s", SIEVE_VERSION);
- #endif
-+#ifdef DRAC_AUTH
-+ snprintf(env_buf + strlen(env_buf), MAXIDVALUELEN - strlen(env_buf),
-+ "; DRAC");
-+#endif
- #ifdef HAVE_LIBWRAP
- snprintf(env_buf + strlen(env_buf), MAXIDVALUELEN - strlen(env_buf),
- "; TCP Wrappers");
-Index: lib/imapoptions
-diff -u lib/imapoptions.orig lib/imapoptions
---- lib/imapoptions.orig Fri Nov 18 00:46:29 2005
-+++ lib/imapoptions Sat Dec 10 16:19:44 2005
-@@ -195,6 +195,14 @@
- { "deleteright", "c", STRING }
- /* The right that a user needs to delete a mailbox. */
-
-+{ "dracinterval", 5, INT }
-+/* If nonzero, enables the use of DRAC (Dynamic Relay Authorization
-+ Control) by the pop3d and imapd daemons. Also sets the interval
-+ (in minutes) between re-authorization requests made by imapd. */
-+
-+{ "drachost", "localhost", STRING }
-+/* Hostname of the RPC dracd server. */
-+
- { "duplicate_db", "berkeley-nosync", STRINGLIST("berkeley", "berkeley-nosync", "skiplist") }
- /* The cyrusdb backend to use for the duplicate delivery suppression
- and sieve. */
diff --git a/mail/cyrus-imapd24/files/patch-imap::Makefile.in b/mail/cyrus-imapd24/files/patch-imap::Makefile.in
index cbc2f0d0024..163deb2807c 100644
--- a/mail/cyrus-imapd24/files/patch-imap::Makefile.in
+++ b/mail/cyrus-imapd24/files/patch-imap::Makefile.in
@@ -31,30 +31,3 @@ diff -u imap/Makefile.in.orig imap/Makefile.in
pop3d: pop3d.o proxy.o backend.o tls.o mutex_fake.o libimap.a \
$(DEPLIBS) $(SERVICE)
-@@ -247,10 +247,11 @@
- $(DEPLIBS) $(LIBS) $(LIB_WRAP)
-
- sync_server: sync_server.o sync_support.o sync_commit.o \
-- imapparse.o tls.o libimap.a mutex_fake.o $(DEPLIBS) $(SERVICE)
-+ imapparse.o tls.o libimap.a mutex_fake.o mboxkey.o \
-+ $(DEPLIBS) $(SERVICE)
- $(CC) $(LDFLAGS) -o \
- sync_server sync_server.o sync_support.o sync_commit.o \
-- imapparse.o tls.o $(SERVICE) libimap.a mutex_fake.o \
-+ imapparse.o tls.o $(SERVICE) libimap.a mutex_fake.o mboxkey.o \
- $(DEPLIBS) $(LIBS) $(LIB_WRAP)
-
- ### Command Line Utilities
-@@ -336,10 +337,10 @@
- backend.o tls.o imapparse.o libimap.a mutex_fake.o $(DEPLIBS) $(LIBS)
-
- sync_reset: sync_reset.o sync_support.o sync_commit.o \
-- libimap.a mutex_fake.o $(DEPLIBS)
-+ libimap.a mutex_fake.o mboxkey.o $(DEPLIBS)
- $(CC) $(LDFLAGS) -o \
- sync_reset sync_reset.o sync_support.o sync_commit.o \
-- libimap.a mutex_fake.o $(DEPLIBS) $(LIBS)
-+ libimap.a mutex_fake.o mboxkey.o $(DEPLIBS) $(LIBS)
-
- ### Other Misc Targets
-
diff --git a/mail/cyrus-imapd24/files/patch-man::Makefile.in b/mail/cyrus-imapd24/files/patch-man::Makefile.in
index 853e6ec5bd3..1b0061897d4 100644
--- a/mail/cyrus-imapd24/files/patch-man::Makefile.in
+++ b/mail/cyrus-imapd24/files/patch-man::Makefile.in
@@ -10,15 +10,6 @@ diff -u man/Makefile.in.orig man/Makefile.in
mandir = @mandir@
-@@ -68,7 +69,7 @@
- $(srcdir)/notifyd.8 $(srcdir)/chk_cyrus.8 $(srcdir)/mbexamine.8 \
- $(srcdir)/nntpd.8 $(srcdir)/fetchnews.8 $(srcdir)/smmapd.8 \
- $(srcdir)/sync_client.8 $(srcdir)/sync_server.8 $(srcdir)/sync_reset.8 \
-- $(srcdir)/unexpunge.8
-+ $(srcdir)/unexpunge.8 $(srcdir)/make_md5.8
-
- all: $(MAN1) $(MAN3) $(MAN5) $(MAN8)
-
@@ -95,7 +96,7 @@
done
for file in $(MAN8); \