1
0
mirror of https://github.com/systemd/systemd synced 2025-11-22 10:14:45 +01:00

Compare commits

...

3 Commits

Author SHA1 Message Date
Luca Boccassi
4f21c3d9b7
Two follow-ups for dlopen()-ification (#39078) 2025-09-23 00:13:13 +01:00
Mike Yuan
1fbe44d013
pam-util,libaudit-util: strip "lib" prefix from dlopen "feature" field
As per our usual coding style.
2025-09-22 20:08:45 +02:00
Mike Yuan
f497a3f1c3
pam-util: fix build without PAM
Follow-up for 882c9ce0402ec6e37201628a9a361500ff39b1ed
Prompted by #39077

Note that HAVE_PAM ifdeffery in pam-util.c is removed,
since its build as a whole is conditioned out if
!HAVE_PAM in shared/meson.build.
2025-09-22 20:08:44 +02:00
3 changed files with 11 additions and 7 deletions

View File

@ -23,7 +23,7 @@ static DLSYM_PROTOTYPE(audit_open) = NULL;
int dlopen_libaudit(void) {
#if HAVE_AUDIT
ELF_NOTE_DLOPEN("libaudit",
ELF_NOTE_DLOPEN("audit",
"Support for Audit logging",
ELF_NOTE_DLOPEN_PRIORITY_RECOMMENDED,
"libaudit.so.1");

View File

@ -16,7 +16,6 @@
#include "stdio-util.h"
#include "string-util.h"
#if HAVE_PAM
static void *libpam_dl = NULL;
DLSYM_PROTOTYPE(pam_acct_mgmt) = NULL;
@ -36,7 +35,7 @@ DLSYM_PROTOTYPE(pam_syslog) = NULL;
DLSYM_PROTOTYPE(pam_vsyslog) = NULL;
int dlopen_libpam(void) {
ELF_NOTE_DLOPEN("libpam",
ELF_NOTE_DLOPEN("pam",
"Support for LinuxPAM",
ELF_NOTE_DLOPEN_PRIORITY_RECOMMENDED,
"libpam.so.0");
@ -61,7 +60,6 @@ int dlopen_libpam(void) {
DLSYM_ARG(pam_syslog),
DLSYM_ARG(pam_vsyslog));
}
#endif
void pam_log_setup(void) {
/* Make sure we don't leak the syslog fd we open by opening/closing the fd each time. */

View File

@ -1,14 +1,13 @@
/* SPDX-License-Identifier: LGPL-2.1-or-later */
#pragma once
#include <syslog.h>
#include "forward.h"
#if HAVE_PAM
#include <security/pam_appl.h>
#include <security/pam_ext.h>
#include <security/pam_modules.h> /* IWYU pragma: export */
#include <syslog.h>
#include "dlfcn-util.h"
@ -29,7 +28,6 @@ extern DLSYM_PROTOTYPE(pam_syslog);
extern DLSYM_PROTOTYPE(pam_vsyslog);
int dlopen_libpam(void);
#endif
void pam_log_setup(void);
@ -77,3 +75,11 @@ int pam_get_data_many_internal(pam_handle_t *handle, ...) _sentinel_;
#define pam_get_data_many(handle, ...) pam_get_data_many_internal(handle, __VA_ARGS__, NULL)
int pam_prompt_graceful(pam_handle_t *handle, int style, char **ret_response, const char *fmt, ...) _printf_(4,5);
#else
static inline int dlopen_libpam(void) {
return -EOPNOTSUPP;
}
#endif