Package: endlessh
Version: 1.1-4
Severity: normal

Dear Maintainer,

the provided sysv init script, not used by Debian but udes by Devuan,
does not goes to the background and stay stuck.

This can be seen fist during installation whereas apt get stuck at 60%
because starting the service does not goes to the background:

sudo apt install endlessh
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer
required:
  libasync-mergepoint-perl libdc1394-22 libeinfo1 libfuture-perl
libilmbase24 libio-async-loop-epoll-perl
  libio-async-perl libkyotocabinet16v5 liblinux-epoll-perl libllvm10
libmetrics-any-perl libmozjs-68-0 libopenexr24
  libpgm-5.2-0 libpoppler82 libraw19 librc1 libsereal-perl libsnmp35
libstruct-dumb-perl libtest-fatal-perl
  libtest-metrics-any-perl libtest-refcount-perl libusrsctp1
libxml-writer-perl linux-image-4.19.0-10-amd64
  linux-image-5.7.0-2-amd64
Use 'sudo apt autoremove' to remove them.
The following NEW packages will be installed:
  endlessh
0 upgraded, 1 newly installed, 0 to remove and 2 not upgraded.
Need to get 0 B/13.8 kB of archives.
After this operation, 56.3 kB of additional disk space will be used.
Selecting previously unselected package endlessh.
(Reading database ... 215691 files and directories currently installed.)
Preparing to unpack .../endlessh_1.1-4_amd64.deb ...
Unpacking endlessh (1.1-4) ...
Setting up endlessh (1.1-4) ...
insserv: warning: script 'cgroups' missing LSB tags
insserv: Default-Start undefined, assuming empty start runlevel(s) for
script `cgroups'
insserv: Default-Stop  undefined, assuming empty stop runlevel(s) for
script `cgroups'
Starting SSH tarpit: endlessh
Progress: [ 60%]
[############################################################........................................]


My solution is this change to line 21:

diff /etc/init.d/endlessh-old /etc/init.d/endlessh
21c21
<     start_daemon -p $PIDFILE $DAEMON
---
>     start-stop-daemon --start --background --make-pidfile --pidfile
$PIDFILE --exec $DAEMON




-- System Information:
Distributor ID: Devuan
Description:    Devuan GNU/Linux 4 (chimaera/ceres)
Release:        testing/unstable
Codename:       n/a
Architecture: x86_64

Kernel: Linux 5.8.0-3-amd64 (SMP w/2 CPU threads)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8), LANGUAGE
not set
Shell: /bin/sh linked to /bin/dash
Init: sysvinit (via /sbin/init)
LSM: AppArmor: enabled

Versions of packages endlessh depends on:
ii  init-system-helpers  1.58+devuan1
ii  libc6                2.31-4

endlessh recommends no packages.

endlessh suggests no packages.

-- Configuration Files:
/etc/init.d/endlessh changed:
. /lib/lsb/init-functions
DAEMON=/usr/bin/endlessh
PIDFILE=/var/run/endlessh.pid
case "$1" in
  start)
    log_daemon_msg "Starting SSH tarpit" "endlessh"
    start_daemon -p $PIDFILE $DAEMON
    log_end_msg $?
    ;;
  stop)
    log_daemon_msg "Stoping SSH tarpit" "endlessh"
    killproc -p $PIDFILE $DAEMON
    RETVAL=$?
    [ $RETVAL -eq 0 ] && [ -e "$PIDFILE" ] && rm -f $PIDFILE
    log_end_msg $RETVAL
    ;;
  restart)
      $0 stop
      $0 start
      ;;
  reload|force-reload)
      log_daemon_msg "Reloading configuration files for periodic command
scheduler" "cron"
      killproc -p $PIDFILE $DAEMON HUP
      log_end_msg 0
      ;;
  status)
      status_of_proc -p $PIDFILE $DAEMON $NAME && exit 0 || exit $?
      ;;
  *)
    echo "Usage: /etc/init.d/endlessh {start|stop|reload|status}"
    exit 1
    ;;
esac
exit 0


-- no debconf information

Reply via email to