Your message dated Sat, 26 Dec 2015 09:32:11 +0100
with message-id <[email protected]>
and subject line Re: Bug#798668: pcscd removes socket which systemd uses for 
autostart
has caused the Debian Bug report #798668,
regarding pcscd removes socket which systemd uses for autostart
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
798668: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=798668
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: pcscd
Version: 1.8.13-1
Severity: important
Tags: upstream

systemd, in its infinite wisdom, listens to /var/run/pcscd/pcscd.comm for 
connections and starts up the pcscd
service on-demand if any connections come in.  However, when pcscd exits, it 
"cleans" the /var/run/pcscd folder,
thus removing the pcscd.comm file. Examination of systemctl list-sockets shows 
it is supposedly listening on that
socket, but with the file descriptor removed by the daemon (when it auto-exits, 
or when the daemon was started
manually and then terminated), systemd will never start up the program again 
because clients cannot connect to
a nonexistant FD.  Additionally, when the service is started manually via 
init.d scripts, the socket is not auto-
created as it is when it is run directly via the command line.

This is probably a bug both in pcscd and systemd, the former for not checking 
if the socket FD exists upon startup
from systemd, and the latter for not doing the same upon shutdown of the daemon 
or at least semi-periodically. The
only method I've found to re-create this socket FD is to restart the system; 
obviously not an acceptable workaround.

-- System Information:
Debian Release: 8.2
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 3.16.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages pcscd depends on:
ii  init-system-helpers           1.22
ii  libc6                         2.19-18+deb8u1
ii  libgcr410 [pcsc-ifd-handler]  2.4.0-9.2
ii  libpcsclite1                  1.8.13-1
ii  libudev1                      215-17+deb8u2
ii  lsb-base                      4.1+Debian13+nmu1

pcscd recommends no packages.

Versions of packages pcscd suggests:
ii  systemd  215-17+deb8u2

-- no debconf information

--- End Message ---
--- Begin Message ---
Hello Eric,

Le 13/09/2015 19:07, Ludovic Rousseau a écrit :
Le 11/09/2015 17:35, Eric Reischer a écrit :
Package: pcscd
Version: 1.8.13-1
Severity: important
Tags: upstream

systemd, in its infinite wisdom, listens to /var/run/pcscd/pcscd.comm for 
connections and starts up the pcscd
service on-demand if any connections come in.  However, when pcscd exits, it 
"cleans" the /var/run/pcscd folder,
thus removing the pcscd.comm file. Examination of systemctl list-sockets shows 
it is supposedly listening on that
socket, but with the file descriptor removed by the daemon (when it auto-exits, 
or when the daemon was started
manually and then terminated), systemd will never start up the program again 
because clients cannot connect to
a nonexistant FD.  Additionally, when the service is started manually via 
init.d scripts, the socket is not auto-
created as it is when it is run directly via the command line.

This is probably a bug both in pcscd and systemd, the former for not checking 
if the socket FD exists upon startup
from systemd, and the latter for not doing the same upon shutdown of the daemon 
or at least semi-periodically. The
only method I've found to re-create this socket FD is to restart the system; 
obviously not an acceptable workaround.

If pcscd is started by systemd then the file /var/run/pcscd/pcscd.comm is NOT 
removed when pcscd auto exit.
See https://anonscm.debian.org/cgit/pcsclite/PCSC.git/tree/src/pcscdaemon.c#n721

Running "/etc/init.d/pcscd" start should not break anything.
But starting pcscd by "/usr/sbin/pcscd" is NOT supported when systemd is used.

To make pcscd run again using systemd you need to do:
$ sudo systemctl stop pcscd.socket
$ sudo systemctl start pcscd.socket

See also 
http://ludovicrousseau.blogspot.fr/2011/11/pcscd-auto-start-using-systemd.html

This is not a bug.
So unless you explain why an unsupported configuration should be supported I 
will close this bug.
You can also propose a patch so that pcscd works as you want.

Regards,


I have no news on this bug report since 3 months.

If you think it is really a bug please re-open it with a proposed solution.
Closing it now.

Bye,

--
Dr. Ludovic Rousseau

--- End Message ---

Reply via email to