]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - security/selinux/include/security.h
Pull misc into release branch
[linux-2.6-omap-h63xx.git] / security / selinux / include / security.h
index 1ef79172cc8c85303d6495ba15b6cef09f6052d7..83bdd4d2a29e1ad4713367e2b506a3e756c1079f 100644 (file)
 #define POLICYDB_VERSION_MAX   POLICYDB_VERSION_RANGETRANS
 #endif
 
+struct netlbl_lsm_secattr;
+
 extern int selinux_enabled;
 extern int selinux_mls_enabled;
 
 int security_load_policy(void * data, size_t len);
 
+#define SEL_VEC_MAX 32
 struct av_decision {
        u32 allowed;
        u32 decided;
@@ -85,6 +88,9 @@ int security_validate_transition(u32 oldsid, u32 newsid, u32 tasksid,
 
 int security_sid_mls_copy(u32 sid, u32 mls_sid, u32 *new_sid);
 
+int security_get_classes(char ***classes, int *nclasses);
+int security_get_permissions(char *class, char ***perms, int *nperms);
+
 #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 */
@@ -98,5 +104,30 @@ int security_fs_use(const char *fstype, unsigned int *behavior,
 int security_genfs_sid(const char *fstype, char *name, u16 sclass,
        u32 *sid);
 
+#ifdef CONFIG_NETLABEL
+int security_netlbl_secattr_to_sid(struct netlbl_lsm_secattr *secattr,
+                                  u32 base_sid,
+                                  u32 *sid);
+
+int security_netlbl_sid_to_secattr(u32 sid,
+                                  struct netlbl_lsm_secattr *secattr);
+#else
+static inline int security_netlbl_secattr_to_sid(
+                                           struct netlbl_lsm_secattr *secattr,
+                                           u32 base_sid,
+                                           u32 *sid)
+{
+       return -EIDRM;
+}
+
+static inline int security_netlbl_sid_to_secattr(u32 sid,
+                                          struct netlbl_lsm_secattr *secattr)
+{
+       return -ENOENT;
+}
+#endif /* CONFIG_NETLABEL */
+
+const char *security_get_initial_sid_context(u32 sid);
+
 #endif /* _SELINUX_SECURITY_H_ */