about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2017-09-07 14:29:38 +0000
committerJoseph Myers <joseph@codesourcery.com>2017-09-07 14:29:38 +0000
commit5c23ee6eb8aad96e2761b8478a61e28faebfb9f0 (patch)
treea425ba8b58ee754b54f38e2316dffe81312b0a72
parent05f0011fb0e5cb318c3bf12d078f3e3184d97e88 (diff)
downloadglibc-5c23ee6eb8aad96e2761b8478a61e28faebfb9f0.tar.gz
glibc-5c23ee6eb8aad96e2761b8478a61e28faebfb9f0.tar.xz
glibc-5c23ee6eb8aad96e2761b8478a61e28faebfb9f0.zip
Update netinet/tcp.h from Linux 4.13.
This patch updates sysdeps/gnu/netinet/tcp.h to include new
definitions from include/uapi/linux/tcp.h in Linux 4.13.

Tested for x86_64.

	* sysdeps/gnu/netinet/tcp.h (TCP_ULP): New macro.
	(TCP_MD5SIG_EXT): Likewise.
	(TCP_MD5SIG_FLAG_PREFIX): Likewise.
	(struct tcp_md5sig): Replace __tcpm_pad1 by tcpm_flags and
	tcpm_prefixlen.  Rename __tcpm_pad2 to __tcpm_pad.
-rw-r--r--ChangeLog6
-rw-r--r--sysdeps/gnu/netinet/tcp.h10
2 files changed, 14 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index a63712ba05..9ac1d4acf4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,11 @@
 2017-09-07  Joseph Myers  <joseph@codesourcery.com>
 
+	* sysdeps/gnu/netinet/tcp.h (TCP_ULP): New macro.
+	(TCP_MD5SIG_EXT): Likewise.
+	(TCP_MD5SIG_FLAG_PREFIX): Likewise.
+	(struct tcp_md5sig): Replace __tcpm_pad1 by tcpm_flags and
+	tcpm_prefixlen.  Rename __tcpm_pad2 to __tcpm_pad.
+
 	* sysdeps/unix/sysv/linux/bits/socket.h (SOL_TLS): New macro.
 
 2017-09-07  Mike FABIAN  <mfabian@redhat.com>
diff --git a/sysdeps/gnu/netinet/tcp.h b/sysdeps/gnu/netinet/tcp.h
index af94b8e82c..75973f0955 100644
--- a/sysdeps/gnu/netinet/tcp.h
+++ b/sysdeps/gnu/netinet/tcp.h
@@ -71,6 +71,8 @@
 				       connection.  */
 #define TCP_REPAIR_WINDOW	 29 /* Get/set window parameters.  */
 #define TCP_FASTOPEN_CONNECT	 30 /* Attempt FastOpen with connect.  */
+#define TCP_ULP			 31 /* Attach a ULP to a TCP connection.  */
+#define TCP_MD5SIG_EXT		 32 /* TCP MD5 Signature with extensions.  */
 
 #ifdef __USE_MISC
 # include <sys/types.h>
@@ -257,12 +259,16 @@ struct tcp_info
 /* For TCP_MD5SIG socket option.  */
 #define TCP_MD5SIG_MAXKEYLEN	80
 
+/* tcp_md5sig extension flags for TCP_MD5SIG_EXT.  */
+#define TCP_MD5SIG_FLAG_PREFIX	1 /* Address prefix length.  */
+
 struct tcp_md5sig
 {
   struct sockaddr_storage tcpm_addr;		/* Address associated.  */
-  uint16_t	__tcpm_pad1;			/* Zero.  */
+  uint8_t	tcpm_flags;			/* Extension flags.  */
+  uint8_t	tcpm_prefixlen;			/* Address prefix.  */
   uint16_t	tcpm_keylen;			/* Key length.  */
-  uint32_t	__tcpm_pad2;			/* Zero.  */
+  uint32_t	__tcpm_pad;			/* Zero.  */
   uint8_t	tcpm_key[TCP_MD5SIG_MAXKEYLEN];	/* Key (binary).  */
 };