aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mail/vpopmail-devel/Makefile100
-rw-r--r--mail/vpopmail-devel/distinfo3
-rw-r--r--mail/vpopmail-devel/files/patch-Makefile.in14
-rw-r--r--mail/vpopmail-devel/files/patch-configure60
-rw-r--r--mail/vpopmail-devel/files/patch-vlimits.c29
-rw-r--r--mail/vpopmail-devel/pkg-plist9
-rw-r--r--mail/vpopmail/Makefile100
-rw-r--r--mail/vpopmail/distinfo3
-rw-r--r--mail/vpopmail/files/patch-Makefile.in14
-rw-r--r--mail/vpopmail/files/patch-configure60
-rw-r--r--mail/vpopmail/files/patch-vlimits.c29
-rw-r--r--mail/vpopmail/pkg-plist9
12 files changed, 160 insertions, 270 deletions
diff --git a/mail/vpopmail-devel/Makefile b/mail/vpopmail-devel/Makefile
index 705b6e73b84b..094088c65341 100644
--- a/mail/vpopmail-devel/Makefile
+++ b/mail/vpopmail-devel/Makefile
@@ -6,25 +6,19 @@
#
PORTNAME= vpopmail
-PORTVERSION= 5.3.20
+PORTVERSION= 5.3.27
CATEGORIES= mail
-MASTER_SITES= http://www.inter7.com/devel/
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR= ${PORTNAME}
MAINTAINER= roam@FreeBSD.org
-COMMENT= "Easy virtual domain and authentication package for use with qmail"
+COMMENT= Easy virtual domain and authentication package for use with qmail
BUILD_DEPENDS= ${QMAIL_DIR}/bin/qmail-send:${PORTSDIR}/mail/qmail \
${LOCALBASE}/bin/tcprules:${PORTSDIR}/sysutils/ucspi-tcp
RUN_DEPENDS= ${QMAIL_DIR}/bin/qmail-send:${PORTSDIR}/mail/qmail \
${LOCALBASE}/bin/tcprules:${PORTSDIR}/sysutils/ucspi-tcp
-.if defined(WITH_VPOPMAIL_SQWEBMAIL_CREATION)
-PATCHFILES= vpopmail-sqwebmail-config-${PORTVERSION}.patch
-PATCH_SITES= ${MASTER_SITE_LOCAL} \
- http://people.FreeBSD.org/~roam/ports/patches/mail/vpopmail/
-PATCH_SITE_SUBDIR= roam
-.endif
-
GNU_CONFIGURE= YES
USE_GMAKE= YES
USE_REINPLACE= YES
@@ -45,22 +39,22 @@ CONFIGURE_ARGS= --enable-qmaildir=${QMAIL_DIR} \
#
# WITH_PASSWD - allow authentication off /etc/passwd
# WITHOUT_MD5_PASSWORDS - store encrypted passwords in MD5 format
+# WITH_CLEAR_PASSWD - store passwords in plaintext
+# WITH_LEARN_PASSWORDS - enable learning passwords during pop auth
# WITH_MYSQL - allow authentitation via mysql
-# WITH_MYSQL_LARGE_SITE - enables large site layout
# WITH_MYSQL_REPLICATION - enables MySQL database replication
# WITH_MYSQL_LIMITS - enables the MySQL mailbox limit code
# WITH_SYBASE - allow authentication via Sybase (NOT TESTED!)
# WITH_ORACLE - allow authentication via Oracle (NOT TESTED!)
-# WITH_CLEAR_PASSWD - store passwords in plaintext into the MySQL db
# WITH_VALIAS - enable valias processing
# WITHOUT_ROAMING - disallow roaming users
# WITH_IP_ALIAS - enables IP aliasing
-# WITH_DELIVER_FILTER - enables the experimental vdelivermail filter
# WITH_QMAIL_EXT - enables qmail-like user-* address extesions processing
# WITHOUT_FILE_LOCKING - disable file locking
# WITH_FILE_SYNC - enables immediate synching (may decrease performance)
# WITHOUT_USERS_BIG_DIR - disables using big directories for users
# WITHOUT_SEEKABLE - disables vdelivermail's attempt to make its input seekable
+# WITH_DOMAIN_QUOTAS - enable domain quotas
#
# Set these to the values you'd prefer
#
@@ -69,7 +63,8 @@ CONFIGURE_ARGS= --enable-qmaildir=${QMAIL_DIR} \
# DEFAULT_DOMAIN - default domain for non-vhost lookups
# WITH_SINGLE_DOMAIN - optimize for a site with many users in a single domain
# LOGLEVEL - n - no logging, y - log all,
-# e - log errors, p - log passwords in errors
+# e - log errors, p - log passwords in errors,
+# v - verbose success and errors with passwords
# WITHOUT_AUTH_LOG - disables authentication logging
# WITH_MYSQL_LOG - enable logging to a MySQL database
# QMAIL_DIR - location of qmail directory
@@ -121,6 +116,8 @@ HARDQUOTA?= 10000000
RELAYCLEAR?= 30
LOGLEVEL?= y
+.include <bsd.port.pre.mk>
+
.if exists(${LOCALBASE}/qmail/bin/qmail-send)
QMAIL_DIR?= ${LOCALBASE}/qmail
.else
@@ -158,10 +155,6 @@ BROKEN= "The WITH_APOP option is deprecated; set WITH_CLEAR_PASSWD instead, APO
CONFIGURE_ARGS+= --enable-valias=y
.endif
-.if defined(WITH_SQWEBMAIL)
-CONFIGURE_ARGS+= --enable-sqwebmail-pass=y
-.endif
-
.if !defined(WITHOUT_ROAMING)
CONFIGURE_ARGS+= --enable-roaming-users=y \
--enable-relay-clear-minutes=${RELAYCLEAR}
@@ -171,14 +164,15 @@ CONFIGURE_ARGS+= --enable-roaming-users=y \
CONFIGURE_ARGS+= --enable-clear-passwd=n
.endif
+.if defined(WITH_LEARN_PASSWORDS)
+CONFIGURE_ARGS+= --enable-learn-passwords=y
+.endif
+
.if defined(WITH_MYSQL)
-LIB_DEPENDS+= mysqlclient.10:${PORTSDIR}/databases/mysql323-client
+USE_MYSQL= yes
CONFIGURE_ARGS+= --enable-mysql=y \
- --enable-sqlincdir=${LOCALBASE}/include/mysql \
- --enable-sqllibdir=${LOCALBASE}/lib/mysql
-.if defined(WITH_MYSQL_LARGE_SITE)
-CONFIGURE_ARGS+= --enable-large-site=y
-.endif
+ --enable-incdir=${LOCALBASE}/include/mysql \
+ --enable-libdir=${LOCALBASE}/lib/mysql
.if defined(WITH_MYSQL_REPLICATION)
CONFIGURE_ARGS+= --enable-mysql-replication=y
.endif
@@ -189,18 +183,16 @@ CONFIGURE_ARGS+= --enable-mysql-logging=y
CONFIGURE_ARGS+= --enable-mysql-limits=y
.endif
-.if defined(WITH_MYSQL_SERVER)
+WITH_MYSQL_SERVER?= localhost
WITH_MYSQL_READ_SERVER?= ${WITH_MYSQL_SERVER}
WITH_MYSQL_UPDATE_SERVER?= ${WITH_MYSQL_SERVER}
-.endif
-.if defined(WITH_MYSQL_USER)
+WITH_MYSQL_USER?= vpopmail
WITH_MYSQL_READ_USER?= ${WITH_MYSQL_USER}
WITH_MYSQL_UPDATE_USER?= ${WITH_MYSQL_USER}
-.endif
-.if defined(WITH_MYSQL_PASSWD)
+WITH_MYSQL_PASSWD?= secret
WITH_MYSQL_READ_PASSWD?= ${WITH_MYSQL_PASSWD}
WITH_MYSQL_UPDATE_PASSWD?= ${WITH_MYSQL_PASSWD}
-.endif
+WITH_MYSQL_DB?= vpopmail
.endif
.if defined(WITH_SYBASE)
@@ -212,10 +204,6 @@ WITH_ORACLE_PROC?= proc
CONFIGURE_ARGS+= --enable-oracle=y
.endif
-.if defined(DEFAULT_DOMAIN)
-CONFIGURE_ARGS+= --enable-default-domain=${DEFAULT_DOMAIN}
-.endif
-
.if defined(WITH_SINGLE_DOMAIN)
CONFIGURE_ARGS+= --enable-many-domains=n
.endif
@@ -224,10 +212,6 @@ CONFIGURE_ARGS+= --enable-many-domains=n
CONFIGURE_ARGS+= --enable-ip-alias-domains=y
.endif
-.if defined(WITH_DELIVER_FILTER)
-CONFIGURE_ARGS+= --enable-deliver-filter=y
-.endif
-
.if defined(WITH_QMAIL_EXT)
CONFIGURE_ARGS+= --enable-qmail-ext=y
.endif
@@ -252,6 +236,10 @@ CONFIGURE_ARGS+= --enable-users-big-dir=n
CONFIGURE_ARGS+= --enable-make-seekable=n
.endif
+.if defined(WITH_DOMAIN_QUOTAS)
+CONFIGURE_ARGS+= --enable-domainquotas=y
+.endif
+
# autoconf and automake can remove our patches to the configure scripts.
post-patch:
@@ -265,29 +253,6 @@ post-patch:
pre-configure:
@PKG_PREFIX=${PREFIX}/vpopmail ${PERL5} ${PKGINSTALL}
-.if defined(WITH_MYSQL)
-.if defined(WITH_MYSQL_UPDATE_SERVER)
- ${REINPLACE_CMD} -E -e "s/(#define MYSQL_UPDATE_SERVER.*)localhost(.*)/\1${WITH_MYSQL_UPDATE_SERVER}\2/" ${WRKSRC}/vmysql.h
-.endif
-.if defined(WITH_MYSQL_READ_SERVER)
- ${REINPLACE_CMD} -E -e "s/(#define MYSQL_READ_SERVER.*)localhost(.*)/\1${WITH_MYSQL_READ_SERVER}\2/" ${WRKSRC}/vmysql.h
-.endif
-.if defined(WITH_MYSQL_UPDATE_USER)
- ${REINPLACE_CMD} -E "s/(#define MYSQL_UPDATE_USER.*)root(.*)/\1${WITH_MYSQL_UPDATE_USER}\2/" ${WRKSRC}/vmysql.h
-.endif
-.if defined(WITH_MYSQL_READ_USER)
- ${REINPLACE_CMD} -E -e "s/(#define MYSQL_READ_USER.*)root(.*)/\1${WITH_MYSQL_READ_USER}\2/" ${WRKSRC}/vmysql.h
-.endif
-.if defined(WITH_MYSQL_UPDATE_PASSWD)
- ${REINPLACE_CMD} -E -e "s/(#define MYSQL_UPDATE_PASSWD.*)secret(.*)/\1${WITH_MYSQL_UPDATE_PASSWD}\2/" ${WRKSRC}/vmysql.h
-.endif
-.if defined(WITH_MYSQL_READ_PASSWD)
- ${REINPLACE_CMD} -E -e "s/(#define MYSQL_READ_PASSWD.*)secret(.*)/\1${WITH_MYSQL_READ_PASSWD}\2/" ${WRKSRC}/vmysql.h
-.endif
-.if defined(WITH_MYSQL_DB)
- ${REINPLACE_CMD} -E -e "s/(#define MYSQL_DATABASE.*)vpopmail(.*)/\1${WITH_MYSQL_DB}\2/" ${WRKSRC}/vmysql.h
-.endif
-.endif
.if defined(WITH_ORACLE)
.if defined(WITH_ORACLE_SERVICE)
${REINPLACE_CMD} -E -e "s/(#define ORACLE_SERVICE.*)jimmy(.*)/\1${WITH_ORACLE_SERVICE}\2/" ${WRKSRC}/voracle.h
@@ -335,6 +300,15 @@ post-install:
${TOUCH} ${PREFIX}/vpopmail/etc/tcp.smtp; \
fi; \
fi
- ${INSTALL_DATA} ${VCFGDIR}/inc_deps ${VCFGDIR}/lib_deps ${PREFIX}/vpopmail/etc/
+# ${INSTALL_DATA} ${VCFGDIR}/inc_deps ${VCFGDIR}/lib_deps ${PREFIX}/vpopmail/etc/
+.if defined(DEFAULT_DOMAIN)
+ ${ECHO_CMD} ${DEFAULT_DOMAIN} > ${PREFIX}/vpopmail/etc/defaultdomain
+.endif
+.if defined(WITH_MYSQL)
+ ${ECHO_CMD} "${WITH_MYSQL_READ_SERVER}|0|${WITH_MYSQL_READ_USER}|${WITH_MYSQL_READ_PASSWD}|${WITH_MYSQL_DB}" \
+ > ${PREFIX}/vpopmail/etc/vpopmail.mysql
+ ${ECHO_CMD} "${WITH_MYSQL_UPDATE_SERVER}|0|${WITH_MYSQL_UPDATE_USER}|${WITH_MYSQL_UPDATE_PASSWD}|${WITH_MYSQL_DB}" \
+ >> ${PREFIX}/vpopmail/etc/vpopmail.mysql
+.endif
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
diff --git a/mail/vpopmail-devel/distinfo b/mail/vpopmail-devel/distinfo
index fa0f91a36066..2f4f444b0e36 100644
--- a/mail/vpopmail-devel/distinfo
+++ b/mail/vpopmail-devel/distinfo
@@ -1,2 +1 @@
-MD5 (vpopmail-5.3.20.tar.gz) = 4009fd5f6f910f1c70e58e2069d5f31d
-MD5 (vpopmail-sqwebmail-config-5.3.20.patch) = 3d89fd7b95d3aa1f6398ea8fccadefba
+MD5 (vpopmail-5.3.27.tar.gz) = 3690c3b2ddc0fc412feda37170e6c56f
diff --git a/mail/vpopmail-devel/files/patch-Makefile.in b/mail/vpopmail-devel/files/patch-Makefile.in
new file mode 100644
index 000000000000..52cd7794c969
--- /dev/null
+++ b/mail/vpopmail-devel/files/patch-Makefile.in
@@ -0,0 +1,14 @@
+--- Makefile.in.orig Thu Sep 4 23:45:08 2003
++++ Makefile.in Thu Sep 4 23:46:17 2003
+@@ -705,10 +705,7 @@
+
+ if test "@USE_MYSQL@" = "1"; then \
+ if test ! -r $(MYSQLCONF); then \
+- echo "# MySQL settings, line 1 is config for read-only," > $(MYSQLCONF); \
+- echo "# line 2 is config for update. Settings for each" >> $(MYSQLCONF); \
+- echo "# line: server|port|user|password|database" >> $(MYSQLCONF); \
+- echo "localhost|0|root|secret|vpopmail" >> $(MYSQLCONF); \
++ touch $(MYSQLCONF); \
+ fi ; \
+ chown @vpopuser@ $(MYSQLCONF) ; \
+ chgrp @vpopgroup@ $(MYSQLCONF) ; \
diff --git a/mail/vpopmail-devel/files/patch-configure b/mail/vpopmail-devel/files/patch-configure
index 07ab9b4f24a2..dff6d39e78a5 100644
--- a/mail/vpopmail-devel/files/patch-configure
+++ b/mail/vpopmail-devel/files/patch-configure
@@ -1,6 +1,6 @@
---- configure.old Thu Feb 13 17:37:40 2003
-+++ configure Thu Feb 13 17:38:32 2003
-@@ -1285,7 +1285,7 @@
+--- configure.orig Thu Aug 28 21:09:47 2003
++++ configure Fri Sep 5 00:13:14 2003
+@@ -1317,7 +1317,7 @@
;;
esac
@@ -9,8 +9,8 @@
then
echo "configure: warning: === vpopmail must be configured as root. ===" 1>&2
echo "configure: warning: === please switch to the root user and ===" 1>&2
-@@ -1563,15 +1563,6 @@
- rm -f vpopusername
+@@ -1601,15 +1601,6 @@
+ EOF
-if test ! -d $vpopmaildir/etc
@@ -25,38 +25,22 @@
# Check whether --enable-roaming-users or --disable-roaming-users was given.
if test "${enable_roaming_users+set}" = set; then
enableval="$enable_roaming_users"
-@@ -1637,7 +1628,7 @@
-
- if test "$tcpserver_file" = ""
- then
+@@ -1671,17 +1662,7 @@
+ if test "${enable_tcpserver_file+set}" = set; then
+ enableval="$enable_tcpserver_file"
+ tcpserver_file="$enableval"
+-else
+-
+- if test "$tcpserver_file" = ""
+- then
- echo "127.:allow,RELAYCLIENT=\"\"" > "$vpopmaildir"/etc/tcp.smtp
-+ echo "127.:allow,RELAYCLIENT=\"\"" > "$VCFGDIR"/tcp.smtp
- tcpserver_file="$vpopmaildir"/etc/tcp.smtp
-
- echo "configure: warning: Unable to find your tcpserver relay file." 1>&2
-@@ -2142,7 +2133,7 @@
- fi
- auth_libs="-L$libdir $extralibflags -lmysqlclient -lz"
+- tcpserver_file="$vpopmaildir"/etc/tcp.smtp
+-
+- echo "configure: warning: Unable to find your tcpserver relay file." 1>&2
+- echo "configure: warning: Creating tcp.smtp in "$vpopmaildir"/etc/tcp.smtp." 1>&2
+- fi
+-
++ echo "127.:allow,RELAYCLIENT=\"\"" > ${VCFGDIR}/tcp.smtp
+ fi
-- echo "-L$vpopmaildir/lib -lvpopmail -L$libdir -lmysqlclient -lz" > $vpopmaildir/etc/lib_deps
-+ echo "-L$vpopmaildir/lib -lvpopmail -L$libdir -lmysqlclient -lz" > $VCFGDIR/lib_deps
-
- ;;
- *)
-@@ -2399,14 +2390,14 @@
- authlib=
-
- auth_inc="-Icdb"
-- echo "-L$vpopmaildir/lib -lvpopmail" > $vpopmaildir/etc/lib_deps
-+ echo "-L$vpopmaildir/lib -lvpopmail" > $VCFGDIR/lib_deps
-
- ;;
- *)
- ;;
- esac
-
--echo "-I$vpopmaildir/include" > $vpopmaildir/etc/inc_deps
-+echo "-I$vpopmaildir/include" > $VCFGDIR/inc_deps
-
- # Check whether --enable-qmail-ext or --disable-qmail-ext was given.
- if test "${enable_qmail_ext+set}" = set; then
+ cat >> confdefs.h <<EOF
diff --git a/mail/vpopmail-devel/files/patch-vlimits.c b/mail/vpopmail-devel/files/patch-vlimits.c
deleted file mode 100644
index 27b078822274..000000000000
--- a/mail/vpopmail-devel/files/patch-vlimits.c
+++ /dev/null
@@ -1,29 +0,0 @@
---- vlimits.c.old Fri Feb 14 14:44:38 2003
-+++ vlimits.c Fri Feb 14 14:45:21 2003
-@@ -46,7 +46,7 @@
-
- /* get filename */
- vget_assign(mydomain, dir, sizeof(dir), &uid, &gid);
-- strncat(dir, "/.qmailadmin-limits", sizeof(dir));
-+ strncat(dir, "/.qmailadmin-limits", sizeof(dir) - strlen(dir) - 1);
-
- /* open file */
- if ((fs = fopen(dir, "r")) != NULL) {
-@@ -209,7 +209,7 @@
-
- /* get filename */
- vget_assign(mydomain, dir, sizeof(dir), &uid, &gid);
-- strncat(dir, "/.qmailadmin-limits", sizeof(dir));
-+ strncat(dir, "/.qmailadmin-limits", sizeof(dir) - strlen(dir) - 1);
-
- /* open file */
- if ((fs = fopen(dir, "w+")) != NULL) {
-@@ -265,7 +265,7 @@
-
- /* get filename */
- vget_assign(mydomain, dir, sizeof(dir), &uid, &gid);
-- strncat(dir, "/.qmailadmin-limits", sizeof(dir));
-+ strncat(dir, "/.qmailadmin-limits", sizeof(dir) - strlen(dir) - 1);
- return unlink(dir);
- }
-
diff --git a/mail/vpopmail-devel/pkg-plist b/mail/vpopmail-devel/pkg-plist
index 80a845baa619..e2f3ec4d2ec6 100644
--- a/mail/vpopmail-devel/pkg-plist
+++ b/mail/vpopmail-devel/pkg-plist
@@ -13,6 +13,7 @@ vpopmail/bin/vdominfo
vpopmail/bin/vipmap
vpopmail/bin/vkill
vpopmail/bin/vmkpasswd
+vpopmail/bin/vmoddomlimits
vpopmail/bin/vmoduser
vpopmail/bin/vpasswd
vpopmail/bin/vpopbull
@@ -35,21 +36,23 @@ vpopmail/doc/man_html/vdeluser.html
vpopmail/doc/man_html/vpasswd.html
vpopmail/doc/man_html/vpopbull.html
vpopmail/doc/man_html/vsetuserquota.html
+@unexec if [ -f %D/vpopmail/etc/defaultdomain ]; then rm -f %D/vpopmail/etc/defaultdomain; fi
vpopmail/etc/inc_deps
vpopmail/etc/lib_deps
@unexec if [ -f %D/vpopmail/etc/tcp.smtp -a ! -s %D/vpopmail/etc/tcp.smtp ]; then rm -f %D/vpopmail/etc/tcp.smtp; fi
+@unexec if [ -f %D/vpopmail/etc/vpopmail.mysql ]; then rm -f %D/vpopmail/etc/vpopmail.mysql; fi
vpopmail/include/config.h
vpopmail/include/vauth.h
+vpopmail/include/vlimits.h
vpopmail/include/vpopmail.h
vpopmail/include/vpopmail_config.h
vpopmail/lib/libvpopmail.a
-@dirrm vpopmail/users
@dirrm vpopmail/lib
@dirrm vpopmail/include
@dirrm vpopmail/etc
-@dirrm vpopmail/domains
+@unexec rmdir %D/vpopmail/domains 2>/dev/null || true
@dirrm vpopmail/doc/man_html
@dirrm vpopmail/doc/doc_html
@dirrm vpopmail/doc
@dirrm vpopmail/bin
-@dirrm vpopmail
+@unexec rmdir %D/vpopmail 2>/dev/null || true
diff --git a/mail/vpopmail/Makefile b/mail/vpopmail/Makefile
index 705b6e73b84b..094088c65341 100644
--- a/mail/vpopmail/Makefile
+++ b/mail/vpopmail/Makefile
@@ -6,25 +6,19 @@
#
PORTNAME= vpopmail
-PORTVERSION= 5.3.20
+PORTVERSION= 5.3.27
CATEGORIES= mail
-MASTER_SITES= http://www.inter7.com/devel/
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR= ${PORTNAME}
MAINTAINER= roam@FreeBSD.org
-COMMENT= "Easy virtual domain and authentication package for use with qmail"
+COMMENT= Easy virtual domain and authentication package for use with qmail
BUILD_DEPENDS= ${QMAIL_DIR}/bin/qmail-send:${PORTSDIR}/mail/qmail \
${LOCALBASE}/bin/tcprules:${PORTSDIR}/sysutils/ucspi-tcp
RUN_DEPENDS= ${QMAIL_DIR}/bin/qmail-send:${PORTSDIR}/mail/qmail \
${LOCALBASE}/bin/tcprules:${PORTSDIR}/sysutils/ucspi-tcp
-.if defined(WITH_VPOPMAIL_SQWEBMAIL_CREATION)
-PATCHFILES= vpopmail-sqwebmail-config-${PORTVERSION}.patch
-PATCH_SITES= ${MASTER_SITE_LOCAL} \
- http://people.FreeBSD.org/~roam/ports/patches/mail/vpopmail/
-PATCH_SITE_SUBDIR= roam
-.endif
-
GNU_CONFIGURE= YES
USE_GMAKE= YES
USE_REINPLACE= YES
@@ -45,22 +39,22 @@ CONFIGURE_ARGS= --enable-qmaildir=${QMAIL_DIR} \
#
# WITH_PASSWD - allow authentication off /etc/passwd
# WITHOUT_MD5_PASSWORDS - store encrypted passwords in MD5 format
+# WITH_CLEAR_PASSWD - store passwords in plaintext
+# WITH_LEARN_PASSWORDS - enable learning passwords during pop auth
# WITH_MYSQL - allow authentitation via mysql
-# WITH_MYSQL_LARGE_SITE - enables large site layout
# WITH_MYSQL_REPLICATION - enables MySQL database replication
# WITH_MYSQL_LIMITS - enables the MySQL mailbox limit code
# WITH_SYBASE - allow authentication via Sybase (NOT TESTED!)
# WITH_ORACLE - allow authentication via Oracle (NOT TESTED!)
-# WITH_CLEAR_PASSWD - store passwords in plaintext into the MySQL db
# WITH_VALIAS - enable valias processing
# WITHOUT_ROAMING - disallow roaming users
# WITH_IP_ALIAS - enables IP aliasing
-# WITH_DELIVER_FILTER - enables the experimental vdelivermail filter
# WITH_QMAIL_EXT - enables qmail-like user-* address extesions processing
# WITHOUT_FILE_LOCKING - disable file locking
# WITH_FILE_SYNC - enables immediate synching (may decrease performance)
# WITHOUT_USERS_BIG_DIR - disables using big directories for users
# WITHOUT_SEEKABLE - disables vdelivermail's attempt to make its input seekable
+# WITH_DOMAIN_QUOTAS - enable domain quotas
#
# Set these to the values you'd prefer
#
@@ -69,7 +63,8 @@ CONFIGURE_ARGS= --enable-qmaildir=${QMAIL_DIR} \
# DEFAULT_DOMAIN - default domain for non-vhost lookups
# WITH_SINGLE_DOMAIN - optimize for a site with many users in a single domain
# LOGLEVEL - n - no logging, y - log all,
-# e - log errors, p - log passwords in errors
+# e - log errors, p - log passwords in errors,
+# v - verbose success and errors with passwords
# WITHOUT_AUTH_LOG - disables authentication logging
# WITH_MYSQL_LOG - enable logging to a MySQL database
# QMAIL_DIR - location of qmail directory
@@ -121,6 +116,8 @@ HARDQUOTA?= 10000000
RELAYCLEAR?= 30
LOGLEVEL?= y
+.include <bsd.port.pre.mk>
+
.if exists(${LOCALBASE}/qmail/bin/qmail-send)
QMAIL_DIR?= ${LOCALBASE}/qmail
.else
@@ -158,10 +155,6 @@ BROKEN= "The WITH_APOP option is deprecated; set WITH_CLEAR_PASSWD instead, APO
CONFIGURE_ARGS+= --enable-valias=y
.endif
-.if defined(WITH_SQWEBMAIL)
-CONFIGURE_ARGS+= --enable-sqwebmail-pass=y
-.endif
-
.if !defined(WITHOUT_ROAMING)
CONFIGURE_ARGS+= --enable-roaming-users=y \
--enable-relay-clear-minutes=${RELAYCLEAR}
@@ -171,14 +164,15 @@ CONFIGURE_ARGS+= --enable-roaming-users=y \
CONFIGURE_ARGS+= --enable-clear-passwd=n
.endif
+.if defined(WITH_LEARN_PASSWORDS)
+CONFIGURE_ARGS+= --enable-learn-passwords=y
+.endif
+
.if defined(WITH_MYSQL)
-LIB_DEPENDS+= mysqlclient.10:${PORTSDIR}/databases/mysql323-client
+USE_MYSQL= yes
CONFIGURE_ARGS+= --enable-mysql=y \
- --enable-sqlincdir=${LOCALBASE}/include/mysql \
- --enable-sqllibdir=${LOCALBASE}/lib/mysql
-.if defined(WITH_MYSQL_LARGE_SITE)
-CONFIGURE_ARGS+= --enable-large-site=y
-.endif
+ --enable-incdir=${LOCALBASE}/include/mysql \
+ --enable-libdir=${LOCALBASE}/lib/mysql
.if defined(WITH_MYSQL_REPLICATION)
CONFIGURE_ARGS+= --enable-mysql-replication=y
.endif
@@ -189,18 +183,16 @@ CONFIGURE_ARGS+= --enable-mysql-logging=y
CONFIGURE_ARGS+= --enable-mysql-limits=y
.endif
-.if defined(WITH_MYSQL_SERVER)
+WITH_MYSQL_SERVER?= localhost
WITH_MYSQL_READ_SERVER?= ${WITH_MYSQL_SERVER}
WITH_MYSQL_UPDATE_SERVER?= ${WITH_MYSQL_SERVER}
-.endif
-.if defined(WITH_MYSQL_USER)
+WITH_MYSQL_USER?= vpopmail
WITH_MYSQL_READ_USER?= ${WITH_MYSQL_USER}
WITH_MYSQL_UPDATE_USER?= ${WITH_MYSQL_USER}
-.endif
-.if defined(WITH_MYSQL_PASSWD)
+WITH_MYSQL_PASSWD?= secret
WITH_MYSQL_READ_PASSWD?= ${WITH_MYSQL_PASSWD}
WITH_MYSQL_UPDATE_PASSWD?= ${WITH_MYSQL_PASSWD}
-.endif
+WITH_MYSQL_DB?= vpopmail
.endif
.if defined(WITH_SYBASE)
@@ -212,10 +204,6 @@ WITH_ORACLE_PROC?= proc
CONFIGURE_ARGS+= --enable-oracle=y
.endif
-.if defined(DEFAULT_DOMAIN)
-CONFIGURE_ARGS+= --enable-default-domain=${DEFAULT_DOMAIN}
-.endif
-
.if defined(WITH_SINGLE_DOMAIN)
CONFIGURE_ARGS+= --enable-many-domains=n
.endif
@@ -224,10 +212,6 @@ CONFIGURE_ARGS+= --enable-many-domains=n
CONFIGURE_ARGS+= --enable-ip-alias-domains=y
.endif
-.if defined(WITH_DELIVER_FILTER)
-CONFIGURE_ARGS+= --enable-deliver-filter=y
-.endif
-
.if defined(WITH_QMAIL_EXT)
CONFIGURE_ARGS+= --enable-qmail-ext=y
.endif
@@ -252,6 +236,10 @@ CONFIGURE_ARGS+= --enable-users-big-dir=n
CONFIGURE_ARGS+= --enable-make-seekable=n
.endif
+.if defined(WITH_DOMAIN_QUOTAS)
+CONFIGURE_ARGS+= --enable-domainquotas=y
+.endif
+
# autoconf and automake can remove our patches to the configure scripts.
post-patch:
@@ -265,29 +253,6 @@ post-patch:
pre-configure:
@PKG_PREFIX=${PREFIX}/vpopmail ${PERL5} ${PKGINSTALL}
-.if defined(WITH_MYSQL)
-.if defined(WITH_MYSQL_UPDATE_SERVER)
- ${REINPLACE_CMD} -E -e "s/(#define MYSQL_UPDATE_SERVER.*)localhost(.*)/\1${WITH_MYSQL_UPDATE_SERVER}\2/" ${WRKSRC}/vmysql.h
-.endif
-.if defined(WITH_MYSQL_READ_SERVER)
- ${REINPLACE_CMD} -E -e "s/(#define MYSQL_READ_SERVER.*)localhost(.*)/\1${WITH_MYSQL_READ_SERVER}\2/" ${WRKSRC}/vmysql.h
-.endif
-.if defined(WITH_MYSQL_UPDATE_USER)
- ${REINPLACE_CMD} -E "s/(#define MYSQL_UPDATE_USER.*)root(.*)/\1${WITH_MYSQL_UPDATE_USER}\2/" ${WRKSRC}/vmysql.h
-.endif
-.if defined(WITH_MYSQL_READ_USER)
- ${REINPLACE_CMD} -E -e "s/(#define MYSQL_READ_USER.*)root(.*)/\1${WITH_MYSQL_READ_USER}\2/" ${WRKSRC}/vmysql.h
-.endif
-.if defined(WITH_MYSQL_UPDATE_PASSWD)
- ${REINPLACE_CMD} -E -e "s/(#define MYSQL_UPDATE_PASSWD.*)secret(.*)/\1${WITH_MYSQL_UPDATE_PASSWD}\2/" ${WRKSRC}/vmysql.h
-.endif
-.if defined(WITH_MYSQL_READ_PASSWD)
- ${REINPLACE_CMD} -E -e "s/(#define MYSQL_READ_PASSWD.*)secret(.*)/\1${WITH_MYSQL_READ_PASSWD}\2/" ${WRKSRC}/vmysql.h
-.endif
-.if defined(WITH_MYSQL_DB)
- ${REINPLACE_CMD} -E -e "s/(#define MYSQL_DATABASE.*)vpopmail(.*)/\1${WITH_MYSQL_DB}\2/" ${WRKSRC}/vmysql.h
-.endif
-.endif
.if defined(WITH_ORACLE)
.if defined(WITH_ORACLE_SERVICE)
${REINPLACE_CMD} -E -e "s/(#define ORACLE_SERVICE.*)jimmy(.*)/\1${WITH_ORACLE_SERVICE}\2/" ${WRKSRC}/voracle.h
@@ -335,6 +300,15 @@ post-install:
${TOUCH} ${PREFIX}/vpopmail/etc/tcp.smtp; \
fi; \
fi
- ${INSTALL_DATA} ${VCFGDIR}/inc_deps ${VCFGDIR}/lib_deps ${PREFIX}/vpopmail/etc/
+# ${INSTALL_DATA} ${VCFGDIR}/inc_deps ${VCFGDIR}/lib_deps ${PREFIX}/vpopmail/etc/
+.if defined(DEFAULT_DOMAIN)
+ ${ECHO_CMD} ${DEFAULT_DOMAIN} > ${PREFIX}/vpopmail/etc/defaultdomain
+.endif
+.if defined(WITH_MYSQL)
+ ${ECHO_CMD} "${WITH_MYSQL_READ_SERVER}|0|${WITH_MYSQL_READ_USER}|${WITH_MYSQL_READ_PASSWD}|${WITH_MYSQL_DB}" \
+ > ${PREFIX}/vpopmail/etc/vpopmail.mysql
+ ${ECHO_CMD} "${WITH_MYSQL_UPDATE_SERVER}|0|${WITH_MYSQL_UPDATE_USER}|${WITH_MYSQL_UPDATE_PASSWD}|${WITH_MYSQL_DB}" \
+ >> ${PREFIX}/vpopmail/etc/vpopmail.mysql
+.endif
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
diff --git a/mail/vpopmail/distinfo b/mail/vpopmail/distinfo
index fa0f91a36066..2f4f444b0e36 100644
--- a/mail/vpopmail/distinfo
+++ b/mail/vpopmail/distinfo
@@ -1,2 +1 @@
-MD5 (vpopmail-5.3.20.tar.gz) = 4009fd5f6f910f1c70e58e2069d5f31d
-MD5 (vpopmail-sqwebmail-config-5.3.20.patch) = 3d89fd7b95d3aa1f6398ea8fccadefba
+MD5 (vpopmail-5.3.27.tar.gz) = 3690c3b2ddc0fc412feda37170e6c56f
diff --git a/mail/vpopmail/files/patch-Makefile.in b/mail/vpopmail/files/patch-Makefile.in
new file mode 100644
index 000000000000..52cd7794c969
--- /dev/null
+++ b/mail/vpopmail/files/patch-Makefile.in
@@ -0,0 +1,14 @@
+--- Makefile.in.orig Thu Sep 4 23:45:08 2003
++++ Makefile.in Thu Sep 4 23:46:17 2003
+@@ -705,10 +705,7 @@
+
+ if test "@USE_MYSQL@" = "1"; then \
+ if test ! -r $(MYSQLCONF); then \
+- echo "# MySQL settings, line 1 is config for read-only," > $(MYSQLCONF); \
+- echo "# line 2 is config for update. Settings for each" >> $(MYSQLCONF); \
+- echo "# line: server|port|user|password|database" >> $(MYSQLCONF); \
+- echo "localhost|0|root|secret|vpopmail" >> $(MYSQLCONF); \
++ touch $(MYSQLCONF); \
+ fi ; \
+ chown @vpopuser@ $(MYSQLCONF) ; \
+ chgrp @vpopgroup@ $(MYSQLCONF) ; \
diff --git a/mail/vpopmail/files/patch-configure b/mail/vpopmail/files/patch-configure
index 07ab9b4f24a2..dff6d39e78a5 100644
--- a/mail/vpopmail/files/patch-configure
+++ b/mail/vpopmail/files/patch-configure
@@ -1,6 +1,6 @@
---- configure.old Thu Feb 13 17:37:40 2003
-+++ configure Thu Feb 13 17:38:32 2003
-@@ -1285,7 +1285,7 @@
+--- configure.orig Thu Aug 28 21:09:47 2003
++++ configure Fri Sep 5 00:13:14 2003
+@@ -1317,7 +1317,7 @@
;;
esac
@@ -9,8 +9,8 @@
then
echo "configure: warning: === vpopmail must be configured as root. ===" 1>&2
echo "configure: warning: === please switch to the root user and ===" 1>&2
-@@ -1563,15 +1563,6 @@
- rm -f vpopusername
+@@ -1601,15 +1601,6 @@
+ EOF
-if test ! -d $vpopmaildir/etc
@@ -25,38 +25,22 @@
# Check whether --enable-roaming-users or --disable-roaming-users was given.
if test "${enable_roaming_users+set}" = set; then
enableval="$enable_roaming_users"
-@@ -1637,7 +1628,7 @@
-
- if test "$tcpserver_file" = ""
- then
+@@ -1671,17 +1662,7 @@
+ if test "${enable_tcpserver_file+set}" = set; then
+ enableval="$enable_tcpserver_file"
+ tcpserver_file="$enableval"
+-else
+-
+- if test "$tcpserver_file" = ""
+- then
- echo "127.:allow,RELAYCLIENT=\"\"" > "$vpopmaildir"/etc/tcp.smtp
-+ echo "127.:allow,RELAYCLIENT=\"\"" > "$VCFGDIR"/tcp.smtp
- tcpserver_file="$vpopmaildir"/etc/tcp.smtp
-
- echo "configure: warning: Unable to find your tcpserver relay file." 1>&2
-@@ -2142,7 +2133,7 @@
- fi
- auth_libs="-L$libdir $extralibflags -lmysqlclient -lz"
+- tcpserver_file="$vpopmaildir"/etc/tcp.smtp
+-
+- echo "configure: warning: Unable to find your tcpserver relay file." 1>&2
+- echo "configure: warning: Creating tcp.smtp in "$vpopmaildir"/etc/tcp.smtp." 1>&2
+- fi
+-
++ echo "127.:allow,RELAYCLIENT=\"\"" > ${VCFGDIR}/tcp.smtp
+ fi
-- echo "-L$vpopmaildir/lib -lvpopmail -L$libdir -lmysqlclient -lz" > $vpopmaildir/etc/lib_deps
-+ echo "-L$vpopmaildir/lib -lvpopmail -L$libdir -lmysqlclient -lz" > $VCFGDIR/lib_deps
-
- ;;
- *)
-@@ -2399,14 +2390,14 @@
- authlib=
-
- auth_inc="-Icdb"
-- echo "-L$vpopmaildir/lib -lvpopmail" > $vpopmaildir/etc/lib_deps
-+ echo "-L$vpopmaildir/lib -lvpopmail" > $VCFGDIR/lib_deps
-
- ;;
- *)
- ;;
- esac
-
--echo "-I$vpopmaildir/include" > $vpopmaildir/etc/inc_deps
-+echo "-I$vpopmaildir/include" > $VCFGDIR/inc_deps
-
- # Check whether --enable-qmail-ext or --disable-qmail-ext was given.
- if test "${enable_qmail_ext+set}" = set; then
+ cat >> confdefs.h <<EOF
diff --git a/mail/vpopmail/files/patch-vlimits.c b/mail/vpopmail/files/patch-vlimits.c
deleted file mode 100644
index 27b078822274..000000000000
--- a/mail/vpopmail/files/patch-vlimits.c
+++ /dev/null
@@ -1,29 +0,0 @@
---- vlimits.c.old Fri Feb 14 14:44:38 2003
-+++ vlimits.c Fri Feb 14 14:45:21 2003
-@@ -46,7 +46,7 @@
-
- /* get filename */
- vget_assign(mydomain, dir, sizeof(dir), &uid, &gid);
-- strncat(dir, "/.qmailadmin-limits", sizeof(dir));
-+ strncat(dir, "/.qmailadmin-limits", sizeof(dir) - strlen(dir) - 1);
-
- /* open file */
- if ((fs = fopen(dir, "r")) != NULL) {
-@@ -209,7 +209,7 @@
-
- /* get filename */
- vget_assign(mydomain, dir, sizeof(dir), &uid, &gid);
-- strncat(dir, "/.qmailadmin-limits", sizeof(dir));
-+ strncat(dir, "/.qmailadmin-limits", sizeof(dir) - strlen(dir) - 1);
-
- /* open file */
- if ((fs = fopen(dir, "w+")) != NULL) {
-@@ -265,7 +265,7 @@
-
- /* get filename */
- vget_assign(mydomain, dir, sizeof(dir), &uid, &gid);
-- strncat(dir, "/.qmailadmin-limits", sizeof(dir));
-+ strncat(dir, "/.qmailadmin-limits", sizeof(dir) - strlen(dir) - 1);
- return unlink(dir);
- }
-
diff --git a/mail/vpopmail/pkg-plist b/mail/vpopmail/pkg-plist
index 80a845baa619..e2f3ec4d2ec6 100644
--- a/mail/vpopmail/pkg-plist
+++ b/mail/vpopmail/pkg-plist
@@ -13,6 +13,7 @@ vpopmail/bin/vdominfo
vpopmail/bin/vipmap
vpopmail/bin/vkill
vpopmail/bin/vmkpasswd
+vpopmail/bin/vmoddomlimits
vpopmail/bin/vmoduser
vpopmail/bin/vpasswd
vpopmail/bin/vpopbull
@@ -35,21 +36,23 @@ vpopmail/doc/man_html/vdeluser.html
vpopmail/doc/man_html/vpasswd.html
vpopmail/doc/man_html/vpopbull.html
vpopmail/doc/man_html/vsetuserquota.html
+@unexec if [ -f %D/vpopmail/etc/defaultdomain ]; then rm -f %D/vpopmail/etc/defaultdomain; fi
vpopmail/etc/inc_deps
vpopmail/etc/lib_deps
@unexec if [ -f %D/vpopmail/etc/tcp.smtp -a ! -s %D/vpopmail/etc/tcp.smtp ]; then rm -f %D/vpopmail/etc/tcp.smtp; fi
+@unexec if [ -f %D/vpopmail/etc/vpopmail.mysql ]; then rm -f %D/vpopmail/etc/vpopmail.mysql; fi
vpopmail/include/config.h
vpopmail/include/vauth.h
+vpopmail/include/vlimits.h
vpopmail/include/vpopmail.h
vpopmail/include/vpopmail_config.h
vpopmail/lib/libvpopmail.a
-@dirrm vpopmail/users
@dirrm vpopmail/lib
@dirrm vpopmail/include
@dirrm vpopmail/etc
-@dirrm vpopmail/domains
+@unexec rmdir %D/vpopmail/domains 2>/dev/null || true
@dirrm vpopmail/doc/man_html
@dirrm vpopmail/doc/doc_html
@dirrm vpopmail/doc
@dirrm vpopmail/bin
-@dirrm vpopmail
+@unexec rmdir %D/vpopmail 2>/dev/null || true