about summary refs log tree commit diff
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2016-04-24 17:22:57 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2016-04-24 17:22:57 +0200
commit2a517d91af918aecd9b603b7a09f696d774de3e6 (patch)
tree4e0ed994dbf10e97647b93492183595b1be5d693
parentb2cae5d3f5f58e26fe3ceb9c9c2a4018e25785e6 (diff)
downloadglibc-2a517d91af918aecd9b603b7a09f696d774de3e6.tar.gz
glibc-2a517d91af918aecd9b603b7a09f696d774de3e6.tar.xz
glibc-2a517d91af918aecd9b603b7a09f696d774de3e6.zip
non-linux: Apply RFC3542 obsoletion of RFC2292 macros
	RFC2292 macros were obsoleted by RFC3542, and should not be exposed
	any more. Notably since IPV6_PKTINFO has been reintroduced with a
	completely different API.

	* bits/in.h (IPV6_PKTINFO): Rename to IPV6_2292PKTINFO.
	(IPV6_HOPOPTS): Rename to IPV6_2292HOPOPTS.
	(IPV6_DSTOPTS): Rename to IPV6_2292DSTOPTS.
	(IPV6_RTHDR): Rename to IPV6_2292RTHDR.
	(IPV6_PKTOPTIONS): Rename to IPV6_2292PKTOPTIONS.
	(IPV6_HOPLIMIT): Rename to IPV6_2292HOPLIMIT.
	(IPV6_RECVPKTINFO): New macro.
	(IPV6_PKTINFO): New macro.
-rw-r--r--ChangeLog15
-rw-r--r--bits/in.h26
2 files changed, 30 insertions, 11 deletions
diff --git a/ChangeLog b/ChangeLog
index 744c0c0fb7..ae854e0eec 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,18 @@
+2016-04-25  Samuel thibault  <samuel.thibault@ens-lyon.org>
+
+	RFC2292 macros were obsoleted by RFC3542, and should not be exposed
+	any more. Notably since IPV6_PKTINFO has been reintroduced with a
+	completely different API.
+
+	* bits/in.h (IPV6_PKTINFO): Rename to IPV6_2292PKTINFO.
+	(IPV6_HOPOPTS): Rename to IPV6_2292HOPOPTS.
+	(IPV6_DSTOPTS): Rename to IPV6_2292DSTOPTS.
+	(IPV6_RTHDR): Rename to IPV6_2292RTHDR.
+	(IPV6_PKTOPTIONS): Rename to IPV6_2292PKTOPTIONS.
+	(IPV6_HOPLIMIT): Rename to IPV6_2292HOPLIMIT.
+	(IPV6_RECVPKTINFO): New macro.
+	(IPV6_PKTINFO): New macro.
+
 2016-04-23   H.J. Lu  <hongjiu.lu@intel.com>
 
 	* elf/dl-minimal.c (__libc_memalign): Mmap one extra page.
diff --git a/bits/in.h b/bits/in.h
index e6f4696117..a9efc74ed6 100644
--- a/bits/in.h
+++ b/bits/in.h
@@ -56,17 +56,17 @@ struct ip_opts
 
 /* IPV6 socket options.  */
 #define IPV6_ADDRFORM		1
-#define IPV6_PKTINFO		2
-#define IPV6_HOPOPTS		3
-#define IPV6_DSTOPTS		4
-#define IPV6_RTHDR		5
-#define IPV6_PKTOPTIONS		6
+#define IPV6_2292PKTINFO	2
+#define IPV6_2292HOPOPTS	3
+#define IPV6_2292DSTOPTS	4
+#define IPV6_2292RTHDR		5
+#define IPV6_2292PKTOPTIONS	6
 #define IPV6_CHECKSUM		7
-#define IPV6_HOPLIMIT		8
+#define IPV6_2292HOPLIMIT	8
 
-#define IPV6_RXINFO		IPV6_PKTINFO
-#define IPV6_TXINFO		IPV6_PKTINFO
-#define SCM_SRCINFO		IPV6_PKTINFO
+#define IPV6_RXINFO		IPV6_2292PKTINFO
+#define IPV6_TXINFO		IPV6_RXINFO
+#define SCM_SRCINFO		IPV6_TXINFO
 #define SCM_SRCRT		IPV6_RXSRCRT
 
 #define IPV6_UNICAST_HOPS	16
@@ -83,11 +83,15 @@ struct ip_opts
 #define IPV6_JOIN_ANYCAST      27
 #define IPV6_LEAVE_ANYCAST     28
 
+/* Advanced API (RFC3542) (1).  */
+#define IPV6_RECVPKTINFO	49
+#define IPV6_PKTINFO		50
+
 /* Obsolete synonyms for the above.  */
 #define IPV6_ADD_MEMBERSHIP	IPV6_JOIN_GROUP
 #define IPV6_DROP_MEMBERSHIP	IPV6_LEAVE_GROUP
-#define IPV6_RXHOPOPTS		IPV6_HOPOPTS
-#define IPV6_RXDSTOPTS		IPV6_DSTOPTS
+#define IPV6_RXHOPOPTS		IPV6_2292HOPOPTS
+#define IPV6_RXDSTOPTS		IPV6_2292DSTOPTS
 
 /* Routing header options for IPv6.  */
 #define IPV6_RTHDR_LOOSE	0	/* Hop doesn't need to be neighbour. */