diff --git a/mingw-w64-headers/include/iprtrmib.h b/mingw-w64-headers/include/iprtrmib.h
index 3d21bef..0f917bf 100644
--- a/mingw-w64-headers/include/iprtrmib.h
+++ b/mingw-w64-headers/include/iprtrmib.h
@@ -690,7 +690,22 @@
 #ifdef __cplusplus
   MIB_IPFORWARDROW ForwardRow;
 #else
-  MIB_IPFORWARDROW;
+  __MINGW_EXTENSION union {
+    DWORD dwForwardDest;
+    DWORD dwForwardMask;
+    DWORD dwForwardPolicy;
+    DWORD dwForwardNextHop;
+    DWORD dwForwardIfIndex;
+    DWORD dwForwardType;
+    DWORD dwForwardProto;
+    DWORD dwForwardAge;
+    DWORD dwForwardNextHopAS;
+    DWORD dwForwardMetric1;
+    DWORD dwForwardMetric2;
+    DWORD dwForwardMetric3;
+    DWORD dwForwardMetric4;
+    DWORD dwForwardMetric5;
+  }; /* see MIB_IPFORWARDROW */
 #endif
   DWORD dwForwardPreference;
   DWORD dwForwardViewSet;
diff --git a/mingw-w64-headers/include/mprapi.h b/mingw-w64-headers/include/mprapi.h
index 49ac3fd..8767c4a 100644
--- a/mingw-w64-headers/include/mprapi.h
+++ b/mingw-w64-headers/include/mprapi.h
@@ -8,6 +8,7 @@
 
 #include <lmcons.h>
 #include <ras.h>
+#include <wincrypt.h>
 
 #ifdef __cplusplus
 extern "C" {
@@ -699,14 +700,14 @@
 DWORD CALLBACK MprAdminGetIpv6AddressForUser(
   WCHAR *lpwszUserName,
   WCHAR *lpwszPortName,
-  in6_addr *lpdwIpv6Address,
+  struct in6_addr *lpdwIpv6Address,
   WINBOOL *bNotifyRelease
 );
 
 DWORD CALLBACK MprAdminReleaseIpv6AddressForUser(
   WCHAR *lpwszUserName,
   WCHAR *lpwszPortName,
-  in6_addr *lpdwIpv6Address
+  struct in6_addr *lpdwIpv6Address
 );
 
 DWORD WINAPI MprConfigFilterGetInfo(
@@ -789,7 +790,7 @@
   DWORD   dwCcpOptions;
   DWORD   dwRemoteCompressionAlgorithm;
   DWORD   dwCcpRemoteOptions;
-} PPP_PROJECTION_INFO, *PPP_PROJECTION_INFO;
+} PPP_PROJECTION_INFO, *PPPP_PROJECTION_INFO;
 
 typedef struct _IKEV2_PROJECTION_INFO {
   DWORD   dwIPv4NegotiationError;
@@ -817,6 +818,9 @@
   } DUMMYUNIONNAME;
 } PROJECTION_INFO, *PPROJECTION_INFO;
 
+/* TODO: Fixme: This constant needs verification */
+#define MAXIPADRESSLEN (4*4) /* Format a.b.c.d */
+
 typedef struct _RAS_CONNECTION_EX {
   MPRAPI_OBJECT_HEADER  Header;
   DWORD                 dwConnectDuration;
@@ -883,12 +887,12 @@
 typedef struct _L2TP_CONFIG_PARAMS {
   DWORD dwNumPorts;
   DWORD dwPortFlags;
-} L2TP_CONFIG_PARAMS, *L2TP_CONFIG_PARAMS;
+} L2TP_CONFIG_PARAMS, *PL2TP_CONFIG_PARAMS;
 
 typedef struct _SSTP_CERT_INFO {
   BOOL            isDefault;
   CRYPT_HASH_BLOB certBlob;
-} SSTP_CERT_INFO, *SSTP_CERT_INFO;
+} SSTP_CERT_INFO, *PSSTP_CERT_INFO;
 
 typedef struct _SSTP_CONFIG_PARAMS {
   DWORD          dwNumPorts;
@@ -896,7 +900,7 @@
   BOOL           isUseHttps;
   DWORD          certAlgorithm;
   SSTP_CERT_INFO sstpCertDetails;
-} SSTP_CONFIG_PARAMS, *SSTP_CONFIG_PARAMS;
+} SSTP_CONFIG_PARAMS, *PSSTP_CONFIG_PARAMS;
 
 typedef struct _MPRAPI_TUNNEL_CONFIG_PARAMS {
   IKEV2_CONFIG_PARAMS IkeConfigParams;
@@ -911,15 +915,8 @@
   MPRAPI_TUNNEL_CONFIG_PARAMS ConfigParams;
 } MPR_SERVER_SET_CONFIG_EX, *PMPR_SERVER_SET_CONFIG_EX;
 
-DWORD APIENTRY MprConfigServerConnect(
-  LPWSTR lpwsServerName,
-  HANDLE *phMprConfig
-);
-
-DWORD APIENTRY MprConfigServerSetInfo(
-  HANDLE hMprConfig,
-  MPR_SERVER_SET_CONFIG_EX *pSetServerConfig
-);
+DWORD APIENTRY MprConfigServerConnectEx(LPWSTR lpwsServerName,HANDLE *phMprConfig);
+DWORD APIENTRY MprConfigServerSetInfoEx(HANDLE hMprConfig,MPR_SERVER_SET_CONFIG_EX *pSetServerConfig);
 
 #endif /*(_WIN32_WINNT >= 0x0601)*/
 
diff --git a/mingw-w64-headers/include/naptypes.h b/mingw-w64-headers/include/naptypes.h
index 961bf54..f077527 100644
--- a/mingw-w64-headers/include/naptypes.h
+++ b/mingw-w64-headers/include/naptypes.h
@@ -22,18 +22,21 @@
 #define maxStringLength               0x400
 #define maxStringLengthInBytes        ((maxStringLength + 1) * sizeof(WCHAR))
 #define maxSystemHealthEntityCount    0x14
-#define SystemHealthEntityCount       0x14 /*[range(0, maxSystemHealthEntityCount)]*/
 #define maxEnforcerCount              0x14
-#define EnforcementEntityCount        0x14 /*[range(0, maxEnforcerCount)]*/
 #define maxPrivateDataSize            0xC8
 #define maxConnectionCountPerEnforcer 0x14
 #define maxCachedSoHCount             (maxSystemHealthEntityCount * maxEnforcerCount * maxConnectionCountPerEnforcer)
 #define freshSoHRequest               0x1
 #define shaFixup                      0x1
-#define failureCategoryCount          0x5
+#define failureCategoryCount 5
 #define ComponentTypeEnforcementClientSoH 0x1
 #define ComponentTypeEnforcementClientRp  0x2
 
+  typedef struct tagCountedString {
+    UINT16 length;
+    WCHAR *string;
+  } CountedString;
+
 #ifndef NAPTypes
 #define NAPTypes
   typedef FILETIME ProbationTime;
@@ -104,11 +107,6 @@
     BYTE * value;
   } SoHAttribute;
 
-  typedef struct tagCountedString {
-    UINT16 length;
-    WCHAR *string;
-  } CountedString;
-
   typedef struct tagIpv4Address {
     BYTE addr[4];
   } Ipv4Address;
@@ -129,8 +127,6 @@
     MessageId   fixupMsgId;
   } FixupInfo;
 
-#define failureCategoryCount 5
-
   typedef struct tagFailureCategoryMapping {
     WINBOOL mappingCompliance[failureCategoryCount];
   } FailureCategoryMapping;
diff --git a/mingw-w64-headers/include/netioapi.h b/mingw-w64-headers/include/netioapi.h
index 58a5cbe..422135a 100644
--- a/mingw-w64-headers/include/netioapi.h
+++ b/mingw-w64-headers/include/netioapi.h
@@ -6,8 +6,16 @@
 #ifndef _INC_NETIOAPI
 #define _INC_NETIOAPI
 
+#include <winsock2.h>
 #include <iprtrmib.h>
 #include <ifdef.h>
+#include <ws2tcpip.h>
+#include <ws2ipdef.h>
+#include <ntddndis.h>
+
+#ifndef ANY_SIZE
+#define ANY_SIZE 1
+#endif
 
 #if (_WIN32_WINNT >= 0x0600)
 
@@ -46,6 +54,11 @@
   MIB_ANYCASTIPADDRESS_ROW Table[ANY_SIZE];
 } MIB_ANYCASTIPADDRESS_TABLE, *PMIB_ANYCASTIPADDRESS_TABLE;
 
+typedef struct _IP_ADDRESS_PREFIX {
+  SOCKADDR_INET Prefix;
+  UINT8         PrefixLength;
+} IP_ADDRESS_PREFIX, *PIP_ADDRESS_PREFIX;
+
 typedef struct _MIB_IPFORWARD_ROW2 {
   NET_LUID          InterfaceLuid;
   NET_IFINDEX       InterfaceIndex;
@@ -94,10 +107,9 @@
   MIB_IPFORWARD_ROW2 Table[ANY_SIZE];
 } MIB_IPFORWARD_TABLE2, *PMIB_IPFORWARD_TABLE2;
 
-typedef struct _IP_ADDRESS_PREFIX {
-  SOCKADDR_INET Prefix;
-  UINT8         PrefixLength;
-} IP_ADDRESS_PREFIX, *PIP_ADDRESS_PREFIX;
+#ifndef ScopeLevelCount
+#define ScopeLevelCount 16
+#endif
 
 typedef struct _MIB_IPINTERFACE_ROW {
   ADDRESS_FAMILY                 Family;
@@ -464,10 +476,10 @@
   PMIB_IFSTACK_TABLE *Table
 );
 
-NETIOAPI_API GetIfTable2Ex(
-  MIB_IF_TABLE_LEVEL Level,
-  PMIB_IF_TABLE2 *Table
-);
+/* TODO: Fixme.
+  MIB_IF_TABLE_LEVEL is unknown type
+  NETIOAPI_API GetIfTable2Ex(MIB_IF_TABLE_LEVEL Level,PMIB_IF_TABLE2 *Table);
+*/
 
 NETIOAPI_API  GetInvertedIfStackTable(
   PMIB_INVERTEDIFSTACK_TABLE *Table
diff --git a/mingw-w64-headers/include/ras.h b/mingw-w64-headers/include/ras.h
index c53f8b5..88d4d69 100644
--- a/mingw-w64-headers/include/ras.h
+++ b/mingw-w64-headers/include/ras.h
@@ -7,6 +7,8 @@
 #define _RAS_H_
 
 #include <_mingw_unicode.h>
+#include <inaddr.h>
+#include <in6addr.h>
 
 #ifdef __cplusplus
 extern "C" {
diff --git a/mingw-w64-headers/include/udpmib.h b/mingw-w64-headers/include/udpmib.h
index de8d2d5..6213abd 100644
--- a/mingw-w64-headers/include/udpmib.h
+++ b/mingw-w64-headers/include/udpmib.h
@@ -17,6 +17,10 @@
   DWORD    dwLocalPort;
 } MIB_UDP6ROW, *PMIB_UDP6ROW;
 
+#ifndef ANY_SIZE
+#define ANY_SIZE 1
+#endif
+
 typedef struct _MIB_UDP6TABLE {
   DWORD       dwNumEntries;
   MIB_UDP6ROW table[ANY_SIZE];
diff --git a/mingw-w64-headers/include/winbase.h b/mingw-w64-headers/include/winbase.h
index 88223ac..68f7b84 100644
--- a/mingw-w64-headers/include/winbase.h
+++ b/mingw-w64-headers/include/winbase.h
@@ -2834,6 +2834,14 @@
 typedef struct _TP_WORK *PTP_WORK;
 typedef struct _TP_POOL *PTP_POOL;
 
+#ifndef _PTP_CLEANUP_GROUP_CANCEL_CALLBACK_DEFINED
+#define _PTP_CLEANUP_GROUP_CANCEL_CALLBACK_DEFINED
+  typedef VOID (CALLBACK *PTP_CLEANUP_GROUP_CANCEL_CALLBACK)(
+    PVOID ObjectContext,
+    PVOID CleanupContext
+  );
+#endif
+
 typedef DWORD TP_WAIT_RESULT;
 
 typedef VOID (CALLBACK *PTP_WAIT_CALLBACK)(PTP_CALLBACK_INSTANCE Instance, PVOID Context, PTP_WAIT Wait, TP_WAIT_RESULT WaitResult);
diff --git a/mingw-w64-headers/include/winnt.h b/mingw-w64-headers/include/winnt.h
index 6265197..16bdf15 100644
--- a/mingw-w64-headers/include/winnt.h
+++ b/mingw-w64-headers/include/winnt.h
@@ -6394,10 +6394,13 @@
     ULONG UiAccess;
   } ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION, *PACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION;
 
+#ifndef _PTP_CLEANUP_GROUP_CANCEL_CALLBACK_DEFINED
+#define _PTP_CLEANUP_GROUP_CANCEL_CALLBACK_DEFINED
   typedef VOID (CALLBACK *PTP_CLEANUP_GROUP_CANCEL_CALLBACK)(
     PVOID ObjectContext,
     PVOID CleanupContext
   );
+#endif
 
 DEFINE_GUID(NO_SUBGROUP_GUID,0xfea3413e,0x7e05,0x4911,0x9a,0x71,0x70,0x03,0x31,0xf1,0xc2,0x94);
 DEFINE_GUID(GUID_DISK_SUBGROUP,0x0012ee47,0x9041,0x4b5d,0x9b,0x77,0x53,0x5f,0xba,0x8b,0x14,0x42);
diff --git a/mingw-w64-headers/include/ws2ipdef.h b/mingw-w64-headers/include/ws2ipdef.h
index 9a784ca..c892b4d 100644
--- a/mingw-w64-headers/include/ws2ipdef.h
+++ b/mingw-w64-headers/include/ws2ipdef.h
@@ -15,7 +15,7 @@
   MCAST_EXCLUDE
 } MULTICAST_MODE_TYPE;
 
-typedef struct {
+typedef struct _SCOPE_ID {
   __MINGW_EXTENSION union {
     __MINGW_EXTENSION struct {
 	ULONG	Zone : 28;
