- bnc#684304 - server:mail/postfix: Bugs in SuSEconfig chroot setup script

- Aplly SASL_SOCKET_DIR patch

OBS-URL: https://build.opensuse.org/package/show/server:mail/postfix?expand=0&rev=94
This commit is contained in:
Peter Varkoly 2011-08-22 09:33:02 +00:00 committed by Git OBS Bridge
parent 73f0d3b1a6
commit b5d1cc4446
4 changed files with 8 additions and 135 deletions

View File

@ -1,130 +0,0 @@
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

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c3b1f635a74e32d766f35896a10b08b489c735a4b33dcfff76ac348137555cac
size 24347
oid sha256:e9fd8cd14fe07e7937e9a32335030cee07d6233b42d79a948825a84cad0fcbbc
size 24456

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Mon Aug 22 09:31:02 UTC 2011 - varkoly@novell.com
- bnc#684304 - server:mail/postfix: Bugs in SuSEconfig chroot setup script
- Aplly SASL_SOCKET_DIR patch
-------------------------------------------------------------------
Thu Aug 18 09:32:04 UTC 2011 - varkoly@novell.com

View File

@ -39,7 +39,6 @@ Patch10: %{name}-2.8.3-main.cf.patch
Patch11: %{name}-2.8.3-master.cf.patch
Patch12: %{name}-2.8.3-post-install.patch
Patch20: %{name}-vda-v10-2.8.3.patch
Patch100: postfix-SuSE-SASL_SOCKET_DIR.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
PreReq: %insserv_prereq %fillup_prereq
PreReq: /usr/bin/getent
@ -149,8 +148,6 @@ PostgreSQL.
%patch11 -p1
%patch12 -p1
%patch20 -p1
# apply postfix-SUSE patches
%patch100 -p0
# ---------------------------------------------------------------------------
%build