Leaked source code of windows server 2003
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.

184 lines
3.6 KiB

  1. /*++
  2. Copyright (c) 1998-1999 Microsoft Corporation
  3. Module Name:
  4. ipxmontr.h
  5. Abstract:
  6. This file contains definitions which are needed by IPXMONTR.DLL
  7. and all NetSh helper DLLs which register under it.
  8. --*/
  9. #ifndef _IPXMONTR_H_
  10. #define _IPXMONTR_H_
  11. #if _MSC_VER > 1000
  12. #pragma once
  13. #endif
  14. #ifdef __cplusplus
  15. extern "C" {
  16. #endif
  17. // {b1641451-84b8-11d2-b940-3078302c2030}
  18. #define IPXMONTR_GUID \
  19. { \
  20. 0xb1641451, 0x84b8, 0x11d2, \
  21. { \
  22. 0xb9, 0x40, 0x30, 0x78, 0x30, 0x2c, 0x20, 0x30 \
  23. } \
  24. }
  25. #define IPXMON_VERSION_50 0x0005000
  26. //
  27. // API prototypes and structures used by them
  28. //
  29. typedef
  30. DWORD
  31. (WINAPI IPX_CONTEXT_ENTRY_FN)(
  32. IN PWCHAR pwszMachine,
  33. IN PWCHAR *ppwcArguments,
  34. IN DWORD dwArgCount,
  35. IN DWORD dwFlags,
  36. IN MIB_SERVER_HANDLE hMIBServer,
  37. OUT PWCHAR pwcNewContext
  38. );
  39. typedef IPX_CONTEXT_ENTRY_FN *PIPX_CONTEXT_ENTRY_FN;
  40. typedef struct _PROTO_STRING
  41. {
  42. DWORD dwProtoId;
  43. DWORD dwTokenId;
  44. }PROTO_STRING, *PPROTO_STRING;
  45. typedef
  46. DWORD
  47. (WINAPI *PIM_DEL_INFO_BLK_IF)(
  48. IN PWCHAR pwszIfName,
  49. IN DWORD dwType
  50. );
  51. typedef
  52. DWORD
  53. (WINAPI *PIM_DEL_INFO_BLK_GLOBAL)(
  54. IN DWORD dwType
  55. );
  56. typedef
  57. DWORD
  58. (WINAPI *PIM_DEL_PROTO)(
  59. IN DWORD dwProtoId
  60. );
  61. typedef
  62. DWORD
  63. (WINAPI *PIM_GET_INFO_BLK_GLOBAL)(
  64. IN DWORD dwType,
  65. OUT BYTE **ppbInfoBlk,
  66. OUT PDWORD pdwSize,
  67. OUT PDWORD pdwCount
  68. );
  69. typedef
  70. DWORD
  71. (WINAPI *PIM_GET_INFO_BLK_IF)(
  72. IN PWCHAR pwszIfName,
  73. IN DWORD dwType,
  74. OUT BYTE **ppbInfoBlk,
  75. OUT PDWORD pdwSize,
  76. OUT PDWORD pdwCount,
  77. OUT PDWORD pdwIfType
  78. );
  79. typedef
  80. DWORD
  81. (WINAPI *PIM_SET_INFO_BLK_GLOBAL)(
  82. IN DWORD dwType,
  83. IN PBYTE pbInfoBlk,
  84. IN DWORD dwSize,
  85. IN DWORD dwCount
  86. );
  87. typedef
  88. DWORD
  89. (WINAPI *PIM_SET_INFO_BLK_IF)(
  90. IN PWCHAR pwszIfName,
  91. IN DWORD dwType,
  92. IN PBYTE pbInfoBlk,
  93. IN DWORD dwSize,
  94. IN DWORD dwCount
  95. );
  96. typedef
  97. DWORD
  98. (WINAPI *PIM_IF_ENUM)(
  99. OUT BYTE **ppb,
  100. OUT PDWORD pdwCount,
  101. OUT PDWORD pdwTotal
  102. );
  103. typedef
  104. DWORD
  105. (WINAPI *PIM_PROTO_LIST)(
  106. OUT PPROTO_STRING *ppps,
  107. OUT PDWORD pdwNumProto
  108. );
  109. typedef
  110. BOOL
  111. (WINAPI *PIM_ROUTER_STATUS)(
  112. VOID
  113. );
  114. typedef
  115. DWORD
  116. (WINAPI *PIM_GET_IF_TYPE)(
  117. IN PWCHAR pwszIfName,
  118. OUT PDWORD pdwIfType
  119. );
  120. typedef
  121. DWORD
  122. (WINAPI *PIM_MATCH_ROUT_PROTO)(
  123. IN PWCHAR pwszToken
  124. );
  125. NS_DISPLAY_PARENT_HELP DisplayIpxHelp;
  126. typedef struct _IPX_CONTEXT_ATTRIBUTES
  127. {
  128. #ifdef __cplusplus
  129. NS_BASE_CONTEXT_ATTRIBUTES bca;
  130. #else
  131. NS_BASE_CONTEXT_ATTRIBUTES;
  132. #endif
  133. PIPX_CONTEXT_ENTRY_FN pfnEntryFn;
  134. PVOID pfnCommitFn; // UNUSED
  135. PNS_CONTEXT_DUMP_FN pfnDumpFn;
  136. PVOID pfnConnectFn; // UNUSED
  137. PVOID pfnSubEntryFn; // UNUSED
  138. PVOID pfnHelpFn; // UNUSED
  139. }IPX_CONTEXT_ATTRIBUTES, *PIPX_CONTEXT_ATTRIBUTES;
  140. typedef
  141. DWORD
  142. (WINAPI *PIPX_REGISTER_CONTEXT)(
  143. IN PIPX_CONTEXT_ATTRIBUTES pAttributes
  144. );
  145. #ifdef __cplusplus
  146. }
  147. #endif
  148. #endif // _IPXMONTR_H_