From: Antonio Alvarez Feijoo Date: Mon, 22 Sep 2025 15:27:27 +0000 (+0200) Subject: libaudit-util: fix build with audit disabled X-Git-Tag: v259-rc1~471 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f784a63cfad6a5425af2ebc02a1f9effec4fd079;p=thirdparty%2Fsystemd.git libaudit-util: fix build with audit disabled ``` In file included from ../src/test/test-dlopen-so.c:21: ../src/test/test-dlopen-so.c: In function ‘run’: ../src/test/test-dlopen-so.c:53:23: error: implicit declaration of function ‘dlopen_libaudit’; did you mean ‘dlopen_libfido2’? [-Werror=implicit-function-declaration] 53 | ASSERT_DLOPEN(dlopen_libaudit, HAVE_AUDIT); | ^~~~~~~~~~~~~~~ ../src/shared/tests.h:181:24: note: in definition of macro ‘ASSERT_OK’ 181 | typeof(expr) _result = (expr); \ | ^~~~ ../src/test/test-dlopen-so.c:53:9: note: in expansion of macro ‘ASSERT_DLOPEN’ 53 | ASSERT_DLOPEN(dlopen_libaudit, HAVE_AUDIT); | ^~~~~~~~~~~~~ ../src/test/test-dlopen-so.c:53:23: warning: nested extern declaration of ‘dlopen_libaudit’ [-Wnested-externs] 53 | ASSERT_DLOPEN(dlopen_libaudit, HAVE_AUDIT); | ^~~~~~~~~~~~~~~ ../src/shared/tests.h:181:24: note: in definition of macro ‘ASSERT_OK’ 181 | typeof(expr) _result = (expr); \ | ^~~~ ../src/test/test-dlopen-so.c:53:9: note: in expansion of macro ‘ASSERT_DLOPEN’ 53 | ASSERT_DLOPEN(dlopen_libaudit, HAVE_AUDIT); | ^~~~~~~~~~~~~ ``` Follow-up for 4d8c5c657ae0829f93944a00302e7ce700913e54 --- diff --git a/src/shared/libaudit-util.c b/src/shared/libaudit-util.c index beac269f217..147aaf9a1df 100644 --- a/src/shared/libaudit-util.c +++ b/src/shared/libaudit-util.c @@ -19,8 +19,10 @@ DLSYM_PROTOTYPE(audit_log_acct_message) = NULL; DLSYM_PROTOTYPE(audit_log_user_avc_message) = NULL; DLSYM_PROTOTYPE(audit_log_user_comm_message) = NULL; static DLSYM_PROTOTYPE(audit_open) = NULL; +#endif int dlopen_libaudit(void) { +#if HAVE_AUDIT ELF_NOTE_DLOPEN("libaudit", "Support for Audit logging", ELF_NOTE_DLOPEN_PRIORITY_RECOMMENDED, @@ -35,8 +37,12 @@ int dlopen_libaudit(void) { DLSYM_ARG(audit_log_user_avc_message), DLSYM_ARG(audit_log_user_comm_message), DLSYM_ARG(audit_open)); +#else + return -EOPNOTSUPP; +#endif } +#if HAVE_AUDIT static int try_audit_request(int fd) { struct iovec iov; struct msghdr mh; diff --git a/src/shared/libaudit-util.h b/src/shared/libaudit-util.h index b4e7a56c509..f33258f9e1a 100644 --- a/src/shared/libaudit-util.h +++ b/src/shared/libaudit-util.h @@ -3,6 +3,8 @@ #include "forward.h" +int dlopen_libaudit(void); + #if HAVE_AUDIT # include /* IWYU pragma: export */ @@ -11,8 +13,6 @@ extern DLSYM_PROTOTYPE(audit_log_acct_message); extern DLSYM_PROTOTYPE(audit_log_user_avc_message); extern DLSYM_PROTOTYPE(audit_log_user_comm_message); - -int dlopen_libaudit(void); #endif bool use_audit(void);