aboutsummaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2021-02-19 12:52:30 +0100
committerDmitry Vyukov <dvyukov@google.com>2021-02-19 15:46:09 +0100
commitf689d40a08ae1c9d73d043e7a2e807bc4022931b (patch)
treeea6cfcb52b4dc895265c4e8a660d78d71619a62d /sys
parent14052202e8d8d0bb407512b6861e9085f9171241 (diff)
executor: don't fail in syz_genetlink_get_family_id
We used to use our own netlink socket and then fail on any errors. But commit "sys/linux: add ieee802154 descriptions" made it possible to use fuzzer-provided socket, and fuzzer can pass any invalid fd. So don't fail on errors now. Fixes #2444
Diffstat (limited to 'sys')
-rw-r--r--sys/linux/test/syz_genetlink_get_family_id17
1 files changed, 17 insertions, 0 deletions
diff --git a/sys/linux/test/syz_genetlink_get_family_id b/sys/linux/test/syz_genetlink_get_family_id
new file mode 100644
index 000000000..36b62eef1
--- /dev/null
+++ b/sys/linux/test/syz_genetlink_get_family_id
@@ -0,0 +1,17 @@
+# syz_init_net_socket requires sandbox none, also doesn't work without sandbox b/c we are still in init net ns.
+# requires: -sandbox=
+
+syz_genetlink_get_family_id$nl80211(&AUTO='nl80211\x00', 0xffffffffffffffff)
+syz_genetlink_get_family_id$ieee802154(&AUTO='802.15.4 MAC\x00', 0xffffffffffffffff) # ENOENT
+
+r0 = socket$nl_generic(0x10, 0x3, 0x10)
+syz_genetlink_get_family_id$nl80211(&AUTO='nl80211\x00', r0)
+syz_genetlink_get_family_id$ieee802154(&AUTO='802.15.4 MAC\x00', r0) # ENOENT
+syz_genetlink_get_family_id$nl80211(&AUTO='nl80211\x00', r0)
+
+r1 = syz_init_net_socket$nl_generic(AUTO, AUTO, AUTO)
+syz_genetlink_get_family_id$nl80211(&AUTO='nl80211\x00', r1)
+syz_genetlink_get_family_id$ieee802154(&AUTO='802.15.4 MAC\x00', r1)
+
+r2 = socket$inet_udp(AUTO, AUTO, AUTO)
+syz_genetlink_get_family_id$nl80211(&AUTO='nl80211\x00', r2) # EINVAL