diff options
author | Venkat Yekkirala <vyekkirala@TrustedCS.com> | 2006-12-12 19:02:41 (GMT) |
---|---|---|
committer | James Morris <jmorris@namei.org> | 2007-01-08 22:32:51 (GMT) |
commit | 0efc61eaee5471acd7399c8536feff280b4966dd (patch) | |
tree | c57dbd32f8a318082ba4f35092b5679d23cfb184 /security/selinux/ss/context.h | |
parent | bf81b46482c0fa8ea638e409d39768ea92a6b0f0 (diff) | |
download | linux-0efc61eaee5471acd7399c8536feff280b4966dd.tar.xz |
selinux: Delete mls_copy_context
This deletes mls_copy_context() in favor of mls_context_cpy() and
replaces mls_scopy_context() with mls_context_cpy_low().
Signed-off-by: Venkat Yekkirala <vyekkirala@TrustedCS.com>
Acked-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: James Morris <jmorris@namei.org>
Diffstat (limited to 'security/selinux/ss/context.h')
-rw-r--r-- | security/selinux/ss/context.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/security/selinux/ss/context.h b/security/selinux/ss/context.h index 0562bac..2eee0da 100644 --- a/security/selinux/ss/context.h +++ b/security/selinux/ss/context.h @@ -55,6 +55,29 @@ out: return rc; } +/* + * Sets both levels in the MLS range of 'dst' to the low level of 'src'. + */ +static inline int mls_context_cpy_low(struct context *dst, struct context *src) +{ + int rc; + + if (!selinux_mls_enabled) + return 0; + + dst->range.level[0].sens = src->range.level[0].sens; + rc = ebitmap_cpy(&dst->range.level[0].cat, &src->range.level[0].cat); + if (rc) + goto out; + + dst->range.level[1].sens = src->range.level[0].sens; + rc = ebitmap_cpy(&dst->range.level[1].cat, &src->range.level[0].cat); + if (rc) + ebitmap_destroy(&dst->range.level[0].cat); +out: + return rc; +} + static inline int mls_context_cmp(struct context *c1, struct context *c2) { if (!selinux_mls_enabled) |