avc.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. /*
  3. * Authors: Thiébaud Weksteen <[email protected]>
  4. * Peter Enderborg <[email protected]>
  5. */
  6. #undef TRACE_SYSTEM
  7. #define TRACE_SYSTEM avc
  8. #if !defined(_TRACE_SELINUX_H) || defined(TRACE_HEADER_MULTI_READ)
  9. #define _TRACE_SELINUX_H
  10. #include <linux/tracepoint.h>
  11. TRACE_EVENT(selinux_audited,
  12. TP_PROTO(struct selinux_audit_data *sad,
  13. char *scontext,
  14. char *tcontext,
  15. const char *tclass
  16. ),
  17. TP_ARGS(sad, scontext, tcontext, tclass),
  18. TP_STRUCT__entry(
  19. __field(u32, requested)
  20. __field(u32, denied)
  21. __field(u32, audited)
  22. __field(int, result)
  23. __string(scontext, scontext)
  24. __string(tcontext, tcontext)
  25. __string(tclass, tclass)
  26. ),
  27. TP_fast_assign(
  28. __entry->requested = sad->requested;
  29. __entry->denied = sad->denied;
  30. __entry->audited = sad->audited;
  31. __entry->result = sad->result;
  32. __assign_str(tcontext, tcontext);
  33. __assign_str(scontext, scontext);
  34. __assign_str(tclass, tclass);
  35. ),
  36. TP_printk("requested=0x%x denied=0x%x audited=0x%x result=%d scontext=%s tcontext=%s tclass=%s",
  37. __entry->requested, __entry->denied, __entry->audited, __entry->result,
  38. __get_str(scontext), __get_str(tcontext), __get_str(tclass)
  39. )
  40. );
  41. #endif
  42. /* This part must be outside protection */
  43. #include <trace/define_trace.h>