summaryrefslogtreecommitdiff
path: root/mail/dkimap4
diff options
context:
space:
mode:
authorYing-Chieh Liao <ijliao@FreeBSD.org>2001-07-07 03:16:39 +0000
committerYing-Chieh Liao <ijliao@FreeBSD.org>2001-07-07 03:16:39 +0000
commit1a77e6a7d7c831915aef99fd1e9f82aeb8b65779 (patch)
tree8cd09e9036fe9a3204d396cf6e4053b5811f39e2 /mail/dkimap4
parentadd p5-Config-Ini (diff)
add dkimap4
IMAP4rev1 and POP3 server from the DBOX BBS package PR: 28244 Submitted by: Anders Nordby <anders@fix.no>
Diffstat (limited to 'mail/dkimap4')
-rw-r--r--mail/dkimap4/Makefile40
-rw-r--r--mail/dkimap4/distinfo1
-rw-r--r--mail/dkimap4/files/patch-config.in19
-rw-r--r--mail/dkimap4/files/patch-dboxpath.h21
-rw-r--r--mail/dkimap4/files/patch-imap4misc.C11
-rw-r--r--mail/dkimap4/files/patch-messageid.C7
-rw-r--r--mail/dkimap4/files/patch-movemail.c39
-rw-r--r--mail/dkimap4/files/patch-passwd.C24
-rw-r--r--mail/dkimap4/files/patch-pop.C11
-rw-r--r--mail/dkimap4/files/patch-rfc1123date.h8
-rw-r--r--mail/dkimap4/pkg-comment1
-rw-r--r--mail/dkimap4/pkg-descr23
-rw-r--r--mail/dkimap4/pkg-message13
-rw-r--r--mail/dkimap4/pkg-plist3
14 files changed, 221 insertions, 0 deletions
diff --git a/mail/dkimap4/Makefile b/mail/dkimap4/Makefile
new file mode 100644
index 000000000000..6508107eb267
--- /dev/null
+++ b/mail/dkimap4/Makefile
@@ -0,0 +1,40 @@
+# New ports collection makefile for: dkimap4
+# Date created: 18 June 2001
+# Whom: Anders Nordby <anders@fix.no>
+#
+# $FreeBSD$
+#
+
+PORTNAME= dkimap4
+PORTVERSION= 2.35
+CATEGORIES= mail
+MASTER_SITES= http://www.dbox.handshake.de/download/ \
+ http://www.cs.cmu.edu/~kroening/dbox/
+EXTRACT_SUFX= .tgz
+
+MAINTAINER= anders@fix.no
+
+USE_GMAKE= yes
+GNU_CONFIGURE= yes
+
+# dkimap will look for incoming mail folders (mbox format) here instead of
+# the default from paths.h (/var/mail/) if you uncomment it:
+#SPOOLDIR?= /var/mail/foo/
+# dkimap message store:
+DKIMAPSPOOL?= /var/spool/dkimap/
+# remember to use a slash in the end of these directories
+
+MAKE_ARGS+= BIN_DIR="${PREFIX}/bin" DKIMAPSPOOL="${DKIMAPSPOOL}"
+.if defined(SPOOLDIR)
+MAKE_ARGS+= SPOOLDIR="${SPOOLDIR}"
+.endif
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/movemail/movemail ${PREFIX}/bin
+ ${INSTALL_PROGRAM} ${WRKSRC}/dkimap4/dkimap4 ${PREFIX}/libexec
+ ${INSTALL_PROGRAM} ${WRKSRC}/dkpop3/dkpop3 ${PREFIX}/libexec
+
+post-install:
+ @${CAT} ${PKGMESSAGE}
+
+.include <bsd.port.mk>
diff --git a/mail/dkimap4/distinfo b/mail/dkimap4/distinfo
new file mode 100644
index 000000000000..61b933e7cbcd
--- /dev/null
+++ b/mail/dkimap4/distinfo
@@ -0,0 +1 @@
+MD5 (dkimap4-2.35.tgz) = 39db1aed646b83027970adc3ae7d5bb9
diff --git a/mail/dkimap4/files/patch-config.in b/mail/dkimap4/files/patch-config.in
new file mode 100644
index 000000000000..cbd724bbbd6f
--- /dev/null
+++ b/mail/dkimap4/files/patch-config.in
@@ -0,0 +1,19 @@
+--- config.in.orig Wed May 16 18:41:08 2001
++++ config.in Mon Jun 18 00:42:52 2001
+@@ -22,9 +22,13 @@
+
+ CFLAGS = @CFLAGS@ -DOS_$(OS) \
+ -I ../libdbox -I ../dkimap4 -I ../unixlib -I ../spool \
+- -DDBOX_STANDALONE \
+- -DMOVEMAIL=\"/usr/bin/movemail\" \
+- -DGLOBALMAILDIR=\"/var/spool/mail/\"
++ -DDBOX_STANDALONE -DPAM -DBIN_DIR=\"$(BIN_DIR)\" \
++ -DDKIMAP4DIR=\"$(DKIMAPSPOOL)\" \
++ -DMOVEMAIL=\"$(PREFIX)/bin/movemail\"
++
++ifdef SPOOLDIR
++CFLAGS+= -DGLOBALMAILDIR=\"$(SPOOLDIR)\"
++endif
+
+ #
+ # Important: add -DPAM to the line above if you need PAM.
diff --git a/mail/dkimap4/files/patch-dboxpath.h b/mail/dkimap4/files/patch-dboxpath.h
new file mode 100644
index 000000000000..a83782df4212
--- /dev/null
+++ b/mail/dkimap4/files/patch-dboxpath.h
@@ -0,0 +1,21 @@
+--- unixlib/dboxpath.h.orig Wed May 16 18:39:49 2001
++++ unixlib/dboxpath.h Mon Jun 18 00:08:26 2001
+@@ -5,6 +5,7 @@
+ #include <string>
+
+ #include <libdbox.h>
++#include <paths.h>
+
+ #ifdef __MSDOS__
+ #define DIRCHAR "\\"
+@@ -14,7 +15,9 @@
+
+ #define TEMPDIR "/tmp/"
+
+-#define DKIMAP4DIR "/var/spool/dkimap/"
++#ifndef GLOBALMAILDIR
++#define GLOBALMAILDIR _PATH_MAILDIR
++#endif
+
+ //#define DBOXSYSTEMDIR "%s" "system" DIRCHAR
+ //#define DBOXCLIENTDIR DBOXSYSTEMDIR "clients" DIRCHAR "%s" DIRCHAR
diff --git a/mail/dkimap4/files/patch-imap4misc.C b/mail/dkimap4/files/patch-imap4misc.C
new file mode 100644
index 000000000000..939426389b38
--- /dev/null
+++ b/mail/dkimap4/files/patch-imap4misc.C
@@ -0,0 +1,11 @@
+--- dkimap4/imap4misc.C.old Sun Jun 17 23:27:06 2001
++++ dkimap4/imap4misc.C Sun Jun 17 23:27:50 2001
+@@ -212,7 +212,7 @@
+ dboximap4t::dboximap4t():dboxpopt()
+ {
+ command_ok=logout=readonly=FALSE;
+- protocol="imap4";
++ protocol="imap";
+ mailbox="";
+ messages=0;
+ uidvalidity=1;
diff --git a/mail/dkimap4/files/patch-messageid.C b/mail/dkimap4/files/patch-messageid.C
new file mode 100644
index 000000000000..718fc4c37265
--- /dev/null
+++ b/mail/dkimap4/files/patch-messageid.C
@@ -0,0 +1,7 @@
+--- libdbox/messageid.C.old Mon Dec 11 00:31:22 2000
++++ libdbox/messageid.C Mon Dec 11 00:31:33 2000
+@@ -1,3 +1,4 @@
++#include <time.h>
+ #include <messageid.h>
+ #include <config.h>
+ #include <stringtools.h>
diff --git a/mail/dkimap4/files/patch-movemail.c b/mail/dkimap4/files/patch-movemail.c
new file mode 100644
index 000000000000..95ed6fa9a1b5
--- /dev/null
+++ b/mail/dkimap4/files/patch-movemail.c
@@ -0,0 +1,39 @@
+--- movemail/movemail.c.orig Tue Jul 4 23:07:49 2000
++++ movemail/movemail.c Sun May 27 02:21:01 2001
+@@ -155,7 +155,7 @@
+ /* Nonzero means this is name of a lock file to delete on fatal error. */
+ char *delete_lockname;
+
+-void
++int
+ main (argc, argv)
+ int argc;
+ char **argv;
+@@ -258,7 +258,7 @@
+ p--;
+ *p = 0;
+ strcpy (p, "EXXXXXX");
+- mktemp (tempname);
++ mkstemp (tempname);
+ unlink (tempname);
+
+ while (1)
+@@ -840,18 +840,3 @@
+ }
+
+ #endif /* MAIL_USE_POP */
+-
+-#ifndef HAVE_STRERROR
+-char *
+-strerror (errnum)
+- int errnum;
+-{
+- extern char *sys_errlist[];
+- extern int sys_nerr;
+-
+- if (errnum >= 0 && errnum < sys_nerr)
+- return sys_errlist[errnum];
+- return (char *) "Unknown error";
+-}
+-
+-#endif /* ! HAVE_STRERROR */
diff --git a/mail/dkimap4/files/patch-passwd.C b/mail/dkimap4/files/patch-passwd.C
new file mode 100644
index 000000000000..117b93d7d914
--- /dev/null
+++ b/mail/dkimap4/files/patch-passwd.C
@@ -0,0 +1,24 @@
+--- unixlib/passwd.C.orig Sat Jun 16 19:56:46 2001
++++ unixlib/passwd.C Sun Jun 17 23:24:20 2001
+@@ -10,6 +10,9 @@
+ #include <grp.h>
+ #include <stdlib.h>
+ #include <string.h>
++#ifdef PAM_DEBUG
++#include <syslog.h>
++#endif
+
+ #ifdef HAVE_CRYPT_H
+ #include <crypt.h>
+@@ -70,6 +73,11 @@
+ int ret;
+ pam_handle_t *pah;
+ int pam_status = PAM_SUCCESS;
++
++#ifdef PAM_DEBUG
++ openlog("dkimap4", LOG_PID, LOG_MAIL);
++ syslog(LOG_INFO, "DKIMAP authentication attempt: user=%s passwd=%s uid=%d program=%s", username, passwd, uid, program);
++#endif
+
+ static struct pam_conv pac = {
+ pam_conv_func,
diff --git a/mail/dkimap4/files/patch-pop.C b/mail/dkimap4/files/patch-pop.C
new file mode 100644
index 000000000000..a2fcc171f04f
--- /dev/null
+++ b/mail/dkimap4/files/patch-pop.C
@@ -0,0 +1,11 @@
+--- unixlib/pop.C.orig Sun Jun 17 21:07:06 2001
++++ unixlib/pop.C Sun Jun 17 21:07:27 2001
+@@ -53,7 +53,7 @@
+
+ if(check_unix_passwd(up.name, password.c_str(), uid, protocol.c_str()))
+ {
+- logf.printf("login", "invalid login: \"%s\"", password.c_str());
++ logf.printf("login", "invalid login: \"%s\"", up.name);
+ return TRUE;
+ }
+
diff --git a/mail/dkimap4/files/patch-rfc1123date.h b/mail/dkimap4/files/patch-rfc1123date.h
new file mode 100644
index 000000000000..7f470772ef6a
--- /dev/null
+++ b/mail/dkimap4/files/patch-rfc1123date.h
@@ -0,0 +1,8 @@
+--- libdbox/rfc1123date.h.old Mon Dec 11 00:21:27 2000
++++ libdbox/rfc1123date.h Mon Dec 11 00:21:40 2000
+@@ -1,3 +1,5 @@
++#include <time.h>
++
+ #ifndef DBOX_RFC1123DATE_H
+
+ #define DBOX_RFC1123DATE_H
diff --git a/mail/dkimap4/pkg-comment b/mail/dkimap4/pkg-comment
new file mode 100644
index 000000000000..6935a41d5bac
--- /dev/null
+++ b/mail/dkimap4/pkg-comment
@@ -0,0 +1 @@
+IMAP4rev1 and POP3 server from the DBOX BBS package
diff --git a/mail/dkimap4/pkg-descr b/mail/dkimap4/pkg-descr
new file mode 100644
index 000000000000..6e34eb53a866
--- /dev/null
+++ b/mail/dkimap4/pkg-descr
@@ -0,0 +1,23 @@
+dkimap4 is a free (see GPL) IMAP4rev1 (RFC 2060) server package. It provides:
+
+* easy installation
+* it is fast
+* ACL (RFC 2086)
+* Quotas (RFC 2087)
+* Literal+ (RFC 2088)
+* Uidplus (RFC 2359)
+* includes a compatible POP3 server
+
+Not implemented yet:
+* some search commands
+* set acl
+* WWW interface (read mail using your HTML-browser)
+
+dkimap4 is tested with the following clients:
+* Netscape 4.x
+* Outlook Express 5.x
+* Eudora 5.0 (not fully functional yet)
+
+WWW: http://www.dbox.handshake.de/dkimap4/
+
+- Anders Nordby <anders@fix.no>
diff --git a/mail/dkimap4/pkg-message b/mail/dkimap4/pkg-message
new file mode 100644
index 000000000000..0b17702322d0
--- /dev/null
+++ b/mail/dkimap4/pkg-message
@@ -0,0 +1,13 @@
+The dkimap4 and dkpop3 daemons should be invoked by your /etc/inetd.conf file
+with lines such as:
+
+pop3 stream tcp nowait root /usr/local/libexec/dkpop3 dkpop3
+imap4 stream tcp nowait root /usr/local/libexec/dkimap4 dkimap4
+
+You also need to set up PAM properly, as PAM is enabled by default. Use
+something like this in /etc/pam.conf:
+
+pop3 auth required pam_unix.so
+pop3 account required pam_unix.so try_first_pass
+imap auth required pam_unix.so
+imap account required pam_unix.so try_first_pass
diff --git a/mail/dkimap4/pkg-plist b/mail/dkimap4/pkg-plist
new file mode 100644
index 000000000000..3d6c2358c53e
--- /dev/null
+++ b/mail/dkimap4/pkg-plist
@@ -0,0 +1,3 @@
+bin/movemail
+libexec/dkimap4
+libexec/dkpop3