errqueue.h 524 B

12345678910111213141516171819202122232425262728
  1. /* SPDX-License-Identifier: GPL-2.0 */
  2. #ifndef _LINUX_ERRQUEUE_H
  3. #define _LINUX_ERRQUEUE_H 1
  4. #include <net/ip.h>
  5. #if IS_ENABLED(CONFIG_IPV6)
  6. #include <linux/ipv6.h>
  7. #endif
  8. #include <uapi/linux/errqueue.h>
  9. #define SKB_EXT_ERR(skb) ((struct sock_exterr_skb *) ((skb)->cb))
  10. struct sock_exterr_skb {
  11. union {
  12. struct inet_skb_parm h4;
  13. #if IS_ENABLED(CONFIG_IPV6)
  14. struct inet6_skb_parm h6;
  15. #endif
  16. } header;
  17. struct sock_extended_err ee;
  18. u16 addr_offset;
  19. __be16 port;
  20. u8 opt_stats:1,
  21. unused:7;
  22. };
  23. #endif