headers: Move IPv4/v6 options to ws2ipdef.h from ws2tcpip.h.

Also add missing new ones.
Required for OpenRGB https://gitlab.com/CalcProgrammer1/OpenRGB.git

Signed-off-by: Biswapriyo Nath <nathbappai@gmail.com>
diff --git a/mingw-w64-headers/include/ws2ipdef.h b/mingw-w64-headers/include/ws2ipdef.h
index b6273a8..b4d36c2 100644
--- a/mingw-w64-headers/include/ws2ipdef.h
+++ b/mingw-w64-headers/include/ws2ipdef.h
@@ -20,6 +20,105 @@
 extern "C" {
 #endif
 
+/* options at IPPROTO_IP level */
+#define IP_OPTIONS                 1
+#define IP_HDRINCL                 2
+#define IP_TOS                     3
+#define IP_TTL                     4
+#define IP_MULTICAST_IF            9
+#define IP_MULTICAST_TTL          10
+#define IP_MULTICAST_LOOP         11
+#define IP_ADD_MEMBERSHIP         12
+#define IP_DROP_MEMBERSHIP        13
+#define IP_DONTFRAGMENT           14
+#define IP_ADD_SOURCE_MEMBERSHIP  15
+#define IP_DROP_SOURCE_MEMBERSHIP 16
+#define IP_BLOCK_SOURCE           17
+#define IP_UNBLOCK_SOURCE         18
+#define IP_PKTINFO                19
+#define IP_HOPLIMIT               21
+#define IP_RECVTTL                21
+#define IP_RECEIVE_BROADCAST      22
+#define IP_RECVIF                 24
+#define IP_RECVDSTADDR            25
+#define IP_IFLIST                 28
+#define IP_ADD_IFLIST             29
+#define IP_DEL_IFLIST             30
+#define IP_UNICAST_IF             31
+#define IP_RTHDR                  32
+#define IP_GET_IFLIST             33
+#define IP_RECVRTHDR              38
+#define IP_TCLASS                 39
+#define IP_RECVTCLASS             40
+#define IP_RECVTOS                40
+#define IP_ORIGINAL_ARRIVAL_IF    47
+#define IP_ECN                    50
+#define IP_PKTINFO_EX             51
+#define IP_WFP_REDIRECT_RECORDS   60
+#define IP_WFP_REDIRECT_CONTEXT   70
+#define IP_MTU_DISCOVER           71
+#define IP_MTU                    73
+#define IP_NRT_INTERFACE          74
+#define IP_RECVERR                75
+#define IP_USER_MTU               76
+
+#define IP_UNSPECIFIED_TYPE_OF_SERVICE -1
+#define IP_UNSPECIFIED_USER_MTU MAXULONG
+
+#define IPV6_ADDRESS_BITS RTL_BITS_OF(IN6_ADDR)
+
+/* options at IPPROTO_IPV6 level */
+#define IPV6_HOPOPTS              1
+#define IPV6_HDRINCL              2
+#define IPV6_UNICAST_HOPS         4
+#define IPV6_MULTICAST_IF         9
+#define IPV6_MULTICAST_HOPS       10
+#define IPV6_MULTICAST_LOOP       11
+#define IPV6_ADD_MEMBERSHIP       12
+#define IPV6_JOIN_GROUP           IPV6_ADD_MEMBERSHIP
+#define IPV6_DROP_MEMBERSHIP      13
+#define IPV6_LEAVE_GROUP          IPV6_DROP_MEMBERSHIP
+#define IPV6_DONTFRAG             14
+#define IPV6_PKTINFO              19
+#define IPV6_HOPLIMIT             21
+#define IPV6_PROTECTION_LEVEL     23
+#define IPV6_RECVIF               24
+#define IPV6_RECVDSTADDR          25
+#define IPV6_CHECKSUM             26
+#define IPV6_V6ONLY               27
+#define IPV6_IFLIST               28
+#define IPV6_ADD_IFLIST           29
+#define IPV6_DEL_IFLIST           30
+#define IPV6_UNICAST_IF           31
+#define IPV6_RTHDR                32
+#define IPV6_GET_IFLIST           33
+#define IPV6_RECVRTHDR            38
+#define IPV6_TCLASS               39
+#define IPV6_RECVTCLASS           40
+#define IPV6_ECN                  50
+#define IPV6_PKTINFO_EX           51
+#define IPV6_WFP_REDIRECT_RECORDS 60
+#define IPV6_WFP_REDIRECT_CONTEXT 70
+#define IPV6_MTU_DISCOVER         71
+#define IPV6_MTU                  72
+#define IPV6_NRT_INTERFACE        74
+#define IPV6_RECVERR              75
+#define IPV6_USER_MTU             76
+
+#define IP_UNSPECIFIED_HOP_LIMIT -1
+
+#define IP_PROTECTION_LEVEL IPV6_PROTECTION_LEVEL
+
+#define PROTECTION_LEVEL_UNRESTRICTED   10
+#define PROTECTION_LEVEL_EDGERESTRICTED 20
+#define PROTECTION_LEVEL_RESTRICTED     30
+
+#if NTDDI_VERSION < NTDDI_VISTA
+#define PROTECTION_LEVEL_DEFAULT PROTECTION_LEVEL_EDGERESTRICTED
+#else
+#define PROTECTION_LEVEL_DEFAULT ((UINT)-1)
+#endif
+
 typedef struct ipv6_mreq {
   struct in6_addr ipv6mr_multiaddr;
   unsigned int ipv6mr_interface;
@@ -95,33 +194,6 @@
   SOCKADDR_STORAGE gsr_source;
 } GROUP_SOURCE_REQ, *PGROUP_SOURCE_REQ;
 
-#define IPV6_HOPOPTS           1
-#define IPV6_HDRINCL           2
-#define IPV6_UNICAST_HOPS      4
-#define IPV6_MULTICAST_IF      9
-#define IPV6_MULTICAST_HOPS    10
-#define IPV6_MULTICAST_LOOP    11
-#define IPV6_ADD_MEMBERSHIP    12
-#define IPV6_JOIN_GROUP        IPV6_ADD_MEMBERSHIP
-#define IPV6_DROP_MEMBERSHIP   13
-#define IPV6_LEAVE_GROUP       IPV6_DROP_MEMBERSHIP
-#define IPV6_DONTFRAG          14
-#define IPV6_PKTINFO           19
-#define IPV6_HOPLIMIT          21
-#define IPV6_PROTECTION_LEVEL  23
-#define IPV6_RECVIF            24
-#define IPV6_RECVDSTADDR       25
-#define IPV6_CHECKSUM          26
-#define IPV6_V6ONLY            27
-#define IPV6_IFLIST            28
-#define IPV6_ADD_IFLIST        29
-#define IPV6_DEL_IFLIST        30
-#define IPV6_UNICAST_IF        31
-#define IPV6_RTHDR             32
-#define IPV6_RECVRTHDR         38
-#define IPV6_TCLASS            39
-#define IPV6_RECVTCLASS        40
-
 #define WS2TCPIP_INLINE __CRT_INLINE
 
 int IN6_ADDR_EQUAL(const struct in6_addr *,const struct in6_addr *);
diff --git a/mingw-w64-headers/include/ws2tcpip.h b/mingw-w64-headers/include/ws2tcpip.h
index 78742d7..3c8b6cc 100644
--- a/mingw-w64-headers/include/ws2tcpip.h
+++ b/mingw-w64-headers/include/ws2tcpip.h
@@ -41,27 +41,6 @@
 #define SIO_SET_MULTICAST_FILTER _IOW('t',125,u_long)
 #define SIO_GET_MULTICAST_FILTER _IOW('t',124 | IOC_IN,u_long)
 
-#define IP_OPTIONS 1
-#define IP_HDRINCL 2
-#define IP_TOS 3
-#define IP_TTL 4
-#define IP_MULTICAST_IF 9
-#define IP_MULTICAST_TTL 10
-#define IP_MULTICAST_LOOP 11
-#define IP_ADD_MEMBERSHIP 12
-#define IP_DROP_MEMBERSHIP 13
-#define IP_DONTFRAGMENT 14
-#define IP_ADD_SOURCE_MEMBERSHIP 15
-#define IP_DROP_SOURCE_MEMBERSHIP 16
-#define IP_BLOCK_SOURCE 17
-#define IP_UNBLOCK_SOURCE 18
-#define IP_PKTINFO 19
-#define IP_RECEIVE_BROADCAST 22
-
-#define PROTECTION_LEVEL_UNRESTRICTED 10
-#define PROTECTION_LEVEL_DEFAULT 20
-#define PROTECTION_LEVEL_RESTRICTED 30
-
 #define UDP_NOCHECKSUM 1
 #define UDP_CHECKSUM_COVERAGE 20