Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

279 lines
7.9 KiB

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