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.

221 lines
4.6 KiB

  1. /*++
  2. Copyright(c) 1996 Microsoft Corporation
  3. Module Name:
  4. rasrpc.idl
  5. Abstract:
  6. Author:
  7. Anthony Discolo (adiscolo) 20-Aug-1996
  8. --*/
  9. [
  10. uuid(20610036-fa22-11cf-9823-00a0c911e5df),
  11. version(1.0)
  12. ]
  13. interface rasrpc
  14. {
  15. import "imports.idl";
  16. //
  17. // rasman.dll entry points
  18. //
  19. typedef DWORD RASRPC_HPORT;
  20. DWORD
  21. RasRpcPortEnum(
  22. [in] handle_t h,
  23. [in, out, unique, size_is(*pwcbPorts)] PBYTE pPorts,
  24. [in, out, ref] PWORD pwcbPorts,
  25. [in, out, ref] PWORD pwcPorts
  26. );
  27. DWORD
  28. RasRpcDeviceEnum(
  29. [in] handle_t h,
  30. [in, string] PCHAR pszDeviceType,
  31. [in, out, unique, size_is(*pwcbDevices)] PBYTE pDevices,
  32. [in, out, ref] PWORD pwcbDevices,
  33. [in, out, ref] PWORD pwcDevices
  34. );
  35. DWORD
  36. RasRpcGetDevConfig(
  37. [in] handle_t h,
  38. [in] RASRPC_HPORT hPort,
  39. [in, string] PCHAR pszDeviceType,
  40. [in, out, unique, size_is(*pdwcbConfig)] PBYTE pConfig,
  41. [in, out, ref] PDWORD pdwcbConfig
  42. );
  43. DWORD
  44. RasRpcPortGetInfo(
  45. [in] handle_t h,
  46. [in] RASRPC_HPORT hPort,
  47. [in, out, unique, size_is(*pSize)] PBYTE buffer,
  48. [in, out, ref] PWORD pSize);
  49. //
  50. // rasapi32.dll entry points
  51. //
  52. typedef DWORD RASRPC_HRASCONN;
  53. #define RASRPC_MaxEntryName 256
  54. #define RASRPC_MaxPortName 16
  55. #define RASRPC_MaxDeviceName 128
  56. #define RASRPC_MaxPhoneNumber 128
  57. #define RASRPC_MAX_PATH 260
  58. DWORD
  59. RasRpcEnumConnections(
  60. [in] handle_t h,
  61. [in, out, unique, size_is(dwcbBufSize)] LPBYTE lprasconn,
  62. [in, out, ref] LPDWORD lpdwcb,
  63. [in, out, ref] LPDWORD lpdwc,
  64. [in] DWORD dwcbBufSize
  65. );
  66. DWORD
  67. RasRpcDeleteEntry(
  68. [in] handle_t h,
  69. [in, string] LPWSTR lpszPhonebook,
  70. [in, string] LPWSTR lpszEntry
  71. );
  72. DWORD
  73. RasRpcGetErrorString(
  74. [in] handle_t h,
  75. [in] UINT uErrorValue,
  76. [in, out, unique, size_is(cbBuf)] LPWSTR lpszBuf,
  77. [in] DWORD cbBuf
  78. );
  79. DWORD
  80. RasRpcGetCountryInfo(
  81. [in] handle_t h,
  82. [in, out, unique, size_is(*lpdwcbCountryInfo)] LPBYTE lpCountryInfo,
  83. [in, out, ref] LPDWORD lpdwcbCountryInfo
  84. );
  85. //
  86. // nouiutil.lib entry points
  87. //
  88. typedef struct _RASRPC_CALLBACKLIST
  89. {
  90. WCHAR pszPortName[RASRPC_MaxPortName + 1];
  91. WCHAR pszDeviceName[RASRPC_MaxDeviceName + 1];
  92. WCHAR pszNumber[RASRPC_MaxPhoneNumber + 1];
  93. DWORD dwDeviceType;
  94. [unique] struct _RASRPC_CALLBACKLIST *pNext;
  95. } RASRPC_CALLBACKLIST, *LPRASRPC_CALLBACKLIST;
  96. typedef struct _RASRPC_STRINGLIST
  97. {
  98. WCHAR psz[256];
  99. [unique] struct _RASRPC_STRINGLIST *pNext;
  100. } RASRPC_STRINGLIST, *LPRASRPC_STRINGLIST;
  101. typedef struct _RASRPC_LOCATIONLIST
  102. {
  103. DWORD dwLocationId;
  104. DWORD iPrefix;
  105. DWORD iSuffix;
  106. [unique] struct _RASRPC_LOCATIONLIST *pNext;
  107. } RASRPC_LOCATIONLIST, *LPRASRPC_LOCATIONLIST;
  108. typedef struct _RASRPC_PBUSER
  109. {
  110. BOOL fOperatorDial;
  111. BOOL fPreviewPhoneNumber;
  112. BOOL fUseLocation;
  113. BOOL fShowLights;
  114. BOOL fShowConnectStatus;
  115. BOOL fCloseOnDial;
  116. BOOL fAllowLogonPhonebookEdits;
  117. BOOL fAllowLogonLocationEdits;
  118. BOOL fSkipConnectComplete;
  119. BOOL fNewEntryWizard;
  120. DWORD dwRedialAttempts;
  121. DWORD dwRedialSeconds;
  122. DWORD dwIdleDisconnectSeconds;
  123. BOOL fRedialOnLinkFailure;
  124. BOOL fPopupOnTopWhenRedialing;
  125. BOOL fExpandAutoDialQuery;
  126. DWORD dwCallbackMode;
  127. [unique] LPRASRPC_CALLBACKLIST pCallbacks;
  128. WCHAR pszLastCallbackByCaller[RASRPC_MaxPhoneNumber + 1];
  129. DWORD dwPhonebookMode;
  130. WCHAR pszPersonalFile[RASRPC_MAX_PATH];
  131. WCHAR pszAlternatePath[RASRPC_MAX_PATH];
  132. [unique] LPRASRPC_STRINGLIST pPhonebooks;
  133. [unique] LPRASRPC_STRINGLIST pAreaCodes;
  134. BOOL fUseAreaAndCountry;
  135. [unique] LPRASRPC_STRINGLIST pPrefixes;
  136. [unique] LPRASRPC_STRINGLIST pSuffixes;
  137. [unique] LPRASRPC_LOCATIONLIST pLocations;
  138. DWORD dwXPhonebook;
  139. DWORD dwYPhonebook;
  140. WCHAR pszDefaultEntry[RASRPC_MaxEntryName + 1];
  141. BOOL fInitialized;
  142. BOOL fDirty;
  143. } RASRPC_PBUSER, *LPRASRPC_PBUSER;
  144. DWORD
  145. RasRpcGetInstalledProtocols(
  146. [in] handle_t h
  147. );
  148. DWORD
  149. RasRpcGetUserPreferences(
  150. [in] handle_t h,
  151. [in, out] LPRASRPC_PBUSER pUser,
  152. [in] DWORD dwMode
  153. );
  154. DWORD
  155. RasRpcSetUserPreferences(
  156. [in] handle_t h,
  157. [in] LPRASRPC_PBUSER pUser,
  158. [in] DWORD dwMode
  159. );
  160. //
  161. // kernel32.dll entry points
  162. //
  163. UINT
  164. RasRpcGetSystemDirectory(
  165. [in] handle_t h,
  166. [in, out, string, size_is(uSize)] LPWSTR lpBuffer,
  167. [in] UINT uSize
  168. );
  169. DWORD
  170. RasRpcSubmitRequest (
  171. [in] handle_t h,
  172. [in, out, unique, size_is(dwcbBufSize)] PBYTE pReqBuffer,
  173. [in] DWORD dwcbBufSize
  174. );
  175. DWORD
  176. RasRpcGetInstalledProtocolsEx(
  177. [in] handle_t h,
  178. [in] BOOL fRouter,
  179. [in] BOOL fRasCli,
  180. [in] BOOL fRasSrv
  181. );
  182. DWORD
  183. RasRpcGetVersion(
  184. [in] handle_t h,
  185. [in, out, ref] LPDWORD pdwVersion
  186. );
  187. };