mirror of
https://git.freebsd.org/ports.git
synced 2025-07-18 01:39:16 -04:00
Update to 2.2.1-BETA.
Since there are some issue to upgrading from 2.2.0-ALPHA, you should read /usr/local/share/doc/cyrus-imapd22/install-upgrade.html before upgrading your server.
This commit is contained in:
parent
1470670299
commit
32b3cf1b92
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=85060
30 changed files with 138 additions and 1098 deletions
|
@ -6,13 +6,13 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
PORTNAME= cyrus-imapd
|
PORTNAME= cyrus-imapd
|
||||||
PORTVERSION= 2.2.0.a
|
PORTVERSION= 2.2.1.b
|
||||||
#PORTREVISION= 0
|
#PORTREVISION= 0
|
||||||
CATEGORIES= mail ipv6
|
CATEGORIES= mail ipv6
|
||||||
MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
||||||
ftp://ftp.hanse.de/sites/transit/mirror/ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
ftp://ftp.hanse.de/sites/transit/mirror/ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
||||||
${MASTER_SITE_RINGSERVER:S,%SUBDIR%,net/mail/cyrus-mail/&,}
|
${MASTER_SITE_RINGSERVER:S,%SUBDIR%,net/mail/cyrus-mail/&,}
|
||||||
DISTNAME= ${PORTNAME}-2.2.0-ALPHA
|
DISTNAME= ${PORTNAME}-2.2.1-BETA
|
||||||
|
|
||||||
MAINTAINER= ume@FreeBSD.org
|
MAINTAINER= ume@FreeBSD.org
|
||||||
COMMENT= The cyrus mail server, supporting POP3 and IMAP4 protocols
|
COMMENT= The cyrus mail server, supporting POP3 and IMAP4 protocols
|
||||||
|
@ -69,10 +69,6 @@ PLIST_SUB+= MURDER=""
|
||||||
PLIST_SUB+= MURDER="@comment "
|
PLIST_SUB+= MURDER="@comment "
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
.if defined(WITH_FULLDIRHASH)
|
|
||||||
CONFIGURE_ARGS+=--enable-fulldirhash
|
|
||||||
.endif
|
|
||||||
|
|
||||||
.if defined(WITH_LISTEXT)
|
.if defined(WITH_LISTEXT)
|
||||||
CONFIGURE_ARGS+=--enable-listext
|
CONFIGURE_ARGS+=--enable-listext
|
||||||
.endif
|
.endif
|
||||||
|
@ -86,7 +82,7 @@ CONFIGURE_ARGS+=--enable-netscapehack
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
.if defined(WITH_DRAC)
|
.if defined(WITH_DRAC)
|
||||||
EXTRA_PATCHES+= ${FILESDIR}/drac_auth.patch \
|
EXTRA_PATCHES+= ${WRKSRC}/contrib/drac_auth.patch \
|
||||||
${FILESDIR}/extra-patch-acconfig.h ${FILESDIR}/extra-patch-aclocal.m4
|
${FILESDIR}/extra-patch-acconfig.h ${FILESDIR}/extra-patch-aclocal.m4
|
||||||
USE_AUTOHEADER= YES
|
USE_AUTOHEADER= YES
|
||||||
CONFIGURE_ARGS+=--with-drac=${LOCALBASE}
|
CONFIGURE_ARGS+=--with-drac=${LOCALBASE}
|
||||||
|
@ -109,10 +105,11 @@ MAN1= cyradm.1 imtest.1 installsieve.1 lmtptest.1 mupdatetest.1 \
|
||||||
MAN3= imclient.3
|
MAN3= imclient.3
|
||||||
MAN5= cyrus.conf.5 imapd.conf.5 krb.equiv.5
|
MAN5= cyrus.conf.5 imapd.conf.5 krb.equiv.5
|
||||||
MAN8= arbitron.8 chk_cyrus.8 nntpd.8 ctl_cyrusdb.8 ctl_deliver.8 \
|
MAN8= arbitron.8 chk_cyrus.8 nntpd.8 ctl_cyrusdb.8 ctl_deliver.8 \
|
||||||
ctl_mboxlist.8 cvt_cyrusdb.8 cyrquota.8 deliver.8 \
|
cyr_expire.8 ctl_mboxlist.8 cvt_cyrusdb.8 cyrquota.8 \
|
||||||
expirenews.8 fetchnews.8 fud.8 idled.8 imapd.8 ipurge.8 \
|
deliver.8 fetchnews.8 fud.8 idled.8 imapd.8 ipurge.8 \
|
||||||
lmtpd.8 master.8 mbpath.8 notifyd.8 pop3d.8 reconstruct.8 \
|
lmtpd.8 master.8 mbexamine.8 mbpath.8 notifyd.8 pop3d.8 \
|
||||||
rmnews.8 squatter.8 syncnews.8 timsieved.8 tls_prune.8
|
reconstruct.8 rmnews.8 squatter.8 syncnews.8 timsieved.8 \
|
||||||
|
tls_prune.8
|
||||||
|
|
||||||
DOCS= altnamespace anoncvs bugs changes faq feedback index \
|
DOCS= altnamespace anoncvs bugs changes faq feedback index \
|
||||||
install install-admin-mb install-auth install-compile \
|
install install-admin-mb install-auth install-compile \
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
MD5 (cyrus-imapd-2.2.0-ALPHA.tar.gz) = bf588d15288885602675d90439500e07
|
MD5 (cyrus-imapd-2.2.1-BETA.tar.gz) = ea318280ae375065aa21c4c1ace322f4
|
||||||
|
|
|
@ -1,308 +0,0 @@
|
||||||
Index: acconfig.h
|
|
||||||
diff -u acconfig.h.orig acconfig.h
|
|
||||||
--- acconfig.h.orig Fri Feb 14 05:32:50 2003
|
|
||||||
+++ acconfig.h Fri Mar 21 20:13:20 2003
|
|
||||||
@@ -98,6 +98,9 @@
|
|
||||||
/* do we have SASL support for APOP? */
|
|
||||||
#undef HAVE_APOP
|
|
||||||
|
|
||||||
+/* the Dynamic Relay Authorization Control package */
|
|
||||||
+#undef DRAC_AUTH
|
|
||||||
+
|
|
||||||
/* do we have OpenSSL? */
|
|
||||||
#undef HAVE_SSL
|
|
||||||
|
|
||||||
Index: configure.in
|
|
||||||
diff -u configure.in.orig configure.in
|
|
||||||
--- configure.in.orig Wed Mar 19 04:15:14 2003
|
|
||||||
+++ configure.in Fri Mar 21 20:20:54 2003
|
|
||||||
@@ -981,6 +981,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)
|
|
||||||
+ 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 Feb 28 03:10:28 2003
|
|
||||||
+++ imap/Makefile.in Fri Mar 21 20:23:02 2003
|
|
||||||
@@ -67,6 +67,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@
|
|
||||||
|
|
||||||
@@ -206,17 +207,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)
|
|
||||||
|
|
||||||
proxyd: $(PROXYDOBJS) mutex_fake.o libimap.a $(DEPLIBS) $(SERVICE)
|
|
||||||
$(CC) $(LDFLAGS) -o proxyd \
|
|
||||||
@@ -242,7 +243,7 @@
|
|
||||||
|
|
||||||
pop3d: pop3d.o backend.o tls.o mutex_fake.o libimap.a $(DEPLIBS) $(SERVICE)
|
|
||||||
$(CC) $(LDFLAGS) -o pop3d pop3d.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 backend.o index.o spool.o netnews.o wildmat.o tls.o \
|
|
||||||
mutex_fake.o nntp_err.o libimap.a $(DEPLIBS) $(SERVICE)
|
|
||||||
Index: imap/imapd.c
|
|
||||||
diff -u imap/imapd.c.orig imap/imapd.c
|
|
||||||
--- imap/imapd.c.orig Thu Mar 6 03:32:05 2003
|
|
||||||
+++ imap/imapd.c Fri Mar 21 23:25:27 2003
|
|
||||||
@@ -126,6 +126,18 @@
|
|
||||||
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;
|
|
||||||
@@ -447,6 +459,23 @@
|
|
||||||
/* setup for sending IMAP IDLE notifications */
|
|
||||||
idle_enabled();
|
|
||||||
|
|
||||||
+#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);
|
|
||||||
@@ -533,6 +562,15 @@
|
|
||||||
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 */
|
|
||||||
@@ -575,6 +613,11 @@
|
|
||||||
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();
|
|
||||||
|
|
||||||
@@ -645,6 +688,10 @@
|
|
||||||
|
|
||||||
cyrus_done();
|
|
||||||
|
|
||||||
+#ifdef DRAC_AUTH
|
|
||||||
+ if (drac.interval) (void) dracdisc((char **)NULL);
|
|
||||||
+#endif /* DRAC_AUTH */
|
|
||||||
+
|
|
||||||
exit(code);
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -667,6 +714,35 @@
|
|
||||||
shut_down(code);
|
|
||||||
}
|
|
||||||
|
|
||||||
+#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
|
|
||||||
*/
|
|
||||||
@@ -1664,6 +1740,11 @@
|
|
||||||
|
|
||||||
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);
|
|
||||||
|
|
||||||
@@ -1786,6 +1867,11 @@
|
|
||||||
|
|
||||||
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);
|
|
||||||
Index: imap/pop3d.c
|
|
||||||
diff -u imap/pop3d.c.orig imap/pop3d.c
|
|
||||||
--- imap/pop3d.c.orig Thu Mar 13 01:38:16 2003
|
|
||||||
+++ imap/pop3d.c Fri Mar 21 23:37:11 2003
|
|
||||||
@@ -101,6 +101,10 @@
|
|
||||||
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;
|
|
||||||
@@ -395,6 +399,10 @@
|
|
||||||
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
|
|
||||||
@@ -1422,6 +1430,21 @@
|
|
||||||
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 */
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
/* remote mailbox */
|
|
||||||
Index: imap/version.c
|
|
||||||
diff -u imap/version.c.orig imap/version.c
|
|
||||||
--- imap/version.c.orig Fri Feb 14 05:33:02 2003
|
|
||||||
+++ imap/version.c Fri Mar 21 20:13:21 2003
|
|
||||||
@@ -143,6 +143,10 @@
|
|
||||||
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 Thu Mar 20 04:00:39 2003
|
|
||||||
+++ lib/imapoptions Fri Mar 21 20:32:15 2003
|
|
||||||
@@ -154,6 +154,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. */
|
|
||||||
+
|
|
||||||
{ "duplicatesuppression", 1, SWITCH }
|
|
||||||
/* If enabled, lmtpd will suppress delivery of a message to a mailbox if
|
|
||||||
a message with the same message-id (or resent-message-id) is recorded
|
|
|
@ -1,17 +1,17 @@
|
||||||
Index: aclocal.m4
|
Index: aclocal.m4
|
||||||
diff -u aclocal.m4.orig aclocal.m4
|
diff -u aclocal.m4.orig aclocal.m4
|
||||||
--- aclocal.m4.orig Thu Mar 20 04:04:34 2003
|
--- aclocal.m4.orig Thu Jul 17 06:20:37 2003
|
||||||
+++ aclocal.m4 Fri Mar 21 20:09:38 2003
|
+++ aclocal.m4 Fri Jul 18 00:58:34 2003
|
||||||
@@ -453,7 +453,7 @@
|
@@ -489,7 +489,7 @@
|
||||||
BDB_LIBADD=""
|
BDB_LIBADD=""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- for dbname in db-4.1 db4.1 db-4.0 db4.0 db-4 db4 db-3.3 db3.3 db-3.2 db3.2 db-3.1 db3.1 db-3 db3 db
|
- for dbname in db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
|
||||||
+ for dbname in ${with_bdb} db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db4 db-3.3 db3.3 db-3.2 db3.2 db-3.1 db3.1 db-3 db3 db
|
+ for dbname in ${with_bdb} db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
|
||||||
do
|
do
|
||||||
AC_CHECK_LIB($dbname, db_create, BDB_LIBADD="$BDB_LIBADD -l$dbname";
|
AC_CHECK_LIB($dbname, db_create, BDB_LIBADD="$BDB_LIBADD -l$dbname";
|
||||||
dblib="berkeley"; break, dblib="no")
|
dblib="berkeley"; break, dblib="no")
|
||||||
@@ -1574,7 +1574,7 @@
|
@@ -1629,7 +1629,7 @@
|
||||||
LIB_UCDSNMP=""
|
LIB_UCDSNMP=""
|
||||||
if test "$with_ucdsnmp" != no; then
|
if test "$with_ucdsnmp" != no; then
|
||||||
AC_DEFINE(HAVE_UCDSNMP)
|
AC_DEFINE(HAVE_UCDSNMP)
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
Index: man/Makefile.in
|
Index: man/Makefile.in
|
||||||
diff -u man/Makefile.in.orig man/Makefile.in
|
diff -u man/Makefile.in.orig man/Makefile.in
|
||||||
--- man/Makefile.in.orig Fri Feb 28 03:12:33 2003
|
--- man/Makefile.in.orig Fri Jun 20 05:49:50 2003
|
||||||
+++ man/Makefile.in Fri Mar 21 14:14:24 2003
|
+++ man/Makefile.in Fri Jul 18 00:30:05 2003
|
||||||
@@ -69,7 +69,7 @@
|
@@ -69,7 +69,7 @@
|
||||||
MAN3 = $(srcdir)/imclient.3
|
MAN3 = $(srcdir)/imclient.3
|
||||||
MAN5 = imapd.conf.5 $(srcdir)/krb.equiv.5 $(srcdir)/cyrus.conf.5
|
MAN5 = imapd.conf.5 $(srcdir)/krb.equiv.5 $(srcdir)/cyrus.conf.5
|
||||||
MAN8 = $(srcdir)/arbitron.8 $(srcdir)/deliver.8 \
|
MAN8 = $(srcdir)/arbitron.8 $(srcdir)/cyr_expire.8 $(srcdir)/deliver.8 \
|
||||||
- $(srcdir)/fud.8 $(srcdir)/imapd.8 $(srcdir)/pop3d.8 $(srcdir)/quota.8 \
|
- $(srcdir)/fud.8 $(srcdir)/imapd.8 $(srcdir)/pop3d.8 $(srcdir)/quota.8 \
|
||||||
+ $(srcdir)/fud.8 $(srcdir)/imapd.8 $(srcdir)/pop3d.8 $(srcdir)/cyrquota.8 \
|
+ $(srcdir)/fud.8 $(srcdir)/imapd.8 $(srcdir)/pop3d.8 $(srcdir)/cyrquota.8 \
|
||||||
$(srcdir)/reconstruct.8 $(srcdir)/rmnews.8 $(srcdir)/syncnews.8 \
|
$(srcdir)/reconstruct.8 $(srcdir)/rmnews.8 $(srcdir)/syncnews.8 \
|
||||||
|
|
|
@ -1,22 +1,22 @@
|
||||||
Index: configure
|
Index: configure
|
||||||
diff -u configure.orig configure
|
diff -u configure.orig configure
|
||||||
--- configure.orig Tue Feb 4 16:05:15 2003
|
--- configure.orig Thu Jul 17 06:20:38 2003
|
||||||
+++ configure Tue Feb 4 16:08:25 2003
|
+++ configure Fri Jul 18 00:32:33 2003
|
||||||
@@ -2760,7 +2760,7 @@
|
@@ -3116,7 +3116,7 @@
|
||||||
BDB_LIBADD=""
|
BDB_LIBADD=""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- for dbname in db-4.1 db4.1 db-4.0 db4.0 db-4 db4 db-3.3 db3.3 db-3.2 db3.2 db-3.1 db3.1 db-3 db3 db
|
- for dbname in db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
|
||||||
+ for dbname in ${with_bdb} db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db4 db-3.3 db3.3 db-3.2 db3.2 db-3.1 db3.1 db-3 db3 db
|
+ for dbname in ${with_bdb} db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
|
||||||
do
|
do
|
||||||
echo $ac_n "checking for db_create in -l$dbname""... $ac_c" 1>&6
|
echo $ac_n "checking for db_create in -l$dbname""... $ac_c" 1>&6
|
||||||
echo "configure:2767: checking for db_create in -l$dbname" >&5
|
echo "configure:3123: checking for db_create in -l$dbname" >&5
|
||||||
@@ -6757,7 +6757,7 @@
|
@@ -7475,7 +7475,7 @@
|
||||||
#define HAVE_UCDSNMP 1
|
#define HAVE_UCDSNMP 1
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
- LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp"
|
- LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp"
|
||||||
+ LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp -lkvm"
|
+ LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp -lkvm"
|
||||||
echo $ac_n "checking for rpmdbOpen in -lrpm""... $ac_c" 1>&6
|
echo $ac_n "checking for rpmdbOpen in -lrpm""... $ac_c" 1>&6
|
||||||
echo "configure:6763: checking for rpmdbOpen in -lrpm" >&5
|
echo "configure:7481: checking for rpmdbOpen in -lrpm" >&5
|
||||||
ac_lib_var=`echo rpm'_'rpmdbOpen | sed 'y%./+-%__p_%'`
|
ac_lib_var=`echo rpm'_'rpmdbOpen | sed 'y%./+-%__p_%'`
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
Index: imap/Makefile.in
|
Index: imap/Makefile.in
|
||||||
diff -u imap/Makefile.in.orig imap/Makefile.in
|
diff -u imap/Makefile.in.orig imap/Makefile.in
|
||||||
--- imap/Makefile.in.orig Fri Feb 28 03:10:28 2003
|
--- imap/Makefile.in.orig Tue Jul 15 00:56:08 2003
|
||||||
+++ imap/Makefile.in Fri Mar 21 14:28:10 2003
|
+++ imap/Makefile.in Fri Jul 18 00:35:34 2003
|
||||||
@@ -232,13 +232,13 @@
|
@@ -241,13 +241,13 @@
|
||||||
libimap.a $(DEPLIBS)
|
|
||||||
$(CC) $(LDFLAGS) -o mupdate \
|
$(CC) $(LDFLAGS) -o mupdate \
|
||||||
$(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \
|
$(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \
|
||||||
- mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread
|
mutex_pthread.o tls.o libimap.a \
|
||||||
+ mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS)
|
- $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread
|
||||||
|
+ $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS)
|
||||||
|
|
||||||
mupdate.pure: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o \
|
mupdate.pure: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o \
|
||||||
libimap.a $(DEPLIBS)
|
libimap.a $(DEPLIBS)
|
||||||
|
|
|
@ -1,18 +0,0 @@
|
||||||
--- imap/mailbox.h 2003/03/12 16:38:13 1.68.4.9
|
|
||||||
+++ imap/mailbox.h 2003/03/31 20:33:45 1.68.4.10
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* mailbox.h -- Mailbox format definitions
|
|
||||||
- * $Id: mailbox.h,v 1.68.4.9 2003/03/12 16:38:13 ken3 Exp $
|
|
||||||
+ * $Id: mailbox.h,v 1.68.4.10 2003/03/31 20:33:45 ken3 Exp $
|
|
||||||
*
|
|
||||||
* Copyright (c) 1998-2003 Carnegie Mellon University. All rights reserved.
|
|
||||||
*
|
|
||||||
@@ -269,7 +269,7 @@
|
|
||||||
unsigned msgno,
|
|
||||||
struct index_record *record);
|
|
||||||
extern int mailbox_read_quota(struct quota *quota);
|
|
||||||
-extern void mailbox_hash_quota(char *buf, unsigned size, const char *qr);
|
|
||||||
+extern void mailbox_hash_quota(char *buf, size_t size, const char *qr);
|
|
||||||
extern int mailbox_lock_header(struct mailbox *mailbox);
|
|
||||||
extern int mailbox_lock_index(struct mailbox *mailbox);
|
|
||||||
extern int mailbox_lock_pop(struct mailbox *mailbox);
|
|
|
@ -1,8 +1,16 @@
|
||||||
Index: imtest/imtest.c
|
Index: imtest/imtest.c
|
||||||
diff -u imtest/imtest.c.orig imtest/imtest.c
|
diff -u imtest/imtest.c.orig imtest/imtest.c
|
||||||
--- imtest/imtest.c.orig Wed Mar 19 10:29:22 2003
|
--- imtest/imtest.c.orig Sun Jul 13 05:10:56 2003
|
||||||
+++ imtest/imtest.c Sun May 11 16:47:11 2003
|
+++ imtest/imtest.c Fri Jul 18 00:52:29 2003
|
||||||
@@ -417,8 +417,8 @@
|
@@ -51,6 +51,7 @@
|
||||||
|
#include <sys/stat.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
|
||||||
|
+#include <limits.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
@@ -419,8 +420,8 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -13,11 +13,10 @@ cyrus/bin/ctl_cyrusdb
|
||||||
cyrus/bin/ctl_deliver
|
cyrus/bin/ctl_deliver
|
||||||
cyrus/bin/ctl_mboxlist
|
cyrus/bin/ctl_mboxlist
|
||||||
cyrus/bin/cvt_cyrusdb
|
cyrus/bin/cvt_cyrusdb
|
||||||
|
cyrus/bin/cyr_expire
|
||||||
cyrus/bin/cyrdump
|
cyrus/bin/cyrdump
|
||||||
cyrus/bin/cyrquota
|
cyrus/bin/cyrquota
|
||||||
cyrus/bin/deliver
|
cyrus/bin/deliver
|
||||||
%%NNTP%%cyrus/bin/expirenews
|
|
||||||
cyrus/bin/feedcyrus
|
|
||||||
%%NNTP%%cyrus/bin/fetchnews
|
%%NNTP%%cyrus/bin/fetchnews
|
||||||
cyrus/bin/fud
|
cyrus/bin/fud
|
||||||
cyrus/bin/imapd
|
cyrus/bin/imapd
|
||||||
|
@ -26,12 +25,14 @@ cyrus/bin/lmtpd
|
||||||
%%MURDER%%cyrus/bin/lmtpproxyd
|
%%MURDER%%cyrus/bin/lmtpproxyd
|
||||||
cyrus/bin/masssievec
|
cyrus/bin/masssievec
|
||||||
cyrus/bin/master
|
cyrus/bin/master
|
||||||
|
cyrus/bin/mbexamine
|
||||||
cyrus/bin/mbpath
|
cyrus/bin/mbpath
|
||||||
cyrus/bin/mkimap
|
cyrus/bin/mkimap
|
||||||
%%MURDER%%cyrus/bin/mupdate
|
%%MURDER%%cyrus/bin/mupdate
|
||||||
%%NNTP%%cyrus/bin/nntpd
|
%%NNTP%%cyrus/bin/nntpd
|
||||||
cyrus/bin/notifyd
|
cyrus/bin/notifyd
|
||||||
cyrus/bin/pop3d
|
cyrus/bin/pop3d
|
||||||
|
cyrus/bin/pop3proxyd
|
||||||
%%MURDER%%cyrus/bin/proxyd
|
%%MURDER%%cyrus/bin/proxyd
|
||||||
cyrus/bin/reconstruct
|
cyrus/bin/reconstruct
|
||||||
cyrus/bin/sievec
|
cyrus/bin/sievec
|
||||||
|
|
|
@ -6,13 +6,13 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
PORTNAME= cyrus-imapd
|
PORTNAME= cyrus-imapd
|
||||||
PORTVERSION= 2.2.0.a
|
PORTVERSION= 2.2.1.b
|
||||||
#PORTREVISION= 0
|
#PORTREVISION= 0
|
||||||
CATEGORIES= mail ipv6
|
CATEGORIES= mail ipv6
|
||||||
MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
||||||
ftp://ftp.hanse.de/sites/transit/mirror/ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
ftp://ftp.hanse.de/sites/transit/mirror/ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
||||||
${MASTER_SITE_RINGSERVER:S,%SUBDIR%,net/mail/cyrus-mail/&,}
|
${MASTER_SITE_RINGSERVER:S,%SUBDIR%,net/mail/cyrus-mail/&,}
|
||||||
DISTNAME= ${PORTNAME}-2.2.0-ALPHA
|
DISTNAME= ${PORTNAME}-2.2.1-BETA
|
||||||
|
|
||||||
MAINTAINER= ume@FreeBSD.org
|
MAINTAINER= ume@FreeBSD.org
|
||||||
COMMENT= The cyrus mail server, supporting POP3 and IMAP4 protocols
|
COMMENT= The cyrus mail server, supporting POP3 and IMAP4 protocols
|
||||||
|
@ -69,10 +69,6 @@ PLIST_SUB+= MURDER=""
|
||||||
PLIST_SUB+= MURDER="@comment "
|
PLIST_SUB+= MURDER="@comment "
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
.if defined(WITH_FULLDIRHASH)
|
|
||||||
CONFIGURE_ARGS+=--enable-fulldirhash
|
|
||||||
.endif
|
|
||||||
|
|
||||||
.if defined(WITH_LISTEXT)
|
.if defined(WITH_LISTEXT)
|
||||||
CONFIGURE_ARGS+=--enable-listext
|
CONFIGURE_ARGS+=--enable-listext
|
||||||
.endif
|
.endif
|
||||||
|
@ -86,7 +82,7 @@ CONFIGURE_ARGS+=--enable-netscapehack
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
.if defined(WITH_DRAC)
|
.if defined(WITH_DRAC)
|
||||||
EXTRA_PATCHES+= ${FILESDIR}/drac_auth.patch \
|
EXTRA_PATCHES+= ${WRKSRC}/contrib/drac_auth.patch \
|
||||||
${FILESDIR}/extra-patch-acconfig.h ${FILESDIR}/extra-patch-aclocal.m4
|
${FILESDIR}/extra-patch-acconfig.h ${FILESDIR}/extra-patch-aclocal.m4
|
||||||
USE_AUTOHEADER= YES
|
USE_AUTOHEADER= YES
|
||||||
CONFIGURE_ARGS+=--with-drac=${LOCALBASE}
|
CONFIGURE_ARGS+=--with-drac=${LOCALBASE}
|
||||||
|
@ -109,10 +105,11 @@ MAN1= cyradm.1 imtest.1 installsieve.1 lmtptest.1 mupdatetest.1 \
|
||||||
MAN3= imclient.3
|
MAN3= imclient.3
|
||||||
MAN5= cyrus.conf.5 imapd.conf.5 krb.equiv.5
|
MAN5= cyrus.conf.5 imapd.conf.5 krb.equiv.5
|
||||||
MAN8= arbitron.8 chk_cyrus.8 nntpd.8 ctl_cyrusdb.8 ctl_deliver.8 \
|
MAN8= arbitron.8 chk_cyrus.8 nntpd.8 ctl_cyrusdb.8 ctl_deliver.8 \
|
||||||
ctl_mboxlist.8 cvt_cyrusdb.8 cyrquota.8 deliver.8 \
|
cyr_expire.8 ctl_mboxlist.8 cvt_cyrusdb.8 cyrquota.8 \
|
||||||
expirenews.8 fetchnews.8 fud.8 idled.8 imapd.8 ipurge.8 \
|
deliver.8 fetchnews.8 fud.8 idled.8 imapd.8 ipurge.8 \
|
||||||
lmtpd.8 master.8 mbpath.8 notifyd.8 pop3d.8 reconstruct.8 \
|
lmtpd.8 master.8 mbexamine.8 mbpath.8 notifyd.8 pop3d.8 \
|
||||||
rmnews.8 squatter.8 syncnews.8 timsieved.8 tls_prune.8
|
reconstruct.8 rmnews.8 squatter.8 syncnews.8 timsieved.8 \
|
||||||
|
tls_prune.8
|
||||||
|
|
||||||
DOCS= altnamespace anoncvs bugs changes faq feedback index \
|
DOCS= altnamespace anoncvs bugs changes faq feedback index \
|
||||||
install install-admin-mb install-auth install-compile \
|
install install-admin-mb install-auth install-compile \
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
MD5 (cyrus-imapd-2.2.0-ALPHA.tar.gz) = bf588d15288885602675d90439500e07
|
MD5 (cyrus-imapd-2.2.1-BETA.tar.gz) = ea318280ae375065aa21c4c1ace322f4
|
||||||
|
|
|
@ -1,308 +0,0 @@
|
||||||
Index: acconfig.h
|
|
||||||
diff -u acconfig.h.orig acconfig.h
|
|
||||||
--- acconfig.h.orig Fri Feb 14 05:32:50 2003
|
|
||||||
+++ acconfig.h Fri Mar 21 20:13:20 2003
|
|
||||||
@@ -98,6 +98,9 @@
|
|
||||||
/* do we have SASL support for APOP? */
|
|
||||||
#undef HAVE_APOP
|
|
||||||
|
|
||||||
+/* the Dynamic Relay Authorization Control package */
|
|
||||||
+#undef DRAC_AUTH
|
|
||||||
+
|
|
||||||
/* do we have OpenSSL? */
|
|
||||||
#undef HAVE_SSL
|
|
||||||
|
|
||||||
Index: configure.in
|
|
||||||
diff -u configure.in.orig configure.in
|
|
||||||
--- configure.in.orig Wed Mar 19 04:15:14 2003
|
|
||||||
+++ configure.in Fri Mar 21 20:20:54 2003
|
|
||||||
@@ -981,6 +981,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)
|
|
||||||
+ 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 Feb 28 03:10:28 2003
|
|
||||||
+++ imap/Makefile.in Fri Mar 21 20:23:02 2003
|
|
||||||
@@ -67,6 +67,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@
|
|
||||||
|
|
||||||
@@ -206,17 +207,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)
|
|
||||||
|
|
||||||
proxyd: $(PROXYDOBJS) mutex_fake.o libimap.a $(DEPLIBS) $(SERVICE)
|
|
||||||
$(CC) $(LDFLAGS) -o proxyd \
|
|
||||||
@@ -242,7 +243,7 @@
|
|
||||||
|
|
||||||
pop3d: pop3d.o backend.o tls.o mutex_fake.o libimap.a $(DEPLIBS) $(SERVICE)
|
|
||||||
$(CC) $(LDFLAGS) -o pop3d pop3d.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 backend.o index.o spool.o netnews.o wildmat.o tls.o \
|
|
||||||
mutex_fake.o nntp_err.o libimap.a $(DEPLIBS) $(SERVICE)
|
|
||||||
Index: imap/imapd.c
|
|
||||||
diff -u imap/imapd.c.orig imap/imapd.c
|
|
||||||
--- imap/imapd.c.orig Thu Mar 6 03:32:05 2003
|
|
||||||
+++ imap/imapd.c Fri Mar 21 23:25:27 2003
|
|
||||||
@@ -126,6 +126,18 @@
|
|
||||||
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;
|
|
||||||
@@ -447,6 +459,23 @@
|
|
||||||
/* setup for sending IMAP IDLE notifications */
|
|
||||||
idle_enabled();
|
|
||||||
|
|
||||||
+#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);
|
|
||||||
@@ -533,6 +562,15 @@
|
|
||||||
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 */
|
|
||||||
@@ -575,6 +613,11 @@
|
|
||||||
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();
|
|
||||||
|
|
||||||
@@ -645,6 +688,10 @@
|
|
||||||
|
|
||||||
cyrus_done();
|
|
||||||
|
|
||||||
+#ifdef DRAC_AUTH
|
|
||||||
+ if (drac.interval) (void) dracdisc((char **)NULL);
|
|
||||||
+#endif /* DRAC_AUTH */
|
|
||||||
+
|
|
||||||
exit(code);
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -667,6 +714,35 @@
|
|
||||||
shut_down(code);
|
|
||||||
}
|
|
||||||
|
|
||||||
+#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
|
|
||||||
*/
|
|
||||||
@@ -1664,6 +1740,11 @@
|
|
||||||
|
|
||||||
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);
|
|
||||||
|
|
||||||
@@ -1786,6 +1867,11 @@
|
|
||||||
|
|
||||||
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);
|
|
||||||
Index: imap/pop3d.c
|
|
||||||
diff -u imap/pop3d.c.orig imap/pop3d.c
|
|
||||||
--- imap/pop3d.c.orig Thu Mar 13 01:38:16 2003
|
|
||||||
+++ imap/pop3d.c Fri Mar 21 23:37:11 2003
|
|
||||||
@@ -101,6 +101,10 @@
|
|
||||||
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;
|
|
||||||
@@ -395,6 +399,10 @@
|
|
||||||
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
|
|
||||||
@@ -1422,6 +1430,21 @@
|
|
||||||
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 */
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
/* remote mailbox */
|
|
||||||
Index: imap/version.c
|
|
||||||
diff -u imap/version.c.orig imap/version.c
|
|
||||||
--- imap/version.c.orig Fri Feb 14 05:33:02 2003
|
|
||||||
+++ imap/version.c Fri Mar 21 20:13:21 2003
|
|
||||||
@@ -143,6 +143,10 @@
|
|
||||||
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 Thu Mar 20 04:00:39 2003
|
|
||||||
+++ lib/imapoptions Fri Mar 21 20:32:15 2003
|
|
||||||
@@ -154,6 +154,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. */
|
|
||||||
+
|
|
||||||
{ "duplicatesuppression", 1, SWITCH }
|
|
||||||
/* If enabled, lmtpd will suppress delivery of a message to a mailbox if
|
|
||||||
a message with the same message-id (or resent-message-id) is recorded
|
|
|
@ -1,17 +1,17 @@
|
||||||
Index: aclocal.m4
|
Index: aclocal.m4
|
||||||
diff -u aclocal.m4.orig aclocal.m4
|
diff -u aclocal.m4.orig aclocal.m4
|
||||||
--- aclocal.m4.orig Thu Mar 20 04:04:34 2003
|
--- aclocal.m4.orig Thu Jul 17 06:20:37 2003
|
||||||
+++ aclocal.m4 Fri Mar 21 20:09:38 2003
|
+++ aclocal.m4 Fri Jul 18 00:58:34 2003
|
||||||
@@ -453,7 +453,7 @@
|
@@ -489,7 +489,7 @@
|
||||||
BDB_LIBADD=""
|
BDB_LIBADD=""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- for dbname in db-4.1 db4.1 db-4.0 db4.0 db-4 db4 db-3.3 db3.3 db-3.2 db3.2 db-3.1 db3.1 db-3 db3 db
|
- for dbname in db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
|
||||||
+ for dbname in ${with_bdb} db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db4 db-3.3 db3.3 db-3.2 db3.2 db-3.1 db3.1 db-3 db3 db
|
+ for dbname in ${with_bdb} db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
|
||||||
do
|
do
|
||||||
AC_CHECK_LIB($dbname, db_create, BDB_LIBADD="$BDB_LIBADD -l$dbname";
|
AC_CHECK_LIB($dbname, db_create, BDB_LIBADD="$BDB_LIBADD -l$dbname";
|
||||||
dblib="berkeley"; break, dblib="no")
|
dblib="berkeley"; break, dblib="no")
|
||||||
@@ -1574,7 +1574,7 @@
|
@@ -1629,7 +1629,7 @@
|
||||||
LIB_UCDSNMP=""
|
LIB_UCDSNMP=""
|
||||||
if test "$with_ucdsnmp" != no; then
|
if test "$with_ucdsnmp" != no; then
|
||||||
AC_DEFINE(HAVE_UCDSNMP)
|
AC_DEFINE(HAVE_UCDSNMP)
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
Index: man/Makefile.in
|
Index: man/Makefile.in
|
||||||
diff -u man/Makefile.in.orig man/Makefile.in
|
diff -u man/Makefile.in.orig man/Makefile.in
|
||||||
--- man/Makefile.in.orig Fri Feb 28 03:12:33 2003
|
--- man/Makefile.in.orig Fri Jun 20 05:49:50 2003
|
||||||
+++ man/Makefile.in Fri Mar 21 14:14:24 2003
|
+++ man/Makefile.in Fri Jul 18 00:30:05 2003
|
||||||
@@ -69,7 +69,7 @@
|
@@ -69,7 +69,7 @@
|
||||||
MAN3 = $(srcdir)/imclient.3
|
MAN3 = $(srcdir)/imclient.3
|
||||||
MAN5 = imapd.conf.5 $(srcdir)/krb.equiv.5 $(srcdir)/cyrus.conf.5
|
MAN5 = imapd.conf.5 $(srcdir)/krb.equiv.5 $(srcdir)/cyrus.conf.5
|
||||||
MAN8 = $(srcdir)/arbitron.8 $(srcdir)/deliver.8 \
|
MAN8 = $(srcdir)/arbitron.8 $(srcdir)/cyr_expire.8 $(srcdir)/deliver.8 \
|
||||||
- $(srcdir)/fud.8 $(srcdir)/imapd.8 $(srcdir)/pop3d.8 $(srcdir)/quota.8 \
|
- $(srcdir)/fud.8 $(srcdir)/imapd.8 $(srcdir)/pop3d.8 $(srcdir)/quota.8 \
|
||||||
+ $(srcdir)/fud.8 $(srcdir)/imapd.8 $(srcdir)/pop3d.8 $(srcdir)/cyrquota.8 \
|
+ $(srcdir)/fud.8 $(srcdir)/imapd.8 $(srcdir)/pop3d.8 $(srcdir)/cyrquota.8 \
|
||||||
$(srcdir)/reconstruct.8 $(srcdir)/rmnews.8 $(srcdir)/syncnews.8 \
|
$(srcdir)/reconstruct.8 $(srcdir)/rmnews.8 $(srcdir)/syncnews.8 \
|
||||||
|
|
|
@ -1,22 +1,22 @@
|
||||||
Index: configure
|
Index: configure
|
||||||
diff -u configure.orig configure
|
diff -u configure.orig configure
|
||||||
--- configure.orig Tue Feb 4 16:05:15 2003
|
--- configure.orig Thu Jul 17 06:20:38 2003
|
||||||
+++ configure Tue Feb 4 16:08:25 2003
|
+++ configure Fri Jul 18 00:32:33 2003
|
||||||
@@ -2760,7 +2760,7 @@
|
@@ -3116,7 +3116,7 @@
|
||||||
BDB_LIBADD=""
|
BDB_LIBADD=""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- for dbname in db-4.1 db4.1 db-4.0 db4.0 db-4 db4 db-3.3 db3.3 db-3.2 db3.2 db-3.1 db3.1 db-3 db3 db
|
- for dbname in db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
|
||||||
+ for dbname in ${with_bdb} db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db4 db-3.3 db3.3 db-3.2 db3.2 db-3.1 db3.1 db-3 db3 db
|
+ for dbname in ${with_bdb} db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
|
||||||
do
|
do
|
||||||
echo $ac_n "checking for db_create in -l$dbname""... $ac_c" 1>&6
|
echo $ac_n "checking for db_create in -l$dbname""... $ac_c" 1>&6
|
||||||
echo "configure:2767: checking for db_create in -l$dbname" >&5
|
echo "configure:3123: checking for db_create in -l$dbname" >&5
|
||||||
@@ -6757,7 +6757,7 @@
|
@@ -7475,7 +7475,7 @@
|
||||||
#define HAVE_UCDSNMP 1
|
#define HAVE_UCDSNMP 1
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
- LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp"
|
- LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp"
|
||||||
+ LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp -lkvm"
|
+ LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp -lkvm"
|
||||||
echo $ac_n "checking for rpmdbOpen in -lrpm""... $ac_c" 1>&6
|
echo $ac_n "checking for rpmdbOpen in -lrpm""... $ac_c" 1>&6
|
||||||
echo "configure:6763: checking for rpmdbOpen in -lrpm" >&5
|
echo "configure:7481: checking for rpmdbOpen in -lrpm" >&5
|
||||||
ac_lib_var=`echo rpm'_'rpmdbOpen | sed 'y%./+-%__p_%'`
|
ac_lib_var=`echo rpm'_'rpmdbOpen | sed 'y%./+-%__p_%'`
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
Index: imap/Makefile.in
|
Index: imap/Makefile.in
|
||||||
diff -u imap/Makefile.in.orig imap/Makefile.in
|
diff -u imap/Makefile.in.orig imap/Makefile.in
|
||||||
--- imap/Makefile.in.orig Fri Feb 28 03:10:28 2003
|
--- imap/Makefile.in.orig Tue Jul 15 00:56:08 2003
|
||||||
+++ imap/Makefile.in Fri Mar 21 14:28:10 2003
|
+++ imap/Makefile.in Fri Jul 18 00:35:34 2003
|
||||||
@@ -232,13 +232,13 @@
|
@@ -241,13 +241,13 @@
|
||||||
libimap.a $(DEPLIBS)
|
|
||||||
$(CC) $(LDFLAGS) -o mupdate \
|
$(CC) $(LDFLAGS) -o mupdate \
|
||||||
$(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \
|
$(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \
|
||||||
- mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread
|
mutex_pthread.o tls.o libimap.a \
|
||||||
+ mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS)
|
- $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread
|
||||||
|
+ $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS)
|
||||||
|
|
||||||
mupdate.pure: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o \
|
mupdate.pure: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o \
|
||||||
libimap.a $(DEPLIBS)
|
libimap.a $(DEPLIBS)
|
||||||
|
|
|
@ -1,18 +0,0 @@
|
||||||
--- imap/mailbox.h 2003/03/12 16:38:13 1.68.4.9
|
|
||||||
+++ imap/mailbox.h 2003/03/31 20:33:45 1.68.4.10
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* mailbox.h -- Mailbox format definitions
|
|
||||||
- * $Id: mailbox.h,v 1.68.4.9 2003/03/12 16:38:13 ken3 Exp $
|
|
||||||
+ * $Id: mailbox.h,v 1.68.4.10 2003/03/31 20:33:45 ken3 Exp $
|
|
||||||
*
|
|
||||||
* Copyright (c) 1998-2003 Carnegie Mellon University. All rights reserved.
|
|
||||||
*
|
|
||||||
@@ -269,7 +269,7 @@
|
|
||||||
unsigned msgno,
|
|
||||||
struct index_record *record);
|
|
||||||
extern int mailbox_read_quota(struct quota *quota);
|
|
||||||
-extern void mailbox_hash_quota(char *buf, unsigned size, const char *qr);
|
|
||||||
+extern void mailbox_hash_quota(char *buf, size_t size, const char *qr);
|
|
||||||
extern int mailbox_lock_header(struct mailbox *mailbox);
|
|
||||||
extern int mailbox_lock_index(struct mailbox *mailbox);
|
|
||||||
extern int mailbox_lock_pop(struct mailbox *mailbox);
|
|
|
@ -1,8 +1,16 @@
|
||||||
Index: imtest/imtest.c
|
Index: imtest/imtest.c
|
||||||
diff -u imtest/imtest.c.orig imtest/imtest.c
|
diff -u imtest/imtest.c.orig imtest/imtest.c
|
||||||
--- imtest/imtest.c.orig Wed Mar 19 10:29:22 2003
|
--- imtest/imtest.c.orig Sun Jul 13 05:10:56 2003
|
||||||
+++ imtest/imtest.c Sun May 11 16:47:11 2003
|
+++ imtest/imtest.c Fri Jul 18 00:52:29 2003
|
||||||
@@ -417,8 +417,8 @@
|
@@ -51,6 +51,7 @@
|
||||||
|
#include <sys/stat.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
|
||||||
|
+#include <limits.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
@@ -419,8 +420,8 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -13,11 +13,10 @@ cyrus/bin/ctl_cyrusdb
|
||||||
cyrus/bin/ctl_deliver
|
cyrus/bin/ctl_deliver
|
||||||
cyrus/bin/ctl_mboxlist
|
cyrus/bin/ctl_mboxlist
|
||||||
cyrus/bin/cvt_cyrusdb
|
cyrus/bin/cvt_cyrusdb
|
||||||
|
cyrus/bin/cyr_expire
|
||||||
cyrus/bin/cyrdump
|
cyrus/bin/cyrdump
|
||||||
cyrus/bin/cyrquota
|
cyrus/bin/cyrquota
|
||||||
cyrus/bin/deliver
|
cyrus/bin/deliver
|
||||||
%%NNTP%%cyrus/bin/expirenews
|
|
||||||
cyrus/bin/feedcyrus
|
|
||||||
%%NNTP%%cyrus/bin/fetchnews
|
%%NNTP%%cyrus/bin/fetchnews
|
||||||
cyrus/bin/fud
|
cyrus/bin/fud
|
||||||
cyrus/bin/imapd
|
cyrus/bin/imapd
|
||||||
|
@ -26,12 +25,14 @@ cyrus/bin/lmtpd
|
||||||
%%MURDER%%cyrus/bin/lmtpproxyd
|
%%MURDER%%cyrus/bin/lmtpproxyd
|
||||||
cyrus/bin/masssievec
|
cyrus/bin/masssievec
|
||||||
cyrus/bin/master
|
cyrus/bin/master
|
||||||
|
cyrus/bin/mbexamine
|
||||||
cyrus/bin/mbpath
|
cyrus/bin/mbpath
|
||||||
cyrus/bin/mkimap
|
cyrus/bin/mkimap
|
||||||
%%MURDER%%cyrus/bin/mupdate
|
%%MURDER%%cyrus/bin/mupdate
|
||||||
%%NNTP%%cyrus/bin/nntpd
|
%%NNTP%%cyrus/bin/nntpd
|
||||||
cyrus/bin/notifyd
|
cyrus/bin/notifyd
|
||||||
cyrus/bin/pop3d
|
cyrus/bin/pop3d
|
||||||
|
cyrus/bin/pop3proxyd
|
||||||
%%MURDER%%cyrus/bin/proxyd
|
%%MURDER%%cyrus/bin/proxyd
|
||||||
cyrus/bin/reconstruct
|
cyrus/bin/reconstruct
|
||||||
cyrus/bin/sievec
|
cyrus/bin/sievec
|
||||||
|
|
|
@ -6,13 +6,13 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
PORTNAME= cyrus-imapd
|
PORTNAME= cyrus-imapd
|
||||||
PORTVERSION= 2.2.0.a
|
PORTVERSION= 2.2.1.b
|
||||||
#PORTREVISION= 0
|
#PORTREVISION= 0
|
||||||
CATEGORIES= mail ipv6
|
CATEGORIES= mail ipv6
|
||||||
MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
||||||
ftp://ftp.hanse.de/sites/transit/mirror/ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
ftp://ftp.hanse.de/sites/transit/mirror/ftp.andrew.cmu.edu/pub/cyrus-mail/ \
|
||||||
${MASTER_SITE_RINGSERVER:S,%SUBDIR%,net/mail/cyrus-mail/&,}
|
${MASTER_SITE_RINGSERVER:S,%SUBDIR%,net/mail/cyrus-mail/&,}
|
||||||
DISTNAME= ${PORTNAME}-2.2.0-ALPHA
|
DISTNAME= ${PORTNAME}-2.2.1-BETA
|
||||||
|
|
||||||
MAINTAINER= ume@FreeBSD.org
|
MAINTAINER= ume@FreeBSD.org
|
||||||
COMMENT= The cyrus mail server, supporting POP3 and IMAP4 protocols
|
COMMENT= The cyrus mail server, supporting POP3 and IMAP4 protocols
|
||||||
|
@ -69,10 +69,6 @@ PLIST_SUB+= MURDER=""
|
||||||
PLIST_SUB+= MURDER="@comment "
|
PLIST_SUB+= MURDER="@comment "
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
.if defined(WITH_FULLDIRHASH)
|
|
||||||
CONFIGURE_ARGS+=--enable-fulldirhash
|
|
||||||
.endif
|
|
||||||
|
|
||||||
.if defined(WITH_LISTEXT)
|
.if defined(WITH_LISTEXT)
|
||||||
CONFIGURE_ARGS+=--enable-listext
|
CONFIGURE_ARGS+=--enable-listext
|
||||||
.endif
|
.endif
|
||||||
|
@ -86,7 +82,7 @@ CONFIGURE_ARGS+=--enable-netscapehack
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
.if defined(WITH_DRAC)
|
.if defined(WITH_DRAC)
|
||||||
EXTRA_PATCHES+= ${FILESDIR}/drac_auth.patch \
|
EXTRA_PATCHES+= ${WRKSRC}/contrib/drac_auth.patch \
|
||||||
${FILESDIR}/extra-patch-acconfig.h ${FILESDIR}/extra-patch-aclocal.m4
|
${FILESDIR}/extra-patch-acconfig.h ${FILESDIR}/extra-patch-aclocal.m4
|
||||||
USE_AUTOHEADER= YES
|
USE_AUTOHEADER= YES
|
||||||
CONFIGURE_ARGS+=--with-drac=${LOCALBASE}
|
CONFIGURE_ARGS+=--with-drac=${LOCALBASE}
|
||||||
|
@ -109,10 +105,11 @@ MAN1= cyradm.1 imtest.1 installsieve.1 lmtptest.1 mupdatetest.1 \
|
||||||
MAN3= imclient.3
|
MAN3= imclient.3
|
||||||
MAN5= cyrus.conf.5 imapd.conf.5 krb.equiv.5
|
MAN5= cyrus.conf.5 imapd.conf.5 krb.equiv.5
|
||||||
MAN8= arbitron.8 chk_cyrus.8 nntpd.8 ctl_cyrusdb.8 ctl_deliver.8 \
|
MAN8= arbitron.8 chk_cyrus.8 nntpd.8 ctl_cyrusdb.8 ctl_deliver.8 \
|
||||||
ctl_mboxlist.8 cvt_cyrusdb.8 cyrquota.8 deliver.8 \
|
cyr_expire.8 ctl_mboxlist.8 cvt_cyrusdb.8 cyrquota.8 \
|
||||||
expirenews.8 fetchnews.8 fud.8 idled.8 imapd.8 ipurge.8 \
|
deliver.8 fetchnews.8 fud.8 idled.8 imapd.8 ipurge.8 \
|
||||||
lmtpd.8 master.8 mbpath.8 notifyd.8 pop3d.8 reconstruct.8 \
|
lmtpd.8 master.8 mbexamine.8 mbpath.8 notifyd.8 pop3d.8 \
|
||||||
rmnews.8 squatter.8 syncnews.8 timsieved.8 tls_prune.8
|
reconstruct.8 rmnews.8 squatter.8 syncnews.8 timsieved.8 \
|
||||||
|
tls_prune.8
|
||||||
|
|
||||||
DOCS= altnamespace anoncvs bugs changes faq feedback index \
|
DOCS= altnamespace anoncvs bugs changes faq feedback index \
|
||||||
install install-admin-mb install-auth install-compile \
|
install install-admin-mb install-auth install-compile \
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
MD5 (cyrus-imapd-2.2.0-ALPHA.tar.gz) = bf588d15288885602675d90439500e07
|
MD5 (cyrus-imapd-2.2.1-BETA.tar.gz) = ea318280ae375065aa21c4c1ace322f4
|
||||||
|
|
|
@ -1,308 +0,0 @@
|
||||||
Index: acconfig.h
|
|
||||||
diff -u acconfig.h.orig acconfig.h
|
|
||||||
--- acconfig.h.orig Fri Feb 14 05:32:50 2003
|
|
||||||
+++ acconfig.h Fri Mar 21 20:13:20 2003
|
|
||||||
@@ -98,6 +98,9 @@
|
|
||||||
/* do we have SASL support for APOP? */
|
|
||||||
#undef HAVE_APOP
|
|
||||||
|
|
||||||
+/* the Dynamic Relay Authorization Control package */
|
|
||||||
+#undef DRAC_AUTH
|
|
||||||
+
|
|
||||||
/* do we have OpenSSL? */
|
|
||||||
#undef HAVE_SSL
|
|
||||||
|
|
||||||
Index: configure.in
|
|
||||||
diff -u configure.in.orig configure.in
|
|
||||||
--- configure.in.orig Wed Mar 19 04:15:14 2003
|
|
||||||
+++ configure.in Fri Mar 21 20:20:54 2003
|
|
||||||
@@ -981,6 +981,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)
|
|
||||||
+ 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 Feb 28 03:10:28 2003
|
|
||||||
+++ imap/Makefile.in Fri Mar 21 20:23:02 2003
|
|
||||||
@@ -67,6 +67,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@
|
|
||||||
|
|
||||||
@@ -206,17 +207,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)
|
|
||||||
|
|
||||||
proxyd: $(PROXYDOBJS) mutex_fake.o libimap.a $(DEPLIBS) $(SERVICE)
|
|
||||||
$(CC) $(LDFLAGS) -o proxyd \
|
|
||||||
@@ -242,7 +243,7 @@
|
|
||||||
|
|
||||||
pop3d: pop3d.o backend.o tls.o mutex_fake.o libimap.a $(DEPLIBS) $(SERVICE)
|
|
||||||
$(CC) $(LDFLAGS) -o pop3d pop3d.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 backend.o index.o spool.o netnews.o wildmat.o tls.o \
|
|
||||||
mutex_fake.o nntp_err.o libimap.a $(DEPLIBS) $(SERVICE)
|
|
||||||
Index: imap/imapd.c
|
|
||||||
diff -u imap/imapd.c.orig imap/imapd.c
|
|
||||||
--- imap/imapd.c.orig Thu Mar 6 03:32:05 2003
|
|
||||||
+++ imap/imapd.c Fri Mar 21 23:25:27 2003
|
|
||||||
@@ -126,6 +126,18 @@
|
|
||||||
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;
|
|
||||||
@@ -447,6 +459,23 @@
|
|
||||||
/* setup for sending IMAP IDLE notifications */
|
|
||||||
idle_enabled();
|
|
||||||
|
|
||||||
+#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);
|
|
||||||
@@ -533,6 +562,15 @@
|
|
||||||
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 */
|
|
||||||
@@ -575,6 +613,11 @@
|
|
||||||
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();
|
|
||||||
|
|
||||||
@@ -645,6 +688,10 @@
|
|
||||||
|
|
||||||
cyrus_done();
|
|
||||||
|
|
||||||
+#ifdef DRAC_AUTH
|
|
||||||
+ if (drac.interval) (void) dracdisc((char **)NULL);
|
|
||||||
+#endif /* DRAC_AUTH */
|
|
||||||
+
|
|
||||||
exit(code);
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -667,6 +714,35 @@
|
|
||||||
shut_down(code);
|
|
||||||
}
|
|
||||||
|
|
||||||
+#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
|
|
||||||
*/
|
|
||||||
@@ -1664,6 +1740,11 @@
|
|
||||||
|
|
||||||
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);
|
|
||||||
|
|
||||||
@@ -1786,6 +1867,11 @@
|
|
||||||
|
|
||||||
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);
|
|
||||||
Index: imap/pop3d.c
|
|
||||||
diff -u imap/pop3d.c.orig imap/pop3d.c
|
|
||||||
--- imap/pop3d.c.orig Thu Mar 13 01:38:16 2003
|
|
||||||
+++ imap/pop3d.c Fri Mar 21 23:37:11 2003
|
|
||||||
@@ -101,6 +101,10 @@
|
|
||||||
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;
|
|
||||||
@@ -395,6 +399,10 @@
|
|
||||||
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
|
|
||||||
@@ -1422,6 +1430,21 @@
|
|
||||||
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 */
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
/* remote mailbox */
|
|
||||||
Index: imap/version.c
|
|
||||||
diff -u imap/version.c.orig imap/version.c
|
|
||||||
--- imap/version.c.orig Fri Feb 14 05:33:02 2003
|
|
||||||
+++ imap/version.c Fri Mar 21 20:13:21 2003
|
|
||||||
@@ -143,6 +143,10 @@
|
|
||||||
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 Thu Mar 20 04:00:39 2003
|
|
||||||
+++ lib/imapoptions Fri Mar 21 20:32:15 2003
|
|
||||||
@@ -154,6 +154,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. */
|
|
||||||
+
|
|
||||||
{ "duplicatesuppression", 1, SWITCH }
|
|
||||||
/* If enabled, lmtpd will suppress delivery of a message to a mailbox if
|
|
||||||
a message with the same message-id (or resent-message-id) is recorded
|
|
|
@ -1,17 +1,17 @@
|
||||||
Index: aclocal.m4
|
Index: aclocal.m4
|
||||||
diff -u aclocal.m4.orig aclocal.m4
|
diff -u aclocal.m4.orig aclocal.m4
|
||||||
--- aclocal.m4.orig Thu Mar 20 04:04:34 2003
|
--- aclocal.m4.orig Thu Jul 17 06:20:37 2003
|
||||||
+++ aclocal.m4 Fri Mar 21 20:09:38 2003
|
+++ aclocal.m4 Fri Jul 18 00:58:34 2003
|
||||||
@@ -453,7 +453,7 @@
|
@@ -489,7 +489,7 @@
|
||||||
BDB_LIBADD=""
|
BDB_LIBADD=""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- for dbname in db-4.1 db4.1 db-4.0 db4.0 db-4 db4 db-3.3 db3.3 db-3.2 db3.2 db-3.1 db3.1 db-3 db3 db
|
- for dbname in db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
|
||||||
+ for dbname in ${with_bdb} db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db4 db-3.3 db3.3 db-3.2 db3.2 db-3.1 db3.1 db-3 db3 db
|
+ for dbname in ${with_bdb} db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
|
||||||
do
|
do
|
||||||
AC_CHECK_LIB($dbname, db_create, BDB_LIBADD="$BDB_LIBADD -l$dbname";
|
AC_CHECK_LIB($dbname, db_create, BDB_LIBADD="$BDB_LIBADD -l$dbname";
|
||||||
dblib="berkeley"; break, dblib="no")
|
dblib="berkeley"; break, dblib="no")
|
||||||
@@ -1574,7 +1574,7 @@
|
@@ -1629,7 +1629,7 @@
|
||||||
LIB_UCDSNMP=""
|
LIB_UCDSNMP=""
|
||||||
if test "$with_ucdsnmp" != no; then
|
if test "$with_ucdsnmp" != no; then
|
||||||
AC_DEFINE(HAVE_UCDSNMP)
|
AC_DEFINE(HAVE_UCDSNMP)
|
||||||
|
|
|
@ -1,11 +1,11 @@
|
||||||
Index: man/Makefile.in
|
Index: man/Makefile.in
|
||||||
diff -u man/Makefile.in.orig man/Makefile.in
|
diff -u man/Makefile.in.orig man/Makefile.in
|
||||||
--- man/Makefile.in.orig Fri Feb 28 03:12:33 2003
|
--- man/Makefile.in.orig Fri Jun 20 05:49:50 2003
|
||||||
+++ man/Makefile.in Fri Mar 21 14:14:24 2003
|
+++ man/Makefile.in Fri Jul 18 00:30:05 2003
|
||||||
@@ -69,7 +69,7 @@
|
@@ -69,7 +69,7 @@
|
||||||
MAN3 = $(srcdir)/imclient.3
|
MAN3 = $(srcdir)/imclient.3
|
||||||
MAN5 = imapd.conf.5 $(srcdir)/krb.equiv.5 $(srcdir)/cyrus.conf.5
|
MAN5 = imapd.conf.5 $(srcdir)/krb.equiv.5 $(srcdir)/cyrus.conf.5
|
||||||
MAN8 = $(srcdir)/arbitron.8 $(srcdir)/deliver.8 \
|
MAN8 = $(srcdir)/arbitron.8 $(srcdir)/cyr_expire.8 $(srcdir)/deliver.8 \
|
||||||
- $(srcdir)/fud.8 $(srcdir)/imapd.8 $(srcdir)/pop3d.8 $(srcdir)/quota.8 \
|
- $(srcdir)/fud.8 $(srcdir)/imapd.8 $(srcdir)/pop3d.8 $(srcdir)/quota.8 \
|
||||||
+ $(srcdir)/fud.8 $(srcdir)/imapd.8 $(srcdir)/pop3d.8 $(srcdir)/cyrquota.8 \
|
+ $(srcdir)/fud.8 $(srcdir)/imapd.8 $(srcdir)/pop3d.8 $(srcdir)/cyrquota.8 \
|
||||||
$(srcdir)/reconstruct.8 $(srcdir)/rmnews.8 $(srcdir)/syncnews.8 \
|
$(srcdir)/reconstruct.8 $(srcdir)/rmnews.8 $(srcdir)/syncnews.8 \
|
||||||
|
|
|
@ -1,22 +1,22 @@
|
||||||
Index: configure
|
Index: configure
|
||||||
diff -u configure.orig configure
|
diff -u configure.orig configure
|
||||||
--- configure.orig Tue Feb 4 16:05:15 2003
|
--- configure.orig Thu Jul 17 06:20:38 2003
|
||||||
+++ configure Tue Feb 4 16:08:25 2003
|
+++ configure Fri Jul 18 00:32:33 2003
|
||||||
@@ -2760,7 +2760,7 @@
|
@@ -3116,7 +3116,7 @@
|
||||||
BDB_LIBADD=""
|
BDB_LIBADD=""
|
||||||
fi
|
fi
|
||||||
|
|
||||||
- for dbname in db-4.1 db4.1 db-4.0 db4.0 db-4 db4 db-3.3 db3.3 db-3.2 db3.2 db-3.1 db3.1 db-3 db3 db
|
- for dbname in db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
|
||||||
+ for dbname in ${with_bdb} db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db4 db-3.3 db3.3 db-3.2 db3.2 db-3.1 db3.1 db-3 db3 db
|
+ for dbname in ${with_bdb} db-4.1 db4.1 db41 db-4.0 db4.0 db-4 db40 db4 db-3.3 db3.3 db33 db-3.2 db3.2 db32 db-3.1 db3.1 db31 db-3 db30 db3 db
|
||||||
do
|
do
|
||||||
echo $ac_n "checking for db_create in -l$dbname""... $ac_c" 1>&6
|
echo $ac_n "checking for db_create in -l$dbname""... $ac_c" 1>&6
|
||||||
echo "configure:2767: checking for db_create in -l$dbname" >&5
|
echo "configure:3123: checking for db_create in -l$dbname" >&5
|
||||||
@@ -6757,7 +6757,7 @@
|
@@ -7475,7 +7475,7 @@
|
||||||
#define HAVE_UCDSNMP 1
|
#define HAVE_UCDSNMP 1
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
- LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp"
|
- LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp"
|
||||||
+ LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp -lkvm"
|
+ LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp -lkvm"
|
||||||
echo $ac_n "checking for rpmdbOpen in -lrpm""... $ac_c" 1>&6
|
echo $ac_n "checking for rpmdbOpen in -lrpm""... $ac_c" 1>&6
|
||||||
echo "configure:6763: checking for rpmdbOpen in -lrpm" >&5
|
echo "configure:7481: checking for rpmdbOpen in -lrpm" >&5
|
||||||
ac_lib_var=`echo rpm'_'rpmdbOpen | sed 'y%./+-%__p_%'`
|
ac_lib_var=`echo rpm'_'rpmdbOpen | sed 'y%./+-%__p_%'`
|
||||||
|
|
|
@ -1,13 +1,13 @@
|
||||||
Index: imap/Makefile.in
|
Index: imap/Makefile.in
|
||||||
diff -u imap/Makefile.in.orig imap/Makefile.in
|
diff -u imap/Makefile.in.orig imap/Makefile.in
|
||||||
--- imap/Makefile.in.orig Fri Feb 28 03:10:28 2003
|
--- imap/Makefile.in.orig Tue Jul 15 00:56:08 2003
|
||||||
+++ imap/Makefile.in Fri Mar 21 14:28:10 2003
|
+++ imap/Makefile.in Fri Jul 18 00:35:34 2003
|
||||||
@@ -232,13 +232,13 @@
|
@@ -241,13 +241,13 @@
|
||||||
libimap.a $(DEPLIBS)
|
|
||||||
$(CC) $(LDFLAGS) -o mupdate \
|
$(CC) $(LDFLAGS) -o mupdate \
|
||||||
$(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \
|
$(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \
|
||||||
- mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread
|
mutex_pthread.o tls.o libimap.a \
|
||||||
+ mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS)
|
- $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread
|
||||||
|
+ $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS)
|
||||||
|
|
||||||
mupdate.pure: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o \
|
mupdate.pure: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o \
|
||||||
libimap.a $(DEPLIBS)
|
libimap.a $(DEPLIBS)
|
||||||
|
|
|
@ -1,18 +0,0 @@
|
||||||
--- imap/mailbox.h 2003/03/12 16:38:13 1.68.4.9
|
|
||||||
+++ imap/mailbox.h 2003/03/31 20:33:45 1.68.4.10
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* mailbox.h -- Mailbox format definitions
|
|
||||||
- * $Id: mailbox.h,v 1.68.4.9 2003/03/12 16:38:13 ken3 Exp $
|
|
||||||
+ * $Id: mailbox.h,v 1.68.4.10 2003/03/31 20:33:45 ken3 Exp $
|
|
||||||
*
|
|
||||||
* Copyright (c) 1998-2003 Carnegie Mellon University. All rights reserved.
|
|
||||||
*
|
|
||||||
@@ -269,7 +269,7 @@
|
|
||||||
unsigned msgno,
|
|
||||||
struct index_record *record);
|
|
||||||
extern int mailbox_read_quota(struct quota *quota);
|
|
||||||
-extern void mailbox_hash_quota(char *buf, unsigned size, const char *qr);
|
|
||||||
+extern void mailbox_hash_quota(char *buf, size_t size, const char *qr);
|
|
||||||
extern int mailbox_lock_header(struct mailbox *mailbox);
|
|
||||||
extern int mailbox_lock_index(struct mailbox *mailbox);
|
|
||||||
extern int mailbox_lock_pop(struct mailbox *mailbox);
|
|
|
@ -1,8 +1,16 @@
|
||||||
Index: imtest/imtest.c
|
Index: imtest/imtest.c
|
||||||
diff -u imtest/imtest.c.orig imtest/imtest.c
|
diff -u imtest/imtest.c.orig imtest/imtest.c
|
||||||
--- imtest/imtest.c.orig Wed Mar 19 10:29:22 2003
|
--- imtest/imtest.c.orig Sun Jul 13 05:10:56 2003
|
||||||
+++ imtest/imtest.c Sun May 11 16:47:11 2003
|
+++ imtest/imtest.c Fri Jul 18 00:52:29 2003
|
||||||
@@ -417,8 +417,8 @@
|
@@ -51,6 +51,7 @@
|
||||||
|
#include <sys/stat.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
|
||||||
|
+#include <limits.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
@@ -419,8 +420,8 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -13,11 +13,10 @@ cyrus/bin/ctl_cyrusdb
|
||||||
cyrus/bin/ctl_deliver
|
cyrus/bin/ctl_deliver
|
||||||
cyrus/bin/ctl_mboxlist
|
cyrus/bin/ctl_mboxlist
|
||||||
cyrus/bin/cvt_cyrusdb
|
cyrus/bin/cvt_cyrusdb
|
||||||
|
cyrus/bin/cyr_expire
|
||||||
cyrus/bin/cyrdump
|
cyrus/bin/cyrdump
|
||||||
cyrus/bin/cyrquota
|
cyrus/bin/cyrquota
|
||||||
cyrus/bin/deliver
|
cyrus/bin/deliver
|
||||||
%%NNTP%%cyrus/bin/expirenews
|
|
||||||
cyrus/bin/feedcyrus
|
|
||||||
%%NNTP%%cyrus/bin/fetchnews
|
%%NNTP%%cyrus/bin/fetchnews
|
||||||
cyrus/bin/fud
|
cyrus/bin/fud
|
||||||
cyrus/bin/imapd
|
cyrus/bin/imapd
|
||||||
|
@ -26,12 +25,14 @@ cyrus/bin/lmtpd
|
||||||
%%MURDER%%cyrus/bin/lmtpproxyd
|
%%MURDER%%cyrus/bin/lmtpproxyd
|
||||||
cyrus/bin/masssievec
|
cyrus/bin/masssievec
|
||||||
cyrus/bin/master
|
cyrus/bin/master
|
||||||
|
cyrus/bin/mbexamine
|
||||||
cyrus/bin/mbpath
|
cyrus/bin/mbpath
|
||||||
cyrus/bin/mkimap
|
cyrus/bin/mkimap
|
||||||
%%MURDER%%cyrus/bin/mupdate
|
%%MURDER%%cyrus/bin/mupdate
|
||||||
%%NNTP%%cyrus/bin/nntpd
|
%%NNTP%%cyrus/bin/nntpd
|
||||||
cyrus/bin/notifyd
|
cyrus/bin/notifyd
|
||||||
cyrus/bin/pop3d
|
cyrus/bin/pop3d
|
||||||
|
cyrus/bin/pop3proxyd
|
||||||
%%MURDER%%cyrus/bin/proxyd
|
%%MURDER%%cyrus/bin/proxyd
|
||||||
cyrus/bin/reconstruct
|
cyrus/bin/reconstruct
|
||||||
cyrus/bin/sievec
|
cyrus/bin/sievec
|
||||||
|
|
Loading…
Add table
Reference in a new issue