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.

272 lines
5.0 KiB

  1. /*++
  2. Copyright (c) 1995-2000 Microsoft Corporation
  3. Module Name:
  4. iphlpstk.h
  5. Abstract:
  6. Revision History:
  7. Amritansh Raghav
  8. --*/
  9. #pragma once
  10. #include "tcpinfo.h"
  11. DWORD
  12. AllocateAndGetIfTableFromStack(
  13. OUT MIB_IFTABLE **ppIfTable,
  14. IN BOOL bOrder,
  15. IN HANDLE hHeap,
  16. IN DWORD dwFlags,
  17. IN BOOL bForceUpdate
  18. );
  19. DWORD
  20. GetIfTableFromStack(
  21. OUT PMIB_IFTABLE pIfTable,
  22. IN DWORD dwSize,
  23. IN BOOL bOrder,
  24. IN BOOL bForceUpdate
  25. );
  26. DWORD
  27. NhpGetInterfaceIndexFromStack(
  28. IN PWCHAR pwszIfName,
  29. OUT PDWORD pdwIfIndex
  30. );
  31. DWORD
  32. GetIfEntryFromStack(
  33. OUT PMIB_IFROW pIfEntry,
  34. IN DWORD dwAdapterIndex,
  35. IN BOOL bForceUpdate
  36. );
  37. DWORD
  38. SetIfEntryToStack(
  39. IN MIB_IFROW *pIfEntry,
  40. IN BOOL bForceUpdate
  41. );
  42. DWORD
  43. AllocateAndGetIpAddrTableFromStack(
  44. OUT MIB_IPADDRTABLE **ppIpAddrTable,
  45. IN BOOL bOrder,
  46. IN HANDLE hHeap,
  47. IN DWORD dwFlags
  48. );
  49. DWORD
  50. GetIpAddrTableFromStack(
  51. OUT PMIB_IPADDRTABLE pIpAddrTable,
  52. IN DWORD dwSize,
  53. IN BOOL bOrder
  54. );
  55. DWORD
  56. AllocateAndGetTcpTableFromStack(
  57. OUT MIB_TCPTABLE **ppTcpTable,
  58. IN BOOL bOrder,
  59. IN HANDLE hHeap,
  60. IN DWORD dwFlags
  61. );
  62. DWORD
  63. AllocateAndGetTcpExTableFromStack(
  64. OUT PVOID *ppTcpTable,
  65. IN BOOL bOrder,
  66. IN HANDLE hHeap,
  67. IN DWORD dwFlags,
  68. IN DWORD dwFamily
  69. );
  70. DWORD
  71. GetTcpTableFromStack(
  72. OUT PMIB_TCPTABLE pTcpTable,
  73. IN DWORD dwSize,
  74. IN BOOL bOrder
  75. );
  76. DWORD
  77. SetTcpEntryToStack(
  78. IN PMIB_TCPROW pTcpRow
  79. );
  80. DWORD
  81. AllocateAndGetUdpTableFromStack(
  82. OUT MIB_UDPTABLE **ppUdpTable,
  83. IN BOOL bOrder,
  84. IN HANDLE hHeap,
  85. IN DWORD dwFlags
  86. );
  87. DWORD
  88. AllocateAndGetUdpExTableFromStack(
  89. OUT PVOID *ppUdpTable,
  90. IN BOOL bOrder,
  91. IN HANDLE hHeap,
  92. IN DWORD dwFlags,
  93. IN DWORD dwFamily
  94. );
  95. DWORD
  96. GetUdpTableFromStack(
  97. OUT PMIB_UDPTABLE pUdpTable,
  98. IN DWORD dwSize,
  99. IN BOOL bOrder
  100. );
  101. DWORD
  102. AllocateAndGetIpForwardTableFromStack(
  103. OUT MIB_IPFORWARDTABLE **ppForwardTable,
  104. IN BOOL bOrder,
  105. IN HANDLE hHeap,
  106. IN DWORD dwFlags
  107. );
  108. DWORD
  109. GetIpForwardTableFromStack(
  110. OUT PMIB_IPFORWARDTABLE pForwardTable,
  111. IN DWORD dwSize,
  112. IN BOOL bOrder
  113. );
  114. DWORD
  115. GetIpStatsFromStack(
  116. OUT PMIB_IPSTATS pIpStats
  117. );
  118. DWORD
  119. GetIpStatsFromStackEx(
  120. OUT PMIB_IPSTATS pIpStats,
  121. IN DWORD dwFamily
  122. );
  123. DWORD
  124. SetIpStatsToStack(
  125. IN PMIB_IPSTATS pIpStats
  126. );
  127. DWORD
  128. GetIcmpStatsFromStack(
  129. OUT PMIB_ICMP pIcmpStats
  130. );
  131. DWORD
  132. GetIcmpStatsFromStackEx(
  133. OUT PVOID pIcmpStats,
  134. IN DWORD dwFamily
  135. );
  136. DWORD
  137. GetUdpStatsFromStack(
  138. OUT PMIB_UDPSTATS pUdpStats
  139. );
  140. DWORD
  141. GetUdpStatsFromStackEx(
  142. OUT PMIB_UDPSTATS pUdpStats,
  143. IN DWORD dwFamily
  144. );
  145. DWORD
  146. GetTcpStatsFromStack(
  147. OUT PMIB_TCPSTATS pTcpStats
  148. );
  149. DWORD
  150. GetTcpStatsFromStackEx(
  151. OUT PMIB_TCPSTATS pTcpStats,
  152. IN DWORD dwFamily
  153. );
  154. DWORD
  155. AllocateAndGetIpNetTableFromStack(
  156. OUT MIB_IPNETTABLE **ppNetTable,
  157. IN BOOL bOrder,
  158. IN HANDLE hHeap,
  159. IN DWORD dwFlags,
  160. IN BOOL bForceUpdate
  161. );
  162. DWORD
  163. GetIpNetTableFromStack(
  164. OUT PMIB_IPNETTABLE pNetTable,
  165. IN DWORD dwSize,
  166. IN BOOL bOrder,
  167. IN BOOL bForceUpdate
  168. );
  169. DWORD
  170. SetIpNetEntryToStack(
  171. IN MIB_IPNETROW *pNetRow,
  172. IN BOOL bForceUpdate
  173. );
  174. DWORD
  175. FlushIpNetTableFromStack(
  176. IN DWORD dwIfIndex
  177. );
  178. DWORD
  179. SetProxyArpEntryToStack(
  180. IN DWORD dwAddress,
  181. IN DWORD dwMask,
  182. IN DWORD dwAdapterIndex,
  183. IN BOOL bAddEntry,
  184. IN BOOL bForceUpdate
  185. );
  186. DWORD
  187. AllocateAndGetArpEntTableFromStack(
  188. OUT PDWORD *ppdwArpEntTable,
  189. OUT PDWORD pdwNumEntries,
  190. IN HANDLE hHeap,
  191. IN DWORD dwAllocFlags,
  192. IN DWORD dwReAllocFlags
  193. );
  194. DWORD
  195. SetIpForwardEntryToStack(
  196. IN PMIB_IPFORWARDROW pForwardRow
  197. );
  198. DWORD
  199. SetIpRouteEntryToStack(
  200. IN IPRouteEntry *pRoute
  201. );
  202. DWORD
  203. SetIpMultihopRouteEntryToStack(
  204. IN IPMultihopRouteEntry *pRoute
  205. );
  206. DWORD
  207. GetBestInterfaceFromStack(
  208. DWORD dwDestAddress,
  209. PDWORD pdwBestIfIndex
  210. );
  211. DWORD
  212. GetBestRouteFromStack(
  213. IN DWORD dwDestAddr,
  214. IN DWORD dwSrcAddr, OPTIONAL
  215. OUT PMIB_IPFORWARDROW pBestRoute
  216. );
  217. DWORD
  218. NhpAllocateAndGetInterfaceInfoFromStack(
  219. OUT IP_INTERFACE_NAME_INFO **ppTable,
  220. OUT PDWORD pdwCount,
  221. IN BOOL bOrder,
  222. IN HANDLE hHeap,
  223. IN DWORD dwFlags
  224. );