Bug 3291

Summary: pdnsd does not detach from the terminal properly
Product: Sisyphus Reporter: Sergey Vlasov <vsu>
Component: pdnsdAssignee: Vladimir D. Seleznev <vseleznv>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P2 CC: vseleznv
Version: unstable   
Hardware: all   
OS: Linux   

Description Sergey Vlasov 2003-11-20 12:11:26 MSK
pdnsd does not close stdout and stderr.  This can cause problems when, e.g.,
restarting it in a ssh session - because the pseudoterminal is left open, the
session cannot be closed normally.

Steps to Reproduce:
# service pdnsd restart
Stopping pdnsd service:                                                        
                                            [ DONE ]
Starting pdnsd service:                                                        
                                            [ DONE ]
# ps ax|grep [p]dnsd
14614 ?        S      0:00 /usr/sbin/pdnsd --daemon --config-file
/etc/pdnsd.conf -p /var/run/pdnsd.pid
# lsof -p 14614
COMMAND   PID  USER   FD   TYPE     DEVICE    SIZE   NODE NAME
pdnsd   14614 pdnsd  cwd    DIR        3,7      48    349 /var/empty
pdnsd   14614 pdnsd  rtd    DIR        3,7      48    349 /var/empty
pdnsd   14614 pdnsd  txt    REG        3,7  131896  85552 /usr/sbin/pdnsd
pdnsd   14614 pdnsd  mem    REG        3,7   71000    183 /lib/ld-2.2.6.so
pdnsd   14614 pdnsd  mem    REG        3,7   36808    201 /lib/libnss_files-2.2.6.so
pdnsd   14614 pdnsd  mem    REG        3,7  105521    203 /lib/libpthread-0.9.so
pdnsd   14614 pdnsd  mem    REG        3,7 1145896    191 /lib/libc-2.2.6.so
pdnsd   14614 pdnsd  mem    REG        3,7   39928  25638
/lib/libnss_nisplus-2.2.6.so
pdnsd   14614 pdnsd  mem    REG        3,7   73644    199 /lib/libnsl-2.2.6.so
pdnsd   14614 pdnsd  mem    REG        3,7   35284  25635 /lib/libnss_nis-2.2.6.so
pdnsd   14614 pdnsd    0u   REG        3,7       4  85583
/var/cache/pdnsd/pdnsd.cache
pdnsd   14614 pdnsd    1u   CHR      136,6              8 /dev/pts/6
pdnsd   14614 pdnsd    2u   CHR      136,6              8 /dev/pts/6
pdnsd   14614 pdnsd    3u  unix 0xddd8f5e0         167615 /var/run/pdnsd/socket
pdnsd   14614 pdnsd    4u  IPv4     167617            TCP
localhost.localdomain:domain (LISTEN)
pdnsd   14614 pdnsd    5u  IPv4     167618            UDP
localhost.localdomain:domain 
pdnsd   14614 pdnsd    6r  FIFO        0,4         167620 pipe
pdnsd   14614 pdnsd    7w  FIFO        0,4         167620 pipe

Actual Results:  
Terminal (/dev/pts/6 in this case) is still open on fd 1 and 2.

Expected Results:  
fd 1 and 2 should point somewhere else (probably to /dev/null), terminal device
should not be held open by the pdnsd process.
Comment 1 at@altlinux.org 2005-09-28 04:09:14 MSD
I think this was fixed with 1.2-alt1.