Gordon Messmer wrote:

Another possibility would be to use etc/courier on an NFS mounted directory, and symlink each .dat file to /var/local/etc/courier/ (create the dir yourself). Modify each make* script to keep the dat files in that location. The attached patch would modify makealiases to do exactly that. Similar changes would be needed in makesmtpaccess and makeacceptmailfor.

Since I've been meaning to look into this particular setup myself for a while, I'm going to be testing the attached patch. If you want to help me test it, by all means...
--- ./courier-0.44.0/courier/module.esmtp/makeacceptmailfor.in.orig     Wed Nov 12 
14:22:53 2003
+++ ./courier-0.44.0/courier/module.esmtp/makeacceptmailfor.in  Wed Nov 12 14:23:25 
2003
@@ -13,5 +13,5 @@
 umask 022
 exec ${bindir}/makedat \
        -src=${sysconfdir}/esmtpacceptmailfor.dir \
-       -file=${sysconfdir}/esmtpacceptmailfor.dat \
-       -tmp=${sysconfdir}/esmtpacceptmailfor.tmp
+       -file=${localstatedir}/etc/esmtpacceptmailfor.dat \
+       -tmp=${localstatedir}/etc/esmtpacceptmailfor.tmp
--- ./courier-0.44.0/courier/module.esmtp/makepercentrelay.in.orig      Wed Nov 12 
14:23:40 2003
+++ ./courier-0.44.0/courier/module.esmtp/makepercentrelay.in   Wed Nov 12 14:24:08 
2003
@@ -13,5 +13,5 @@
 umask 022
 exec ${bindir}/makedat \
        -src=${sysconfdir}/esmtppercentrelay.dir \
-       -file=${sysconfdir}/esmtppercentrelay.dat \
-       -tmp=${sysconfdir}/esmtppercentrelay.tmp
+       -file=${localstatedir}/etc/esmtppercentrelay.dat \
+       -tmp=${localstatedir}/etc/esmtppercentrelay.tmp
--- ./courier-0.44.0/courier/module.esmtp/makesmtpaccess.in.orig        Wed Nov 12 
14:33:54 2003
+++ ./courier-0.44.0/courier/module.esmtp/makesmtpaccess.in     Wed Nov 12 14:33:08 
2003
@@ -25,10 +25,11 @@
        ;;
 esac
 
+accessbase=`basename ${ACCESSFILE}`
 umask 022
 ${bindir}/makedat \
        -src=${ACCESSFILE} \
-       -file=${ACCESSFILE}.dat \
-       -tmp=${ACCESSFILE}.tmp -cidr || exit 1
+       -file=${localstatedir}/etc/${accessbase}.dat \
+       -tmp=${localstatedir}/etc/${accessbase}.tmp -cidr || exit 1
 
 ${sbindir}/couriertcpd -pid=$PIDFILE -restart
--- ./courier-0.44.0/courier/module.uucp/makeuucpneighbors.in.orig      Wed Nov 12 
14:34:14 2003
+++ ./courier-0.44.0/courier/module.uucp/makeuucpneighbors.in   Wed Nov 12 14:34:39 
2003
@@ -13,5 +13,5 @@
 umask 022
 exec ${bindir}/makedat \
        -src=${sysconfdir}/uucpneighbors \
-       -file=${sysconfdir}/uucpneighbors.dat \
-       -tmp=${sysconfdir}/uucpneighbors.tmp
+       -file=${localstatedir}/etc/uucpneighbors.dat \
+       -tmp=${localstatedir}/etc/uucpneighbors.tmp
--- ./courier-0.44.0/courier/makealiases.in.orig        Wed Nov 12 14:17:31 2003
+++ ./courier-0.44.0/courier/makealiases.in     Wed Nov 12 14:20:34 2003
@@ -43,9 +43,9 @@
 localstatedir="@localstatedir@"
 
 aliassrc=""
-aliastmp=""
+aliastmp="-tmp=${localstatedir}/etc/aliases.tmp"
 aliasdump=""
-aliasalias=""
+aliasalias="-alias=${localstatedir}/etc/aliases.dat"
 module=""
 protocol=""
 xaliasdir=""
--- ./courier-0.44.0/courier/makehosteddomains.in.orig  Wed Nov 12 14:20:48 2003
+++ ./courier-0.44.0/courier/makehosteddomains.in       Wed Nov 12 14:22:30 2003
@@ -8,9 +8,10 @@
 exec_prefix="@exec_prefix@"
 sysconfdir="@sysconfdir@"
 bindir="@bindir@"
+localstatedir="@localstatedir@"
 
 umask 022
 exec ${bindir}/makedat \
        -src=${sysconfdir}/hosteddomains \
-       -file=${sysconfdir}/hosteddomains.dat \
-       -tmp=${sysconfdir}/hosteddomains.tmp
+       -file=${localstatedir}/etc/hosteddomains.dat \
+       -tmp=${localstatedir}/etc/hosteddomains.tmp

Reply via email to