$94 GRAYBYTE WORDPRESS FILE MANAGER $29

SERVER : vnpttt-amd7f72-h1.vietnix.vn #1 SMP Fri May 24 12:42:50 UTC 2024
SERVER IP : 103.200.23.149 | ADMIN IP 216.73.216.22
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : NONE

/usr/include/sepol/policydb/

HOME
Current File : /usr/include/sepol/policydb//constraint.h
/* Author : Stephen Smalley, <sds@tycho.nsa.gov> */

/* FLASK */

/*
 * A constraint is a condition that must be satisfied in
 * order for one or more permissions to be granted.  
 * Constraints are used to impose additional restrictions
 * beyond the type-based rules in `te' or the role-based
 * transition rules in `rbac'.  Constraints are typically
 * used to prevent a process from transitioning to a new user 
 * identity or role unless it is in a privileged type.
 * Constraints are likewise typically used to prevent a
 * process from labeling an object with a different user
 * identity.   
 */

#ifndef _SEPOL_POLICYDB_CONSTRAINT_H_
#define _SEPOL_POLICYDB_CONSTRAINT_H_

#include <sepol/policydb/policydb.h>
#include <sepol/policydb/ebitmap.h>
#include <sepol/policydb/flask_types.h>

#ifdef __cplusplus
extern "C" {
#endif

#define CEXPR_MAXDEPTH 5

struct type_set;

typedef struct constraint_expr {
#define CEXPR_NOT		1	/* not expr */
#define CEXPR_AND		2	/* expr and expr */
#define CEXPR_OR		3	/* expr or expr */
#define CEXPR_ATTR		4	/* attr op attr */
#define CEXPR_NAMES		5	/* attr op names */
	uint32_t expr_type;	/* expression type */

#define CEXPR_USER 1		/* user */
#define CEXPR_ROLE 2		/* role */
#define CEXPR_TYPE 4		/* type */
#define CEXPR_TARGET 8		/* target if set, source otherwise */
#define CEXPR_XTARGET 16	/* special 3rd target for validatetrans rule */
#define CEXPR_L1L2 32		/* low level 1 vs. low level 2 */
#define CEXPR_L1H2 64		/* low level 1 vs. high level 2 */
#define CEXPR_H1L2 128		/* high level 1 vs. low level 2 */
#define CEXPR_H1H2 256		/* high level 1 vs. high level 2 */
#define CEXPR_L1H1 512		/* low level 1 vs. high level 1 */
#define CEXPR_L2H2 1024		/* low level 2 vs. high level 2 */
	uint32_t attr;		/* attribute */

#define CEXPR_EQ     1		/* == or eq */
#define CEXPR_NEQ    2		/* != */
#define CEXPR_DOM    3		/* dom */
#define CEXPR_DOMBY  4		/* domby  */
#define CEXPR_INCOMP 5		/* incomp */
	uint32_t op;		/* operator */

	ebitmap_t names;	/* names */
	struct type_set *type_names;

	struct constraint_expr *next;	/* next expression */
} constraint_expr_t;

typedef struct constraint_node {
	sepol_access_vector_t permissions;	/* constrained permissions */
	constraint_expr_t *expr;	/* constraint on permissions */
	struct constraint_node *next;	/* next constraint */
} constraint_node_t;

struct policydb;

extern int constraint_expr_init(constraint_expr_t * expr);
extern void constraint_expr_destroy(constraint_expr_t * expr);

#ifdef __cplusplus
}
#endif

#endif				/* _CONSTRAINT_H_ */

/* FLASK */

Current_dir [ NOT WRITEABLE ] Document_root [ WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
30 Aug 2024 10.32 PM
root / root
0755
avrule_block.h
1.599 KB
9 Oct 2021 9.44 AM
root / root
0644
avtab.h
4.632 KB
9 Oct 2021 9.44 AM
root / root
0644
conditional.h
4.622 KB
9 Oct 2021 9.44 AM
root / root
0644
constraint.h
2.511 KB
9 Oct 2021 9.44 AM
root / root
0644
context.h
3.254 KB
9 Oct 2021 9.44 AM
root / root
0644
ebitmap.h
3.102 KB
9 Oct 2021 9.44 AM
root / root
0644
expand.h
3.57 KB
9 Oct 2021 9.44 AM
root / root
0644
flask.h
4.875 KB
9 Oct 2021 9.44 AM
root / root
0644
flask_types.h
1.737 KB
9 Oct 2021 9.44 AM
root / root
0644
hashtab.h
4.289 KB
9 Oct 2021 9.44 AM
root / root
0644
hierarchy.h
1.775 KB
9 Oct 2021 9.44 AM
root / root
0644
link.h
0.505 KB
9 Oct 2021 9.44 AM
root / root
0644
mls_types.h
4.273 KB
9 Oct 2021 9.44 AM
root / root
0644
module.h
1.496 KB
9 Oct 2021 9.44 AM
root / root
0644
polcaps.h
0.704 KB
9 Oct 2021 9.44 AM
root / root
0644
policydb.h
25.367 KB
9 Oct 2021 9.44 AM
root / root
0644
services.h
8.382 KB
9 Oct 2021 9.44 AM
root / root
0644
sidtab.h
1.93 KB
9 Oct 2021 9.44 AM
root / root
0644
symtab.h
1.076 KB
9 Oct 2021 9.44 AM
root / root
0644
util.h
1.427 KB
9 Oct 2021 9.44 AM
root / root
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2026 CONTACT ME
Static GIF