1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-26 05:02:18 +00:00

Add Cyrus IMAPd 2.3.0 after repo. copy.

This commit is contained in:
Hajimu UMEMOTO 2005-12-12 01:22:54 +00:00
parent 6eb5f7a285
commit ec6218dc99
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=150936
31 changed files with 1021 additions and 376 deletions

View File

@ -51,6 +51,7 @@
SUBDIR += cvsmail
SUBDIR += cyrus-imapd2
SUBDIR += cyrus-imapd22
SUBDIR += cyrus-imapd23
SUBDIR += cyrus2courier
SUBDIR += dbmail
SUBDIR += dcc-dccd

View File

@ -1,13 +1,13 @@
# New ports collection makefile for: cyrus-imapd
# Date created: Jan 4th 2001
# Date created: Dec 10th 2005
# Whom: ume@FreeBSD.org
#
# $FreeBSD$
#
PORTNAME= cyrus-imapd
PORTVERSION= 2.2.12
PORTREVISION= 2
PORTVERSION= 2.3.0
#PORTREVISION= 0
CATEGORIES= mail ipv6
MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
ftp://ftp.hanse.de/sites/transit/mirror/ftp.andrew.cmu.edu/pub/cyrus-mail/ \
@ -20,9 +20,9 @@ LIB_DEPENDS= sasl2.2:${PORTSDIR}/security/cyrus-sasl2
RUN_DEPENDS= ${SITE_PERL}/Pod/Parser.pm:${PORTSDIR}/textproc/p5-Pod-Parser \
${SITE_PERL}/File/Temp.pm:${PORTSDIR}/devel/p5-File-Temp
CONFLICTS= cyrus-1.* cyrus-imapd-2.[^2].*
CONFLICTS= cyrus-1.* cyrus-imapd-2.[^3].*
LATEST_LINK= ${PORTNAME}22
LATEST_LINK= ${PORTNAME}23
USE_RC_SUBR= imapd.sh
USE_OPENSSL= yes
@ -39,38 +39,37 @@ CONFIGURE_ARGS= --sysconfdir=${PREFIX}/etc \
--with-openssl=${OPENSSLBASE} \
--with-perl=${PERL5}
OPTIONS= AUTH_KRB5 "Use Kerberos5 authorization module" off
.if defined(WITH_BDB_VER)
USE_BDB_VER= ${WITH_BDB_VER}
.else
USE_BDB_VER= 3
.endif
.if ${USE_BDB_VER} == 3
OPTIONS+= BDB_3 "Use BerkeleyDB v3" on \
OPTIONS= BDB_3 "Use BerkeleyDB v3" on \
BDB_4 "Use BerkeleyDB v4" off \
BDB_41 "Use BerkeleyDB v4.1" off \
BDB_42 "Use BerkeleyDB v4.2" off \
BDB_43 "Use BerkeleyDB v4.3" off
.elif ${USE_BDB_VER} == 4
OPTIONS+= BDB_3 "Use BerkeleyDB v3" off \
OPTIONS= BDB_3 "Use BerkeleyDB v3" off \
BDB_4 "Use BerkeleyDB v4" on \
BDB_41 "Use BerkeleyDB v4.1" off \
BDB_42 "Use BerkeleyDB v4.2" off \
BDB_43 "Use BerkeleyDB v4.3" off
.elif ${USE_BDB_VER} == 41
OPTIONS+= BDB_3 "Use BerkeleyDB v3" off \
OPTIONS= BDB_3 "Use BerkeleyDB v3" off \
BDB_4 "Use BerkeleyDB v4" off \
BDB_41 "Use BerkeleyDB v4.1" on \
BDB_42 "Use BerkeleyDB v4.2" off \
BDB_43 "Use BerkeleyDB v4.3" off
.elif ${USE_BDB_VER} == 42
OPTIONS+= BDB_3 "Use BerkeleyDB v3" off \
OPTIONS= BDB_3 "Use BerkeleyDB v3" off \
BDB_4 "Use BerkeleyDB v4" off \
BDB_41 "Use BerkeleyDB v4.1" off \
BDB_42 "Use BerkeleyDB v4.2" on \
BDB_43 "Use BerkeleyDB v4.3" off
.elif ${USE_BDB_VER} == 43
OPTIONS+= BDB_3 "Use BerkeleyDB v3" off \
OPTIONS= BDB_3 "Use BerkeleyDB v3" off \
BDB_4 "Use BerkeleyDB v4" off \
BDB_41 "Use BerkeleyDB v4.1" off \
BDB_42 "Use BerkeleyDB v4.2" off \
@ -82,11 +81,12 @@ BROKEN= "WITH_BDB_VER must be 3, 4, 41, 42 or 43"
OPTIONS+= DRAC "Enable DRAC support" off
OPTIONS+= IDLE_IDLED "Enable IMAP IDLE method idled" off \
IDLE_POLL "Enable IMAP IDLE method idle-polling" on
OPTIONS+= LDAP_PTLOADER "Enable LDAP ptloader (experimantal)" off
OPTIONS+= LDAP_PTLOADER "Enable LDAP ptloader" off
OPTIONS+= LISTEXT "Enable IMAP List extensions" off
OPTIONS+= MURDER "Enable IMAP Murder support" off
OPTIONS+= NETSCAPEHACK "Enable X-NETSCAPE extensions" off
OPTIONS+= NNTP "Enable NNTP support" off
OPTIONS+= REPLICATION "Enable replication" off
OPTIONS+= SNMP_4 "Enable SNMP support using net-snmp v4" off \
SNMP_5 "Enable SNMP support using net-snmp v5" off
OPTIONS+= PASS8BITHACK "Add pass8bit option (not recommended)" off
@ -164,6 +164,13 @@ PLIST_SUB+= IDLED="@comment "
PLIST_SUB+= IDLED="@comment "
.endif
.if defined(WITH_REPLICATION)
CONFIGURE_ARGS+=--enable-replication
PLIST_SUB+= REPLICATION=""
.else
PLIST_SUB+= REPLICATION="@comment "
.endif
.if defined(WITH_LISTEXT)
CONFIGURE_ARGS+=--enable-listext
.endif
@ -173,8 +180,10 @@ CONFIGURE_ARGS+=--enable-netscapehack
.endif
.if defined(WITH_DRAC)
EXTRA_PATCHES+= ${WRKSRC}/contrib/drac_auth.patch
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-aclocal.m4 \
#EXTRA_PATCHES+= ${WRKSRC}/contrib/drac_auth.patch
EXTRA_PATCHES+= ${FILESDIR}/drac_auth.patch
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-cmulocal::berkdb.m4 \
${FILESDIR}/extra-patch-cmulocal::ucdsnmp.m4 \
${FILESDIR}/extra-patch-configure.in
USE_AUTOTOOLS= autoconf:259 autoheader:259
CONFIGURE_ARGS+=--with-drac=${LOCALBASE}
@ -195,18 +204,11 @@ CONFIGURE_ARGS+=--with-snmp=${LOCALBASE}
CONFIGURE_ARGS+=--with-snmp=no
.endif
.if defined(WITH_AUTH_KRB5) && defined(WITH_LDAP_PTLOADER)
BROKEN= "AUTH_KRB5 and LDAP_PTLOADER are exclusive. Run 'make config' again!"
.endif
.if defined(WITH_LDAP_PTLOADER)
USE_OPENLDAP= yes
CONFIGURE_ARGS+=--with-auth=pts --with-pts=ldap --with-ldap=${LOCALBASE}
CONFIGURE_ARGS+=--with-ldap=${LOCALBASE}
PLIST_SUB+= LDAP_PTLOADER=""
.elif defined(WITH_AUTH_KRB5)
CONFIGURE_ARGS+=--with-auth=krb5
PLIST_SUB+= LDAP_PTLOADER="@comment "
.else
CONFIGURE_ARGS+=--with-auth=unix
PLIST_SUB+= LDAP_PTLOADER="@comment "
.endif
@ -226,17 +228,19 @@ CYRUS_MAN3= Cyrus::IMAP.3 Cyrus::IMAP::Admin.3 Cyrus::IMAP::IMSP.3 \
CYRUS_MAN8= arbitron.8 chk_cyrus.8 nntpd.8 ctl_cyrusdb.8 ctl_deliver.8 \
cyr_expire.8 ctl_mboxlist.8 cvt_cyrusdb.8 deliver.8 \
fetchnews.8 fud.8 idled.8 imapd.8 ipurge.8 lmtpd.8 \
master.8 mbexamine.8 mbpath.8 notifyd.8 pop3d.8 quota.8 \
reconstruct.8 rmnews.8 smmapd.8 squatter.8 syncnews.8 \
timsieved.8 tls_prune.8
make_md5.8 master.8 mbexamine.8 mbpath.8 notifyd.8 pop3d.8 \
quota.8 reconstruct.8 rmnews.8 smmapd.8 squatter.8 \
sync_client.8 sync_reset.8 sync_server.8 syncnews.8 \
timsieved.8 tls_prune.8 unexpunge.8
DOCS= altnamespace anoncvs bugs changes faq feedback index \
install install-admin-mb install-auth install-compile \
install-configure install-murder install-netnews \
install-perf install-prereq install-sieve install-snmpmon \
install-testing install-upgrade install-virtdomains \
mailing-list man notes os overview questions readme sieve \
sieve-protocol specs
install-perf install-prereq install-replication \
install-sieve install-snmpmon install-testing \
install-upgrade install-virtdomains mailing-list man \
notes os overview questions readme sieve sieve-protocol \
specs
CONFS= cmu-frontend.conf prefork.conf cmu-backend.conf normal.conf \
small.conf
@ -269,6 +273,8 @@ post-patch:
.endif
post-install:
@${INSTALL_DATA} ${WRKSRC}/man/make_md5.8 \
${PREFIX}/cyrus/man/man8/
.for f in ${CYRUS_MAN3}
@${GZIP_CMD} ${PREFIX}/lib/perl5/${PERL_VERSION}/man/man3/${f}
@${ECHO_CMD} lib/perl5/${PERL_VERSION}/man/man3/${f}.gz \

View File

@ -1,3 +1,3 @@
MD5 (cyrus-imapd-2.2.12.tar.gz) = 70b3bba526a8d36d3bb23a87d37e9188
SHA256 (cyrus-imapd-2.2.12.tar.gz) = 3c6f41255ba15d8b2ea78320dd5e0c98e07fe0b5c3c4b84bc20f503427bd1b7b
SIZE (cyrus-imapd-2.2.12.tar.gz) = 1961161
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

View File

@ -0,0 +1,294 @@
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. */

View File

@ -1,51 +0,0 @@
Index: aclocal.m4
diff -u aclocal.m4.orig aclocal.m4
--- aclocal.m4.orig Wed Nov 24 03:55:40 2004
+++ aclocal.m4 Wed Nov 24 15:39:52 2004
@@ -506,10 +506,11 @@
fi
saved_LIBS=$LIBS
- for dbname in db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 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.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 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
LIBS="$saved_LIBS -l$dbname"
- AC_TRY_LINK([#include <db.h>],
+ AC_TRY_LINK([#include <stdio.h>
+#include <db.h>],
[db_create(NULL, NULL, 0);],
BDB_LIBADD="$BDB_LIBADD -l$dbname"; dblib="berkeley"; dbname=db,
dblib="no")
@@ -517,7 +518,8 @@
done
if test "$dblib" = "no"; then
LIBS="$saved_LIBS -ldb"
- AC_TRY_LINK([#include <db.h>],
+ AC_TRY_LINK([#include <stdio.h>
+#include <db.h>],
[db_open(NULL, 0, 0, 0, NULL, NULL, NULL);],
BDB_LIBADD="$BDB_LIBADD -ldb"; dblib="berkeley"; dbname=db,
dblib="no")
@@ -1820,9 +1822,12 @@
if test -n "$SNMP_LIBS" && test -n "$SNMP_PREFIX"; then
CPPFLAGS="$CPPFLAGS -I${SNMP_PREFIX}/include"
- LIB_UCDSNMP=$SNMP_LIBS
+ LIB_UCDSNMP="$SNMP_LIBS -lwrap"
+ PERLLIBDIR=`$PERL -e 'use Config; print "$Config{archlibexp}/CORE";'`
+ LDFLAGS_UCDSNMP="-L${PERLLIBDIR} -R${PERLLIBDIR}"
AC_DEFINE(HAVE_NETSNMP,1,[Do we have Net-SNMP support?])
AC_SUBST(LIB_UCDSNMP)
+ AC_SUBST(LDFLAGS_UCDSNMP)
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
@@ -1848,7 +1853,7 @@
LIB_UCDSNMP=""
if test "$with_snmp" != no; then
AC_DEFINE(HAVE_UCDSNMP,1,[Do we have UCD-SNMP support?])
- LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp"
+ LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp -lkvm -ldevstat -lwrap"
AC_CHECK_LIB(rpm, rpmdbOpen,
LIB_UCDSNMP="${LIB_UCDSNMP} -lrpm -lpopt",,-lpopt)
fi

View File

@ -0,0 +1,28 @@
Index: cmulocal/berkdb.m4
diff -u cmulocal/berkdb.m4.orig cmulocal/berkdb.m4
--- cmulocal/berkdb.m4.orig Sat Nov 27 06:41:58 2004
+++ cmulocal/berkdb.m4 Sat Dec 10 16:28:44 2005
@@ -212,10 +212,11 @@
fi
saved_LIBS=$LIBS
- for dbname in db-4.2 db4.2 db42 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.2 db4.2 db42 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
LIBS="$saved_LIBS -l$dbname"
- AC_TRY_LINK([#include <db.h>],
+ AC_TRY_LINK([#include <stdio.h>
+#include <db.h>],
[db_create(NULL, NULL, 0);],
BDB_LIBADD="$BDB_LIBADD -l$dbname"; dblib="berkeley"; dbname=db,
dblib="no")
@@ -223,7 +224,8 @@
done
if test "$dblib" = "no"; then
LIBS="$saved_LIBS -ldb"
- AC_TRY_LINK([#include <db.h>],
+ AC_TRY_LINK([#include <stdio.h>
+#include <db.h>],
[db_open(NULL, 0, 0, 0, NULL, NULL, NULL);],
BDB_LIBADD="$BDB_LIBADD -ldb"; dblib="berkeley"; dbname=db,
dblib="no")

View File

@ -0,0 +1,27 @@
Index: cmulocal/ucdsnmp.m4
diff -u cmulocal/ucdsnmp.m4.orig cmulocal/ucdsnmp.m4
--- cmulocal/ucdsnmp.m4.orig Tue May 25 10:27:58 2004
+++ cmulocal/ucdsnmp.m4 Sat Dec 10 16:34:09 2005
@@ -31,9 +31,12 @@
if test -n "$SNMP_LIBS" && test -n "$SNMP_PREFIX"; then
CPPFLAGS="$CPPFLAGS -I${SNMP_PREFIX}/include"
- LIB_UCDSNMP=$SNMP_LIBS
+ LIB_UCDSNMP="$SNMP_LIBS -lwrap"
+ PERLLIBDIR=`$PERL -e 'use Config; print "$Config{archlibexp}/CORE";'`
+ LDFLAGS_UCDSNMP="-L${PERLLIBDIR} -R${PERLLIBDIR}"
AC_DEFINE(HAVE_NETSNMP,1,[Do we have Net-SNMP support?])
AC_SUBST(LIB_UCDSNMP)
+ AC_SUBST(LDFLAGS_UCDSNMP)
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
@@ -59,7 +62,7 @@
LIB_UCDSNMP=""
if test "$with_snmp" != no; then
AC_DEFINE(HAVE_UCDSNMP,1,[Do we have UCD-SNMP support?])
- LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp"
+ LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp -lkvm -ldevstat -lwrap"
AC_CHECK_LIB(rpm, rpmdbOpen,
LIB_UCDSNMP="${LIB_UCDSNMP} -lrpm -lpopt",,-lpopt)
fi

View File

@ -1,21 +0,0 @@
Index: man/Makefile.in
diff -u man/Makefile.in.orig man/Makefile.in
--- man/Makefile.in.orig Wed Mar 31 00:18:41 2004
+++ man/Makefile.in Wed May 19 01:52:50 2004
@@ -50,6 +50,7 @@
SHELL = /bin/sh
prefix = @prefix@
+cyrus_prefix = @cyrus_prefix@
mandir = @mandir@
@@ -93,7 +94,7 @@
done
for file in $(MAN8); \
do \
- $(INSTALL) -m 644 $$file $(DESTDIR)$(mandir)/man8 || exit 1; \
+ $(INSTALL) -m 644 $$file $(DESTDIR)$(cyrus_prefix)/man/man8 || exit 1; \
done
clean:

View File

@ -1,33 +0,0 @@
Index: imap/Makefile.in
diff -u imap/Makefile.in.orig imap/Makefile.in
--- imap/Makefile.in.orig Wed Nov 12 13:02:01 2003
+++ imap/Makefile.in Thu Mar 11 01:16:00 2004
@@ -132,10 +132,10 @@
install:
- $(srcdir)/../install-sh -d ${DESTDIR}$(service_path)
+ $(INSTALL) -d ${DESTDIR}$(service_path)
for file in $(PROGS); \
do \
- $(INSTALL) -m 755 $$file $(DESTDIR)$(service_path) || exit 1; \
+ $(INSTALL) -s -m 755 $$file $(DESTDIR)$(service_path) || exit 1; \
done
ln -f $(DESTDIR)$(service_path)/pop3d $(DESTDIR)$(service_path)/pop3proxyd
@@ -242,13 +242,13 @@
$(CC) $(LDFLAGS) -o mupdate \
$(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \
mutex_pthread.o tls.o libimap.a \
- $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread
+ $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS)
mupdate.pure: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o \
libimap.a $(DEPLIBS)
$(PURIFY) $(PUREOPT) $(CC) $(LDFLAGS) -o mupdate.pure \
$(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \
- mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread
+ mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS)
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) \

View File

@ -1,25 +1,25 @@
Index: configure
diff -u configure.orig configure
--- configure.orig Tue Feb 15 02:59:46 2005
+++ configure Thu Feb 24 04:45:06 2005
@@ -309,6 +309,7 @@
--- configure.orig Tue Dec 6 01:00:41 2005
+++ configure Sat Dec 10 14:01:36 2005
@@ -310,6 +310,7 @@
#endif"
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os MAKEDEPEND cyrus_prefix service_path cyrus_user cyrus_group CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT RANLIB ac_ct_RANLIB SET_MAKE INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CPP EGREP AWK LIBOBJS LIB_SOCKET IPV6_OBJS PRE_SUBDIRS EXTRA_SUBDIRS DEPLIBS LOCALDEFS WITH_AUTH BDB_INC BDB_LIB CYRUSDB_OBJS SIEVE_OBJS SIEVE_LIBS SIEVE_CPPFLAGS YACC LEX LEXLIB LEX_OUTPUT_ROOT SIEVE_SUBDIRS WITH_NONBLOCK WITH_GMTOFF WITH_MAP WITH_LOCK cyrus_sigveclib WITH_PTS AFS_LIBS AFS_LDFLAGS LDAP_CPPFLAGS LDAP_LDFLAGS LDAP_LIBS SERVER_SUBDIRS OPENSSL_INC OPENSSL_LIB ZEPHYR_LIBS ZEPHYR_CPPFLAGS WITH_IDLE IMAP_PROGS COMPILE_ET COM_ERR_LIBS COM_ERR_LDFLAGS COM_ERR_CPPFLAGS LIB_CRYPT GSSAPI_LIBS GSSAPIBASE_LIBS LIB_DYN_SASL DYNSASLFLAGS LIB_SASL SASLFLAGS PERL PERL_CCCDLFLAGS MD5OBJ SNMP_SUBDIRS LIB_WRAP SNMP_CONFIG LIB_UCDSNMP LIB_RT IMAP_COM_ERR_LIBS IMAP_LIBS PERL_SUBDIRS PERL_DEPSUBDIRS LTLIBOBJS'
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os MAKEDEPEND cyrus_prefix service_path cyrus_user cyrus_group CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT RANLIB ac_ct_RANLIB SET_MAKE INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CPP EGREP AWK LIBOBJS LIB_SOCKET IPV6_OBJS PRE_SUBDIRS EXTRA_SUBDIRS DEPLIBS LOCALDEFS BDB_INC BDB_LIB CYRUSDB_OBJS SIEVE_OBJS SIEVE_LIBS SIEVE_CPPFLAGS YACC LEX LEXLIB LEX_OUTPUT_ROOT SIEVE_SUBDIRS WITH_NONBLOCK WITH_GMTOFF WITH_MAP WITH_LOCK cyrus_sigveclib AFS_LIBS AFS_LDFLAGS LDAP_CPPFLAGS LDAP_LDFLAGS LDAP_LIBS SERVER_SUBDIRS OPENSSL_INC OPENSSL_LIB ZEPHYR_LIBS ZEPHYR_CPPFLAGS IMAP_PROGS COMPILE_ET COM_ERR_LIBS COM_ERR_LDFLAGS COM_ERR_CPPFLAGS LIB_CRYPT GSSAPI_LIBS GSSAPIBASE_LIBS LIB_DYN_SASL DYNSASLFLAGS LIB_SASL SASLFLAGS PERL PERL_CCCDLFLAGS MD5OBJ SNMP_SUBDIRS LIB_WRAP SNMP_CONFIG LIB_UCDSNMP LIB_RT IMAP_COM_ERR_LIBS IMAP_LIBS PERL_SUBDIRS PERL_DEPSUBDIRS LTLIBOBJS'
+ac_subst_vars="${ac_subst_vars} LDFLAGS_UCDSNMP"
ac_subst_files=''
# Initialize some variables set by options.
@@ -6612,7 +6613,7 @@
@@ -8776,7 +8777,7 @@
fi
saved_LIBS=$LIBS
- for dbname in db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 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.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 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 db-4.2 db4.2 db42 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.2 db4.2 db42 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
LIBS="$saved_LIBS -l$dbname"
cat >conftest.$ac_ext <<_ACEOF
@@ -6622,6 +6623,7 @@
@@ -8785,6 +8786,7 @@
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
@ -27,7 +27,7 @@ diff -u configure.orig configure
#include <db.h>
int
main ()
@@ -13549,6 +13551,7 @@
@@ -16659,6 +16661,7 @@
EXTRA_SUBDIRS="${EXTRA_SUBDIRS} perl"
PERL_SUBDIRS="imap"
PERL="${with_perl}"
@ -35,7 +35,7 @@ diff -u configure.orig configure
PERL_CCCDLFLAGS="$cccdlflags"
fi
@@ -14067,7 +14070,9 @@
@@ -17233,7 +17236,9 @@
if test -n "$SNMP_LIBS" && test -n "$SNMP_PREFIX"; then
CPPFLAGS="$CPPFLAGS -I${SNMP_PREFIX}/include"
@ -46,7 +46,7 @@ diff -u configure.orig configure
cat >>confdefs.h <<\_ACEOF
#define HAVE_NETSNMP 1
@@ -14298,7 +14303,7 @@
@@ -17482,7 +17487,7 @@
#define HAVE_UCDSNMP 1
_ACEOF
@ -55,7 +55,7 @@ diff -u configure.orig configure
echo "$as_me:$LINENO: checking for rpmdbOpen in -lrpm" >&5
echo $ECHO_N "checking for rpmdbOpen in -lrpm... $ECHO_C" >&6
if test "${ac_cv_lib_rpm_rpmdbOpen+set}" = set; then
@@ -15114,6 +15119,7 @@
@@ -18306,6 +18311,7 @@
s,@LIB_WRAP@,$LIB_WRAP,;t t
s,@SNMP_CONFIG@,$SNMP_CONFIG,;t t
s,@LIB_UCDSNMP@,$LIB_UCDSNMP,;t t

View File

@ -1,14 +0,0 @@
Index: master/service.c
diff -u master/service.c.orig master/service.c
--- master/service.c.orig Wed Jan 22 22:52:36 2003
+++ master/service.c Wed Jan 22 22:57:20 2003
@@ -102,6 +102,9 @@
struct sockaddr_storage sin;
socklen_t len = sizeof(sin);
+ /* XXX: old FreeBSD didn't fill sockaddr correctly against AF_UNIX */
+ sin.ss_family = AF_UNIX;
+
/* is this a connection from the local host? */
if (getpeername(fd, (struct sockaddr *) &sin, &len) == 0) {
if (((struct sockaddr *)&sin)->sa_family == AF_UNIX) {

View File

@ -0,0 +1,60 @@
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:46:31 2005
@@ -130,10 +130,10 @@
install:
- $(srcdir)/../install-sh -d ${DESTDIR}$(service_path)
+ $(INSTALL) -d ${DESTDIR}$(service_path)
for file in $(PROGS); \
do \
- $(INSTALL) -m 755 $$file $(DESTDIR)$(service_path) || exit 1; \
+ $(INSTALL) -s -m 755 $$file $(DESTDIR)$(service_path) || exit 1; \
done
ln -f $(DESTDIR)$(service_path)/pop3d $(DESTDIR)$(service_path)/pop3proxyd
ln -f $(DESTDIR)$(service_path)/imapd $(DESTDIR)$(service_path)/proxyd
@@ -219,13 +219,13 @@
$(CC) $(LDFLAGS) -o mupdate \
$(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \
mutex_pthread.o tls.o libimap.a \
- $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread
+ $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS)
mupdate.pure: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o \
libimap.a $(DEPLIBS)
$(PURIFY) $(PUREOPT) $(CC) $(LDFLAGS) -o mupdate.pure \
$(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \
- mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread
+ mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS)
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

View File

@ -0,0 +1,30 @@
Index: man/Makefile.in
diff -u man/Makefile.in.orig man/Makefile.in
--- man/Makefile.in.orig Wed May 11 00:02:35 2005
+++ man/Makefile.in Sat Dec 10 15:26:05 2005
@@ -50,6 +50,7 @@
SHELL = /bin/sh
prefix = @prefix@
+cyrus_prefix = @cyrus_prefix@
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); \
do \
- $(INSTALL) -m 644 $$file $(DESTDIR)$(mandir)/man8 || exit 1; \
+ $(INSTALL) -m 644 $$file $(DESTDIR)$(cyrus_prefix)/man/man8 || exit 1; \
done
clean:

View File

@ -1,14 +0,0 @@
Index: master/service-thread.c
diff -u master/service-thread.c.orig master/service-thread.c
--- master/service-thread.c.orig Wed Jan 22 22:52:36 2003
+++ master/service-thread.c Wed Jan 22 23:09:52 2003
@@ -99,6 +99,9 @@
struct sockaddr_storage sin;
socklen_t len = sizeof(sin);
+ /* XXX: old FreeBSD didn't fill sockaddr correctly against AF_UNIX */
+ sin.ss_family = AF_UNIX;
+
/* is this a connection from the local host? */
if (getpeername(fd, (struct sockaddr *) &sin, &len) == 0) {
if (((struct sockaddr *)&sin)->sa_family == AF_UNIX) {

View File

@ -1,18 +1,18 @@
Index: tools/mkimap
diff -u tools/mkimap.orig tools/mkimap
--- tools/mkimap.orig Wed Jun 30 03:16:54 2004
+++ tools/mkimap Tue Jul 27 04:47:43 2004
@@ -61,6 +61,9 @@
--- tools/mkimap.orig Fri Dec 2 07:30:22 2005
+++ tools/mkimap Sat Dec 10 14:08:11 2005
@@ -90,6 +90,9 @@
$imapdconf = shift || "/etc/imapd.conf";
+$cyrus_user = $ENV{CYRUS_USER} || "%%CYRUS_USER%%";
+$cyrus_group = $ENV{CYRUS_GROUP} || "%%CYRUS_GROUP%%";
+
open CONF, $imapdconf or die "can't open $imapdconf";
print "reading configure file...\n";
while (<CONF>) {
@@ -86,6 +89,7 @@
push @configs, $imapdconf;
while ($conf = shift @configs) {
@@ -100,6 +103,7 @@
print "configuring $d...\n";
@ -20,9 +20,9 @@ diff -u tools/mkimap.orig tools/mkimap
chdir $d or die "couldn't change to $d";
mkdir "proc", 0755 || warn "can't create $d/proc: $!";
@@ -95,11 +99,14 @@
mkdir "msg", 0755 || warn "can't create $d/msg: $!";
@@ -110,12 +114,15 @@
mkdir "ptclient", 0755 || warn "can't create $d/ptclient: $!";
mkdir "sync", 0755 || warn "can't create $d/sync: $!";
+system "/usr/sbin/chown -R $cyrus_user:$cyrus_group .";
+
@ -31,6 +31,7 @@ diff -u tools/mkimap.orig tools/mkimap
mkdir $part, 0755 || warn "can't create $part: $!";
chdir $part or die "couldn't change to partition $part";
mkdir "stage.", 0755 || warn "can't create $part/stage.: $!";
mkdir "sync.", 0755 || warn "can't create $part/sync.: $!";
+ system "/usr/sbin/chown -R $cyrus_user:$cyrus_group $part";
}

View File

@ -8,6 +8,7 @@ bin/pop3test
bin/sieveshell
bin/sivtest
bin/smtptest
bin/synctest
cyrus/bin/arbitron
cyrus/bin/chk_cyrus
cyrus/bin/ctl_cyrusdb
@ -23,7 +24,7 @@ cyrus/bin/fud
cyrus/bin/imapd
cyrus/bin/ipurge
cyrus/bin/lmtpd
%%MURDER%%cyrus/bin/lmtpproxyd
%%REPLICATION%%cyrus/bin/make_md5
cyrus/bin/masssievec
cyrus/bin/master
cyrus/bin/mbexamine
@ -34,7 +35,7 @@ cyrus/bin/mkimap
cyrus/bin/notifyd
cyrus/bin/pop3d
cyrus/bin/pop3proxyd
%%MURDER%%cyrus/bin/proxyd
cyrus/bin/proxyd
%%LDAP_PTLOADER%%cyrus/bin/ptdump
%%LDAP_PTLOADER%%cyrus/bin/ptexpire
%%LDAP_PTLOADER%%cyrus/bin/ptloader
@ -43,17 +44,23 @@ cyrus/bin/reconstruct
cyrus/bin/sievec
cyrus/bin/smmapd
cyrus/bin/squatter
%%REPLICATION%%cyrus/bin/sync_client
%%REPLICATION%%cyrus/bin/sync_reset
%%REPLICATION%%cyrus/bin/sync_server
cyrus/bin/timsieved
cyrus/bin/tls_prune
cyrus/bin/unexpunge
include/cyrus/acl.h
include/cyrus/assert.h
include/cyrus/auth.h
include/cyrus/bsearch.h
include/cyrus/byteorder64.h
include/cyrus/charset.h
include/cyrus/cyrusdb.h
include/cyrus/glob.h
include/cyrus/gmtoff.h
include/cyrus/hash.h
include/cyrus/hmac-md5.h
include/cyrus/imapopts.h
include/cyrus/imapurl.h
include/cyrus/imclient.h
@ -64,6 +71,8 @@ include/cyrus/libcyr_cfg.h
include/cyrus/lock.h
include/cyrus/lsort.h
include/cyrus/map.h
include/cyrus/md5.h
include/cyrus/message_uuid.h
include/cyrus/mkgmtime.h
include/cyrus/mpool.h
include/cyrus/nonblock.h

View File

@ -1,13 +1,13 @@
# New ports collection makefile for: cyrus-imapd
# Date created: Jan 4th 2001
# Date created: Dec 10th 2005
# Whom: ume@FreeBSD.org
#
# $FreeBSD$
#
PORTNAME= cyrus-imapd
PORTVERSION= 2.2.12
PORTREVISION= 2
PORTVERSION= 2.3.0
#PORTREVISION= 0
CATEGORIES= mail ipv6
MASTER_SITES= ftp://ftp.andrew.cmu.edu/pub/cyrus-mail/ \
ftp://ftp.hanse.de/sites/transit/mirror/ftp.andrew.cmu.edu/pub/cyrus-mail/ \
@ -20,9 +20,9 @@ LIB_DEPENDS= sasl2.2:${PORTSDIR}/security/cyrus-sasl2
RUN_DEPENDS= ${SITE_PERL}/Pod/Parser.pm:${PORTSDIR}/textproc/p5-Pod-Parser \
${SITE_PERL}/File/Temp.pm:${PORTSDIR}/devel/p5-File-Temp
CONFLICTS= cyrus-1.* cyrus-imapd-2.[^2].*
CONFLICTS= cyrus-1.* cyrus-imapd-2.[^3].*
LATEST_LINK= ${PORTNAME}22
LATEST_LINK= ${PORTNAME}23
USE_RC_SUBR= imapd.sh
USE_OPENSSL= yes
@ -39,38 +39,37 @@ CONFIGURE_ARGS= --sysconfdir=${PREFIX}/etc \
--with-openssl=${OPENSSLBASE} \
--with-perl=${PERL5}
OPTIONS= AUTH_KRB5 "Use Kerberos5 authorization module" off
.if defined(WITH_BDB_VER)
USE_BDB_VER= ${WITH_BDB_VER}
.else
USE_BDB_VER= 3
.endif
.if ${USE_BDB_VER} == 3
OPTIONS+= BDB_3 "Use BerkeleyDB v3" on \
OPTIONS= BDB_3 "Use BerkeleyDB v3" on \
BDB_4 "Use BerkeleyDB v4" off \
BDB_41 "Use BerkeleyDB v4.1" off \
BDB_42 "Use BerkeleyDB v4.2" off \
BDB_43 "Use BerkeleyDB v4.3" off
.elif ${USE_BDB_VER} == 4
OPTIONS+= BDB_3 "Use BerkeleyDB v3" off \
OPTIONS= BDB_3 "Use BerkeleyDB v3" off \
BDB_4 "Use BerkeleyDB v4" on \
BDB_41 "Use BerkeleyDB v4.1" off \
BDB_42 "Use BerkeleyDB v4.2" off \
BDB_43 "Use BerkeleyDB v4.3" off
.elif ${USE_BDB_VER} == 41
OPTIONS+= BDB_3 "Use BerkeleyDB v3" off \
OPTIONS= BDB_3 "Use BerkeleyDB v3" off \
BDB_4 "Use BerkeleyDB v4" off \
BDB_41 "Use BerkeleyDB v4.1" on \
BDB_42 "Use BerkeleyDB v4.2" off \
BDB_43 "Use BerkeleyDB v4.3" off
.elif ${USE_BDB_VER} == 42
OPTIONS+= BDB_3 "Use BerkeleyDB v3" off \
OPTIONS= BDB_3 "Use BerkeleyDB v3" off \
BDB_4 "Use BerkeleyDB v4" off \
BDB_41 "Use BerkeleyDB v4.1" off \
BDB_42 "Use BerkeleyDB v4.2" on \
BDB_43 "Use BerkeleyDB v4.3" off
.elif ${USE_BDB_VER} == 43
OPTIONS+= BDB_3 "Use BerkeleyDB v3" off \
OPTIONS= BDB_3 "Use BerkeleyDB v3" off \
BDB_4 "Use BerkeleyDB v4" off \
BDB_41 "Use BerkeleyDB v4.1" off \
BDB_42 "Use BerkeleyDB v4.2" off \
@ -82,11 +81,12 @@ BROKEN= "WITH_BDB_VER must be 3, 4, 41, 42 or 43"
OPTIONS+= DRAC "Enable DRAC support" off
OPTIONS+= IDLE_IDLED "Enable IMAP IDLE method idled" off \
IDLE_POLL "Enable IMAP IDLE method idle-polling" on
OPTIONS+= LDAP_PTLOADER "Enable LDAP ptloader (experimantal)" off
OPTIONS+= LDAP_PTLOADER "Enable LDAP ptloader" off
OPTIONS+= LISTEXT "Enable IMAP List extensions" off
OPTIONS+= MURDER "Enable IMAP Murder support" off
OPTIONS+= NETSCAPEHACK "Enable X-NETSCAPE extensions" off
OPTIONS+= NNTP "Enable NNTP support" off
OPTIONS+= REPLICATION "Enable replication" off
OPTIONS+= SNMP_4 "Enable SNMP support using net-snmp v4" off \
SNMP_5 "Enable SNMP support using net-snmp v5" off
OPTIONS+= PASS8BITHACK "Add pass8bit option (not recommended)" off
@ -164,6 +164,13 @@ PLIST_SUB+= IDLED="@comment "
PLIST_SUB+= IDLED="@comment "
.endif
.if defined(WITH_REPLICATION)
CONFIGURE_ARGS+=--enable-replication
PLIST_SUB+= REPLICATION=""
.else
PLIST_SUB+= REPLICATION="@comment "
.endif
.if defined(WITH_LISTEXT)
CONFIGURE_ARGS+=--enable-listext
.endif
@ -173,8 +180,10 @@ CONFIGURE_ARGS+=--enable-netscapehack
.endif
.if defined(WITH_DRAC)
EXTRA_PATCHES+= ${WRKSRC}/contrib/drac_auth.patch
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-aclocal.m4 \
#EXTRA_PATCHES+= ${WRKSRC}/contrib/drac_auth.patch
EXTRA_PATCHES+= ${FILESDIR}/drac_auth.patch
EXTRA_PATCHES+= ${FILESDIR}/extra-patch-cmulocal::berkdb.m4 \
${FILESDIR}/extra-patch-cmulocal::ucdsnmp.m4 \
${FILESDIR}/extra-patch-configure.in
USE_AUTOTOOLS= autoconf:259 autoheader:259
CONFIGURE_ARGS+=--with-drac=${LOCALBASE}
@ -195,18 +204,11 @@ CONFIGURE_ARGS+=--with-snmp=${LOCALBASE}
CONFIGURE_ARGS+=--with-snmp=no
.endif
.if defined(WITH_AUTH_KRB5) && defined(WITH_LDAP_PTLOADER)
BROKEN= "AUTH_KRB5 and LDAP_PTLOADER are exclusive. Run 'make config' again!"
.endif
.if defined(WITH_LDAP_PTLOADER)
USE_OPENLDAP= yes
CONFIGURE_ARGS+=--with-auth=pts --with-pts=ldap --with-ldap=${LOCALBASE}
CONFIGURE_ARGS+=--with-ldap=${LOCALBASE}
PLIST_SUB+= LDAP_PTLOADER=""
.elif defined(WITH_AUTH_KRB5)
CONFIGURE_ARGS+=--with-auth=krb5
PLIST_SUB+= LDAP_PTLOADER="@comment "
.else
CONFIGURE_ARGS+=--with-auth=unix
PLIST_SUB+= LDAP_PTLOADER="@comment "
.endif
@ -226,17 +228,19 @@ CYRUS_MAN3= Cyrus::IMAP.3 Cyrus::IMAP::Admin.3 Cyrus::IMAP::IMSP.3 \
CYRUS_MAN8= arbitron.8 chk_cyrus.8 nntpd.8 ctl_cyrusdb.8 ctl_deliver.8 \
cyr_expire.8 ctl_mboxlist.8 cvt_cyrusdb.8 deliver.8 \
fetchnews.8 fud.8 idled.8 imapd.8 ipurge.8 lmtpd.8 \
master.8 mbexamine.8 mbpath.8 notifyd.8 pop3d.8 quota.8 \
reconstruct.8 rmnews.8 smmapd.8 squatter.8 syncnews.8 \
timsieved.8 tls_prune.8
make_md5.8 master.8 mbexamine.8 mbpath.8 notifyd.8 pop3d.8 \
quota.8 reconstruct.8 rmnews.8 smmapd.8 squatter.8 \
sync_client.8 sync_reset.8 sync_server.8 syncnews.8 \
timsieved.8 tls_prune.8 unexpunge.8
DOCS= altnamespace anoncvs bugs changes faq feedback index \
install install-admin-mb install-auth install-compile \
install-configure install-murder install-netnews \
install-perf install-prereq install-sieve install-snmpmon \
install-testing install-upgrade install-virtdomains \
mailing-list man notes os overview questions readme sieve \
sieve-protocol specs
install-perf install-prereq install-replication \
install-sieve install-snmpmon install-testing \
install-upgrade install-virtdomains mailing-list man \
notes os overview questions readme sieve sieve-protocol \
specs
CONFS= cmu-frontend.conf prefork.conf cmu-backend.conf normal.conf \
small.conf
@ -269,6 +273,8 @@ post-patch:
.endif
post-install:
@${INSTALL_DATA} ${WRKSRC}/man/make_md5.8 \
${PREFIX}/cyrus/man/man8/
.for f in ${CYRUS_MAN3}
@${GZIP_CMD} ${PREFIX}/lib/perl5/${PERL_VERSION}/man/man3/${f}
@${ECHO_CMD} lib/perl5/${PERL_VERSION}/man/man3/${f}.gz \

View File

@ -1,3 +1,3 @@
MD5 (cyrus-imapd-2.2.12.tar.gz) = 70b3bba526a8d36d3bb23a87d37e9188
SHA256 (cyrus-imapd-2.2.12.tar.gz) = 3c6f41255ba15d8b2ea78320dd5e0c98e07fe0b5c3c4b84bc20f503427bd1b7b
SIZE (cyrus-imapd-2.2.12.tar.gz) = 1961161
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

View File

@ -0,0 +1,294 @@
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. */

View File

@ -1,51 +0,0 @@
Index: aclocal.m4
diff -u aclocal.m4.orig aclocal.m4
--- aclocal.m4.orig Wed Nov 24 03:55:40 2004
+++ aclocal.m4 Wed Nov 24 15:39:52 2004
@@ -506,10 +506,11 @@
fi
saved_LIBS=$LIBS
- for dbname in db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 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.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 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
LIBS="$saved_LIBS -l$dbname"
- AC_TRY_LINK([#include <db.h>],
+ AC_TRY_LINK([#include <stdio.h>
+#include <db.h>],
[db_create(NULL, NULL, 0);],
BDB_LIBADD="$BDB_LIBADD -l$dbname"; dblib="berkeley"; dbname=db,
dblib="no")
@@ -517,7 +518,8 @@
done
if test "$dblib" = "no"; then
LIBS="$saved_LIBS -ldb"
- AC_TRY_LINK([#include <db.h>],
+ AC_TRY_LINK([#include <stdio.h>
+#include <db.h>],
[db_open(NULL, 0, 0, 0, NULL, NULL, NULL);],
BDB_LIBADD="$BDB_LIBADD -ldb"; dblib="berkeley"; dbname=db,
dblib="no")
@@ -1820,9 +1822,12 @@
if test -n "$SNMP_LIBS" && test -n "$SNMP_PREFIX"; then
CPPFLAGS="$CPPFLAGS -I${SNMP_PREFIX}/include"
- LIB_UCDSNMP=$SNMP_LIBS
+ LIB_UCDSNMP="$SNMP_LIBS -lwrap"
+ PERLLIBDIR=`$PERL -e 'use Config; print "$Config{archlibexp}/CORE";'`
+ LDFLAGS_UCDSNMP="-L${PERLLIBDIR} -R${PERLLIBDIR}"
AC_DEFINE(HAVE_NETSNMP,1,[Do we have Net-SNMP support?])
AC_SUBST(LIB_UCDSNMP)
+ AC_SUBST(LDFLAGS_UCDSNMP)
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
@@ -1848,7 +1853,7 @@
LIB_UCDSNMP=""
if test "$with_snmp" != no; then
AC_DEFINE(HAVE_UCDSNMP,1,[Do we have UCD-SNMP support?])
- LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp"
+ LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp -lkvm -ldevstat -lwrap"
AC_CHECK_LIB(rpm, rpmdbOpen,
LIB_UCDSNMP="${LIB_UCDSNMP} -lrpm -lpopt",,-lpopt)
fi

View File

@ -0,0 +1,28 @@
Index: cmulocal/berkdb.m4
diff -u cmulocal/berkdb.m4.orig cmulocal/berkdb.m4
--- cmulocal/berkdb.m4.orig Sat Nov 27 06:41:58 2004
+++ cmulocal/berkdb.m4 Sat Dec 10 16:28:44 2005
@@ -212,10 +212,11 @@
fi
saved_LIBS=$LIBS
- for dbname in db-4.2 db4.2 db42 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.2 db4.2 db42 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
LIBS="$saved_LIBS -l$dbname"
- AC_TRY_LINK([#include <db.h>],
+ AC_TRY_LINK([#include <stdio.h>
+#include <db.h>],
[db_create(NULL, NULL, 0);],
BDB_LIBADD="$BDB_LIBADD -l$dbname"; dblib="berkeley"; dbname=db,
dblib="no")
@@ -223,7 +224,8 @@
done
if test "$dblib" = "no"; then
LIBS="$saved_LIBS -ldb"
- AC_TRY_LINK([#include <db.h>],
+ AC_TRY_LINK([#include <stdio.h>
+#include <db.h>],
[db_open(NULL, 0, 0, 0, NULL, NULL, NULL);],
BDB_LIBADD="$BDB_LIBADD -ldb"; dblib="berkeley"; dbname=db,
dblib="no")

View File

@ -0,0 +1,27 @@
Index: cmulocal/ucdsnmp.m4
diff -u cmulocal/ucdsnmp.m4.orig cmulocal/ucdsnmp.m4
--- cmulocal/ucdsnmp.m4.orig Tue May 25 10:27:58 2004
+++ cmulocal/ucdsnmp.m4 Sat Dec 10 16:34:09 2005
@@ -31,9 +31,12 @@
if test -n "$SNMP_LIBS" && test -n "$SNMP_PREFIX"; then
CPPFLAGS="$CPPFLAGS -I${SNMP_PREFIX}/include"
- LIB_UCDSNMP=$SNMP_LIBS
+ LIB_UCDSNMP="$SNMP_LIBS -lwrap"
+ PERLLIBDIR=`$PERL -e 'use Config; print "$Config{archlibexp}/CORE";'`
+ LDFLAGS_UCDSNMP="-L${PERLLIBDIR} -R${PERLLIBDIR}"
AC_DEFINE(HAVE_NETSNMP,1,[Do we have Net-SNMP support?])
AC_SUBST(LIB_UCDSNMP)
+ AC_SUBST(LDFLAGS_UCDSNMP)
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
@@ -59,7 +62,7 @@
LIB_UCDSNMP=""
if test "$with_snmp" != no; then
AC_DEFINE(HAVE_UCDSNMP,1,[Do we have UCD-SNMP support?])
- LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp"
+ LIB_UCDSNMP="-lucdagent -lucdmibs -lsnmp -lkvm -ldevstat -lwrap"
AC_CHECK_LIB(rpm, rpmdbOpen,
LIB_UCDSNMP="${LIB_UCDSNMP} -lrpm -lpopt",,-lpopt)
fi

View File

@ -1,21 +0,0 @@
Index: man/Makefile.in
diff -u man/Makefile.in.orig man/Makefile.in
--- man/Makefile.in.orig Wed Mar 31 00:18:41 2004
+++ man/Makefile.in Wed May 19 01:52:50 2004
@@ -50,6 +50,7 @@
SHELL = /bin/sh
prefix = @prefix@
+cyrus_prefix = @cyrus_prefix@
mandir = @mandir@
@@ -93,7 +94,7 @@
done
for file in $(MAN8); \
do \
- $(INSTALL) -m 644 $$file $(DESTDIR)$(mandir)/man8 || exit 1; \
+ $(INSTALL) -m 644 $$file $(DESTDIR)$(cyrus_prefix)/man/man8 || exit 1; \
done
clean:

View File

@ -1,33 +0,0 @@
Index: imap/Makefile.in
diff -u imap/Makefile.in.orig imap/Makefile.in
--- imap/Makefile.in.orig Wed Nov 12 13:02:01 2003
+++ imap/Makefile.in Thu Mar 11 01:16:00 2004
@@ -132,10 +132,10 @@
install:
- $(srcdir)/../install-sh -d ${DESTDIR}$(service_path)
+ $(INSTALL) -d ${DESTDIR}$(service_path)
for file in $(PROGS); \
do \
- $(INSTALL) -m 755 $$file $(DESTDIR)$(service_path) || exit 1; \
+ $(INSTALL) -s -m 755 $$file $(DESTDIR)$(service_path) || exit 1; \
done
ln -f $(DESTDIR)$(service_path)/pop3d $(DESTDIR)$(service_path)/pop3proxyd
@@ -242,13 +242,13 @@
$(CC) $(LDFLAGS) -o mupdate \
$(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \
mutex_pthread.o tls.o libimap.a \
- $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread
+ $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS)
mupdate.pure: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o \
libimap.a $(DEPLIBS)
$(PURIFY) $(PUREOPT) $(CC) $(LDFLAGS) -o mupdate.pure \
$(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \
- mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread
+ mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS)
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) \

View File

@ -1,25 +1,25 @@
Index: configure
diff -u configure.orig configure
--- configure.orig Tue Feb 15 02:59:46 2005
+++ configure Thu Feb 24 04:45:06 2005
@@ -309,6 +309,7 @@
--- configure.orig Tue Dec 6 01:00:41 2005
+++ configure Sat Dec 10 14:01:36 2005
@@ -310,6 +310,7 @@
#endif"
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os MAKEDEPEND cyrus_prefix service_path cyrus_user cyrus_group CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT RANLIB ac_ct_RANLIB SET_MAKE INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CPP EGREP AWK LIBOBJS LIB_SOCKET IPV6_OBJS PRE_SUBDIRS EXTRA_SUBDIRS DEPLIBS LOCALDEFS WITH_AUTH BDB_INC BDB_LIB CYRUSDB_OBJS SIEVE_OBJS SIEVE_LIBS SIEVE_CPPFLAGS YACC LEX LEXLIB LEX_OUTPUT_ROOT SIEVE_SUBDIRS WITH_NONBLOCK WITH_GMTOFF WITH_MAP WITH_LOCK cyrus_sigveclib WITH_PTS AFS_LIBS AFS_LDFLAGS LDAP_CPPFLAGS LDAP_LDFLAGS LDAP_LIBS SERVER_SUBDIRS OPENSSL_INC OPENSSL_LIB ZEPHYR_LIBS ZEPHYR_CPPFLAGS WITH_IDLE IMAP_PROGS COMPILE_ET COM_ERR_LIBS COM_ERR_LDFLAGS COM_ERR_CPPFLAGS LIB_CRYPT GSSAPI_LIBS GSSAPIBASE_LIBS LIB_DYN_SASL DYNSASLFLAGS LIB_SASL SASLFLAGS PERL PERL_CCCDLFLAGS MD5OBJ SNMP_SUBDIRS LIB_WRAP SNMP_CONFIG LIB_UCDSNMP LIB_RT IMAP_COM_ERR_LIBS IMAP_LIBS PERL_SUBDIRS PERL_DEPSUBDIRS LTLIBOBJS'
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os MAKEDEPEND cyrus_prefix service_path cyrus_user cyrus_group CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT RANLIB ac_ct_RANLIB SET_MAKE INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CPP EGREP AWK LIBOBJS LIB_SOCKET IPV6_OBJS PRE_SUBDIRS EXTRA_SUBDIRS DEPLIBS LOCALDEFS BDB_INC BDB_LIB CYRUSDB_OBJS SIEVE_OBJS SIEVE_LIBS SIEVE_CPPFLAGS YACC LEX LEXLIB LEX_OUTPUT_ROOT SIEVE_SUBDIRS WITH_NONBLOCK WITH_GMTOFF WITH_MAP WITH_LOCK cyrus_sigveclib AFS_LIBS AFS_LDFLAGS LDAP_CPPFLAGS LDAP_LDFLAGS LDAP_LIBS SERVER_SUBDIRS OPENSSL_INC OPENSSL_LIB ZEPHYR_LIBS ZEPHYR_CPPFLAGS IMAP_PROGS COMPILE_ET COM_ERR_LIBS COM_ERR_LDFLAGS COM_ERR_CPPFLAGS LIB_CRYPT GSSAPI_LIBS GSSAPIBASE_LIBS LIB_DYN_SASL DYNSASLFLAGS LIB_SASL SASLFLAGS PERL PERL_CCCDLFLAGS MD5OBJ SNMP_SUBDIRS LIB_WRAP SNMP_CONFIG LIB_UCDSNMP LIB_RT IMAP_COM_ERR_LIBS IMAP_LIBS PERL_SUBDIRS PERL_DEPSUBDIRS LTLIBOBJS'
+ac_subst_vars="${ac_subst_vars} LDFLAGS_UCDSNMP"
ac_subst_files=''
# Initialize some variables set by options.
@@ -6612,7 +6613,7 @@
@@ -8776,7 +8777,7 @@
fi
saved_LIBS=$LIBS
- for dbname in db-4.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 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.4 db4.4 db44 db-4.3 db4.3 db43 db-4.2 db4.2 db42 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 db-4.2 db4.2 db42 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.2 db4.2 db42 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
LIBS="$saved_LIBS -l$dbname"
cat >conftest.$ac_ext <<_ACEOF
@@ -6622,6 +6623,7 @@
@@ -8785,6 +8786,7 @@
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
@ -27,7 +27,7 @@ diff -u configure.orig configure
#include <db.h>
int
main ()
@@ -13549,6 +13551,7 @@
@@ -16659,6 +16661,7 @@
EXTRA_SUBDIRS="${EXTRA_SUBDIRS} perl"
PERL_SUBDIRS="imap"
PERL="${with_perl}"
@ -35,7 +35,7 @@ diff -u configure.orig configure
PERL_CCCDLFLAGS="$cccdlflags"
fi
@@ -14067,7 +14070,9 @@
@@ -17233,7 +17236,9 @@
if test -n "$SNMP_LIBS" && test -n "$SNMP_PREFIX"; then
CPPFLAGS="$CPPFLAGS -I${SNMP_PREFIX}/include"
@ -46,7 +46,7 @@ diff -u configure.orig configure
cat >>confdefs.h <<\_ACEOF
#define HAVE_NETSNMP 1
@@ -14298,7 +14303,7 @@
@@ -17482,7 +17487,7 @@
#define HAVE_UCDSNMP 1
_ACEOF
@ -55,7 +55,7 @@ diff -u configure.orig configure
echo "$as_me:$LINENO: checking for rpmdbOpen in -lrpm" >&5
echo $ECHO_N "checking for rpmdbOpen in -lrpm... $ECHO_C" >&6
if test "${ac_cv_lib_rpm_rpmdbOpen+set}" = set; then
@@ -15114,6 +15119,7 @@
@@ -18306,6 +18311,7 @@
s,@LIB_WRAP@,$LIB_WRAP,;t t
s,@SNMP_CONFIG@,$SNMP_CONFIG,;t t
s,@LIB_UCDSNMP@,$LIB_UCDSNMP,;t t

View File

@ -1,14 +0,0 @@
Index: master/service.c
diff -u master/service.c.orig master/service.c
--- master/service.c.orig Wed Jan 22 22:52:36 2003
+++ master/service.c Wed Jan 22 22:57:20 2003
@@ -102,6 +102,9 @@
struct sockaddr_storage sin;
socklen_t len = sizeof(sin);
+ /* XXX: old FreeBSD didn't fill sockaddr correctly against AF_UNIX */
+ sin.ss_family = AF_UNIX;
+
/* is this a connection from the local host? */
if (getpeername(fd, (struct sockaddr *) &sin, &len) == 0) {
if (((struct sockaddr *)&sin)->sa_family == AF_UNIX) {

View File

@ -0,0 +1,60 @@
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:46:31 2005
@@ -130,10 +130,10 @@
install:
- $(srcdir)/../install-sh -d ${DESTDIR}$(service_path)
+ $(INSTALL) -d ${DESTDIR}$(service_path)
for file in $(PROGS); \
do \
- $(INSTALL) -m 755 $$file $(DESTDIR)$(service_path) || exit 1; \
+ $(INSTALL) -s -m 755 $$file $(DESTDIR)$(service_path) || exit 1; \
done
ln -f $(DESTDIR)$(service_path)/pop3d $(DESTDIR)$(service_path)/pop3proxyd
ln -f $(DESTDIR)$(service_path)/imapd $(DESTDIR)$(service_path)/proxyd
@@ -219,13 +219,13 @@
$(CC) $(LDFLAGS) -o mupdate \
$(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \
mutex_pthread.o tls.o libimap.a \
- $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread
+ $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS)
mupdate.pure: mupdate.o mupdate-slave.o mupdate-client.o mutex_pthread.o \
libimap.a $(DEPLIBS)
$(PURIFY) $(PUREOPT) $(CC) $(LDFLAGS) -o mupdate.pure \
$(SERVICETHREAD) mupdate.o mupdate-slave.o mupdate-client.o \
- mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) -lpthread
+ mutex_pthread.o libimap.a $(DEPLIBS) $(LIBS) $(LIB_WRAP) $(PTHREAD_LIBS)
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

View File

@ -0,0 +1,30 @@
Index: man/Makefile.in
diff -u man/Makefile.in.orig man/Makefile.in
--- man/Makefile.in.orig Wed May 11 00:02:35 2005
+++ man/Makefile.in Sat Dec 10 15:26:05 2005
@@ -50,6 +50,7 @@
SHELL = /bin/sh
prefix = @prefix@
+cyrus_prefix = @cyrus_prefix@
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); \
do \
- $(INSTALL) -m 644 $$file $(DESTDIR)$(mandir)/man8 || exit 1; \
+ $(INSTALL) -m 644 $$file $(DESTDIR)$(cyrus_prefix)/man/man8 || exit 1; \
done
clean:

View File

@ -1,14 +0,0 @@
Index: master/service-thread.c
diff -u master/service-thread.c.orig master/service-thread.c
--- master/service-thread.c.orig Wed Jan 22 22:52:36 2003
+++ master/service-thread.c Wed Jan 22 23:09:52 2003
@@ -99,6 +99,9 @@
struct sockaddr_storage sin;
socklen_t len = sizeof(sin);
+ /* XXX: old FreeBSD didn't fill sockaddr correctly against AF_UNIX */
+ sin.ss_family = AF_UNIX;
+
/* is this a connection from the local host? */
if (getpeername(fd, (struct sockaddr *) &sin, &len) == 0) {
if (((struct sockaddr *)&sin)->sa_family == AF_UNIX) {

View File

@ -1,18 +1,18 @@
Index: tools/mkimap
diff -u tools/mkimap.orig tools/mkimap
--- tools/mkimap.orig Wed Jun 30 03:16:54 2004
+++ tools/mkimap Tue Jul 27 04:47:43 2004
@@ -61,6 +61,9 @@
--- tools/mkimap.orig Fri Dec 2 07:30:22 2005
+++ tools/mkimap Sat Dec 10 14:08:11 2005
@@ -90,6 +90,9 @@
$imapdconf = shift || "/etc/imapd.conf";
+$cyrus_user = $ENV{CYRUS_USER} || "%%CYRUS_USER%%";
+$cyrus_group = $ENV{CYRUS_GROUP} || "%%CYRUS_GROUP%%";
+
open CONF, $imapdconf or die "can't open $imapdconf";
print "reading configure file...\n";
while (<CONF>) {
@@ -86,6 +89,7 @@
push @configs, $imapdconf;
while ($conf = shift @configs) {
@@ -100,6 +103,7 @@
print "configuring $d...\n";
@ -20,9 +20,9 @@ diff -u tools/mkimap.orig tools/mkimap
chdir $d or die "couldn't change to $d";
mkdir "proc", 0755 || warn "can't create $d/proc: $!";
@@ -95,11 +99,14 @@
mkdir "msg", 0755 || warn "can't create $d/msg: $!";
@@ -110,12 +114,15 @@
mkdir "ptclient", 0755 || warn "can't create $d/ptclient: $!";
mkdir "sync", 0755 || warn "can't create $d/sync: $!";
+system "/usr/sbin/chown -R $cyrus_user:$cyrus_group .";
+
@ -31,6 +31,7 @@ diff -u tools/mkimap.orig tools/mkimap
mkdir $part, 0755 || warn "can't create $part: $!";
chdir $part or die "couldn't change to partition $part";
mkdir "stage.", 0755 || warn "can't create $part/stage.: $!";
mkdir "sync.", 0755 || warn "can't create $part/sync.: $!";
+ system "/usr/sbin/chown -R $cyrus_user:$cyrus_group $part";
}

View File

@ -8,6 +8,7 @@ bin/pop3test
bin/sieveshell
bin/sivtest
bin/smtptest
bin/synctest
cyrus/bin/arbitron
cyrus/bin/chk_cyrus
cyrus/bin/ctl_cyrusdb
@ -23,7 +24,7 @@ cyrus/bin/fud
cyrus/bin/imapd
cyrus/bin/ipurge
cyrus/bin/lmtpd
%%MURDER%%cyrus/bin/lmtpproxyd
%%REPLICATION%%cyrus/bin/make_md5
cyrus/bin/masssievec
cyrus/bin/master
cyrus/bin/mbexamine
@ -34,7 +35,7 @@ cyrus/bin/mkimap
cyrus/bin/notifyd
cyrus/bin/pop3d
cyrus/bin/pop3proxyd
%%MURDER%%cyrus/bin/proxyd
cyrus/bin/proxyd
%%LDAP_PTLOADER%%cyrus/bin/ptdump
%%LDAP_PTLOADER%%cyrus/bin/ptexpire
%%LDAP_PTLOADER%%cyrus/bin/ptloader
@ -43,17 +44,23 @@ cyrus/bin/reconstruct
cyrus/bin/sievec
cyrus/bin/smmapd
cyrus/bin/squatter
%%REPLICATION%%cyrus/bin/sync_client
%%REPLICATION%%cyrus/bin/sync_reset
%%REPLICATION%%cyrus/bin/sync_server
cyrus/bin/timsieved
cyrus/bin/tls_prune
cyrus/bin/unexpunge
include/cyrus/acl.h
include/cyrus/assert.h
include/cyrus/auth.h
include/cyrus/bsearch.h
include/cyrus/byteorder64.h
include/cyrus/charset.h
include/cyrus/cyrusdb.h
include/cyrus/glob.h
include/cyrus/gmtoff.h
include/cyrus/hash.h
include/cyrus/hmac-md5.h
include/cyrus/imapopts.h
include/cyrus/imapurl.h
include/cyrus/imclient.h
@ -64,6 +71,8 @@ include/cyrus/libcyr_cfg.h
include/cyrus/lock.h
include/cyrus/lsort.h
include/cyrus/map.h
include/cyrus/md5.h
include/cyrus/message_uuid.h
include/cyrus/mkgmtime.h
include/cyrus/mpool.h
include/cyrus/nonblock.h