]> git.ipfire.org Git - thirdparty/kernel/linux.git/blobdiff - include/linux/security.h
Merge branch 'next-general' of git://git.kernel.org:/pub/scm/linux/kernel/git/jmorris...
[thirdparty/kernel/linux.git] / include / linux / security.h
index 896da4429c17cce8310d71a06e0b6cab4457142d..a8d9310472dfad0e4aeab204e641303d61f42df5 100644 (file)
@@ -116,15 +116,19 @@ enum lockdown_reason {
        LOCKDOWN_MODULE_PARAMETERS,
        LOCKDOWN_MMIOTRACE,
        LOCKDOWN_DEBUGFS,
+       LOCKDOWN_XMON_WR,
        LOCKDOWN_INTEGRITY_MAX,
        LOCKDOWN_KCORE,
        LOCKDOWN_KPROBES,
        LOCKDOWN_BPF_READ,
        LOCKDOWN_PERF,
        LOCKDOWN_TRACEFS,
+       LOCKDOWN_XMON_RW,
        LOCKDOWN_CONFIDENTIALITY_MAX,
 };
 
+extern const char *const lockdown_reasons[LOCKDOWN_CONFIDENTIALITY_MAX+1];
+
 /* These functions are in security/commoncap.c */
 extern int cap_capable(const struct cred *cred, struct user_namespace *ns,
                       int cap, unsigned int opts);
@@ -1894,5 +1898,42 @@ static inline void security_bpf_prog_free(struct bpf_prog_aux *aux)
 #endif /* CONFIG_SECURITY */
 #endif /* CONFIG_BPF_SYSCALL */
 
-#endif /* ! __LINUX_SECURITY_H */
+#ifdef CONFIG_PERF_EVENTS
+struct perf_event_attr;
+struct perf_event;
 
+#ifdef CONFIG_SECURITY
+extern int security_perf_event_open(struct perf_event_attr *attr, int type);
+extern int security_perf_event_alloc(struct perf_event *event);
+extern void security_perf_event_free(struct perf_event *event);
+extern int security_perf_event_read(struct perf_event *event);
+extern int security_perf_event_write(struct perf_event *event);
+#else
+static inline int security_perf_event_open(struct perf_event_attr *attr,
+                                          int type)
+{
+       return 0;
+}
+
+static inline int security_perf_event_alloc(struct perf_event *event)
+{
+       return 0;
+}
+
+static inline void security_perf_event_free(struct perf_event *event)
+{
+}
+
+static inline int security_perf_event_read(struct perf_event *event)
+{
+       return 0;
+}
+
+static inline int security_perf_event_write(struct perf_event *event)
+{
+       return 0;
+}
+#endif /* CONFIG_SECURITY */
+#endif /* CONFIG_PERF_EVENTS */
+
+#endif /* ! __LINUX_SECURITY_H */