Lines Matching full:role
167 char *role_id, role_datum_t *role)
185 yyerror2("role %s doesn't exist, is implicit bounds of %s",
190 if (!role->bounds)
191 role->bounds = bounds->s.value;
192 else if (role->bounds != bounds->s.value) {
193 yyerror2("role %s has inconsistent bounds %s/%s",
195 policydbp->p_role_val_to_name[role->bounds - 1]);
206 role_datum_t *role = NULL, *dest_role = NULL;
211 yyerror("no role name");
214 if ((role = (role_datum_t *) malloc(sizeof(*role))) == NULL) {
219 role_datum_init(role);
220 role->flavor = isattr ? ROLE_ATTRIB : ROLE_ROLE;
222 declare_symbol(SYM_ROLES, id, (hashtab_datum_t *) role, &value,
225 role->s.value = value;
231 /* this role was already declared in this module, or error */
233 role_datum_destroy(role);
234 free(role);
283 yyerror("duplicate declaration of role");
287 yyerror("could not declare role here");
292 (&dest_role->dominates, role->s.value - 1, 1)) {
299 return dest_role; /* role already declared for this block */
868 role_datum_t *role = NULL;
875 yyerror("no role name");
878 if ((role = malloc(sizeof(*role))) == NULL) {
883 role_datum_init(role);
884 role->flavor = isattr ? ROLE_ATTRIB : ROLE_ROLE;
886 require_symbol(SYM_ROLES, id, (hashtab_datum_t *) role,
887 &role->s.value, &role->s.value);
890 role_datum_destroy(role);
891 free(role);
899 yyerror("duplicate declaration of role");
903 yyerror("could not require role here");
909 (&role->dominates, role->s.value - 1, 1)) {
916 return 0; /* role already required */
1371 /* role transitions are not allowed within conditionals */
1383 /* role allows are not allowed within conditionals */