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

/*++
Copyright(c) 1996 Microsoft Corporation
Module Name:
rasrpc.idl
Abstract:
Author:
Anthony Discolo (adiscolo) 20-Aug-1996
--*/
[
uuid(20610036-fa22-11cf-9823-00a0c911e5df),
version(1.0)
]
interface rasrpc
{
import "imports.idl";
//
// rasman.dll entry points
//
typedef DWORD RASRPC_HPORT;
DWORD
RasRpcPortEnum(
[in] handle_t h,
[in, out, unique, size_is(*pwcbPorts)] PBYTE pPorts,
[in, out, ref] PWORD pwcbPorts,
[in, out, ref] PWORD pwcPorts
);
DWORD
RasRpcDeviceEnum(
[in] handle_t h,
[in, string] PCHAR pszDeviceType,
[in, out, unique, size_is(*pwcbDevices)] PBYTE pDevices,
[in, out, ref] PWORD pwcbDevices,
[in, out, ref] PWORD pwcDevices
);
DWORD
RasRpcGetDevConfig(
[in] handle_t h,
[in] RASRPC_HPORT hPort,
[in, string] PCHAR pszDeviceType,
[in, out, unique, size_is(*pdwcbConfig)] PBYTE pConfig,
[in, out, ref] PDWORD pdwcbConfig
);
DWORD
RasRpcPortGetInfo(
[in] handle_t h,
[in] RASRPC_HPORT hPort,
[in, out, unique, size_is(*pSize)] PBYTE buffer,
[in, out, ref] PWORD pSize);
//
// rasapi32.dll entry points
//
typedef DWORD RASRPC_HRASCONN;
#define RASRPC_MaxEntryName 256
#define RASRPC_MaxPortName 16
#define RASRPC_MaxDeviceName 128
#define RASRPC_MaxPhoneNumber 128
#define RASRPC_MAX_PATH 260
DWORD
RasRpcEnumConnections(
[in] handle_t h,
[in, out, unique, size_is(dwcbBufSize)] LPBYTE lprasconn,
[in, out, ref] LPDWORD lpdwcb,
[in, out, ref] LPDWORD lpdwc,
[in] DWORD dwcbBufSize
);
DWORD
RasRpcDeleteEntry(
[in] handle_t h,
[in, string] LPWSTR lpszPhonebook,
[in, string] LPWSTR lpszEntry
);
DWORD
RasRpcGetErrorString(
[in] handle_t h,
[in] UINT uErrorValue,
[in, out, unique, size_is(cbBuf)] LPWSTR lpszBuf,
[in] DWORD cbBuf
);
DWORD
RasRpcGetCountryInfo(
[in] handle_t h,
[in, out, unique, size_is(*lpdwcbCountryInfo)] LPBYTE lpCountryInfo,
[in, out, ref] LPDWORD lpdwcbCountryInfo
);
//
// nouiutil.lib entry points
//
typedef struct _RASRPC_CALLBACKLIST
{
WCHAR pszPortName[RASRPC_MaxPortName + 1];
WCHAR pszDeviceName[RASRPC_MaxDeviceName + 1];
WCHAR pszNumber[RASRPC_MaxPhoneNumber + 1];
DWORD dwDeviceType;
[unique] struct _RASRPC_CALLBACKLIST *pNext;
} RASRPC_CALLBACKLIST, *LPRASRPC_CALLBACKLIST;
typedef struct _RASRPC_STRINGLIST
{
WCHAR psz[256];
[unique] struct _RASRPC_STRINGLIST *pNext;
} RASRPC_STRINGLIST, *LPRASRPC_STRINGLIST;
typedef struct _RASRPC_LOCATIONLIST
{
DWORD dwLocationId;
DWORD iPrefix;
DWORD iSuffix;
[unique] struct _RASRPC_LOCATIONLIST *pNext;
} RASRPC_LOCATIONLIST, *LPRASRPC_LOCATIONLIST;
typedef struct _RASRPC_PBUSER
{
BOOL fOperatorDial;
BOOL fPreviewPhoneNumber;
BOOL fUseLocation;
BOOL fShowLights;
BOOL fShowConnectStatus;
BOOL fCloseOnDial;
BOOL fAllowLogonPhonebookEdits;
BOOL fAllowLogonLocationEdits;
BOOL fSkipConnectComplete;
BOOL fNewEntryWizard;
DWORD dwRedialAttempts;
DWORD dwRedialSeconds;
DWORD dwIdleDisconnectSeconds;
BOOL fRedialOnLinkFailure;
BOOL fPopupOnTopWhenRedialing;
BOOL fExpandAutoDialQuery;
DWORD dwCallbackMode;
[unique] LPRASRPC_CALLBACKLIST pCallbacks;
WCHAR pszLastCallbackByCaller[RASRPC_MaxPhoneNumber + 1];
DWORD dwPhonebookMode;
WCHAR pszPersonalFile[RASRPC_MAX_PATH];
WCHAR pszAlternatePath[RASRPC_MAX_PATH];
[unique] LPRASRPC_STRINGLIST pPhonebooks;
[unique] LPRASRPC_STRINGLIST pAreaCodes;
BOOL fUseAreaAndCountry;
[unique] LPRASRPC_STRINGLIST pPrefixes;
[unique] LPRASRPC_STRINGLIST pSuffixes;
[unique] LPRASRPC_LOCATIONLIST pLocations;
DWORD dwXPhonebook;
DWORD dwYPhonebook;
WCHAR pszDefaultEntry[RASRPC_MaxEntryName + 1];
BOOL fInitialized;
BOOL fDirty;
} RASRPC_PBUSER, *LPRASRPC_PBUSER;
DWORD
RasRpcGetInstalledProtocols(
[in] handle_t h
);
DWORD
RasRpcGetUserPreferences(
[in] handle_t h,
[in, out] LPRASRPC_PBUSER pUser,
[in] DWORD dwMode
);
DWORD
RasRpcSetUserPreferences(
[in] handle_t h,
[in] LPRASRPC_PBUSER pUser,
[in] DWORD dwMode
);
//
// kernel32.dll entry points
//
UINT
RasRpcGetSystemDirectory(
[in] handle_t h,
[in, out, string, size_is(uSize)] LPWSTR lpBuffer,
[in] UINT uSize
);
DWORD
RasRpcSubmitRequest (
[in] handle_t h,
[in, out, unique, size_is(dwcbBufSize)] PBYTE pReqBuffer,
[in] DWORD dwcbBufSize
);
DWORD
RasRpcGetInstalledProtocolsEx(
[in] handle_t h,
[in] BOOL fRouter,
[in] BOOL fRasCli,
[in] BOOL fRasSrv
);
DWORD
RasRpcGetVersion(
[in] handle_t h,
[in, out, ref] LPDWORD pdwVersion
);
};