1 | /* SPDX-License-Identifier: GPL-2.0 */ |
2 | #ifndef __PERF_CAP_H |
3 | #define __PERF_CAP_H |
4 | |
5 | #include <stdbool.h> |
6 | #include <linux/capability.h> |
7 | #include <linux/compiler.h> |
8 | |
9 | #ifdef HAVE_LIBCAP_SUPPORT |
10 | |
11 | #include <sys/capability.h> |
12 | |
13 | bool perf_cap__capable(cap_value_t cap); |
14 | |
15 | #else |
16 | |
17 | #include <unistd.h> |
18 | #include <sys/types.h> |
19 | |
20 | static inline bool perf_cap__capable(int cap __maybe_unused) |
21 | { |
22 | return geteuid() == 0; |
23 | } |
24 | |
25 | #endif /* HAVE_LIBCAP_SUPPORT */ |
26 | |
27 | /* For older systems */ |
28 | #ifndef CAP_SYSLOG |
29 | #define CAP_SYSLOG 34 |
30 | #endif |
31 | |
32 | #ifndef CAP_PERFMON |
33 | #define CAP_PERFMON 38 |
34 | #endif |
35 | |
36 | #endif /* __PERF_CAP_H */ |
37 | |