aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/linux-headers/linux/errqueue.h
diff options
context:
space:
mode:
authorthegeorg <thegeorg@yandex-team.com>2023-07-26 01:18:20 +0300
committerroot <root@qavm-2ed34686.qemu>2023-07-26 01:18:20 +0300
commitefba792089e8ed1cdee516e6fe39afa8ccd07570 (patch)
treefa8ff67117859064f23b758a7b333f8b2e3a0859 /contrib/libs/linux-headers/linux/errqueue.h
parent5c939e73d60a6ba835239eaad1edf65ec70c5f17 (diff)
downloadydb-efba792089e8ed1cdee516e6fe39afa8ccd07570.tar.gz
Update contrib/libs/linux-headers to 6.4.5
Diffstat (limited to 'contrib/libs/linux-headers/linux/errqueue.h')
-rw-r--r--contrib/libs/linux-headers/linux/errqueue.h16
1 files changed, 14 insertions, 2 deletions
diff --git a/contrib/libs/linux-headers/linux/errqueue.h b/contrib/libs/linux-headers/linux/errqueue.h
index 3d8bef4784..d6f48a2e51 100644
--- a/contrib/libs/linux-headers/linux/errqueue.h
+++ b/contrib/libs/linux-headers/linux/errqueue.h
@@ -5,6 +5,13 @@
#include <linux/types.h>
#include <linux/time_types.h>
+/* RFC 4884: return offset to extension struct + validation */
+struct sock_ee_data_rfc4884 {
+ __u16 len;
+ __u8 flags;
+ __u8 reserved;
+};
+
struct sock_extended_err {
__u32 ee_errno;
__u8 ee_origin;
@@ -12,7 +19,10 @@ struct sock_extended_err {
__u8 ee_code;
__u8 ee_pad;
__u32 ee_info;
- __u32 ee_data;
+ union {
+ __u32 ee_data;
+ struct sock_ee_data_rfc4884 ee_rfc4884;
+ };
};
#define SO_EE_ORIGIN_NONE 0
@@ -31,12 +41,14 @@ struct sock_extended_err {
#define SO_EE_CODE_TXTIME_INVALID_PARAM 1
#define SO_EE_CODE_TXTIME_MISSED 2
+#define SO_EE_RFC4884_FLAG_INVALID 1
+
/**
* struct scm_timestamping - timestamps exposed through cmsg
*
* The timestamping interfaces SO_TIMESTAMPING, MSG_TSTAMP_*
* communicate network timestamps by passing this struct in a cmsg with
- * recvmsg(). See Documentation/networking/timestamping.txt for details.
+ * recvmsg(). See Documentation/networking/timestamping.rst for details.
* User space sees a timespec definition that matches either
* __kernel_timespec or __kernel_old_timespec, in the kernel we
* require two structure definitions to provide both.