mirror of
https://gitlab.freedesktop.org/dbus/dbus.git
synced 2026-04-20 17:40:44 +02:00
bus: Make audit initialization idempotent
The audit module is initialized every time a new BusContext is created, which is only once in the real dbus-daemon, but can happen several times in some unit tests. Signed-off-by: Simon McVittie <smcv@collabora.com>
This commit is contained in:
parent
e148aa47d3
commit
1b1c5ddd35
1 changed files with 8 additions and 1 deletions
|
|
@ -54,6 +54,9 @@ bus_audit_init (BusContext *context)
|
|||
#ifdef HAVE_LIBAUDIT
|
||||
int i;
|
||||
|
||||
if (audit_fd >= 0)
|
||||
return;
|
||||
|
||||
capng_get_caps_process ();
|
||||
|
||||
/* Work around a bug in libcap-ng < 0.7.7: it leaks a fd, which isn't
|
||||
|
|
@ -105,7 +108,11 @@ void
|
|||
bus_audit_shutdown (void)
|
||||
{
|
||||
#ifdef HAVE_LIBAUDIT
|
||||
audit_close (audit_fd);
|
||||
if (audit_fd >= 0)
|
||||
{
|
||||
audit_close (audit_fd);
|
||||
audit_fd = -1;
|
||||
}
|
||||
#endif /* HAVE_LIBAUDIT */
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue