xref: /linux/net/psp/psp-nl-gen.h (revision a34b0e4e21d6be3c3d620aa7f9dfbf0e9550c19e)
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/psp.yaml */
4 /* YNL-GEN kernel header */
5 /* To regenerate run: tools/net/ynl/ynl-regen.sh */
6 
7 #ifndef _LINUX_PSP_GEN_H
8 #define _LINUX_PSP_GEN_H
9 
10 #include <net/netlink.h>
11 #include <net/genetlink.h>
12 
13 #include <uapi/linux/psp.h>
14 
15 /* Common nested types */
16 extern const struct nla_policy psp_keys_nl_policy[PSP_A_KEYS_SPI + 1];
17 
18 int psp_device_get_locked(const struct genl_split_ops *ops,
19 			  struct sk_buff *skb, struct genl_info *info);
20 int psp_assoc_device_get_locked(const struct genl_split_ops *ops,
21 				struct sk_buff *skb, struct genl_info *info);
22 void
23 psp_device_unlock(const struct genl_split_ops *ops, struct sk_buff *skb,
24 		  struct genl_info *info);
25 
26 int psp_nl_dev_get_doit(struct sk_buff *skb, struct genl_info *info);
27 int psp_nl_dev_get_dumpit(struct sk_buff *skb, struct netlink_callback *cb);
28 int psp_nl_dev_set_doit(struct sk_buff *skb, struct genl_info *info);
29 int psp_nl_key_rotate_doit(struct sk_buff *skb, struct genl_info *info);
30 int psp_nl_rx_assoc_doit(struct sk_buff *skb, struct genl_info *info);
31 int psp_nl_tx_assoc_doit(struct sk_buff *skb, struct genl_info *info);
32 int psp_nl_get_stats_doit(struct sk_buff *skb, struct genl_info *info);
33 int psp_nl_get_stats_dumpit(struct sk_buff *skb, struct netlink_callback *cb);
34 
35 enum {
36 	PSP_NLGRP_MGMT,
37 	PSP_NLGRP_USE,
38 };
39 
40 extern struct genl_family psp_nl_family;
41 
42 #endif /* _LINUX_PSP_GEN_H */
43