1 /* 2 * AppArmor security module 3 * 4 * This file contains AppArmor policy loading interface function definitions. 5 * 6 * Copyright (C) 1998-2008 Novell/SUSE 7 * Copyright 2009-2010 Canonical Ltd. 8 * 9 * This program is free software; you can redistribute it and/or 10 * modify it under the terms of the GNU General Public License as 11 * published by the Free Software Foundation, version 2 of the 12 * License. 13 */ 14 15 #ifndef __POLICY_INTERFACE_H 16 #define __POLICY_INTERFACE_H 17 18 #include <linux/list.h> 19 20 struct aa_load_ent { 21 struct list_head list; 22 struct aa_profile *new; 23 struct aa_profile *old; 24 struct aa_profile *rename; 25 }; 26 27 void aa_load_ent_free(struct aa_load_ent *ent); 28 struct aa_load_ent *aa_load_ent_alloc(void); 29 30 #define PACKED_FLAG_HAT 1 31 32 #define PACKED_MODE_ENFORCE 0 33 #define PACKED_MODE_COMPLAIN 1 34 #define PACKED_MODE_KILL 2 35 #define PACKED_MODE_UNCONFINED 3 36 37 int aa_unpack(void *udata, size_t size, struct list_head *lh, const char **ns); 38 39 #endif /* __POLICY_INTERFACE_H */ 40