Index: pflogd.c =================================================================== RCS file: /cvs/src/sbin/pflogd/pflogd.c,v retrieving revision 1.63 diff -u -p -r1.63 pflogd.c --- pflogd.c 9 May 2023 00:01:59 -0000 1.63 +++ pflogd.c 26 Oct 2023 22:27:09 -0000 @@ -160,18 +160,21 @@ usage(void) void sig_close(int sig) { + pcap_breakloop(hpcap); gotsig_close = 1; } void sig_hup(int sig) { + pcap_breakloop(hpcap); gotsig_hup = 1; } void sig_alrm(int sig) { + pcap_breakloop(hpcap); gotsig_alrm = 1; } @@ -685,10 +688,15 @@ main(int argc, char **argv) setproctitle("[initializing]"); /* Process is now unprivileged and inside a chroot */ signal(SIGTERM, sig_close); + siginterrupt(SIGTERM, 1); signal(SIGINT, sig_close); + siginterrupt(SIGTERM, 1); signal(SIGQUIT, sig_close); + siginterrupt(SIGTERM, 1); signal(SIGALRM, sig_alrm); + siginterrupt(SIGTERM, 1); signal(SIGHUP, sig_hup); + siginterrupt(SIGTERM, 1); alarm(delay); if (priv_init_pcap(snaplen))