The introduced implementation of inetd_check() is false. For an illustration of the failing mechanism, try this simplified form of said function:
if [ $(which ls >/dev/null) -o $(which ls >/dev/null) ] then echo "You claim that /bin/ls is missing" fi A correct implementation is achieved by the attached patch: -- Mats Erik Andersson, fil. dr Abbonerar på: debian-mentors, debian-devel-games, debian-perl, debian-ipv6
--- /etc/init.d/proftpd.orig 2010-02-21 23:21:33.000000000 +0100 +++ /etc/init.d/proftpd 2010-03-18 10:29:58.000000000 +0100 @@ -69,7 +69,7 @@ inetd_check() { - if [ $(which /usr/sbin/inetd >/dev/null) -o $(which /usr/sbin/xinetd >/dev/null) ]; then + if [ -z "$(which /usr/sbin/inetd)" -a -z "$(which /usr/sbin/xinetd)" ]; then echo "Neither inetd nor xinetd appears installed: check your configuration." fi }