errno-util: let's beef up ERRNO_IS_NOT_SUPPORTED() with socket not supported errors
This commit is contained in:
parent
511e03a3ee
commit
0648f9beb9
|
@ -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 */
|
||||
|
|
|
@ -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");
|
||||
|
|
Loading…
Reference in a new issue