security/selinux/ss/policydb.c

Source file repositories/reference/linux-study-clean/security/selinux/ss/policydb.c

File Facts

System
Linux kernel
Corpus path
security/selinux/ss/policydb.c
Extension
.c
Size
84290 bytes
Lines
4018
Domain
Core OS
Bucket
Security And Isolation
Inferred role
Core OS: implementation source
Status
source implementation candidate

Why This File Exists

Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.

Dependency Surface

Detected Declarations

Annotated Snippet

struct policydb_compat_info {
	unsigned int version;
	unsigned int sym_num;
	unsigned int ocon_num;
};

/* These need to be updated if SYM_NUM or OCON_NUM changes */
static const struct policydb_compat_info policydb_compat[] = {
	{
		.version = POLICYDB_VERSION_BASE,
		.sym_num = SYM_NUM - 3,
		.ocon_num = OCON_NUM - 3,
	},
	{
		.version = POLICYDB_VERSION_BOOL,
		.sym_num = SYM_NUM - 2,
		.ocon_num = OCON_NUM - 3,
	},
	{
		.version = POLICYDB_VERSION_IPV6,
		.sym_num = SYM_NUM - 2,
		.ocon_num = OCON_NUM - 2,
	},
	{
		.version = POLICYDB_VERSION_NLCLASS,
		.sym_num = SYM_NUM - 2,
		.ocon_num = OCON_NUM - 2,
	},
	{
		.version = POLICYDB_VERSION_MLS,
		.sym_num = SYM_NUM,
		.ocon_num = OCON_NUM - 2,
	},
	{
		.version = POLICYDB_VERSION_AVTAB,
		.sym_num = SYM_NUM,
		.ocon_num = OCON_NUM - 2,
	},
	{
		.version = POLICYDB_VERSION_RANGETRANS,
		.sym_num = SYM_NUM,
		.ocon_num = OCON_NUM - 2,
	},
	{
		.version = POLICYDB_VERSION_POLCAP,
		.sym_num = SYM_NUM,
		.ocon_num = OCON_NUM - 2,
	},
	{
		.version = POLICYDB_VERSION_PERMISSIVE,
		.sym_num = SYM_NUM,
		.ocon_num = OCON_NUM - 2,
	},
	{
		.version = POLICYDB_VERSION_BOUNDARY,
		.sym_num = SYM_NUM,
		.ocon_num = OCON_NUM - 2,
	},
	{
		.version = POLICYDB_VERSION_FILENAME_TRANS,
		.sym_num = SYM_NUM,
		.ocon_num = OCON_NUM - 2,
	},
	{
		.version = POLICYDB_VERSION_ROLETRANS,
		.sym_num = SYM_NUM,
		.ocon_num = OCON_NUM - 2,
	},
	{
		.version = POLICYDB_VERSION_NEW_OBJECT_DEFAULTS,
		.sym_num = SYM_NUM,
		.ocon_num = OCON_NUM - 2,
	},
	{
		.version = POLICYDB_VERSION_DEFAULT_TYPE,
		.sym_num = SYM_NUM,
		.ocon_num = OCON_NUM - 2,
	},
	{
		.version = POLICYDB_VERSION_CONSTRAINT_NAMES,
		.sym_num = SYM_NUM,
		.ocon_num = OCON_NUM - 2,
	},
	{
		.version = POLICYDB_VERSION_XPERMS_IOCTL,
		.sym_num = SYM_NUM,
		.ocon_num = OCON_NUM - 2,
	},
	{
		.version = POLICYDB_VERSION_INFINIBAND,

Annotation

Implementation Notes