mirror of
https://github.com/morgan9e/systemd
synced 2026-04-15 00:47:10 +09:00
It's great that we provide fallback values, but if we got one of those wrong,
it could be a long time before anyone noticed. So let's add asserts that the
our internal defines actually match the official ones, when the latter are
available.
I did not add '#include "macro.h"' to missing_{audit,capability}, because
those are processed by an awk script that would need additional include
directories and could be confused by the additional lines. We don't include
those headers standalone anyway, so this is not necessary anyway.
49 lines
1.0 KiB
C
49 lines
1.0 KiB
C
/* SPDX-License-Identifier: LGPL-2.1-or-later */
|
|
#pragma once
|
|
|
|
#include <linux/capability.h>
|
|
|
|
/* 3a101b8de0d39403b2c7e5c23fd0b005668acf48 (3.16) */
|
|
#ifndef CAP_AUDIT_READ
|
|
# define CAP_AUDIT_READ 37
|
|
#else
|
|
assert_cc(CAP_AUDIT_READ == 37);
|
|
#endif
|
|
|
|
/* 980737282232b752bb14dab96d77665c15889c36 (5.8) */
|
|
#ifndef CAP_PERFMON
|
|
# define CAP_PERFMON 38
|
|
#else
|
|
assert_cc(CAP_PERFMON == 38);
|
|
#endif
|
|
|
|
/* a17b53c4a4b55ec322c132b6670743612229ee9c (5.8) */
|
|
#ifndef CAP_BPF
|
|
# define CAP_BPF 39
|
|
#else
|
|
assert_cc(CAP_BPF == 39);
|
|
#endif
|
|
|
|
/* 124ea650d3072b005457faed69909221c2905a1f (5.9) */
|
|
#ifndef CAP_CHECKPOINT_RESTORE
|
|
# define CAP_CHECKPOINT_RESTORE 40
|
|
#else
|
|
assert_cc(CAP_CHECKPOINT_RESTORE == 40);
|
|
#endif
|
|
|
|
#define SYSTEMD_CAP_LAST_CAP CAP_CHECKPOINT_RESTORE
|
|
|
|
#ifdef CAP_LAST_CAP
|
|
# if CAP_LAST_CAP > SYSTEMD_CAP_LAST_CAP
|
|
# if BUILD_MODE_DEVELOPER && defined(TEST_CAPABILITY_C)
|
|
# warning "The capability list here is outdated"
|
|
# endif
|
|
# else
|
|
# undef CAP_LAST_CAP
|
|
# endif
|
|
#endif
|
|
|
|
#ifndef CAP_LAST_CAP
|
|
# define CAP_LAST_CAP SYSTEMD_CAP_LAST_CAP
|
|
#endif
|