 TYPEDEF: LPHANDLE LPWSAEVENT
 TYPEDEF: sockaddr* LPSOCKADDR
 
-C-STRUCT: FLOWSPEC
-    { "uint"        "TokenRate" }
-    { "uint"        "TokenBucketSize" }
-    { "uint"        "PeakBandwidth" }
-    { "uint"        "Latency" }
-    { "uint"        "DelayVariation" }
-    { "SERVICETYPE" "ServiceType" }
-    { "uint"        "MaxSduSize" }
-    { "uint"        "MinimumPolicedSize" } ;
+STRUCT: FLOWSPEC
+    { TokenRate          uint        }
+    { TokenBucketSize    uint        }
+    { PeakBandwidth      uint        }
+    { Latency            uint        }
+    { DelayVariation     uint        }
+    { ServiceType        SERVICETYPE }
+    { MaxSduSize         uint        }
+    { MinimumPolicedSize uint        } ;
 TYPEDEF: FLOWSPEC* PFLOWSPEC
 TYPEDEF: FLOWSPEC* LPFLOWSPEC
 


CONSTANT: FD_MAX_EVENTS 10

C-STRUCT: WSANETWORKEVENTS
    { "long" "lNetworkEvents" }
    { { "int" FD_MAX_EVENTS } "iErrorCode" } ;
TYPEDEF: WSANETWORKEVENTS* PWSANETWORKEVENTS
TYPEDEF: WSANETWORKEVENTS* LPWSANETWORKEVENTS

! C-STRUCT: WSAOVERLAPPED
    ! { "DWORD" "Internal" }
    ! { "DWORD" "InternalHigh" }
    ! { "DWORD" "Offset" }
    ! { "DWORD" "OffsetHigh" }
    ! { "WSAEVENT" "hEvent" }
    ! { "DWORD" "bytesTransferred" } ;
! TYPEDEF: WSAOVERLAPPED* LPWSAOVERLAPPED

FUNCTION: SOCKET WSAAccept ( SOCKET s,

    { buf void* } ;
TYPEDEF: WSABUF* LPWSABUF

STRUCT: QOS
    { SendingFlowspec FLOWSPEC }
    { ReceivingFlowspec FLOWSPEC }
    { ProviderSpecific WSABUF } ;
TYPEDEF: QOS* LPQOS

CONSTANT: MAX_PROTOCOL_CHAIN 7

STRUCT: WSAPROTOCOLCHAIN
    { ChainLen int }
    ! { ChainEntries { DWORD MAX_PROTOCOL_CHAIN } } ;
    { ChainEntries { DWORD 7 } } ;
TYPEDEF: WSAPROTOCOLCHAIN* LPWSAPROTOCOLCHAIN

CONSTANT: WSAPROTOCOL_LEN 255

STRUCT: WSAPROTOCOL_INFOW
    { dwServiceFlags1 DWORD }
    { dwServiceFlags2 DWORD }
    { dwServiceFlags3 DWORD }
    { dwServiceFlags4 DWORD }
    { dwProviderFlags DWORD }
    { ProviderId GUID }
    { dwCatalogEntryId DWORD }
    { ProtocolChain WSAPROTOCOLCHAIN }
    { iVersion int }
    { iAddressFamily int }
    { iMaxSockAddr int }
    { iMinSockAddr int }
    { iSocketType int }
    { iProtocol int }
    { iProtocolMaxOffset int }
    { iNetworkByteOrder int }
    { iSecurityScheme int }
    { dwMessageSize DWORD }
    { dwProviderReserved DWORD }
    { szProtocol { WCHAR 256 } } ;
    ! { szProtocol[WSAPROTOCOL_LEN+1] { WCHAR 256 } } ;
TYPEDEF: WSAPROTOCOL_INFOW* PWSAPROTOCOL_INFOW
TYPEDEF: WSAPROTOCOL_INFOW* LPWSAPROTOCOL_INFOW
TYPEDEF: WSAPROTOCOL_INFOW WSAPROTOCOL_INFO
