Control: tag -1 moreinfo On Thu, Jun 22, 2023 at 02:29:54PM +0200, Francesco P. Lovergine wrote: > diff -Nru proftpd-dfsg-1.3.8+dfsg/debian/changelog > proftpd-dfsg-1.3.8+dfsg/debian/changelog > --- proftpd-dfsg-1.3.8+dfsg/debian/changelog 2023-03-14 10:16:31.000000000 > +0100 > +++ proftpd-dfsg-1.3.8+dfsg/debian/changelog 2023-06-22 11:15:57.000000000 > +0200 > @@ -1,3 +1,15 @@ > +proftpd-dfsg (1.3.8+dfsg-4+deb12u1) bookworm-proposed-updates; urgency=medium
You should target `bookworm`, not the admin suites. > diff -Nru proftpd-dfsg-1.3.8+dfsg/debian/proftpd-core.prerm > proftpd-dfsg-1.3.8+dfsg/debian/proftpd-core.prerm > --- proftpd-dfsg-1.3.8+dfsg/debian/proftpd-core.prerm 1970-01-01 > 01:00:00.000000000 +0100 > +++ proftpd-dfsg-1.3.8+dfsg/debian/proftpd-core.prerm 2023-06-22 > 11:13:30.000000000 +0200 > @@ -0,0 +1,11 @@ > +#!/bin/sh > + > +set -e > + > +if [ -z "${DPKG_ROOT:-}" ] && [ "$1" = remove ] && [ -d /run/systemd/system > ] ; > +then > + deb-systemd-invoke stop 'proftpd.service' >/dev/null || true > + deb-systemd-invoke stop 'proftpd.socket' >/dev/null || true > +fi This gives rise to a race condition where the socket starts the service again before the socket is stopped. > diff -Nru proftpd-dfsg-1.3.8+dfsg/debian/proftpd-core.proftpd-run.service > proftpd-dfsg-1.3.8+dfsg/debian/proftpd-core.proftpd-run.service > --- proftpd-dfsg-1.3.8+dfsg/debian/proftpd-core.proftpd-run.service > 1970-01-01 01:00:00.000000000 +0100 > +++ proftpd-dfsg-1.3.8+dfsg/debian/proftpd-core.proftpd-run.service > 2023-06-22 11:12:42.000000000 +0200 > @@ -0,0 +1,14 @@ > +[Unit] > +Description=ProFTPD FTP Server in standalone/socket mode > +Documentation=man:proftpd(8) > +OnFailure=proftpd.socket > +OnSuccess=proftpd.service > + > +[Service] > +Type=oneshot > +Environment=CONFIG_FILE=/etc/proftpd/proftpd.conf > +EnvironmentFile=-/etc/default/proftpd > +ExecStart=/usr/bin/grep -iqE > '^[[:space:]]*ServerType[[:space:]]+standalone$' $CONFIG_FILE Maybe I missed something important, but this seems a very odd way of doing things. Do you really set up a dummy service unit which is expected to fail in standalone mode, and therefore starts the socket instead? Why not use an ExecStartPre= or ExecCondition= in your normal units to prevent starting when in inetd mode? -- Jonathan Wiltshire j...@debian.org Debian Developer http://people.debian.org/~jmw 4096R: 0xD3524C51 / 0A55 B7C5 1223 3942 86EC 74C3 5394 479D D352 4C51 ed25519/0x196418AAEB74C8A1: CA619D65A72A7BADFC96D280196418AAEB74C8A1