Hi All, I have a question about the correct way to restart a milter application.
I'm using postfix 2.6.6 with a milter application that was built using sendmail's libmilter (8.14.7). The problem I'm having is when I need to restart the milter application (due to a config change for example), I send it a SIGTERM and then start it up again. However, an smtpd instance that was running which was already connected to milter will not try to connect to the milter after the milter has been restarted. But when a new SMTP connection arrives from the client the new smtpd will connect to the milter application and all processing works correctly. Is this the expected behavior? or have a missed something in the configuration / or possibly in the code? (To debug, I'm just using the sample that comes with sendmail). Is there a way to get smtpd to send tempfail to client when milter is not there but once the milter starts up and is listening again smtpd reconnects and starts sending data to the milter. (https://www.apt-browse.org/browse/debian/wheezy/main/all/ sendmail-base/8.14.4-4+deb7u1/file/usr/share/sendmail/ examples/milter/sample.c) In main.cf I have: milter_default_action = tempfail smtpd_milters = inet:localhost:10025 milter_protocol = 2 tcpdump output shows: localhost.45724 > localhost.10025: Flags [.], ack 89, win 33, length 0 localhost.10025 > localhost.45724: Flags [F.], seq 89, ack 588, win 36, length 0 ==> milter application received SIGTERM localhost.45724 > localhost.10025: Flags [.], ack 90, win 33, length 0 localhost.45724 > localhost.10025: Flags [P.], seq 588:733, ack 90, win 33, length 145 ==> SMIFC_ABORT localhost.10025 > localhost.45724: Flags [R], seq 1329360186, win 0, length 0 ==> Reset since milter application has restarted Thanks,