Home
last modified time | relevance | path

Searched refs:dfa (Results 1 – 20 of 20) sorted by relevance

/linux/security/apparmor/
H A Dpolicy_compat.c53 #define dfa_user_allow(dfa, state) (((ACCEPT_TABLE(dfa)[state]) & 0x7f) | \ argument
54 ((ACCEPT_TABLE(dfa)[state]) & 0x80000000))
55 #define dfa_user_xbits(dfa, state) (((ACCEPT_TABLE(dfa)[state]) >> 7) & 0x7f) argument
56 #define dfa_user_audit(dfa, state) ((ACCEPT_TABLE2(dfa)[state]) & 0x7f) argument
57 #define dfa_user_quiet(dfa, state) (((ACCEPT_TABLE2(dfa)[state]) >> 7) & 0x7f) argument
58 #define dfa_user_xindex(dfa, state) \ argument
59 (dfa_map_xindex(ACCEPT_TABLE(dfa)[state] & 0x3fff))
61 #define dfa_other_allow(dfa, state) ((((ACCEPT_TABLE(dfa)[state]) >> 14) & \ argument
63 ((ACCEPT_TABLE(dfa)[state]) & 0x80000000))
64 #define dfa_other_xbits(dfa, state) \ argument
[all …]
H A Dmatch.c154 static int verify_dfa(const struct aa_dfa *dfa) in verify_dfa() argument
159 state_count = dfa->tables[YYTD_ID_BASE]->td_lolen; in verify_dfa()
160 trans_count = dfa->tables[YYTD_ID_NXT]->td_lolen; in verify_dfa()
164 if (DEFAULT_TABLE(dfa)[i] >= state_count) { in verify_dfa() local
168 if (BASE_TABLE(dfa)[i] & MATCH_FLAGS_INVALID) { in verify_dfa()
172 if ((BASE_TABLE(dfa)[i] & MATCH_FLAG_DIFF_ENCODE)) { in verify_dfa()
173 if (!(dfa->flags & YYTH_FLAG_DIFF_ENCODE)) { in verify_dfa()
178 if ((BASE_TABLE(dfa)[i] & MATCH_FLAG_OOB_TRANSITION)) { in verify_dfa()
179 if (base_idx(BASE_TABLE(dfa)[i]) < dfa->max_oob) { in verify_dfa()
183 if (!(dfa->flags & YYTH_FLAG_OOB_TRANS)) { in verify_dfa()
[all …]
H A Dmount.c132 static aa_state_t match_mnt_flags(const struct aa_dfa *dfa, aa_state_t state, in match_mnt_flags() argument
139 state = aa_dfa_next(dfa, state, i + 1); in match_mnt_flags()
167 AA_BUG(!policy->dfa); in do_match_mnt()
171 state = aa_dfa_match(policy->dfa, start, mntpnt); in do_match_mnt()
172 state = aa_dfa_null_transition(policy->dfa, state); in do_match_mnt()
177 state = aa_dfa_match(policy->dfa, state, devname); in do_match_mnt()
178 state = aa_dfa_null_transition(policy->dfa, state); in do_match_mnt()
183 state = aa_dfa_match(policy->dfa, state, type); in do_match_mnt()
184 state = aa_dfa_null_transition(policy->dfa, state); in do_match_mnt()
188 state = match_mnt_flags(policy->dfa, state, flags); in do_match_mnt()
[all …]
H A Dpolicy_unpack.c446 struct aa_dfa *dfa = NULL; in unpack_dfa() local
460 dfa = aa_dfa_unpack(blob + pad, size - pad, flags); in unpack_dfa()
462 if (IS_ERR(dfa)) in unpack_dfa()
463 return dfa; in unpack_dfa()
467 return dfa; in unpack_dfa()
1007 pdb->dfa = unpack_dfa(e, flags); in unpack_pdb()
1008 if (IS_ERR(pdb->dfa)) { in unpack_pdb()
1009 error = PTR_ERR(pdb->dfa); in unpack_pdb()
1010 pdb->dfa = NULL; in unpack_pdb()
1013 } else if (!pdb->dfa) { in unpack_pdb()
[all …]
H A Daf_unix.c70 static aa_state_t match_addr(const struct aa_dfa *dfa, aa_state_t state, in match_addr() argument
75 state = aa_dfa_match_len(dfa, state, addr->sun_path, in match_addr()
78 state = aa_dfa_match_len(dfa, state, ANONYMOUS_ADDR, 1); in match_addr()
80 state = aa_dfa_null_transition(dfa, state); in match_addr()
95 state = match_addr(policy->dfa, state, addr, addrlen); in match_to_local()
98 state = aa_dfa_null_transition(policy->dfa, state); in match_to_local()
148 state = aa_dfa_match_len(policy->dfa, state, &cmd, 1); in match_to_cmd()
165 state = match_addr(policy->dfa, state, peer_addr, peer_addrlen); in match_to_peer()
185 state = aa_dfa_match(rule->policy->dfa, state, in match_label()
310 state = aa_dfa_match_len(rules->policy->dfa, state, in profile_listen_perm()
[all …]
H A Ddomain.c102 state = aa_dfa_match(rules->file->dfa, state, "&"); in match_component()
104 return aa_dfa_match(rules->file->dfa, state, tp->base.hname); in match_component()
108 state = aa_dfa_match_len(rules->file->dfa, state, ":", 1); in match_component()
109 state = aa_dfa_match(rules->file->dfa, state, ns_name); in match_component()
110 state = aa_dfa_match_len(rules->file->dfa, state, ":", 1); in match_component()
111 return aa_dfa_match(rules->file->dfa, state, tp->base.hname); in match_component()
158 state = aa_dfa_match(rules->file->dfa, state, "//&"); in label_compound_match()
330 state = aa_dfa_outofband_transition(attach->xmatch->dfa, state); in aa_xattrs_match()
344 state = aa_dfa_null_transition(attach->xmatch->dfa, in aa_xattrs_match()
347 state = aa_dfa_match_len(attach->xmatch->dfa, state, in aa_xattrs_match()
[all …]
H A Dnet.c202 static aa_state_t aa_dfa_match_be16(const struct aa_dfa *dfa, aa_state_t state, in aa_dfa_match_be16() argument
207 return aa_dfa_match_len(dfa, state, (char *) &buffer, 2); in aa_dfa_match_be16()
231 state = aa_dfa_match_be16(policy->dfa, state, (u16)af); in aa_match_to_prot()
236 state = aa_dfa_match_be16(policy->dfa, state, (u16)type); in aa_match_to_prot()
241 state = aa_dfa_match_be16(policy->dfa, state, (u16)protocol); in aa_match_to_prot()
H A Dcapability.c134 state = aa_dfa_next(rules->policy->dfa, state, cap >> 5); in profile_capable()
209 tmp = aa_dfa_next(rules->policy->dfa, state, i); in aa_profile_capget()
H A Dfile.c197 unsigned int index = ACCEPT_TABLE(rules->dfa)[state]; in aa_lookup_condperms()
202 if ((ACCEPT_TABLE2(rules->dfa)[state] & ACCEPT_FLAG_OWNER)) { in aa_lookup_condperms()
226 state = aa_dfa_match(file_rules->dfa, start, name); in aa_str_perms()
368 state = aa_dfa_null_transition(rules->file->dfa, state); in profile_path_link()
H A Dipc.c96 state = aa_dfa_next(rules->policy->dfa, state, ad->signal); in profile_signal_perm()
H A Dlabel.c1303 return aa_dfa_match(rules->policy->dfa, state, tp->base.hname); in match_component()
1307 state = aa_dfa_match_len(rules->policy->dfa, state, ":", 1); in match_component()
1308 state = aa_dfa_match(rules->policy->dfa, state, ns_name); in match_component()
1309 state = aa_dfa_match_len(rules->policy->dfa, state, ":", 1); in match_component()
1310 return aa_dfa_match(rules->policy->dfa, state, tp->base.hname); in match_component()
1356 state = aa_dfa_match(rules->policy->dfa, state, "//&"); in label_compound_match()
H A Dlib.c401 state = aa_dfa_next(rules->policy->dfa, in aa_profile_match_label()
H A Dapparmorfs.c869 if (rules->file->dfa && *match_str == AA_CLASS_FILE) { in profile_query_cb()
870 state = aa_dfa_match_len(rules->file->dfa, in profile_query_cb()
879 } else if (rules->policy->dfa) { in profile_query_cb()
890 state = aa_dfa_match_len(rules->policy->dfa, in profile_query_cb()
1357 else if (profile->attach.xmatch->dfa) in seq_profile_attach_show()
H A Dpolicy.c113 aa_put_dfa(pdb->dfa); in aa_free_pdb()
H A Dlsm.c2530 nullpdb->dfa = aa_get_dfa(nulldfa); in aa_setup_dfa_engine()
/linux/security/apparmor/include/
H A Dmatch.h129 aa_state_t aa_dfa_match_len(const struct aa_dfa *dfa, aa_state_t start,
131 aa_state_t aa_dfa_match(const struct aa_dfa *dfa, aa_state_t start,
133 aa_state_t aa_dfa_next(const struct aa_dfa *dfa, aa_state_t state,
135 aa_state_t aa_dfa_outofband_transition(const struct aa_dfa *dfa,
137 aa_state_t aa_dfa_match_until(const struct aa_dfa *dfa, aa_state_t start,
139 aa_state_t aa_dfa_matchn_until(const struct aa_dfa *dfa, aa_state_t start,
157 aa_state_t aa_dfa_leftmatch(const struct aa_dfa *dfa, aa_state_t start,
167 static inline struct aa_dfa *aa_get_dfa(struct aa_dfa *dfa) in aa_get_dfa() argument
169 if (dfa) in aa_get_dfa()
170 kref_get(&(dfa->count)); in aa_get_dfa()
[all …]
H A Dpolicy.h112 struct aa_dfa *dfa; member
159 unsigned int index = ACCEPT_TABLE(policy->dfa)[state]; in aa_lookup_perms()
337 return aa_dfa_match_len(rules->policy->dfa, in RULE_MEDIATES()
H A Dlib.h139 static inline aa_state_t aa_dfa_null_transition(const struct aa_dfa *dfa, in aa_dfa_null_transition() argument
143 return aa_dfa_next(dfa, start, 0); in aa_dfa_null_transition()
/linux/arch/mips/include/asm/octeon/
H A Dcvmx-npi-defs.h2240 uint64_t dfa:1; member
2254 uint64_t dfa:1;
2309 uint64_t dfa:1; member
2323 uint64_t dfa:1;
2380 uint64_t dfa:1; member
2394 uint64_t dfa:1;
2447 uint64_t dfa:1; member
2461 uint64_t dfa:1;
H A Dcvmx-npei-defs.h3732 uint64_t dfa:1; member
3746 uint64_t dfa:1;