errqueue.h 450 Bytes
Newer Older
Linus Torvalds's avatar
Linus Torvalds committed
1 2 3 4 5
#ifndef _LINUX_ERRQUEUE_H
#define _LINUX_ERRQUEUE_H 1


#include <net/ip.h>
6
#if IS_ENABLED(CONFIG_IPV6)
Linus Torvalds's avatar
Linus Torvalds committed
7 8
#include <linux/ipv6.h>
#endif
9
#include <uapi/linux/errqueue.h>
Linus Torvalds's avatar
Linus Torvalds committed
10 11 12

#define SKB_EXT_ERR(skb) ((struct sock_exterr_skb *) ((skb)->cb))

13
struct sock_exterr_skb {
Linus Torvalds's avatar
Linus Torvalds committed
14 15
	union {
		struct inet_skb_parm	h4;
16
#if IS_ENABLED(CONFIG_IPV6)
Linus Torvalds's avatar
Linus Torvalds committed
17 18 19 20 21
		struct inet6_skb_parm	h6;
#endif
	} header;
	struct sock_extended_err	ee;
	u16				addr_offset;
22
	__be16				port;
Linus Torvalds's avatar
Linus Torvalds committed
23 24 25
};

#endif