home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Windows Gam…ming Gurus (2nd Edition) / Disc2.iso / msdn_vcb / samples / vc98 / sdk / netds / winsock / dt_dll / dt_dll.h < prev    next >
Text File  |  1997-09-21  |  7KB  |  251 lines

  1. /*++
  2.  
  3. Copyright (c) 1995 Intel Corp
  4.  
  5. File Name:
  6.  
  7.     dt_dll.h
  8.  
  9. Abstract:
  10.  
  11.     This header describes the interface to the WinSock 2 debug/trace
  12.     DLL.  Please see the design spec for more information.
  13.  
  14. -*/
  15.  
  16. #ifndef _DT_DLL_H
  17. #define _DT_DLL_H
  18.  
  19. #include "nowarn.h"
  20. #include <winsock2.h>
  21.  
  22.  
  23. //
  24. // This type defines a pointer to the Pre/PostApiNotify functions
  25. //
  26.  
  27. typedef BOOL (WINAPIV * LPFNWSANOTIFY)(
  28.     IN  INT    NotificationCode,
  29.     OUT LPVOID ReturnCode,
  30.     IN  LPSTR  LibraryName,
  31.     ...);
  32.  
  33. //
  34. // Function prototypes for Pre/PostApiNotify
  35. //
  36.  
  37. BOOL WINAPIV
  38. WSAPreApiNotify(
  39.     IN  INT    NotificationCode,
  40.     OUT LPVOID ReturnCode,
  41.     IN  LPSTR  LibraryName,
  42.     ...);
  43.  
  44. BOOL WINAPIV
  45. WSAPostApiNotify(
  46.     IN  INT    NotificationCode,
  47.     OUT LPVOID ReturnCode,
  48.     IN  LPSTR  LibraryName,
  49.     ...);
  50.  
  51. //
  52. // Pointer to an exception notification function.
  53. //
  54.  
  55. typedef
  56. VOID
  57. (WINAPI * LPFNWSAEXCEPTIONNOTIFY)(
  58.     IN LPEXCEPTION_POINTERS ExceptionPointers
  59.     );
  60.  
  61. //
  62. // Function prototype for exception notify.
  63. //
  64.  
  65. VOID
  66. WINAPI
  67. WSAExceptionNotify(
  68.     IN LPEXCEPTION_POINTERS ExceptionPointers
  69.     );
  70.  
  71.  
  72. //
  73. // API function codes for Pre/PostApiNotify functions.  Note:  These must start
  74. // at  1  or more and be fairly densely assigned.  Small gaps can be tolerated.
  75. // Note  that  a  "MAX_DTCODE"  definition  should  be updated if new codes are
  76. // added.
  77. //
  78.  
  79. #define DTCODE_accept 1
  80. #define DTCODE_bind 2
  81. #define DTCODE_closesocket 3
  82. #define DTCODE_connect 4
  83. #define DTCODE_getpeername 5
  84. #define DTCODE_getsockname 6
  85. #define DTCODE_getsockopt 7
  86. #define DTCODE_htonl 8
  87. #define DTCODE_htons 9
  88. #define DTCODE_ioctlsocket 10
  89. #define DTCODE_listen 11
  90. #define DTCODE_ntohl 12
  91. #define DTCODE_ntohs 13
  92. #define DTCODE_recv 14
  93. #define DTCODE_recvfrom 15
  94. #define DTCODE_select 16
  95. #define DTCODE_send 17
  96. #define DTCODE_sendto 18
  97. #define DTCODE_setsockopt 19
  98. #define DTCODE_shutdown 20
  99. #define DTCODE_socket 21
  100. #define DTCODE_WSAAccept 22
  101. #define DTCODE_WSAAsyncSelect 23
  102. #define DTCODE_WSACancelBlockingCall 24
  103. #define DTCODE_WSACleanup 25
  104. #define DTCODE_WSACloseEvent 26
  105. #define DTCODE_WSAConnect 27
  106. #define DTCODE_WSACreateEvent 28
  107. #define DTCODE_WSADuplicateSocketA 29
  108. #define DTCODE_WSAEnumNetworkEvents 30
  109. #define DTCODE_WSAEnumProtocolsA 31
  110. #define DTCODE_WSAEventSelect 32
  111. #define DTCODE_WSAGetLastError 33
  112. #define DTCODE_WSAGetOverlappedResult 34
  113. #define DTCODE_WSAGetQOSByName 35
  114. #define DTCODE_WSAHtonl 36
  115. #define DTCODE_WSAHtons 37
  116. #define DTCODE_WSAIoctl 38
  117. #define DTCODE_WSAIsBlocking 39
  118. #define DTCODE_WSAJoinLeaf 40
  119. #define DTCODE_WSANtohl 41
  120. #define DTCODE_WSANtohs 42
  121. #define DTCODE_WSARecv 43
  122. #define DTCODE_WSARecvDisconnect 44
  123. #define DTCODE_WSARecvFrom 45
  124. #define DTCODE_WSAResetEvent 46
  125. #define DTCODE_WSASend 47
  126. #define DTCODE_WSASendDisconnect 48
  127. #define DTCODE_WSASendTo 49
  128. #define DTCODE_WSASetBlockingHook 50
  129. #define DTCODE_WSASetEvent 51
  130. #define DTCODE_WSASetLastError 52
  131. #define DTCODE_WSASocketA 53
  132. #define DTCODE_WSAStartup 54
  133. #define DTCODE_WSAUnhookBlockingHook 55
  134. #define DTCODE_WSAWaitForMultipleEvents 56
  135. #define DTCODE_gethostbyaddr 57
  136. #define DTCODE_gethostbyname 58
  137. #define DTCODE_gethostname 59
  138. #define DTCODE_getprotobyname 60
  139. #define DTCODE_getprotobynumber 61
  140. #define DTCODE_getservbyname 62
  141. #define DTCODE_getservbyport 63
  142. #define DTCODE_inet_addr 64
  143. #define DTCODE_inet_ntoa 65
  144. #define DTCODE_WSAAsyncGetHostByAddr 66
  145. #define DTCODE_WSAAsyncGetHostByName 67
  146. #define DTCODE_WSAAsyncGetProtoByName 68
  147. #define DTCODE_WSAAsyncGetProtoByNumber 69
  148. #define DTCODE_WSAAsyncGetServByName 70
  149. #define DTCODE_WSAAsyncGetServByPort 71
  150. #define DTCODE_WSACancelAsyncRequest 72
  151. #define DTCODE_WSPAccept 73
  152. #define DTCODE_WSPAsyncSelect 74
  153. #define DTCODE_WSPBind 75
  154. #define DTCODE_WSPCancelBlockingCall 76
  155. #define DTCODE_WSPCleanup 77
  156. #define DTCODE_WSPCloseSocket 78
  157. #define DTCODE_WSPConnect 79
  158. #define DTCODE_WSPDuplicateSocket 80
  159. #define DTCODE_WSPEnumNetworkEvents 81
  160. #define DTCODE_WSPEventSelect 82
  161. #define DTCODE_WSPGetOverlappedResult 83
  162. #define DTCODE_WSPGetPeerName 84
  163. // The  WSPGetProcTable  function  has  been removed, but the code numbers have
  164. // been kept the same.
  165. // #define DTCODE_WSPGetProcTable 85
  166. #define DTCODE_WSPGetSockName 86
  167. #define DTCODE_WSPGetSockOpt 87
  168. #define DTCODE_WSPGetQOSByName 88
  169. #define DTCODE_WSPIoctl 89
  170. #define DTCODE_WSPJoinLeaf 90
  171. #define DTCODE_WSPListen 91
  172. #define DTCODE_WSPRecv 92
  173. #define DTCODE_WSPRecvDisconnect 93
  174. #define DTCODE_WSPRecvFrom 94
  175. #define DTCODE_WSPSelect 95
  176. #define DTCODE_WSPSend 96
  177. #define DTCODE_WSPSendDisconnect 97
  178. #define DTCODE_WSPSendTo 98
  179. #define DTCODE_WSPSetSockOpt 99
  180. #define DTCODE_WSPShutdown 100
  181. #define DTCODE_WSPSocket 101
  182. #define DTCODE_WSPStartup 102
  183. #define DTCODE_WPUCloseEvent 103
  184. #define DTCODE_WPUCloseSocketHandle 104
  185. #define DTCODE_WPUCreateEvent 105
  186. #define DTCODE_WPUCreateSocketHandle 106
  187. #define DTCODE_WSCDeinstallProvider 107
  188. #define DTCODE_WSCInstallProvider 108
  189. #define DTCODE_WPUModifyIFSHandle 109
  190. #define DTCODE_WPUQueryBlockingCallback 110
  191. #define DTCODE_WPUQuerySocketHandleContext 111
  192. #define DTCODE_WPUQueueApc 112
  193. #define DTCODE_WPUResetEvent 113
  194. #define DTCODE_WPUSetEvent 114
  195. #define DTCODE_WSCEnumProtocols 115
  196. #define DTCODE_WPUGetProviderPath 116
  197. #define DTCODE_WPUPostMessage 117
  198. #define DTCODE_WPUFDIsSet 118
  199. #define DTCODE_WSADuplicateSocketW 119
  200. #define DTCODE_WSAEnumProtocolsW 120
  201. #define DTCODE_WSASocketW 121
  202. #define DTCODE___WSAFDIsSet 122
  203. #define DTCODE_WSAAddressToStringA 123
  204. #define DTCODE_WSAAddressToStringW 124
  205. #define DTCODE_WSAStringToAddressA 125
  206. #define DTCODE_WSAStringToAddressW 126
  207. #define DTCODE_WSALookupServiceBeginA 127
  208. #define DTCODE_WSALookupServiceBeginW 128
  209. #define DTCODE_WSALookupServiceNextA 129
  210. #define DTCODE_WSALookupServiceNextW 130
  211. #define DTCODE_WSALookupServiceEnd 131
  212. //
  213. // WSAGetAddressByName[AW] have been removed.
  214. //
  215. // #define DTCODE_WSAGetAddressByNameA 132
  216. // #define DTCODE_WSAGetAddressByNameW 133
  217. #define DTCODE_WSAInstallServiceClassA 134
  218. #define DTCODE_WSAInstallServiceClassW 135
  219. #define DTCODE_WSASetServiceA 136
  220. #define DTCODE_WSASetServiceW 137
  221. #define DTCODE_WSARemoveServiceClass 138
  222. #define DTCODE_WSAGetServiceClassInfoA 139
  223. #define DTCODE_WSAGetServiceClassInfoW 140
  224. #define DTCODE_WSAEnumNameSpaceProvidersA 141
  225. #define DTCODE_WSAEnumNameSpaceProvidersW 142
  226. #define DTCODE_WSAGetServiceClassNameByClassIdA 143
  227. #define DTCODE_WSAGetServiceClassNameByClassIdW 144
  228. #define DTCODE_NSPAddressToString 145
  229. #define DTCODE_NSPStringToAddress 146
  230. #define DTCODE_NSPLookupServiceBegin 147
  231. #define DTCODE_NSPLookupServiceNext 148
  232. #define DTCODE_NSPLookupServiceEnd 149
  233. #define DTCODE_NSPGetAddressByName 150
  234. #define DTCODE_NSPInstallServiceClass 151
  235. #define DTCODE_NSPSetService 152
  236. #define DTCODE_NSPRemoveServiceClass 153
  237. #define DTCODE_NSPGetServiceClassInfo 154
  238. #define DTCODE_NSPEnumNameSpaceProviders 155
  239. #define DTCODE_NSPGetServiceClassNameByClassId 156
  240. #define DTCODE_WSCGetProviderPath 157
  241. #define DTCODE_WSCInstallNameSpace 158
  242. #define DTCODE_WSCUnInstallNameSpace 159
  243. #define DTCODE_WSCEnableNSProvider 160
  244. #define DTCODE_WSPAddressToString 161
  245. #define DTCODE_WSPStringToAddress 162
  246.  
  247. #define MAX_DTCODE DTCODE_WSPStringToAddress
  248.  
  249. #endif
  250.  
  251.