class security
class file

sid kernel

common file
{
	read
}

class file
inherits file
{
	entrypoint
}

class security
{
	compute_av
}

ifdef(`enable_mls',`
sensitivity s0;

dominance { s0 }

category c0;

level s0:c0;

mlsconstrain file { read }
	( h1 dom h2 );
')

attribute myattr;
type mytype_t;
role myrole_r;
role myrole_r types mytype_t;
bool mybool true;
gen_user(myuser_u,, myrole_r, s0, s0 - s0:c0)

sid kernel	gen_context(myuser_u:myrole_r:mytype_t, s0)


