add IPTOS_CLASS_* macros to netinet/ip.h
authorSzabolcs Nagy <nsz@port70.net>
Tue, 21 Apr 2015 22:33:33 +0000 (22:33 +0000)
committerRich Felker <dalias@aerifal.cx>
Fri, 1 May 2015 17:38:44 +0000 (13:38 -0400)
These macros were introduced in glibc 2.12 to follow RFC 2474 which
deprecates "IP Precedence" in favor of "Class Selector Codepoints".

include/netinet/ip.h

index 411874146f92ab97b3934bbd52207f7613267e04..d7fa8d5e4e9b228d0542c3607c29a43589566f6b 100644 (file)
@@ -104,6 +104,18 @@ struct ip_timestamp {
 #define        IPTOS_DSCP_AF43         0x98
 #define        IPTOS_DSCP_EF           0xb8
 
+#define        IPTOS_CLASS_MASK        0xe0
+#define        IPTOS_CLASS(x)          ((x) & IPTOS_CLASS_MASK)
+#define        IPTOS_CLASS_CS0         0x00
+#define        IPTOS_CLASS_CS1         0x20
+#define        IPTOS_CLASS_CS2         0x40
+#define        IPTOS_CLASS_CS3         0x60
+#define        IPTOS_CLASS_CS4         0x80
+#define        IPTOS_CLASS_CS5         0xa0
+#define        IPTOS_CLASS_CS6         0xc0
+#define        IPTOS_CLASS_CS7         0xe0
+#define        IPTOS_CLASS_DEFAULT     IPTOS_CLASS_CS0
+
 #define        IPTOS_TOS_MASK          0x1E
 #define        IPTOS_TOS(tos)          ((tos) & IPTOS_TOS_MASK)
 #define        IPTOS_LOWDELAY          0x10