domain.h 912 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * AppArmor security module
  4. *
  5. * This file contains AppArmor security domain transition function definitions.
  6. *
  7. * Copyright (C) 1998-2008 Novell/SUSE
  8. * Copyright 2009-2010 Canonical Ltd.
  9. */
  10. #include <linux/binfmts.h>
  11. #include <linux/types.h>
  12. #include "label.h"
  13. #ifndef __AA_DOMAIN_H
  14. #define __AA_DOMAIN_H
  15. struct aa_domain {
  16. int size;
  17. char **table;
  18. };
  19. #define AA_CHANGE_NOFLAGS 0
  20. #define AA_CHANGE_TEST 1
  21. #define AA_CHANGE_CHILD 2
  22. #define AA_CHANGE_ONEXEC 4
  23. #define AA_CHANGE_STACK 8
  24. struct aa_label *x_table_lookup(struct aa_profile *profile, u32 xindex,
  25. const char **name);
  26. int apparmor_bprm_creds_for_exec(struct linux_binprm *bprm);
  27. void aa_free_domain_entries(struct aa_domain *domain);
  28. int aa_change_hat(const char *hats[], int count, u64 token, int flags);
  29. int aa_change_profile(const char *fqname, int flags);
  30. #endif /* __AA_DOMAIN_H */