1 // SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
2 /* Do not edit directly, auto-generated from: */
3 /* Documentation/netlink/specs/fou.yaml */
4 /* YNL-GEN kernel source */
6 #include <net/netlink.h>
7 #include <net/genetlink.h>
11 #include <uapi/linux/fou.h>
13 /* Global operation policy for fou */
14 const struct nla_policy fou_nl_policy
[FOU_ATTR_IFINDEX
+ 1] = {
15 [FOU_ATTR_PORT
] = { .type
= NLA_BE16
, },
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_BE16
, },
25 [FOU_ATTR_IFINDEX
] = { .type
= NLA_S32
, },
28 /* Ops table for fou */
29 const struct genl_small_ops fou_nl_ops
[3] = {
32 .validate
= GENL_DONT_VALIDATE_STRICT
| GENL_DONT_VALIDATE_DUMP
,
33 .doit
= fou_nl_add_doit
,
34 .flags
= GENL_ADMIN_PERM
,
38 .validate
= GENL_DONT_VALIDATE_STRICT
| GENL_DONT_VALIDATE_DUMP
,
39 .doit
= fou_nl_del_doit
,
40 .flags
= GENL_ADMIN_PERM
,
44 .validate
= GENL_DONT_VALIDATE_STRICT
| GENL_DONT_VALIDATE_DUMP
,
45 .doit
= fou_nl_get_doit
,
46 .dumpit
= fou_nl_get_dumpit
,