perms.h (91de76e661a266731fc2889a398ad1694df9d523) perms.h (80c094a47dd4ea63375e3f60b5e076064f16e857)
1/*
2 * AppArmor security module
3 *
4 * This file contains AppArmor basic permission sets definitions.
5 *
6 * Copyright 2017 Canonical Ltd.
7 *
8 * This program is free software; you can redistribute it and/or

--- 121 unchanged lines hidden (view full) ---

130})
131
132/* Do the cross check but applying FN at the profiles level */
133#define xcheck_labels_profiles(L1, L2, FN, args...) \
134 xcheck_ns_labels((L1), (L2), xcheck_ns_profile_label, (FN), args)
135
136
137void aa_perm_mask_to_str(char *str, const char *chrs, u32 mask);
1/*
2 * AppArmor security module
3 *
4 * This file contains AppArmor basic permission sets definitions.
5 *
6 * Copyright 2017 Canonical Ltd.
7 *
8 * This program is free software; you can redistribute it and/or

--- 121 unchanged lines hidden (view full) ---

130})
131
132/* Do the cross check but applying FN at the profiles level */
133#define xcheck_labels_profiles(L1, L2, FN, args...) \
134 xcheck_ns_labels((L1), (L2), xcheck_ns_profile_label, (FN), args)
135
136
137void aa_perm_mask_to_str(char *str, const char *chrs, u32 mask);
138void aa_audit_perm_names(struct audit_buffer *ab, const char * const *names,
139 u32 mask);
138void aa_audit_perm_names(struct audit_buffer *ab, const char **names, u32 mask);
140void aa_audit_perm_mask(struct audit_buffer *ab, u32 mask, const char *chrs,
139void aa_audit_perm_mask(struct audit_buffer *ab, u32 mask, const char *chrs,
141 u32 chrsmask, const char * const *names, u32 namesmask);
140 u32 chrsmask, const char **names, u32 namesmask);
142void aa_apply_modes_to_perms(struct aa_profile *profile,
143 struct aa_perms *perms);
144void aa_compute_perms(struct aa_dfa *dfa, unsigned int state,
145 struct aa_perms *perms);
146void aa_perms_accum(struct aa_perms *accum, struct aa_perms *addend);
147void aa_perms_accum_raw(struct aa_perms *accum, struct aa_perms *addend);
148void aa_profile_match_label(struct aa_profile *profile, struct aa_label *label,
149 int type, u32 request, struct aa_perms *perms);
150int aa_profile_label_perm(struct aa_profile *profile, struct aa_profile *target,
151 u32 request, int type, u32 *deny,
152 struct common_audit_data *sa);
153int aa_check_perms(struct aa_profile *profile, struct aa_perms *perms,
154 u32 request, struct common_audit_data *sa,
155 void (*cb)(struct audit_buffer *, void *));
156#endif /* __AA_PERM_H */
141void aa_apply_modes_to_perms(struct aa_profile *profile,
142 struct aa_perms *perms);
143void aa_compute_perms(struct aa_dfa *dfa, unsigned int state,
144 struct aa_perms *perms);
145void aa_perms_accum(struct aa_perms *accum, struct aa_perms *addend);
146void aa_perms_accum_raw(struct aa_perms *accum, struct aa_perms *addend);
147void aa_profile_match_label(struct aa_profile *profile, struct aa_label *label,
148 int type, u32 request, struct aa_perms *perms);
149int aa_profile_label_perm(struct aa_profile *profile, struct aa_profile *target,
150 u32 request, int type, u32 *deny,
151 struct common_audit_data *sa);
152int aa_check_perms(struct aa_profile *profile, struct aa_perms *perms,
153 u32 request, struct common_audit_data *sa,
154 void (*cb)(struct audit_buffer *, void *));
155#endif /* __AA_PERM_H */