Lines Matching refs:ptr
17 struct bpf_dynptr ptr; member
61 static int get_map_val_dynptr(struct bpf_dynptr *ptr) in get_map_val_dynptr() argument
71 bpf_dynptr_from_mem(map_val, sizeof(*map_val), 0, ptr); in get_map_val_dynptr()
83 struct bpf_dynptr ptr = {}; in ringbuf_missing_release1() local
85 bpf_ringbuf_reserve_dynptr(&ringbuf, val, 0, &ptr); in ringbuf_missing_release1()
118 struct bpf_dynptr ptr; in missing_release_callback_fn() local
120 bpf_ringbuf_reserve_dynptr(&ringbuf, val, 0, &ptr); in missing_release_callback_fn()
141 struct bpf_dynptr ptr; in ringbuf_release_uninit_dynptr() local
144 bpf_ringbuf_submit_dynptr(&ptr, 0); in ringbuf_release_uninit_dynptr()
154 struct bpf_dynptr ptr; in use_after_invalid() local
157 bpf_ringbuf_reserve_dynptr(&ringbuf, sizeof(read_data), 0, &ptr); in use_after_invalid()
159 bpf_dynptr_read(read_data, sizeof(read_data), &ptr, 0, 0); in use_after_invalid()
161 bpf_ringbuf_submit_dynptr(&ptr, 0); in use_after_invalid()
164 bpf_dynptr_read(read_data, sizeof(read_data), &ptr, 0, 0); in use_after_invalid()
174 struct bpf_dynptr ptr; in ringbuf_invalid_api() local
177 bpf_ringbuf_reserve_dynptr(&ringbuf, sizeof(*sample), 0, &ptr); in ringbuf_invalid_api()
178 sample = bpf_dynptr_data(&ptr, 0, sizeof(*sample)); in ringbuf_invalid_api()
188 bpf_ringbuf_discard_dynptr(&ptr, 0); in ringbuf_invalid_api()
197 struct bpf_dynptr ptr; in add_dynptr_to_map1() local
200 bpf_ringbuf_reserve_dynptr(&ringbuf, val, 0, &ptr); in add_dynptr_to_map1()
203 bpf_map_update_elem(&array_map1, &key, &ptr, 0); in add_dynptr_to_map1()
205 bpf_ringbuf_submit_dynptr(&ptr, 0); in add_dynptr_to_map1()
218 bpf_ringbuf_reserve_dynptr(&ringbuf, val, 0, &x.ptr); in add_dynptr_to_map2()
223 bpf_ringbuf_submit_dynptr(&x.ptr, 0); in add_dynptr_to_map2()
233 struct bpf_dynptr ptr; in data_slice_out_of_bounds_ringbuf() local
236 bpf_ringbuf_reserve_dynptr(&ringbuf, 8, 0, &ptr); in data_slice_out_of_bounds_ringbuf()
238 data = bpf_dynptr_data(&ptr, 0, 8); in data_slice_out_of_bounds_ringbuf()
246 bpf_ringbuf_submit_dynptr(&ptr, 0); in data_slice_out_of_bounds_ringbuf()
255 struct bpf_dynptr ptr; in data_slice_out_of_bounds_skb() local
259 bpf_dynptr_from_skb(skb, 0, &ptr); in data_slice_out_of_bounds_skb()
261 hdr = bpf_dynptr_slice_rdwr(&ptr, 0, buffer, sizeof(buffer)); in data_slice_out_of_bounds_skb()
276 struct bpf_dynptr ptr; in data_slice_out_of_bounds_map_value() local
279 get_map_val_dynptr(&ptr); in data_slice_out_of_bounds_map_value()
281 data = bpf_dynptr_data(&ptr, 0, sizeof(map_val)); in data_slice_out_of_bounds_map_value()
296 struct bpf_dynptr ptr; in data_slice_use_after_release1() local
299 bpf_ringbuf_reserve_dynptr(&ringbuf, sizeof(*sample), 0, &ptr); in data_slice_use_after_release1()
300 sample = bpf_dynptr_data(&ptr, 0, sizeof(*sample)); in data_slice_use_after_release1()
306 bpf_ringbuf_submit_dynptr(&ptr, 0); in data_slice_use_after_release1()
314 bpf_ringbuf_discard_dynptr(&ptr, 0); in data_slice_use_after_release1()
360 struct bpf_dynptr ptr; in data_slice_missing_null_check1() local
363 bpf_ringbuf_reserve_dynptr(&ringbuf, 8, 0, &ptr); in data_slice_missing_null_check1()
365 data = bpf_dynptr_data(&ptr, 0, 8); in data_slice_missing_null_check1()
372 bpf_ringbuf_submit_dynptr(&ptr, 0); in data_slice_missing_null_check1()
381 struct bpf_dynptr ptr; in data_slice_missing_null_check2() local
384 bpf_ringbuf_reserve_dynptr(&ringbuf, 16, 0, &ptr); in data_slice_missing_null_check2()
386 data1 = bpf_dynptr_data(&ptr, 0, 8); in data_slice_missing_null_check2()
387 data2 = bpf_dynptr_data(&ptr, 0, 8); in data_slice_missing_null_check2()
392 bpf_ringbuf_discard_dynptr(&ptr, 0); in data_slice_missing_null_check2()
403 struct bpf_dynptr ptr; in invalid_helper1() local
405 get_map_val_dynptr(&ptr); in invalid_helper1()
408 bpf_strncmp((const char *)&ptr, sizeof(ptr), "hello!"); in invalid_helper1()
418 struct bpf_dynptr ptr; in invalid_helper2() local
421 get_map_val_dynptr(&ptr); in invalid_helper2()
424 bpf_dynptr_read(read_data, sizeof(read_data), (void *)&ptr + 8, 0, 0); in invalid_helper2()
433 struct bpf_dynptr ptr; in invalid_write1() local
437 get_map_val_dynptr(&ptr); in invalid_write1()
439 memcpy(&ptr, &x, sizeof(x)); in invalid_write1()
442 data = bpf_dynptr_data(&ptr, 0, 1); in invalid_write1()
456 struct bpf_dynptr ptr; in invalid_write2() local
460 bpf_ringbuf_reserve_dynptr(&ringbuf, 64, 0, &ptr); in invalid_write2()
462 memcpy((void *)&ptr + 8, &x, sizeof(x)); in invalid_write2()
465 bpf_dynptr_read(read_data, sizeof(read_data), &ptr, 0, 0); in invalid_write2()
467 bpf_ringbuf_submit_dynptr(&ptr, 0); in invalid_write2()
480 struct bpf_dynptr ptr; in invalid_write3() local
485 bpf_ringbuf_reserve_dynptr(&ringbuf, 8, 0, &ptr); in invalid_write3()
490 memcpy((void *)&ptr + len, &x, sizeof(x)); in invalid_write3()
493 bpf_ringbuf_submit_dynptr(&ptr, 0); in invalid_write3()
512 struct bpf_dynptr ptr; in invalid_write4() local
514 bpf_ringbuf_reserve_dynptr(&ringbuf, 64, 0, &ptr); in invalid_write4()
516 bpf_loop(10, invalid_write4_callback, &ptr, 0); in invalid_write4()
519 bpf_ringbuf_submit_dynptr(&ptr, 0); in invalid_write4()
544 struct bpf_dynptr ptr; in invalid_read1() local
546 bpf_ringbuf_reserve_dynptr(&ringbuf, 64, 0, &ptr); in invalid_read1()
549 val = *(int *)&ptr; in invalid_read1()
551 bpf_ringbuf_discard_dynptr(&ptr, 0); in invalid_read1()
561 struct bpf_dynptr ptr; in invalid_read2() local
564 get_map_val_dynptr(&ptr); in invalid_read2()
567 bpf_dynptr_read(read_data, sizeof(read_data), (void *)&ptr + 1, 0, 0); in invalid_read2()
604 struct bpf_dynptr ptr; in invalid_read4() local
606 bpf_ringbuf_reserve_dynptr(&ringbuf, 64, 0, &ptr); in invalid_read4()
608 bpf_loop(10, invalid_read4_callback, &ptr, 0); in invalid_read4()
610 bpf_ringbuf_submit_dynptr(&ptr, 0); in invalid_read4()
620 struct bpf_dynptr ptr; in invalid_offset() local
623 bpf_ringbuf_reserve_dynptr(&ringbuf, 64, 0, &ptr + 1); in invalid_offset()
625 bpf_ringbuf_discard_dynptr(&ptr, 0); in invalid_offset()
635 struct bpf_dynptr ptr; in release_twice() local
637 bpf_ringbuf_reserve_dynptr(&ringbuf, 16, 0, &ptr); in release_twice()
639 bpf_ringbuf_discard_dynptr(&ptr, 0); in release_twice()
642 bpf_ringbuf_discard_dynptr(&ptr, 0); in release_twice()
662 struct bpf_dynptr ptr; in release_twice_callback() local
664 bpf_ringbuf_reserve_dynptr(&ringbuf, 32, 0, &ptr); in release_twice_callback()
666 bpf_ringbuf_discard_dynptr(&ptr, 0); in release_twice_callback()
668 bpf_loop(10, release_twice_callback_fn, &ptr, 0); in release_twice_callback()
678 struct bpf_dynptr ptr; in dynptr_from_mem_invalid_api() local
682 bpf_dynptr_from_mem(&x, sizeof(x), 0, &ptr); in dynptr_from_mem_invalid_api()
932 struct bpf_dynptr ptr; in dynptr_overwrite_unref() local
934 if (get_map_val_dynptr(&ptr)) in dynptr_overwrite_unref()
936 if (get_map_val_dynptr(&ptr)) in dynptr_overwrite_unref()
938 if (get_map_val_dynptr(&ptr)) in dynptr_overwrite_unref()
949 struct bpf_dynptr ptr; in dynptr_invalidate_slice_reinit() local
952 if (get_map_val_dynptr(&ptr)) in dynptr_invalidate_slice_reinit()
954 p = bpf_dynptr_data(&ptr, 0, 1); in dynptr_invalidate_slice_reinit()
957 if (get_map_val_dynptr(&ptr)) in dynptr_invalidate_slice_reinit()
970 struct bpf_dynptr ptr; in dynptr_invalidate_slice_or_null() local
973 if (get_map_val_dynptr(&ptr)) in dynptr_invalidate_slice_or_null()
976 p = bpf_dynptr_data(&ptr, 0, 1); in dynptr_invalidate_slice_or_null()
977 *(__u8 *)&ptr = 0; in dynptr_invalidate_slice_or_null()
1041 struct bpf_dynptr ptr; in dynptr_overwrite_ref() local
1043 bpf_ringbuf_reserve_dynptr(&ringbuf, 64, 0, &ptr); in dynptr_overwrite_ref()
1045 if (get_map_val_dynptr(&ptr)) in dynptr_overwrite_ref()
1046 bpf_ringbuf_discard_dynptr(&ptr, 0); in dynptr_overwrite_ref()
1058 struct bpf_dynptr ptr; in dynptr_read_into_slot() member
1063 bpf_ringbuf_reserve_dynptr(&ringbuf, 64, 0, &data.ptr); in dynptr_read_into_slot()
1065 bpf_dynptr_read(data.buf, sizeof(data.buf), &data.ptr, 0, 0); in dynptr_read_into_slot()
1075 struct bpf_dynptr ptr; in skb_invalid_slice_write() local
1079 bpf_dynptr_from_skb(skb, 0, &ptr); in skb_invalid_slice_write()
1081 hdr = bpf_dynptr_slice(&ptr, 0, buffer, sizeof(buffer)); in skb_invalid_slice_write()
1096 struct bpf_dynptr ptr; in skb_invalid_data_slice1() local
1100 bpf_dynptr_from_skb(skb, 0, &ptr); in skb_invalid_data_slice1()
1102 hdr = bpf_dynptr_slice(&ptr, 0, buffer, sizeof(buffer)); in skb_invalid_data_slice1()
1122 struct bpf_dynptr ptr; in skb_invalid_data_slice2() local
1126 bpf_dynptr_from_skb(skb, 0, &ptr); in skb_invalid_data_slice2()
1128 hdr = bpf_dynptr_slice_rdwr(&ptr, 0, buffer, sizeof(buffer)); in skb_invalid_data_slice2()
1149 struct bpf_dynptr ptr; in skb_invalid_data_slice3() local
1153 bpf_dynptr_from_skb(skb, 0, &ptr); in skb_invalid_data_slice3()
1155 hdr = bpf_dynptr_slice(&ptr, 0, buffer, sizeof(buffer)); in skb_invalid_data_slice3()
1161 bpf_dynptr_write(&ptr, 0, write_data, sizeof(write_data), 0); in skb_invalid_data_slice3()
1175 struct bpf_dynptr ptr; in skb_invalid_data_slice4() local
1179 bpf_dynptr_from_skb(skb, 0, &ptr); in skb_invalid_data_slice4()
1180 hdr = bpf_dynptr_slice_rdwr(&ptr, 0, buffer, sizeof(buffer)); in skb_invalid_data_slice4()
1186 bpf_dynptr_write(&ptr, 0, write_data, sizeof(write_data), 0); in skb_invalid_data_slice4()
1199 struct bpf_dynptr ptr; in xdp_invalid_data_slice1() local
1203 bpf_dynptr_from_xdp(xdp, 0, &ptr); in xdp_invalid_data_slice1()
1204 hdr = bpf_dynptr_slice(&ptr, 0, buffer, sizeof(buffer)); in xdp_invalid_data_slice1()
1224 struct bpf_dynptr ptr; in xdp_invalid_data_slice2() local
1228 bpf_dynptr_from_xdp(xdp, 0, &ptr); in xdp_invalid_data_slice2()
1229 hdr = bpf_dynptr_slice_rdwr(&ptr, 0, buffer, sizeof(buffer)); in xdp_invalid_data_slice2()
1249 struct bpf_dynptr ptr; in skb_invalid_ctx() local
1252 bpf_dynptr_from_skb(ctx, 0, &ptr); in skb_invalid_ctx()
1264 struct bpf_dynptr ptr; in uninit_write_into_slot() member
1267 bpf_ringbuf_reserve_dynptr(&ringbuf, 80, 0, &data.ptr); in uninit_write_into_slot()
1279 struct bpf_dynptr ptr; in xdp_invalid_ctx() local
1282 bpf_dynptr_from_xdp(ctx, 0, &ptr); in xdp_invalid_ctx()
1293 struct bpf_dynptr ptr; in dynptr_slice_var_len1() local
1297 bpf_dynptr_from_skb(skb, 0, &ptr); in dynptr_slice_var_len1()
1300 hdr = bpf_dynptr_slice(&ptr, 0, buffer, hdr_size); in dynptr_slice_var_len1()
1313 struct bpf_dynptr ptr; in dynptr_slice_var_len2() local
1316 bpf_dynptr_from_skb(skb, 0, &ptr); in dynptr_slice_var_len2()
1320 hdr = bpf_dynptr_slice_rdwr(&ptr, 0, buffer, hdr_size); in dynptr_slice_var_len2()
1343 struct bpf_dynptr ptr; in invalid_data_slices() local
1346 if (get_map_val_dynptr(&ptr)) in invalid_data_slices()
1349 slice = bpf_dynptr_data(&ptr, 0, sizeof(__u32)); in invalid_data_slices()
1353 bpf_loop(10, callback, &ptr, 0); in invalid_data_slices()
1369 struct bpf_dynptr ptr; in invalid_slice_rdwr_rdonly() local
1372 bpf_dynptr_from_skb(skb, 0, &ptr); in invalid_slice_rdwr_rdonly()
1377 hdr = bpf_dynptr_slice_rdwr(&ptr, 0, buffer, sizeof(buffer)); in invalid_slice_rdwr_rdonly()
1388 struct bpf_dynptr ptr = {}; in dynptr_adjust_invalid() local
1391 bpf_dynptr_adjust(&ptr, 1, 2); in dynptr_adjust_invalid()
1401 struct bpf_dynptr ptr = {}; in dynptr_is_null_invalid() local
1404 bpf_dynptr_is_null(&ptr); in dynptr_is_null_invalid()
1414 struct bpf_dynptr ptr = {}; in dynptr_is_rdonly_invalid() local
1417 bpf_dynptr_is_rdonly(&ptr); in dynptr_is_rdonly_invalid()
1427 struct bpf_dynptr ptr = {}; in dynptr_size_invalid() local
1430 bpf_dynptr_size(&ptr); in dynptr_size_invalid()
1475 struct bpf_dynptr ptr; in clone_invalidate1() local
1478 bpf_ringbuf_reserve_dynptr(&ringbuf, val, 0, &ptr); in clone_invalidate1()
1480 bpf_dynptr_clone(&ptr, &clone); in clone_invalidate1()
1482 bpf_ringbuf_submit_dynptr(&ptr, 0); in clone_invalidate1()
1495 struct bpf_dynptr ptr; in clone_invalidate2() local
1499 bpf_ringbuf_reserve_dynptr(&ringbuf, val, 0, &ptr); in clone_invalidate2()
1501 bpf_dynptr_clone(&ptr, &clone); in clone_invalidate2()
1506 bpf_dynptr_read(read_data, sizeof(read_data), &ptr, 0, 0); in clone_invalidate2()
1516 struct bpf_dynptr ptr; in clone_invalidate3() local
1521 bpf_ringbuf_reserve_dynptr(&ringbuf, val, 0, &ptr); in clone_invalidate3()
1523 bpf_dynptr_clone(&ptr, &clone1); in clone_invalidate3()
1525 bpf_dynptr_clone(&ptr, &clone2); in clone_invalidate3()
1542 struct bpf_dynptr ptr; in clone_invalidate4() local
1546 bpf_ringbuf_reserve_dynptr(&ringbuf, val, 0, &ptr); in clone_invalidate4()
1548 bpf_dynptr_clone(&ptr, &clone); in clone_invalidate4()
1553 bpf_ringbuf_submit_dynptr(&ptr, 0); in clone_invalidate4()
1568 struct bpf_dynptr ptr; in clone_invalidate5() local
1572 bpf_ringbuf_reserve_dynptr(&ringbuf, val, 0, &ptr); in clone_invalidate5()
1573 data = bpf_dynptr_data(&ptr, 0, sizeof(val)); in clone_invalidate5()
1577 bpf_dynptr_clone(&ptr, &clone); in clone_invalidate5()
1594 struct bpf_dynptr ptr; in clone_invalidate6() local
1599 bpf_ringbuf_reserve_dynptr(&ringbuf, val, 0, &ptr); in clone_invalidate6()
1601 bpf_dynptr_clone(&ptr, &clone1); in clone_invalidate6()
1603 bpf_dynptr_clone(&ptr, &clone2); in clone_invalidate6()
1624 struct bpf_dynptr ptr; in clone_skb_packet_data() local
1627 bpf_dynptr_from_skb(skb, 0, &ptr); in clone_skb_packet_data()
1629 bpf_dynptr_clone(&ptr, &clone); in clone_skb_packet_data()
1650 struct bpf_dynptr ptr; in clone_xdp_packet_data() local
1654 bpf_dynptr_from_xdp(xdp, 0, &ptr); in clone_xdp_packet_data()
1656 bpf_dynptr_clone(&ptr, &clone); in clone_xdp_packet_data()
1675 struct bpf_dynptr ptr; in test_dynptr_skb_small_buff() local
1679 if (bpf_dynptr_from_skb(skb, 0, &ptr)) { in test_dynptr_skb_small_buff()
1685 data = bpf_dynptr_slice(&ptr, 0, buffer, 9); in test_dynptr_skb_small_buff()