; $Id: wsock32.def,v 1.23 2001-07-07 14:29:41 achimha Exp $

;Created by BLAST for IBM's compiler
LIBRARY WSOCK32 INITINSTANCE

DESCRIPTION 'Odin32 System DLL - WSock32'

DATA MULTIPLE NONSHARED

IMPORTS
  ; this is not in every so32dll.lib
  winsockcleanupsockets = SO32DLL.38 ; WINSOCKCLEANUPSOCKETS


EXPORTS

; ----------------------
; BSD Standard Functions
; ----------------------

   accept                      = "_OS2accept@12"                          @1
   bind                        = "_OS2bind@12"                            @2
   closesocket                 = "_OS2closesocket@4"                      @3
   connect                     = "_OS2connect@12"                         @4
   getpeername                 = "_OS2getpeername@12"                     @5
   getsockname                 = "_OS2getsockname@12"                     @6
   getsockopt                  = "_OS2getsockopt@20"                      @7
   htonl                       = "_OS2htonl@4"                            @8
   htons                       = "_OS2htons@4"                            @9
   inet_addr                   = "_OS2inet_addr@4"                        @10
   inet_ntoa                   = "_OS2inet_ntoa@4"                        @11
   ioctlsocket                 = "_OS2ioctlsocket@12"                     @12
   listen                      = "_OS2listen@8"                           @13
   ntohl                       = "_OS2ntohl@4"                            @14
   ntohs                       = "_OS2ntohs@4"                            @15
   recv                        = "_OS2recv@16"                            @16
   recvfrom                    = "_OS2recvfrom@24"                        @17
   select                      = "_OS2select@20"                          @18
   send                        = "_OS2send@16"                            @19
   sendto                      = "_OS2sendto@24"                          @20
   setsockopt                  = "_OS2setsockopt@20"                      @21
   shutdown                    = "_OS2shutdown@8"                         @22
   socket                      = "_OS2socket@12"                          @23

   gethostbyaddr               = "_OS2gethostbyaddr@12"                   @51
   gethostbyname               = "_OS2gethostbyname@4"                    @52
   getprotobyname              = "_OS2getprotobyname@4"                   @53
   getprotobynumber            = "_OS2getprotobynumber@4"                 @54
   getservbyname               = "_OS2getservbyname@8"                    @55
   getservbyport               = "_OS2getservbyport@8"                    @56
   gethostname                 = "_OS2gethostname@8"                      @57

; ----------------------------
; Microsoft WinSock Extensions
; ----------------------------

   WSAAsyncSelect              = "_WSAAsyncSelect@16"                  @101
   WSAAsyncGetHostByAddr       = "_WSAAsyncGetHostByAddr@28"           @102
   WSAAsyncGetHostByName       = "_WSAAsyncGetHostByName@20"           @103
   WSAAsyncGetProtoByNumber    = "_WSAAsyncGetProtoByNumber@20"        @104
   WSAAsyncGetProtoByName      = "_WSAAsyncGetProtoByName@20"          @105
   WSAAsyncGetServByPort       = "_WSAAsyncGetServByPort@24"           @106
   WSAAsyncGetServByName       = "_WSAAsyncGetServByName@24"           @107
   WSACancelAsyncRequest       = "_WSACancelAsyncRequest@4"            @108
   WSASetBlockingHook          = "_WSASetBlockingHook@4"               @109
   WSAUnhookBlockingHook       = "_WSAUnhookBlockingHook@0"            @110
   WSAGetLastError             = "_WSAGetLastError@0"                  @111
   WSASetLastError             = "_WSASetLastError@4"                  @112
   WSACancelBlockingCall       = "_WSACancelBlockingCall@0"            @113
   WSAIsBlocking               = "_WSAIsBlocking@0"                    @114
   WSAStartup                  = "_WSAStartup@8"                       @115
   WSACleanup                  = "_WSACleanup@0"                       @116
   __WSAFDIsSet                = "___WSAFDIsSet@8"                     @151

   rcmd                        = "_OS2rcmd@24"                            @1102
   rexec                       = "_OS2rexec@24"                           @1103
   WSARecvEx                   = "_WSARecvEx@16"                       @1107
   s_perror                    = "_OS2s_perror@8"                         @1108

; -------------------
; not yet implemented
; -------------------

;  WsControl                   = _OS2WsControl                            @1000
;  closesockinfo               = _OS2closesockinfo                        @1001
;  WSHEnumProtocols            = _OS2WSHEnumProtocols                     @1004
;  inet_network                = _OS2inet_network                         @1100
;  getnetbyname                = _OS2getnetbyname                         @1101
;  rresvport                   = _OS2rresvport                            @1104
;  sethostname                 = _OS2sethostname                          @1105
;  dn_expand                   = _OS2dn_expand                            @1106
;  Arecv                       = _OS2Arecv
;  Asend                       = _OS2Asend
;  EnumProtocolsA              = _OS2EnumProtocolsA
;  EnumProtocolsW              = _OS2EnumProtocolsW
;  GetAddressByNameA           = _OS2GetAddressByNameA
;  GetAddressByNameW           = _OS2GetAddressByNameW
;  GetNameByTypeA              = _OS2GetNameByTypeA
;  GetNameByTypeW              = _OS2GetNameByTypeW
;  GetServiceA                 = _OS2GetServiceA
;  GetServiceW                 = _OS2GetServiceW
;  GetTypeByNameA              = _OS2GetTypeByNameA
;  GetTypeByNameW              = _OS2GetTypeByNameW
;  NPLoadNameSpaces            = _OS2NPLoadNameSpaces
;  SetServiceA                 = _OS2SetServiceA
;  SetServiceW                 = _OS2SetServiceW
;  TransmitFile                = _OS2TransmitFile

;
; ENDOFEXPORTS
; Internal function marker
;

; -----------------------
; ODIN internal functions
; -----------------------

                                 "_OS2gethostname@8"                      @2000

; functions for ws2_32 implemented here
   WSAEventSelect              = "_WSAEventSelect@12"                     @3001
   WSAEnumNetworkEvents        = "_WSAEnumNetworkEvents@12"               @3002
