Bug ID | 1162891 |
---|---|
Summary | server:mail/postfix: cond_slp bug on TW after moving /etc/services to /usr/etc/services |
Classification | openSUSE |
Product | openSUSE.org |
Version | unspecified |
Hardware | Other |
OS | Other |
Status | NEW |
Severity | Normal |
Priority | P5 - None |
Component | 3rd party software |
Assignee | varkoly@suse.com |
Reporter | munix9@googlemail.com |
QA Contact | bnc-team-screening@forge.provo.novell.com |
Found By | --- |
Blocker | --- |
systemctl status postfix cond_slp[8720]: sed: can't read /etc/services: No such file or directory "/etc/services" is hard coded in /etc/postfix/system/cond_slp After moving /etc/services to /usr/etc/services in TW this leads to the error given above. Possible patch (if I correctly understood the new mimic with /usr/etc/ and /etc/, so look in /etc/services first if file and entry exists and optionally look in /usr/etc/services as a fallback): --- /etc/postfix/system/cond_slp.orig +++ /etc/postfix/system/cond_slp @@ -23,11 +23,16 @@ { local cmd=$1 local srv + local services local FQHN=$($POSTCONF -h myhostname) for srv in $PSERVICES; do - sport=$(sed -ne "/^$srv/Is/^$srv[[:space:]]\+\([0-9]\+\)\/tcp.*/\1/gp" /etc/services) - [ -n "$sport" ] || continue - $OPENSLP_BIN $cmd service:$srv://$FQHN:$sport > /dev/null 2>&1 + for services in /etc/services /usr/etc/services; do + [ -e "$services" ] || continue + sport=$(sed -ne "/^$srv/Is/^$srv[[:space:]]\+\([0-9]\+\)\/tcp.*/\1/gp" "$services") + [ -n "$sport" ] || continue + $OPENSLP_BIN $cmd service:$srv://$FQHN:$sport > /dev/null 2>&1 + break + done done } Does that make sense?