Lines Matching refs:doi_def
101 struct cipso_v4_doi *doi_def) in netlbl_cipsov4_add_common() argument
107 doi_def->doi = nla_get_u32(info->attrs[NLBL_CIPSOV4_A_DOI]); in netlbl_cipsov4_add_common()
118 doi_def->tags[iter++] = nla_get_u8(nla); in netlbl_cipsov4_add_common()
121 doi_def->tags[iter++] = CIPSO_V4_TAG_INVALID; in netlbl_cipsov4_add_common()
145 struct cipso_v4_doi *doi_def = NULL; in netlbl_cipsov4_add_std() local
161 doi_def = kmalloc(sizeof(*doi_def), GFP_KERNEL); in netlbl_cipsov4_add_std()
162 if (doi_def == NULL) in netlbl_cipsov4_add_std()
164 doi_def->map.std = kzalloc(sizeof(*doi_def->map.std), GFP_KERNEL); in netlbl_cipsov4_add_std()
165 if (doi_def->map.std == NULL) { in netlbl_cipsov4_add_std()
169 doi_def->type = CIPSO_V4_MAP_TRANS; in netlbl_cipsov4_add_std()
171 ret_val = netlbl_cipsov4_add_common(info, doi_def); in netlbl_cipsov4_add_std()
191 doi_def->map.std->lvl.local_size) in netlbl_cipsov4_add_std()
192 doi_def->map.std->lvl.local_size = in netlbl_cipsov4_add_std()
200 doi_def->map.std->lvl.cipso_size) in netlbl_cipsov4_add_std()
201 doi_def->map.std->lvl.cipso_size = in netlbl_cipsov4_add_std()
206 doi_def->map.std->lvl.local = kcalloc(doi_def->map.std->lvl.local_size, in netlbl_cipsov4_add_std()
209 if (doi_def->map.std->lvl.local == NULL) { in netlbl_cipsov4_add_std()
213 doi_def->map.std->lvl.cipso = kcalloc(doi_def->map.std->lvl.cipso_size, in netlbl_cipsov4_add_std()
216 if (doi_def->map.std->lvl.cipso == NULL) { in netlbl_cipsov4_add_std()
220 for (iter = 0; iter < doi_def->map.std->lvl.local_size; iter++) in netlbl_cipsov4_add_std()
221 doi_def->map.std->lvl.local[iter] = CIPSO_V4_INV_LVL; in netlbl_cipsov4_add_std()
222 for (iter = 0; iter < doi_def->map.std->lvl.cipso_size; iter++) in netlbl_cipsov4_add_std()
223 doi_def->map.std->lvl.cipso[iter] = CIPSO_V4_INV_LVL; in netlbl_cipsov4_add_std()
237 doi_def->map.std->lvl.local[nla_get_u32(lvl_loc)] = in netlbl_cipsov4_add_std()
239 doi_def->map.std->lvl.cipso[nla_get_u32(lvl_rem)] = in netlbl_cipsov4_add_std()
264 doi_def->map.std->cat.local_size) in netlbl_cipsov4_add_std()
265 doi_def->map.std->cat.local_size = in netlbl_cipsov4_add_std()
273 doi_def->map.std->cat.cipso_size) in netlbl_cipsov4_add_std()
274 doi_def->map.std->cat.cipso_size = in netlbl_cipsov4_add_std()
279 doi_def->map.std->cat.local = kcalloc( in netlbl_cipsov4_add_std()
280 doi_def->map.std->cat.local_size, in netlbl_cipsov4_add_std()
283 if (doi_def->map.std->cat.local == NULL) { in netlbl_cipsov4_add_std()
287 doi_def->map.std->cat.cipso = kcalloc( in netlbl_cipsov4_add_std()
288 doi_def->map.std->cat.cipso_size, in netlbl_cipsov4_add_std()
291 if (doi_def->map.std->cat.cipso == NULL) { in netlbl_cipsov4_add_std()
295 for (iter = 0; iter < doi_def->map.std->cat.local_size; iter++) in netlbl_cipsov4_add_std()
296 doi_def->map.std->cat.local[iter] = CIPSO_V4_INV_CAT; in netlbl_cipsov4_add_std()
297 for (iter = 0; iter < doi_def->map.std->cat.cipso_size; iter++) in netlbl_cipsov4_add_std()
298 doi_def->map.std->cat.cipso[iter] = CIPSO_V4_INV_CAT; in netlbl_cipsov4_add_std()
312 doi_def->map.std->cat.local[ in netlbl_cipsov4_add_std()
315 doi_def->map.std->cat.cipso[ in netlbl_cipsov4_add_std()
321 ret_val = cipso_v4_doi_add(doi_def, audit_info); in netlbl_cipsov4_add_std()
327 cipso_v4_doi_free(doi_def); in netlbl_cipsov4_add_std()
346 struct cipso_v4_doi *doi_def = NULL; in netlbl_cipsov4_add_pass() local
351 doi_def = kmalloc(sizeof(*doi_def), GFP_KERNEL); in netlbl_cipsov4_add_pass()
352 if (doi_def == NULL) in netlbl_cipsov4_add_pass()
354 doi_def->type = CIPSO_V4_MAP_PASS; in netlbl_cipsov4_add_pass()
356 ret_val = netlbl_cipsov4_add_common(info, doi_def); in netlbl_cipsov4_add_pass()
360 ret_val = cipso_v4_doi_add(doi_def, audit_info); in netlbl_cipsov4_add_pass()
366 cipso_v4_doi_free(doi_def); in netlbl_cipsov4_add_pass()
385 struct cipso_v4_doi *doi_def = NULL; in netlbl_cipsov4_add_local() local
390 doi_def = kmalloc(sizeof(*doi_def), GFP_KERNEL); in netlbl_cipsov4_add_local()
391 if (doi_def == NULL) in netlbl_cipsov4_add_local()
393 doi_def->type = CIPSO_V4_MAP_LOCAL; in netlbl_cipsov4_add_local()
395 ret_val = netlbl_cipsov4_add_common(info, doi_def); in netlbl_cipsov4_add_local()
399 ret_val = cipso_v4_doi_add(doi_def, audit_info); in netlbl_cipsov4_add_local()
405 cipso_v4_doi_free(doi_def); in netlbl_cipsov4_add_local()
473 struct cipso_v4_doi *doi_def; in netlbl_cipsov4_list() local
497 doi_def = cipso_v4_doi_getdef(doi); in netlbl_cipsov4_list()
498 if (doi_def == NULL) { in netlbl_cipsov4_list()
503 ret_val = nla_put_u32(ans_skb, NLBL_CIPSOV4_A_MTYPE, doi_def->type); in netlbl_cipsov4_list()
514 doi_def->tags[iter] != CIPSO_V4_TAG_INVALID; in netlbl_cipsov4_list()
518 doi_def->tags[iter]); in netlbl_cipsov4_list()
524 switch (doi_def->type) { in netlbl_cipsov4_list()
532 iter < doi_def->map.std->lvl.local_size; in netlbl_cipsov4_list()
534 if (doi_def->map.std->lvl.local[iter] == in netlbl_cipsov4_list()
550 doi_def->map.std->lvl.local[iter]); in netlbl_cipsov4_list()
563 iter < doi_def->map.std->cat.local_size; in netlbl_cipsov4_list()
565 if (doi_def->map.std->cat.local[iter] == in netlbl_cipsov4_list()
581 doi_def->map.std->cat.local[iter]); in netlbl_cipsov4_list()
622 static int netlbl_cipsov4_listall_cb(struct cipso_v4_doi *doi_def, void *arg) in netlbl_cipsov4_listall_cb() argument
634 ret_val = nla_put_u32(cb_arg->skb, NLBL_CIPSOV4_A_DOI, doi_def->doi); in netlbl_cipsov4_listall_cb()
639 doi_def->type); in netlbl_cipsov4_listall_cb()