errqueue.h 443 B

123456789101112131415161718192021222324252627
  1. #ifndef _LINUX_ERRQUEUE_H
  2. #define _LINUX_ERRQUEUE_H 1
  3. #include <linux/types.h>
  4. struct sock_extended_err
  5. {
  6. __u32 ee_errno;
  7. __u8 ee_origin;
  8. __u8 ee_type;
  9. __u8 ee_code;
  10. __u8 ee_pad;
  11. __u32 ee_info;
  12. __u32 ee_data;
  13. };
  14. #define SO_EE_ORIGIN_NONE 0
  15. #define SO_EE_ORIGIN_LOCAL 1
  16. #define SO_EE_ORIGIN_ICMP 2
  17. #define SO_EE_ORIGIN_ICMP6 3
  18. #define SO_EE_ORIGIN_TIMESTAMPING 4
  19. #define SO_EE_OFFENDER(ee) ((struct sockaddr*)((ee)+1))
  20. #endif