forked from pool/postfix
c04773098b
rework SuSE patch OBS-URL: https://build.opensuse.org/request/show/78363 OBS-URL: https://build.opensuse.org/package/show/server:mail/postfix?expand=0&rev=89
131 lines
3.9 KiB
Diff
131 lines
3.9 KiB
Diff
diff -ruN postfix-SuSE-orig/rc.postfix postfix-SuSE/rc.postfix
|
|
--- postfix-SuSE-orig/rc.postfix 2011-04-10 08:59:58.000000000 +0200
|
|
+++ postfix-SuSE/rc.postfix 2011-08-09 13:01:08.000000000 +0200
|
|
@@ -28,6 +28,7 @@
|
|
POSTFIX_BIN=/usr/sbin/postfix
|
|
POSTCONF=/usr/sbin/postconf
|
|
OPENSLP_BIN=/usr/bin/slptool
|
|
+PF_CHROOT=/var/spool/postfix
|
|
print_defaults=/usr/bin/my_print_defaults
|
|
|
|
test -x $POSTFIX_BIN || exit 5
|
|
@@ -61,7 +62,6 @@
|
|
}
|
|
|
|
chk_mysql_sock(){
|
|
- PF_CHROOT="/var/spool/postfix"
|
|
if [ -n "$($print_defaults mysqld)" ]; then
|
|
MYSQL_SOCKET=$($print_defaults mysqld | grep -e '--socket[[:blank:]=]' | awk -F"=" '{print $2}')
|
|
MYSQL_SOCKET_DIR=$(dirname $MYSQL_SOCKET)
|
|
@@ -86,6 +86,27 @@
|
|
return $RET
|
|
}
|
|
|
|
+chk_sasl_sock(){
|
|
+ SASL_SOCKET=/var/run/sasl2/mux
|
|
+ SASL_SOCKET_DIR=$(dirname $SASL_SOCKET)
|
|
+ CHR_SASL_SOCKET=${PF_CHROOT}${SASL_SOCKET}
|
|
+ CHR_SASL_SOCKET_DIR=$(dirname $CHR_SASL_SOCKET)
|
|
+ if [ -S $SASL_SOCKET ]; then
|
|
+ if [ -d $CHR_SASL_SOCKET_DIR ]; then
|
|
+ if grep $CHR_SASL_SOCKET_DIR /proc/mounts &> /dev/null; then
|
|
+ RET=0
|
|
+ else
|
|
+ RET=4
|
|
+ fi
|
|
+ else
|
|
+ RET=2
|
|
+ fi
|
|
+ else
|
|
+ RET=1
|
|
+ fi
|
|
+ return $RET
|
|
+}
|
|
+
|
|
# Shell functions sourced from /etc/rc.status:
|
|
# rc_check check and set local and overall rc status
|
|
# rc_status check and set local and overall rc status
|
|
@@ -147,6 +168,29 @@
|
|
rc_failed 1; rc_status -v; rc_exit;
|
|
}
|
|
;;
|
|
+ esac
|
|
+ fi
|
|
+ if [ "$(echo "$POSTFIX_SMTP_AUTH_SERVER" | tr 'A-Z' 'a-z' )" != "no" ]; then
|
|
+ chk_sasl_sock
|
|
+ case $? in
|
|
+ 1)
|
|
+warn_user "\tsaslauthd not started\n\
|
|
+\tPlease check if saslauthd is started on boot"
|
|
+ rc_failed 7; rc_status -v; rc_exit;
|
|
+ ;;
|
|
+ 2)
|
|
+warn_user "\t$CHR_SASL_SOCKET_DIR does not exist!!\n\
|
|
+\tThis should not happen!\n\
|
|
+\tPlease run SuSEconfig."
|
|
+ rc_failed 6; rc_status -v; rc_exit;
|
|
+ ;;
|
|
+ 4)
|
|
+ /bin/mount -o bind $SASL_SOCKET_DIR $CHR_SASL_SOCKET_DIR &> /dev/null
|
|
+ [ $? -ne 0 ] && {
|
|
+ echo -n " ... can not mount $SASL_SOCKET_DIR to $SASL_SOCKET_DIR"
|
|
+ rc_failed 1; rc_status -v; rc_exit;
|
|
+ }
|
|
+ ;;
|
|
esac
|
|
fi
|
|
fi
|
|
diff -ruN postfix-SuSE-orig/SuSEconfig.postfix postfix-SuSE/SuSEconfig.postfix
|
|
--- postfix-SuSE-orig/SuSEconfig.postfix 2011-07-06 15:08:51.000000000 +0200
|
|
+++ postfix-SuSE/SuSEconfig.postfix 2011-08-09 13:01:55.000000000 +0200
|
|
@@ -91,6 +91,10 @@
|
|
\tPlease check if postfix-mysql is installed and check for package mysql."
|
|
fi
|
|
fi
|
|
+ if [ "$(echo "$POSTFIX_SMTP_AUTH_SERVER" | tr 'A-Z' 'a-z' )" != "no" ]; then
|
|
+ SASL_SOCKET_DIR="/var/run/sasl2"
|
|
+ CHR_SASL_SOCKET_DIR="var/run/sasl2"
|
|
+ fi
|
|
if [ "$(echo "$POSTFIX_CHROOT" | tr 'A-Z' 'a-z' )" != "yes" -a \
|
|
"$(echo "$POSTFIX_UPDATE_CHROOT_JAIL" | tr 'A-Z' 'a-z' )" != "no" ]; then
|
|
if [ -d etc ]; then
|
|
@@ -107,6 +111,12 @@
|
|
fi
|
|
fi
|
|
|
|
+ if [ -n "$CHR_SASL_SOCKET_DIR" ]; then
|
|
+ if grep "$PF_CHROOT"/$CHR_SASL_SOCKET_DIR /proc/mounts &> /dev/null; then
|
|
+ umount "$PF_CHROOT"/$CHR_SASL_SOCKET_DIR
|
|
+ fi
|
|
+ fi
|
|
+
|
|
rm -rvf etc @lib@ usr var proc
|
|
elif [ "$(echo "$POSTFIX_UPDATE_CHROOT_JAIL" | tr 'A-Z' 'a-z' )" != "no" ]; then
|
|
echo "checking postfix chroot environment..."
|
|
@@ -138,6 +148,15 @@
|
|
fi
|
|
fi
|
|
|
|
+ if [ "$(echo "$POSTFIX_SMTP_AUTH_SERVER" | tr 'A-Z' 'a-z' )" != "no" ]; then
|
|
+ if [ ! -d $CHR_SASL_SOCKET_DIR ]; then
|
|
+ mkdir -p $CHR_SASL_SOCKET_DIR
|
|
+ fi
|
|
+ if ! grep $CHR_SASL_SOCKET_DIR /proc/mounts &> /dev/null; then
|
|
+ mount -o bind $SASL_SOCKET_DIR "$PF_CHROOT"/$CHR_SASL_SOCKET_DIR
|
|
+ fi
|
|
+ fi
|
|
+
|
|
# smtpd_tls_CApath
|
|
CAPATH=`postconf -h smtpd_tls_CApath`
|
|
if [ "$CAPATH" ]
|
|
@@ -180,8 +199,7 @@
|
|
cpifnewer "/etc/sasl2/*" etc/sasl2
|
|
cpifnewer "/usr/@lib@/sasl2/*" usr/@lib@/sasl2
|
|
cpifnewer "/usr/@lib@/libsasl2*" usr/@lib@
|
|
- mkdir -p var/run/sasl2
|
|
- ln -f /var/run/sasl2/mux var/run/sasl2/mux
|
|
+
|
|
# CYRUS
|
|
mkdir -p var/lib/imap/socket/
|
|
ln -f /var/lib/imap/socket/lmtp var/lib/imap/socket/lmtp
|