fedora core 6 1.2949 + vserver 2.2.0
[linux-2.6.git] / security / selinux / include / security.h
index 5f016c9..210eec7 100644 (file)
 #define POLICYDB_VERSION_VALIDATETRANS 19
 #define POLICYDB_VERSION_MLS           19
 #define POLICYDB_VERSION_AVTAB         20
+#define POLICYDB_VERSION_RANGETRANS    21
 
 /* Range of policy versions we understand*/
 #define POLICYDB_VERSION_MIN   POLICYDB_VERSION_BASE
-#define POLICYDB_VERSION_MAX   POLICYDB_VERSION_AVTAB
-
-#ifdef CONFIG_SECURITY_SELINUX_BOOTPARAM
-extern int selinux_enabled;
+#ifdef CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX
+#define POLICYDB_VERSION_MAX   CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX_VALUE
 #else
-#define selinux_enabled 1
+#define POLICYDB_VERSION_MAX   POLICYDB_VERSION_RANGETRANS
 #endif
 
+struct sk_buff;
+
+extern int selinux_enabled;
 extern int selinux_mls_enabled;
 
 int security_load_policy(void * data, size_t len);
@@ -80,9 +82,13 @@ int security_netif_sid(char *name, u32 *if_sid,
 int security_node_sid(u16 domain, void *addr, u32 addrlen,
        u32 *out_sid);
 
+void security_skb_extlbl_sid(struct sk_buff *skb, u32 base_sid, u32 *sid);
+
 int security_validate_transition(u32 oldsid, u32 newsid, u32 tasksid,
                                  u16 tclass);
 
+int security_sid_mls_copy(u32 sid, u32 mls_sid, u32 *new_sid);
+
 #define SECURITY_FS_USE_XATTR          1 /* use xattr */
 #define SECURITY_FS_USE_TRANS          2 /* use transition SIDs, e.g. devpts/tmpfs */
 #define SECURITY_FS_USE_TASK           3 /* use task SIDs, e.g. pipefs/sockfs */