summaryrefslogtreecommitdiffstats
path: root/src/basic/missing_capability.h
blob: c1c63a68292b1afa9f1d3b8f4b15abac6cee6d8a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
/* 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