net: Move {l,t,d}stats allocation to core and convert veth & vrf
[platform/kernel/linux-starfive.git] / include / linux / errqueue.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _LINUX_ERRQUEUE_H
3 #define _LINUX_ERRQUEUE_H 1
4
5
6 #include <net/ip.h>
7 #if IS_ENABLED(CONFIG_IPV6)
8 #include <linux/ipv6.h>
9 #endif
10 #include <uapi/linux/errqueue.h>
11
12 #define SKB_EXT_ERR(skb) ((struct sock_exterr_skb *) ((skb)->cb))
13
14 struct sock_exterr_skb {
15         union {
16                 struct inet_skb_parm    h4;
17 #if IS_ENABLED(CONFIG_IPV6)
18                 struct inet6_skb_parm   h6;
19 #endif
20         } header;
21         struct sock_extended_err        ee;
22         u16                             addr_offset;
23         __be16                          port;
24         u8                              opt_stats:1,
25                                         unused:7;
26 };
27
28 #endif