diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2024-12-02 10:57:36 +0100 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2024-12-11 15:22:17 +0000 |
| commit | 38f1ffbd30e38b3215fa81114230ae2948dca8dc (patch) | |
| tree | 2411633f27011259a74e43a65b7d3544f5444f5b /tools/syz-declextract | |
| parent | 2f981ae0154bd9e967e046692984f0b6e2423a32 (diff) | |
pkg/declextract: refactor netlink generation
Emit all information related to a single netlink family close to each other.
Previously we emitted them scattered and grouped by info type.
That was both inconvinient to emit and inconvinient to read.
NFC.
Diffstat (limited to 'tools/syz-declextract')
| -rw-r--r-- | tools/syz-declextract/testdata/netlink.c.txt | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/tools/syz-declextract/testdata/netlink.c.txt b/tools/syz-declextract/testdata/netlink.c.txt index 87b3ae122..96af4f31b 100644 --- a/tools/syz-declextract/testdata/netlink.c.txt +++ b/tools/syz-declextract/testdata/netlink.c.txt @@ -10,19 +10,10 @@ include <net/netlink.h> include <include/uapi/netlink_family.h> resource genl_bar_family_id$auto[int16] -resource genl_foo_family_family_id$auto[int16] type msghdr_bar$auto[CMD, POLICY] msghdr_netlink[netlink_msg_t[genl_bar_family_id$auto, genlmsghdr_t[CMD], POLICY]] -type msghdr_foo_family$auto[CMD, POLICY] msghdr_netlink[netlink_msg_t[genl_foo_family_family_id$auto, genlmsghdr_t[CMD], POLICY]] syz_genetlink_get_family_id$auto_bar(name ptr[in, string["BAR"]], fd sock_nl_generic) genl_bar_family_id$auto -syz_genetlink_get_family_id$auto_foo_family(name ptr[in, string["foo family"]], fd sock_nl_generic) genl_foo_family_family_id$auto -sendmsg$auto_NETLINK_BAR_CMD_FOO(fd sock_nl_generic, msg ptr[in, msghdr_bar$auto[NETLINK_BAR_CMD_FOO, foo_genl_policy_netlink$auto]], f flags[send_flags]) -sendmsg$auto_NETLINK_FOO_CMD_BAR(fd sock_nl_generic, msg ptr[in, msghdr_foo_family$auto[NETLINK_FOO_CMD_BAR, foo_genl_policy_netlink$auto]], f flags[send_flags]) -sendmsg$auto_NETLINK_FOO_CMD_FOO(fd sock_nl_generic, msg ptr[in, msghdr_foo_family$auto[NETLINK_FOO_CMD_FOO, foo_genl_policy_netlink$auto]], f flags[send_flags]) -foo_genl_nested_policy_netlink$auto [ - NETLINK_FOO_NESTED_ATTR1 nlattr[NETLINK_FOO_NESTED_ATTR1, int32] - NETLINK_FOO_NESTED_ATTR2 nlattr[NETLINK_FOO_NESTED_ATTR2, int32] -] [varlen] +sendmsg$auto_NETLINK_BAR_CMD_FOO(fd sock_nl_generic, msg ptr[in, msghdr_bar$auto[NETLINK_BAR_CMD_FOO, foo_genl_policy_netlink$auto]], f flags[send_flags]) foo_genl_policy_netlink$auto [ NETLINK_FOO_ATTR1 nlattr[NETLINK_FOO_ATTR1, int32] @@ -34,6 +25,18 @@ foo_genl_policy_netlink$auto [ NETLINK_FOO_ATTR7 nlattr[NETLINK_FOO_ATTR7, netlink_foo_struct2$auto] ] [varlen] +foo_genl_nested_policy_netlink$auto [ + NETLINK_FOO_NESTED_ATTR1 nlattr[NETLINK_FOO_NESTED_ATTR1, int32] + NETLINK_FOO_NESTED_ATTR2 nlattr[NETLINK_FOO_NESTED_ATTR2, int32] +] [varlen] + +resource genl_foo_family_family_id$auto[int16] +type msghdr_foo_family$auto[CMD, POLICY] msghdr_netlink[netlink_msg_t[genl_foo_family_family_id$auto, genlmsghdr_t[CMD], POLICY]] +syz_genetlink_get_family_id$auto_foo_family(name ptr[in, string["foo family"]], fd sock_nl_generic) genl_foo_family_family_id$auto + +sendmsg$auto_NETLINK_FOO_CMD_FOO(fd sock_nl_generic, msg ptr[in, msghdr_foo_family$auto[NETLINK_FOO_CMD_FOO, foo_genl_policy_netlink$auto]], f flags[send_flags]) +sendmsg$auto_NETLINK_FOO_CMD_BAR(fd sock_nl_generic, msg ptr[in, msghdr_foo_family$auto[NETLINK_FOO_CMD_BAR, foo_genl_policy_netlink$auto]], f flags[send_flags]) + netlink_foo_struct1$auto { a int32 b int32 |
