• Home
  • Raw
  • Download

Lines Matching refs:key

37 		  struct avtab_key *key, struct avtab_datum *datum)  in avtab_insert_node()  argument
43 newnode->key = *key; in avtab_insert_node()
57 static int avtab_insert(struct avtab *h, struct avtab_key *key, struct avtab_datum *datum) in avtab_insert() argument
61 u16 specified = key->specified & ~(AVTAB_ENABLED|AVTAB_ENABLED_OLD); in avtab_insert()
66 hvalue = avtab_hash(key, h->mask); in avtab_insert()
70 if (key->source_type == cur->key.source_type && in avtab_insert()
71 key->target_type == cur->key.target_type && in avtab_insert()
72 key->target_class == cur->key.target_class && in avtab_insert()
73 (specified & cur->key.specified)) in avtab_insert()
75 if (key->source_type < cur->key.source_type) in avtab_insert()
77 if (key->source_type == cur->key.source_type && in avtab_insert()
78 key->target_type < cur->key.target_type) in avtab_insert()
80 if (key->source_type == cur->key.source_type && in avtab_insert()
81 key->target_type == cur->key.target_type && in avtab_insert()
82 key->target_class < cur->key.target_class) in avtab_insert()
86 newnode = avtab_insert_node(h, hvalue, prev, cur, key, datum); in avtab_insert()
98 avtab_insert_nonunique(struct avtab *h, struct avtab_key *key, struct avtab_datum *datum) in avtab_insert_nonunique() argument
102 u16 specified = key->specified & ~(AVTAB_ENABLED|AVTAB_ENABLED_OLD); in avtab_insert_nonunique()
106 hvalue = avtab_hash(key, h->mask); in avtab_insert_nonunique()
110 if (key->source_type == cur->key.source_type && in avtab_insert_nonunique()
111 key->target_type == cur->key.target_type && in avtab_insert_nonunique()
112 key->target_class == cur->key.target_class && in avtab_insert_nonunique()
113 (specified & cur->key.specified)) in avtab_insert_nonunique()
115 if (key->source_type < cur->key.source_type) in avtab_insert_nonunique()
117 if (key->source_type == cur->key.source_type && in avtab_insert_nonunique()
118 key->target_type < cur->key.target_type) in avtab_insert_nonunique()
120 if (key->source_type == cur->key.source_type && in avtab_insert_nonunique()
121 key->target_type == cur->key.target_type && in avtab_insert_nonunique()
122 key->target_class < cur->key.target_class) in avtab_insert_nonunique()
125 return avtab_insert_node(h, hvalue, prev, cur, key, datum); in avtab_insert_nonunique()
128 struct avtab_datum *avtab_search(struct avtab *h, struct avtab_key *key) in avtab_search() argument
132 u16 specified = key->specified & ~(AVTAB_ENABLED|AVTAB_ENABLED_OLD); in avtab_search()
137 hvalue = avtab_hash(key, h->mask); in avtab_search()
139 if (key->source_type == cur->key.source_type && in avtab_search()
140 key->target_type == cur->key.target_type && in avtab_search()
141 key->target_class == cur->key.target_class && in avtab_search()
142 (specified & cur->key.specified)) in avtab_search()
145 if (key->source_type < cur->key.source_type) in avtab_search()
147 if (key->source_type == cur->key.source_type && in avtab_search()
148 key->target_type < cur->key.target_type) in avtab_search()
150 if (key->source_type == cur->key.source_type && in avtab_search()
151 key->target_type == cur->key.target_type && in avtab_search()
152 key->target_class < cur->key.target_class) in avtab_search()
163 avtab_search_node(struct avtab *h, struct avtab_key *key) in avtab_search_node() argument
167 u16 specified = key->specified & ~(AVTAB_ENABLED|AVTAB_ENABLED_OLD); in avtab_search_node()
172 hvalue = avtab_hash(key, h->mask); in avtab_search_node()
174 if (key->source_type == cur->key.source_type && in avtab_search_node()
175 key->target_type == cur->key.target_type && in avtab_search_node()
176 key->target_class == cur->key.target_class && in avtab_search_node()
177 (specified & cur->key.specified)) in avtab_search_node()
180 if (key->source_type < cur->key.source_type) in avtab_search_node()
182 if (key->source_type == cur->key.source_type && in avtab_search_node()
183 key->target_type < cur->key.target_type) in avtab_search_node()
185 if (key->source_type == cur->key.source_type && in avtab_search_node()
186 key->target_type == cur->key.target_type && in avtab_search_node()
187 key->target_class < cur->key.target_class) in avtab_search_node()
203 if (node->key.source_type == cur->key.source_type && in avtab_search_node_next()
204 node->key.target_type == cur->key.target_type && in avtab_search_node_next()
205 node->key.target_class == cur->key.target_class && in avtab_search_node_next()
206 (specified & cur->key.specified)) in avtab_search_node_next()
209 if (node->key.source_type < cur->key.source_type) in avtab_search_node_next()
211 if (node->key.source_type == cur->key.source_type && in avtab_search_node_next()
212 node->key.target_type < cur->key.target_type) in avtab_search_node_next()
214 if (node->key.source_type == cur->key.source_type && in avtab_search_node_next()
215 node->key.target_type == cur->key.target_type && in avtab_search_node_next()
216 node->key.target_class < cur->key.target_class) in avtab_search_node_next()
335 struct avtab_key key; in avtab_read_item() local
340 memset(&key, 0, sizeof(struct avtab_key)); in avtab_read_item()
363 key.source_type = (u16)val; in avtab_read_item()
364 if (key.source_type != val) { in avtab_read_item()
369 key.target_type = (u16)val; in avtab_read_item()
370 if (key.target_type != val) { in avtab_read_item()
375 key.target_class = (u16)val; in avtab_read_item()
376 if (key.target_class != val) { in avtab_read_item()
396 key.specified = spec_order[i] | enabled; in avtab_read_item()
398 rc = insertf(a, &key, &datum, p); in avtab_read_item()
418 key.source_type = le16_to_cpu(buf16[items++]); in avtab_read_item()
419 key.target_type = le16_to_cpu(buf16[items++]); in avtab_read_item()
420 key.target_class = le16_to_cpu(buf16[items++]); in avtab_read_item()
421 key.specified = le16_to_cpu(buf16[items++]); in avtab_read_item()
423 if (!policydb_type_isvalid(pol, key.source_type) || in avtab_read_item()
424 !policydb_type_isvalid(pol, key.target_type) || in avtab_read_item()
425 !policydb_class_isvalid(pol, key.target_class)) { in avtab_read_item()
432 if (key.specified & spec_order[i]) in avtab_read_item()
446 if ((key.specified & AVTAB_TYPE) && in avtab_read_item()
451 return insertf(a, &key, &datum, p); in avtab_read_item()