diff options
author | Paul Chaignon <paul.chaignon@orange.com> | 2019-04-24 22:51:26 +0300 |
---|---|---|
committer | Alexei Starovoitov <ast@kernel.org> | 2019-04-26 03:20:06 +0300 |
commit | 6dd7f14080473b655c247863e61b7c34424f0c83 (patch) | |
tree | 4ab4ef6b132c7066ef4f4df74211707caf0b324b /tools/io_uring | |
parent | c6a9efa1d8353d8960d152e7d469d952b01495c0 (diff) | |
download | linux-6dd7f14080473b655c247863e61b7c34424f0c83.tar.xz |
selftests/bpf: test cases for pkt/null checks in subprogs
The first test case, for pointer null checks, is equivalent to the
following pseudo-code. It checks that the verifier does not complain on
line 6 and recognizes that ptr isn't null.
1: ptr = bpf_map_lookup_elem(map, &key);
2: ret = subprog(ptr) {
3: return ptr != NULL;
4: }
5: if (ret)
6: value = *ptr;
The second test case, for packet bound checks, is equivalent to the
following pseudo-code. It checks that the verifier does not complain on
line 7 and recognizes that the packet is at least 1 byte long.
1: pkt_end = ctx.pkt_end;
2: ptr = ctx.pkt + 8;
3: ret = subprog(ptr, pkt_end) {
4: return ptr <= pkt_end;
5: }
6: if (ret)
7: value = *(u8 *)ctx.pkt;
Signed-off-by: Paul Chaignon <paul.chaignon@orange.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to 'tools/io_uring')
0 files changed, 0 insertions, 0 deletions