Package: console-log
Version: 1.2-2.1
Severity: minor
Tags: patch

Dear Maintainer,

at the initscript's startup, `daemon` creates both regular and .clientpid
pidfiles for every daemon instance, for example:
/run/console-log/Debian-console-log/9-_-_var_-_log_-_syslog
and
/run/console-log/Debian-console-log/9-_-_var_-_log_-_sy.clientpid

(maybe this `daemon`'s behaviour depends on the system configuration, but on
mine it's how it is)

When stopping, `daemon` deletes both pidfiles. But `console-log`'s initscript
at stopping iterates through *every* file existing in /run/console-log/Debian-
console-log before stopping, including clientpids, leading to an error at the
last iteration, as the directory gets already deleted at that time. Not much of
an issue, but `daemon` in this case outputs the whole of its "usage" page,
filling the console and pushing out other shutdown messages, which potentially
can contain some valuable info about errors etc.

The included patch solves it by excluding *.clientpid files from the iteration.


-- System Information:
Debian Release: 12.5
  APT prefers stable-updates
  APT policy: (991, 'stable-updates'), (991, 'stable-security'), (991, 
'stable'), (99, 'testing'), (90, 'unstable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 6.6.13-bootes0-p-1000 (SMP w/16 CPU threads; PREEMPT)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_OOT_MODULE, 
TAINT_UNSIGNED_MODULE
Locale: LANG=en_DK.UTF-8, LC_CTYPE=en_DK.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_GB:en_US
Shell: /bin/sh linked to /usr/bin/dash
Init: sysvinit (via /sbin/init)
LSM: AppArmor: enabled

Versions of packages console-log depends on:
ii  adduser                    3.134
ii  daemon                     0.8-1+b1
ii  kbd                        2.5.1-1+b1
ii  less                       590-2.1~deb12u2
ii  lsb-base                   11.6
ii  passwd                     1:4.13+dfsg1-1+b1
ii  sysvinit-utils [lsb-base]  3.08-3~bpo12+2

console-log recommends no packages.

console-log suggests no packages.

-- Configuration Files:
/etc/init.d/console-log changed [not included]

-- no debconf information
diff --git a/debian/console-log.init.d b/debian/console-log.init.d
index 6a00d07..5105468 100755
--- a/debian/console-log.init.d
+++ b/debian/console-log.init.d
@@ -245,7 +245,7 @@ do_from_running()
     log_action_begin_msg "checking console-log"
   fi
   CHECKRET=0
-  for PIDPATH in $(find . -maxdepth 2 -type f); do
+  for PIDPATH in $(find . -maxdepth 2 -type f -not -name '*.clientpid'); do
     FILENAME=$(echo $PIDPATH | sed -n 's/.*\/\(.*\)/\1/p')
     PIDFILEDIR=$(echo $PIDPATH | sed -n 's/^.*\/\(.*\)\/.*/\1/p')
     if [ -z "$PIDFILEDIR" ]; then

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to