Commit | Line | Data |
---|---|---|
37d9df22 | 1 | // SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause |
1d562c32 JK |
2 | /* Do not edit directly, auto-generated from: */ |
3 | /* Documentation/netlink/specs/fou.yaml */ | |
4 | /* YNL-GEN kernel source */ | |
5 | ||
6 | #include <net/netlink.h> | |
7 | #include <net/genetlink.h> | |
8 | ||
9 | #include "fou_nl.h" | |
10 | ||
11 | #include <linux/fou.h> | |
12 | ||
13 | /* Global operation policy for fou */ | |
14 | const struct nla_policy fou_nl_policy[FOU_ATTR_IFINDEX + 1] = { | |
15 | [FOU_ATTR_PORT] = { .type = NLA_U16, }, | |
16 | [FOU_ATTR_AF] = { .type = NLA_U8, }, | |
17 | [FOU_ATTR_IPPROTO] = { .type = NLA_U8, }, | |
18 | [FOU_ATTR_TYPE] = { .type = NLA_U8, }, | |
19 | [FOU_ATTR_REMCSUM_NOPARTIAL] = { .type = NLA_FLAG, }, | |
20 | [FOU_ATTR_LOCAL_V4] = { .type = NLA_U32, }, | |
21 | [FOU_ATTR_LOCAL_V6] = { .len = 16, }, | |
22 | [FOU_ATTR_PEER_V4] = { .type = NLA_U32, }, | |
23 | [FOU_ATTR_PEER_V6] = { .len = 16, }, | |
24 | [FOU_ATTR_PEER_PORT] = { .type = NLA_U16, }, | |
25 | [FOU_ATTR_IFINDEX] = { .type = NLA_S32, }, | |
26 | }; | |
27 | ||
28 | /* Ops table for fou */ | |
29 | const struct genl_small_ops fou_nl_ops[3] = { | |
30 | { | |
31 | .cmd = FOU_CMD_ADD, | |
32 | .validate = GENL_DONT_VALIDATE_STRICT | GENL_DONT_VALIDATE_DUMP, | |
33 | .doit = fou_nl_add_doit, | |
34 | .flags = GENL_ADMIN_PERM, | |
35 | }, | |
36 | { | |
37 | .cmd = FOU_CMD_DEL, | |
38 | .validate = GENL_DONT_VALIDATE_STRICT | GENL_DONT_VALIDATE_DUMP, | |
39 | .doit = fou_nl_del_doit, | |
40 | .flags = GENL_ADMIN_PERM, | |
41 | }, | |
42 | { | |
43 | .cmd = FOU_CMD_GET, | |
44 | .validate = GENL_DONT_VALIDATE_STRICT | GENL_DONT_VALIDATE_DUMP, | |
45 | .doit = fou_nl_get_doit, | |
46 | .dumpit = fou_nl_get_dumpit, | |
47 | }, | |
48 | }; |