Lines Matching refs:role
57 [SYM_ROLES] = "role",
217 char *role_id, role_datum_t *role)
235 yyerror2("role %s doesn't exist, is implicit bounds of %s",
240 if (!role->bounds)
241 role->bounds = bounds->s.value;
242 else if (role->bounds != bounds->s.value) {
243 yyerror2("role %s has inconsistent bounds %s/%s",
245 policydbp->p_role_val_to_name[role->bounds - 1]);
253 static int create_role(uint32_t scope, unsigned char isattr, role_datum_t **role, char **key)
260 *role = NULL;
265 yyerror("no role name");
288 *role = datum;
295 *role = hashtab_search(policydbp->symtab[SYM_ROLES].table, id);
296 if (*role && (isattr != (*role)->flavor)) {
297 yyerror2("Identifier %s used as both an attribute and a role",
304 *role = datum;
319 role_datum_t *role = NULL;
324 ret = create_role(SCOPE_DECL, isattr, &role, &key);
349 dest_role->s.value = role->s.value;
350 dest_role->flavor = role->flavor;
352 dest_role = role;
372 role_datum_destroy(role);
373 free(role);
896 role_datum_t *role = NULL;
904 ret = create_role(SCOPE_REQ, isattr, &role, &key);
912 ret = ebitmap_set_bit(&role->dominates, role->s.value - 1, 1);
918 role_datum_destroy(role);
919 free(role);
1262 /* role transitions are not allowed within conditionals */
1274 /* role allows are not allowed within conditionals */