首页 存档 技术 查看内容

Linux强制访问控制机制模块代码分析报告(八)

2018-3-30 13:00 |来自: 互联网 321 0

摘要: 今天概要的介绍一下mls_type.h头文件 mls_type.h 文件描述 对于mls_type.h文件,其完整文件名为security/selinux/ss/mls_types.h,该文件定义了MLS策略使用的类型。 主要变量定义 该文件定义了三个宏,分别为:ml ...

今天概要的介绍一下mls_type.h头文件


mls_type.h


文件描述

对于mls_type.h文件,其完整文件名为security/selinux/ss/mls_types.h,该文件定义了MLS策略使用的类型。


主要变量定义

该文件定义了三个宏,分别为:mls_level_incomp()、mls_evel_between()及mls_range_contains(),其作用分别是:


宏名 宏的作用

mls_level_incomp() 判断两个安全级别是否不可比

mls_level_between() 判断一个安全级别是否位于另外两个安全级别之间

mls_level_contains() 判断两个安全级别之间的包含关系


结构体定义

对于该文件中定义的结构体mls_level及mls_range等详见“Linux多安全策略和动态安全策略框架机制模块代码分析报告”一文,这里不再赘述。


外部函数

对于该文件涉及的外部函数功能,参见“Linux多安全策略和动态安全策略框架机制模块代码分析报告”一文,这里不再赘述。


内部函数

对于该文件中定义的各内部函数,在前边的一系列文章中有详细的解释。


核心代码注释

该文件中只定义了mls_level_isvalid()和mls_context_to_sid()两个函数,它们用来表示安全级别间的关系,下面主要对这两个函数进行详细解释。


mls_level_isvalid()


static inline int mls_level_eq(struct mls_level *l1, struct mls_level *l2)

{

/*

* 如果安全级别l1的敏感属性等于安全级别l2的敏感属性并且l1的类别集

* 合等于l2的类别集合,则返回真。

*/

return ((l1-

声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部