From d51851b2aa78b9185b5ad53345c09874e4bbd77e Mon Sep 17 00:00:00 2001 From: bluhm Date: Thu, 16 Mar 2023 18:22:08 +0000 Subject: [PATCH] When syslogd is sending messages via UDP to a remote loghost, it stops if there is a permanent error. Add EACCES generated by pf to the list of transient errors. This restores pre-6.5 behavior and continues logging after pf.conf has been fixed. OK millert@ deraadt@ mvs@ --- usr.sbin/syslogd/syslogd.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/usr.sbin/syslogd/syslogd.c b/usr.sbin/syslogd/syslogd.c index 6b079492917..289c3cb68a9 100644 --- a/usr.sbin/syslogd/syslogd.c +++ b/usr.sbin/syslogd/syslogd.c @@ -1,4 +1,4 @@ -/* $OpenBSD: syslogd.c,v 1.276 2022/12/28 21:30:19 jmc Exp $ */ +/* $OpenBSD: syslogd.c,v 1.277 2023/03/16 18:22:08 bluhm Exp $ */ /* * Copyright (c) 2014-2021 Alexander Bluhm @@ -1950,6 +1950,7 @@ fprintlog(struct filed *f, int flags, char *msg) msghdr.msg_iovlen = IOVCNT; if (sendmsg(f->f_file, &msghdr, 0) == -1) { switch (errno) { + case EACCES: case EADDRNOTAVAIL: case EHOSTDOWN: case EHOSTUNREACH: -- 2.20.1