From 0648f9beb9467b15e124fd35ef7ace7b8d6c96a1 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 16 Apr 2020 12:09:48 +0200 Subject: [PATCH] errno-util: let's beef up ERRNO_IS_NOT_SUPPORTED() with socket not supported errors --- src/basic/errno-util.h | 8 ++++++-- src/journal/journald-audit.c | 3 ++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/basic/errno-util.h b/src/basic/errno-util.h index 65a6384eeb0..0ca650f48f6 100644 --- a/src/basic/errno-util.h +++ b/src/basic/errno-util.h @@ -87,12 +87,16 @@ static inline bool ERRNO_IS_RESOURCE(int r) { ENOMEM); } -/* Three different errors for "operation/system call/ioctl not supported" */ +/* Seven different errors for "operation/system call/ioctl/socket feature not supported" */ static inline bool ERRNO_IS_NOT_SUPPORTED(int r) { return IN_SET(abs(r), EOPNOTSUPP, ENOTTY, - ENOSYS); + ENOSYS, + EAFNOSUPPORT, + EPFNOSUPPORT, + EPROTONOSUPPORT, + ESOCKTNOSUPPORT); } /* Two different errors for access problems */ diff --git a/src/journal/journald-audit.c b/src/journal/journald-audit.c index 5c31c43705b..a5a78b77469 100644 --- a/src/journal/journald-audit.c +++ b/src/journal/journald-audit.c @@ -2,6 +2,7 @@ #include "alloc-util.h" #include "audit-type.h" +#include "errno-util.h" #include "fd-util.h" #include "hexdecoct.h" #include "io-util.h" @@ -512,7 +513,7 @@ int server_open_audit(Server *s) { s->audit_fd = socket(AF_NETLINK, SOCK_RAW|SOCK_CLOEXEC|SOCK_NONBLOCK, NETLINK_AUDIT); if (s->audit_fd < 0) { - if (IN_SET(errno, EAFNOSUPPORT, EPROTONOSUPPORT)) + if (ERRNO_IS_NOT_SUPPORTED(errno)) log_debug("Audit not supported in the kernel."); else log_warning_errno(errno, "Failed to create audit socket, ignoring: %m"); -- 2.47.3