X-Git-Url: http://ftp.carnet.hr/carnet-debian/scm?p=squirrelmail-change-pass-cn.git;a=blobdiff_plain;f=debian%2Fpostinst;h=50ad721434f7cb6fb125c39e0a34b78809027cbe;hp=a885448e4eb462e2c3ed3cd2612b89baa51212ca;hb=6ef5e36518e02beb14bf1d93d74081dd33fc1cf8;hpb=83313b2d0602f6e23aa4cbd1fd6efd1c92340288 diff --git a/debian/postinst b/debian/postinst index a885448..50ad721 100644 --- a/debian/postinst +++ b/debian/postinst @@ -15,6 +15,27 @@ SQCONF="$SQCONFDIR/config.php" need_restart=0 +# chk_conf_tag () +# +# Check if configuration file has CARNet package info lines. +# return: $RET => 0 - tagged +# 1 - file does not exists +# 2 - file exists, but it is not tagged +# +chk_conf_tag () { + local conf_file + conf_file="$1" + RET=1 + + if [ -f "$conf_file" ]; then + if egrep -q "^## Begin - Generated by CARNet package ${PKG}$" "$conf_file"; then + RET=0 + else + RET=2 + fi + fi +} + # Configure poppassd to refuse connection from all hosts # but localhost (127.0.0.1). # @@ -42,19 +63,27 @@ fi # Convert poppassd service from inetd.conf to xinetd.conf type. # Service configuration is saved in /etc/xinetd.d/ directory. # -if [ -x /etc/init.d/xinetd -a -d /etc/xinetd.d -a -x /usr/sbin/itox ]; then - if egrep -q '^poppassd' /etc/inetd.conf && \ - [ ! -f /etc/xinetd.d/poppassd ]; then - - cp_echo "CN: Enabling poppassd in /etc/xinetd.d/poppassd" - - touch /etc/xinetd.d/poppassd.$$ - grep "^poppassd" /etc/inetd.conf | \ - itox -daemon_dir /usr/sbin | cp-update "$PKG" /etc/xinetd.d/poppassd.$$ - cp_mv /etc/xinetd.d/poppassd.$$ /etc/xinetd.d/poppassd +chk_conf_tag /etc/xinetd.d/poppassd +if [ $RET -lt 2 ]; then + cp_echo "CN: Enabling poppassd in /etc/xinetd.d/poppassd" - need_restart=1 + if [ ! -d /etc/xinetd.d ]; then + mkdir -p /etc/xinetd.d/ fi + touch /etc/xinetd.d/poppassd.$$ + cp-update "$PKG" /etc/xinetd.d/poppassd.$$ <