about summary refs log tree commit diff
path: root/sysdeps/gnu/netinet
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2007-10-05 18:55:57 +0000
committerUlrich Drepper <drepper@redhat.com>2007-10-05 18:55:57 +0000
commit8e351378b76880f861bdcda8fc11d5769e310a00 (patch)
tree8b5cdf257a578de0f84c9c9d0ecb4ad9f6544e7c /sysdeps/gnu/netinet
parent34c2c09296bfb369df9973cf8a4098b6ec526059 (diff)
downloadglibc-8e351378b76880f861bdcda8fc11d5769e310a00.tar.gz
glibc-8e351378b76880f861bdcda8fc11d5769e310a00.tar.xz
glibc-8e351378b76880f861bdcda8fc11d5769e310a00.zip
* sysdeps/gnu/netinet/tcp.h: Define TCP_MD5SIG, TCP_MD5SIG_MAXKEYLEN,
	struct tcp_md5sig.  Extend struct tcp_info according to recent kernels.

	* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add eventfd,
	evetnfd_read, eventfd_write.
	* sysdeps/unix/sysv/linux/eventfd.c: New file.
	* sysdeps/unix/sysv/linux/eventfd_read.c: New file.
	* sysdeps/unix/sysv/linux/eventfd_write.c: New file.
	* sysdeps/unix/sysv/linux/sys/eventfd.h: New file.
	* sysdeps/unix/sysv/linux/Versions: Export eventfd, evetnfd_read,
	eventfd_write for GLIBC_2.7.
Diffstat (limited to 'sysdeps/gnu/netinet')
-rw-r--r--sysdeps/gnu/netinet/tcp.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/sysdeps/gnu/netinet/tcp.h b/sysdeps/gnu/netinet/tcp.h
index 2c04ec9b7f..2ab2909f20 100644
--- a/sysdeps/gnu/netinet/tcp.h
+++ b/sysdeps/gnu/netinet/tcp.h
@@ -50,6 +50,7 @@
 #define TCP_INFO	 11	/* Information about this connection. */
 #define	TCP_QUICKACK	 12	/* Bock/reenable quick ACKs.  */
 #define TCP_CONGESTION	 13	/* Congestion control algorithm.  */
+#define TCP_MD5SIG	 14	/* TCP MD5 Signature (RFC2385) */
 
 #ifdef __USE_MISC
 # include <sys/types.h>
@@ -219,6 +220,24 @@ struct tcp_info
   u_int32_t	tcpi_snd_cwnd;
   u_int32_t	tcpi_advmss;
   u_int32_t	tcpi_reordering;
+
+  u_int32_t	tcpi_rcv_rtt;
+  u_int32_t	tcpi_rcv_space;
+
+  u_int32_t	tcpi_total_retrans;
+};
+
+
+/* For TCP_MD5SIG socket option.  */
+#define TCP_MD5SIG_MAXKEYLEN	80
+
+struct tcp_md5sig
+{
+  struct __kernel_sockaddr_storage tcpm_addr;	/* Address associated.  */
+  u_int16_t	__tcpm_pad1;			/* Zero.  */
+  u_int16_t	tcpm_keylen;			/* Key length.  */
+  u_int32_t	__tcpm_pad2;			/* Zero.  */
+  u_int8_t	tcpm_key[TCP_MD5SIG_MAXKEYLEN];	/* Key (binary).  */
 };
 
 #endif /* Misc.  */