Bug 205097 - mail-filter/dkim-milter-2.4.2 fails to start with stale socket
Bug#: 205097 Product:  Gentoo Linux Version: unspecified Platform: All
OS/Version: Linux Status: RESOLVED Severity: minor Priority: P2
Resolution: FIXED Assigned To: dragonheart@gentoo.org Reported By: rtpsld@ntsel.com
Component: Server
URL: 
Summary: mail-filter/dkim-milter-2.4.2 fails to start with stale socket
Keywords:  
Status Whiteboard: 
Opened: 2008-01-09 17:31 0000
Description:   Opened: 2008-01-09 17:31 0000
After an unclean shutdown (power outage), dkim-milter fails to start with the
following log entries:

dkim-filter[6118]: Sendmail DKIM Filter: Unable to bind to port
local:/var/run/dkim-filter/dkim-filter.sock: Address already in use
dkim-filter[6118]: Sendmail DKIM Filter: Unable to create listening socket on
conn local:/var/run/dkim-filter/dkim-filter.sock
dkim-filter[6118]: smfi_opensocket() failed

Problem is solved by manually performing:
# rm /var/run/dkim-filter/dkim-filter.sock
# /etc/init.d/dkim-filter start

I didn't see any dkim-filter options to force socket creation - would it make
sense for the init script to handle this condition?

------- Comment #1 From Alin Năstac 2008-01-09 19:58:22 0000 -------
We must be sure there is no dkim-filter process that use the socket before
removing it.
Daniel, any idea? I thought at fuser, but it sucks to add psmisc to RDEPEND
just for that... 

------- Comment #2 From Daniel Black 2008-01-09 21:52:40 0000 -------
inital very quick thoughts

push a milter stop command down the socket? 
https://www.milter.org/developers/api/smfi_stop

implement your own find on /proc for the socket

though i'd try to look how other processes do it first.

------- Comment #3 From Alin Năstac 2008-01-24 11:41:16 0000 -------
Fixed in 2.4.3. 
I used fuser because psmisc is part of the system packages.

------- Comment #4 From Steve Moerk 2008-01-24 16:40:54 0000 -------
2.4.3 works for me and starts up cleanly now even with an old socket present. 
Thanks for the update.