fix multiple compilation errors


git-svn-id: svn+ssh://svn.code.sf.net/p/mingw-w64/code/trunk@3326 4407c894-4637-0410-b4f5-ada5f102cad1
diff --git a/mingw-w64-headers/include/iptypes.h b/mingw-w64-headers/include/iptypes.h
index 874e2a9..20fded3 100644
--- a/mingw-w64-headers/include/iptypes.h
+++ b/mingw-w64-headers/include/iptypes.h
@@ -221,16 +221,6 @@
 #define IP_ADAPTER_IPV6_ENABLED 0x100
 #define IP_ADAPTER_IPV6_MANAGE_ADDRESS_CONFIG 0x200
 
-  typedef enum {
-    ScopeLevelInterface = 1,
-    ScopeLevelLink      = 2,
-    ScopeLevelSubnet    = 3,
-    ScopeLevelAdmin     = 4,
-    ScopeLevelSite      = 5,
-    ScopeLevelOrganization = 8,
-    ScopeLevelGlobal   = 14
-  } SCOPE_LEVEL;
-
   typedef struct _IP_ADAPTER_ADDRESSES_LH {
     __MINGW_EXTENSION union {
       ULONGLONG   Alignment;
diff --git a/mingw-w64-headers/include/mprapi.h b/mingw-w64-headers/include/mprapi.h
index 8767c4a..be712c2 100644
--- a/mingw-w64-headers/include/mprapi.h
+++ b/mingw-w64-headers/include/mprapi.h
@@ -8,7 +8,6 @@
 
 #include <lmcons.h>
 #include <ras.h>
-#include <wincrypt.h>
 
 #ifdef __cplusplus
 extern "C" {
@@ -338,6 +337,7 @@
 #define IPADDRESSLEN 15
 #define IPXADDRESSLEN 22
 #define ATADDRESSLEN 32
+#define MAXIPADRESSLEN 64
 
   typedef struct _PPP_NBFCP_INFO {
     DWORD dwError;
@@ -700,14 +700,14 @@
 DWORD CALLBACK MprAdminGetIpv6AddressForUser(
   WCHAR *lpwszUserName,
   WCHAR *lpwszPortName,
-  struct in6_addr *lpdwIpv6Address,
+  IN6_ADDR *lpdwIpv6Address,
   WINBOOL *bNotifyRelease
 );
 
 DWORD CALLBACK MprAdminReleaseIpv6AddressForUser(
   WCHAR *lpwszUserName,
   WCHAR *lpwszPortName,
-  struct in6_addr *lpdwIpv6Address
+  IN6_ADDR *lpdwIpv6Address
 );
 
 DWORD WINAPI MprConfigFilterGetInfo(
@@ -818,9 +818,6 @@
   } 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;
diff --git a/mingw-w64-headers/include/napenforcementclient.h b/mingw-w64-headers/include/napenforcementclient.h
index 4c0f893..38c8c2b 100644
--- a/mingw-w64-headers/include/napenforcementclient.h
+++ b/mingw-w64-headers/include/napenforcementclient.h
@@ -20,6 +20,10 @@
 
 #ifndef NAPTypes
 #define NAPTypes
+  typedef struct tagCountedString {
+    UINT16 length;
+    WCHAR *string;
+  } CountedString;
   typedef FILETIME ProbationTime;
   typedef UINT32 ProtocolMaxSize;
   typedef UINT32 NapComponentId;
diff --git a/mingw-w64-headers/include/naptypes.h b/mingw-w64-headers/include/naptypes.h
index f077527..0e9082f 100644
--- a/mingw-w64-headers/include/naptypes.h
+++ b/mingw-w64-headers/include/naptypes.h
@@ -28,17 +28,16 @@
 #define maxCachedSoHCount             (maxSystemHealthEntityCount * maxEnforcerCount * maxConnectionCountPerEnforcer)
 #define freshSoHRequest               0x1
 #define shaFixup                      0x1
-#define failureCategoryCount 5
+#define failureCategoryCount          0x5
 #define ComponentTypeEnforcementClientSoH 0x1
 #define ComponentTypeEnforcementClientRp  0x2
 
+#ifndef NAPTypes
+#define NAPTypes
   typedef struct tagCountedString {
     UINT16 length;
     WCHAR *string;
   } CountedString;
-
-#ifndef NAPTypes
-#define NAPTypes
   typedef FILETIME ProbationTime;
   typedef UINT32 ProtocolMaxSize;
   typedef UINT32 NapComponentId;
diff --git a/mingw-w64-headers/include/netioapi.h b/mingw-w64-headers/include/netioapi.h
index 422135a..c1ab8d6 100644
--- a/mingw-w64-headers/include/netioapi.h
+++ b/mingw-w64-headers/include/netioapi.h
@@ -6,12 +6,9 @@
 #ifndef _INC_NETIOAPI
 #define _INC_NETIOAPI
 
-#include <winsock2.h>
+#include <ws2def.h>
 #include <iprtrmib.h>
 #include <ifdef.h>
-#include <ws2tcpip.h>
-#include <ws2ipdef.h>
-#include <ntddndis.h>
 
 #ifndef ANY_SIZE
 #define ANY_SIZE 1
@@ -107,10 +104,6 @@
   MIB_IPFORWARD_ROW2 Table[ANY_SIZE];
 } MIB_IPFORWARD_TABLE2, *PMIB_IPFORWARD_TABLE2;
 
-#ifndef ScopeLevelCount
-#define ScopeLevelCount 16
-#endif
-
 typedef struct _MIB_IPINTERFACE_ROW {
   ADDRESS_FAMILY                 Family;
   NET_LUID                       InterfaceLuid;
@@ -476,10 +469,15 @@
   PMIB_IFSTACK_TABLE *Table
 );
 
-/* TODO: Fixme.
-  MIB_IF_TABLE_LEVEL is unknown type
-  NETIOAPI_API GetIfTable2Ex(MIB_IF_TABLE_LEVEL Level,PMIB_IF_TABLE2 *Table);
-*/
+typedef enum _MIB_IF_TABLE_LEVEL {
+  MibIfTableNormal = 0,
+  MibIfTableRaw    = 1
+} MIB_IF_TABLE_LEVEL, *PMIB_IF_TABLE_LEVEL;
+
+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 88d4d69..cac6af6 100644
--- a/mingw-w64-headers/include/ras.h
+++ b/mingw-w64-headers/include/ras.h
@@ -7,6 +7,7 @@
 #define _RAS_H_
 
 #include <_mingw_unicode.h>
+
 #include <inaddr.h>
 #include <in6addr.h>
 
diff --git a/mingw-w64-headers/include/tcpmib.h b/mingw-w64-headers/include/tcpmib.h
index 9754649..a726d06 100644
--- a/mingw-w64-headers/include/tcpmib.h
+++ b/mingw-w64-headers/include/tcpmib.h
@@ -5,7 +5,13 @@
  */
 #ifndef _INC_TCPMIB
 #define _INC_TCPMIB
+
+#ifndef ANY_SIZE
+#define ANY_SIZE 1
+#endif
+
 #if (_WIN32_WINNT >= 0x0600)
+
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -67,5 +73,7 @@
 #ifdef __cplusplus
 }
 #endif
+
 #endif /*(_WIN32_WINNT >= 0x0600)*/
+
 #endif /*_INC_TCPMIB*/
diff --git a/mingw-w64-headers/include/udpmib.h b/mingw-w64-headers/include/udpmib.h
index 6213abd..9ab5dbc 100644
--- a/mingw-w64-headers/include/udpmib.h
+++ b/mingw-w64-headers/include/udpmib.h
@@ -5,6 +5,11 @@
  */
 #ifndef _INC_UDPMIB
 #define _INC_UDPMIB
+
+#ifndef ANY_SIZE
+#define ANY_SIZE 1
+#endif
+
 #if (_WIN32_WINNT >= 0x0600)
 
 #ifdef __cplusplus
@@ -17,10 +22,6 @@
   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];
@@ -29,5 +30,7 @@
 #ifdef __cplusplus
 }
 #endif
+
 #endif /*(_WIN32_WINNT >= 0x0600)*/
+
 #endif /*_INC_UDPMIB*/
diff --git a/mingw-w64-headers/include/winbase.h b/mingw-w64-headers/include/winbase.h
index 68f7b84..88223ac 100644
--- a/mingw-w64-headers/include/winbase.h
+++ b/mingw-w64-headers/include/winbase.h
@@ -2834,14 +2834,6 @@
 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 16bdf15..6265197 100644
--- a/mingw-w64-headers/include/winnt.h
+++ b/mingw-w64-headers/include/winnt.h
@@ -6394,13 +6394,10 @@
     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/winsock2.h b/mingw-w64-headers/include/winsock2.h
index bc8a575..ae5679e 100644
--- a/mingw-w64-headers/include/winsock2.h
+++ b/mingw-w64-headers/include/winsock2.h
@@ -50,6 +50,7 @@
 #include <mingw_inc/_fd_types.h>
 #include <mingw_inc/_ip_types.h>
 #include <mingw_inc/_wsadata.h>
+#include <ws2def.h> /* FIXME: include order */
 
 #ifdef __cplusplus
 extern "C" {
diff --git a/mingw-w64-headers/include/ws2def.h b/mingw-w64-headers/include/ws2def.h
new file mode 100644
index 0000000..4169d25
--- /dev/null
+++ b/mingw-w64-headers/include/ws2def.h
@@ -0,0 +1,39 @@
+/**
+ * This file has no copyright assigned and is placed in the Public Domain.
+ * This file is part of the w64 mingw-runtime package.
+ * No warranty is given; refer to the file DISCLAIMER.PD within this package.
+ */
+
+#ifndef _WS2DEF_
+#define _WS2DEF_
+
+#include <_mingw.h>
+
+/* FIXME FIXME FIXME FIXME FIXME: Much more date need moving here.
+ * This holds only SCOPE_LEVEL and SCOPE_ID so that compilations
+ * do not fail.
+ */
+
+typedef enum _SCOPE_LEVEL {
+  ScopeLevelInterface = 1,
+  ScopeLevelLink      = 2,
+  ScopeLevelSubnet    = 3,
+  ScopeLevelAdmin     = 4,
+  ScopeLevelSite      = 5,
+  ScopeLevelOrganization = 8,
+  ScopeLevelGlobal   = 14,
+  ScopeLevelCount    = 16
+} SCOPE_LEVEL;
+
+typedef struct _SCOPE_ID {
+  __MINGW_EXTENSION union {
+    __MINGW_EXTENSION struct {
+	ULONG	Zone : 28;
+	ULONG	Level : 4;
+    };
+    ULONG Value;
+  };
+} SCOPE_ID, *PSCOPE_ID;
+
+#endif /* _WS2DEF_ */
+
diff --git a/mingw-w64-headers/include/ws2ipdef.h b/mingw-w64-headers/include/ws2ipdef.h
index c892b4d..a71bbb6 100644
--- a/mingw-w64-headers/include/ws2ipdef.h
+++ b/mingw-w64-headers/include/ws2ipdef.h
@@ -15,16 +15,6 @@
   MCAST_EXCLUDE
 } MULTICAST_MODE_TYPE;
 
-typedef struct _SCOPE_ID {
-  __MINGW_EXTENSION union {
-    __MINGW_EXTENSION struct {
-	ULONG	Zone : 28;
-	ULONG	Level : 4;
-    };
-    ULONG Value;
-  };
-} SCOPE_ID, *PSCOPE_ID;
-
 typedef struct _sockaddr_in6_pair {
   PSOCKADDR_IN6 SourceAddress;
   PSOCKADDR_IN6 DestinationAddress;