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.

222 lines
5.6 KiB

  1. /*++
  2. Copyright (c) 1990 Microsoft Corporation
  3. Module Name:
  4. bowser.idl
  5. Abstract:
  6. Contains the Netr (Net Remote) RPC interface specification for the APIs
  7. associated with the Browser service. This consists of the NetServerEnum
  8. API
  9. Also contains the RPC specific data structures for these API.
  10. Author:
  11. Rita Wong (ritaw) 06-May-1991
  12. Larry Osterman (larryo) 23-Mar-1992
  13. Environment:
  14. User Mode - Win32 - MIDL
  15. Revision History:
  16. --*/
  17. //
  18. // Interface Attributes
  19. //
  20. [
  21. uuid(6BFFD098-A112-3610-9833-012892020162),
  22. version(0.0),
  23. #ifdef __midl
  24. ms_union,
  25. #endif // __midl
  26. pointer_default(unique)
  27. ]
  28. //
  29. // Interface Keyword
  30. //
  31. interface browser
  32. //
  33. // Interface Body
  34. //
  35. {
  36. import "imports.idl";
  37. #include <lmcons.h>
  38. //
  39. // BUGBUG - take this definition out when midl understands LPWSTR etc
  40. //
  41. #ifdef UNICODE
  42. #define LPTSTR wchar_t*
  43. #endif
  44. //
  45. // ---------------------------------------------------------------//
  46. //
  47. typedef [handle] LPTSTR BROWSER_IMPERSONATE_HANDLE;
  48. typedef [handle] LPTSTR BROWSER_IDENTIFY_HANDLE;
  49. //
  50. // I_BrowserrServerEnum
  51. //
  52. typedef struct _SERVER_INFO_100_CONTAINER {
  53. DWORD EntriesRead;
  54. [size_is(EntriesRead)] LPSERVER_INFO_100 Buffer;
  55. } SERVER_INFO_100_CONTAINER, *PSERVER_INFO_100_CONTAINER,
  56. *LPSERVER_INFO_100_CONTAINER;
  57. typedef struct _SERVER_INFO_101_CONTAINER {
  58. DWORD EntriesRead;
  59. [size_is(EntriesRead)] LPSERVER_INFO_101 Buffer;
  60. } SERVER_INFO_101_CONTAINER, *PSERVER_INFO_101_CONTAINER,
  61. *LPSERVER_INFO_101_CONTAINER;
  62. typedef struct _BROWSER_STATISTICS_100_CONTAINER {
  63. DWORD EntriesRead;
  64. [size_is(EntriesRead)] PBROWSER_STATISTICS_100 Buffer;
  65. } BROWSER_STATISTICS_100_CONTAINER, *PBROWSER_STATISTICS_100_CONTAINER;
  66. typedef struct _BROWSER_STATISTICS_101_CONTAINER {
  67. DWORD EntriesRead;
  68. [size_is(EntriesRead)] PBROWSER_STATISTICS_101 Buffer;
  69. } BROWSER_STATISTICS_101_CONTAINER, *PBROWSER_STATISTICS_101_CONTAINER;
  70. typedef struct _BROWSER_EMULATED_DOMAIN_CONTAINER {
  71. DWORD EntriesRead;
  72. [size_is(EntriesRead)] PBROWSER_EMULATED_DOMAIN Buffer;
  73. } BROWSER_EMULATED_DOMAIN_CONTAINER, *PBROWSER_EMULATED_DOMAIN_CONTAINER;
  74. typedef struct _SERVER_ENUM_STRUCT {
  75. DWORD Level;
  76. [switch_is(Level)] union _SERVER_ENUM_UNION {
  77. [case(100)]
  78. LPSERVER_INFO_100_CONTAINER Level100;
  79. [case(101)]
  80. LPSERVER_INFO_101_CONTAINER Level101;
  81. [default]
  82. ;
  83. } ServerInfo;
  84. }SERVER_ENUM_STRUCT, *PSERVER_ENUM_STRUCT, *LPSERVER_ENUM_STRUCT;
  85. typedef struct _BROWSER_STATISTICS_STRUCT {
  86. DWORD Level;
  87. [switch_is(Level)] union _BROWSER_STATISTICS_UNION {
  88. [case(100)]
  89. PBROWSER_STATISTICS_100_CONTAINER Level100;
  90. [case(101)]
  91. PBROWSER_STATISTICS_101_CONTAINER Level101;
  92. [default]
  93. ;
  94. } Statistics;
  95. }BROWSER_STATISTICS_STRUCT, *PBROWSER_STATISTICS_STRUCT, *LPBROWSER_STATISTICS_STRUCT;
  96. NET_API_STATUS
  97. I_BrowserrServerEnum(
  98. [in,string,unique] BROWSER_IDENTIFY_HANDLE ServerName,
  99. [in,string,unique] LPTSTR TransportName,
  100. [in,string,unique] LPTSTR ClientName,
  101. [in,out] LPSERVER_ENUM_STRUCT InfoStruct,
  102. [in] DWORD PreferedMaximumLength,
  103. [out] LPDWORD TotalEntries,
  104. [in] DWORD ServerType,
  105. [in,string,unique] LPTSTR Domain,
  106. [in,out,unique] LPDWORD ResumeHandle
  107. );
  108. NET_API_STATUS
  109. I_BrowserrDebugCall(
  110. [in,string,unique] BROWSER_IDENTIFY_HANDLE ServerName,
  111. [in] DWORD DebugFunction,
  112. [in] DWORD OptionalValue
  113. );
  114. NET_API_STATUS
  115. I_BrowserrQueryOtherDomains(
  116. [in,string,unique] BROWSER_IDENTIFY_HANDLE ServerName,
  117. [in,out] LPSERVER_ENUM_STRUCT InfoStruct,
  118. [out] LPDWORD TotalEntries
  119. );
  120. NET_API_STATUS
  121. I_BrowserrResetNetlogonState(
  122. [in,string,unique] BROWSER_IDENTIFY_HANDLE ServerName
  123. );
  124. NET_API_STATUS
  125. I_BrowserrDebugTrace(
  126. [in,string,unique] BROWSER_IDENTIFY_HANDLE ServerName,
  127. [in, string] LPSTR TraceString
  128. );
  129. NET_API_STATUS
  130. I_BrowserrQueryStatistics (
  131. [in, string, unique] BROWSER_IDENTIFY_HANDLE servername OPTIONAL,
  132. [out] LPBROWSER_STATISTICS *statistics
  133. );
  134. NET_API_STATUS
  135. I_BrowserrResetStatistics (
  136. [in, string, unique] BROWSER_IDENTIFY_HANDLE servername OPTIONAL
  137. );
  138. NET_API_STATUS
  139. NetrBrowserStatisticsClear (
  140. [in, string, unique] BROWSER_IDENTIFY_HANDLE servername OPTIONAL
  141. );
  142. NET_API_STATUS
  143. NetrBrowserStatisticsGet (
  144. [in, string, unique] BROWSER_IDENTIFY_HANDLE servername OPTIONAL,
  145. [in] DWORD Level,
  146. [in, out] LPBROWSER_STATISTICS_STRUCT StatisticsStruct
  147. );
  148. NET_API_STATUS
  149. I_BrowserrSetNetlogonState(
  150. [in, string, unique] BROWSER_IDENTIFY_HANDLE ServerName OPTIONAL,
  151. [in, string] LPTSTR DomainName,
  152. [in, string, unique] LPTSTR EmulatedComputerName OPTIONAL,
  153. [in] DWORD Role
  154. );
  155. NET_API_STATUS
  156. I_BrowserrQueryEmulatedDomains (
  157. [in, string, unique] BROWSER_IDENTIFY_HANDLE ServerName OPTIONAL,
  158. [in,out] PBROWSER_EMULATED_DOMAIN_CONTAINER EmulatedDomains
  159. );
  160. NET_API_STATUS
  161. I_BrowserrServerEnumEx(
  162. [in,string,unique] BROWSER_IDENTIFY_HANDLE ServerName,
  163. [in,string,unique] LPTSTR TransportName,
  164. [in,string,unique] LPTSTR ClientName,
  165. [in,out] LPSERVER_ENUM_STRUCT InfoStruct,
  166. [in] DWORD PreferedMaximumLength,
  167. [out] LPDWORD TotalEntries,
  168. [in] DWORD ServerType,
  169. [in,string,unique] LPTSTR Domain,
  170. [in,string,unique] LPTSTR FirstNameToReturn
  171. );
  172. }