Merge tag 'linux-kselftest-next-6.6-rc2' of git://git.kernel.org/pub/scm/linux/kernel...
[platform/kernel/linux-starfive.git] / tools / perf / util / cap.h
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 */