mirror of https://github.com/tongzx/nt5src
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.
576 lines
22 KiB
576 lines
22 KiB
|
|
|
|
/*****************************************************************************\
|
|
* *
|
|
* rnap.h - Remote Network Access (RNA) private interface *
|
|
* *
|
|
* Version 1.00 *
|
|
* *
|
|
* Copyright (c) 1992-1993, Microsoft Corp. All rights reserved. *
|
|
* *
|
|
******************************************************************************/
|
|
|
|
#ifndef _RNAP_H_
|
|
#define _RNAP_H_
|
|
|
|
#define RAS_MaxPortName 128
|
|
#define RAS_MaxComment 255
|
|
#define RAS_MaxCountry 3
|
|
#define RAS_MaxAreaCode 10
|
|
#define RAS_MaxLocal 36
|
|
#define RAS_MaxExtension 5
|
|
#define RAS_MaxSMMDesc 63
|
|
#define RAS_MaxProtocolDesc 63
|
|
|
|
/******************************************************************************
|
|
Private RASCONNSTATE
|
|
******************************************************************************/
|
|
|
|
#define RASCS_PrivateStart RASCS_Disconnected+1
|
|
|
|
#define RASCS_StartClosing RASCS_PrivateStart
|
|
#define RASCS_LoggingOff RASCS_PrivateStart+1
|
|
#define RASCS_Closing RASCS_PrivateStart+2
|
|
#define RASCS_Closed RASCS_PrivateStart+3
|
|
#define RASCS_Terminating RASCS_PrivateStart+4
|
|
|
|
/******************************************************************************
|
|
Registry key paths
|
|
******************************************************************************/
|
|
|
|
#define REGSTR_KEY_RNA "RemoteAccess"
|
|
#define REGSTR_PATH_RNA REGSTR_PATH_SERVICES"\\"REGSTR_KEY_RNA
|
|
#define REGSTR_VAL_IMPLICIT "EnableImplicit"
|
|
#define REGSTR_VAL_DIALUI "DialUI"
|
|
|
|
#define REGSTR_KEY_PROF REGSTR_KEY_RNA"\\Profile"
|
|
#define REGSTR_VAL_USER "User"
|
|
#define REGSTR_VAL_DOMAIN "Domain"
|
|
#define REGSTR_VAL_NUMBER "Number"
|
|
#define REGSTR_VAL_SCRIPT "PPPScript"
|
|
#define REGSTR_VAL_MODE "Mode"
|
|
#define REGSTR_VAL_TERM "Terminal"
|
|
#define REGSTR_VAL_AUTODIALDLL "AutodialDllName"
|
|
#define REGSTR_VAL_AUTODIALFN "AutodialFcnName"
|
|
#define REGSTR_VAL_ML "MultiLink"
|
|
|
|
/******************************************************************************
|
|
Related RNA module names and internal exported
|
|
******************************************************************************/
|
|
|
|
#define RNA_SERVER_MOD_NAME "RNASERV.DLL"
|
|
#define CALLER_ACCESS_FUNC_NAME "CallerAccess"
|
|
|
|
#define RNADLL_MODULE_NAME "RASAPI32.DLL"
|
|
|
|
#define RNASCRIPT_MODULE_NAME "SMMSCRPT.DLL"
|
|
#define RUN_SCRIPT_FUNC_NAME "RunRnaScript"
|
|
|
|
#define RNAUI_MODULE_NAME "RNAUI.DLL"
|
|
#define CREATE_ENTRY_FUNC_NAME "Remote_CreateEntry"
|
|
#define EDIT_ENTRY_FUNC_NAME "Remote_EditEntry"
|
|
#define NOTIFY_FUNC_NAME "Remote_Notify"
|
|
|
|
/******************************************************************************
|
|
Asynchronous event notification from RNA engine via WM_RASDIALEVENT
|
|
******************************************************************************/
|
|
|
|
#define RNA_ASYNCEVENT 0xFFFFFFFF // wParam value
|
|
|
|
#define RNA_ADD_DEVICE 0 // A new device was added
|
|
#define RNA_DEL_DEVICE 1 // A new device was removed
|
|
#define RNA_REINIT_DEVICE 2 // The device needs to be reintied
|
|
#define RNA_SHUTDOWN 3 // The engine needs to shutdown
|
|
#define RNA_TRANSLATECHANGE 4 // Translate address caps changed
|
|
|
|
/******************************************************************************
|
|
Communication with RNA engine
|
|
******************************************************************************/
|
|
|
|
#define CLIENT_CONNECTION 1 // Client connection
|
|
#define SERVER_CONNECTION 2 // Server connection
|
|
|
|
#define WM_RNAMSG WM_USER+10
|
|
|
|
#define RL_MINMSG WM_RNAMSG
|
|
#define RL_CREATE RL_MINMSG // create a connection
|
|
#define RL_TERMINATE RL_MINMSG+1 // terminate the connection
|
|
#define RL_CONNECTED RL_MINMSG+2 // a connection is active
|
|
#define RL_DISCONNECTED RL_MINMSG+3 // a connection is not active
|
|
#define RL_SUPRV RL_MINMSG+4 // initialize supervisor
|
|
#define RL_ACTIVATE RL_MINMSG+5 // activate supervisor change
|
|
#define RL_REINIT RL_MINMSG+6 // Reinitialize the engine
|
|
#define RL_REG_DEVCHG RL_MINMSG+7 // Register device notification
|
|
#define RL_GET_COUNT RL_MINMSG+8 // Get the count
|
|
#define RL_GW_NOTIFY RL_MINMSG+9 // Gateway callback
|
|
|
|
/******************************************************************************
|
|
Communication with Dial engine
|
|
******************************************************************************/
|
|
|
|
#define DL_MINMSG WM_RNAMSG
|
|
#define DL_DIALEVENT DL_MINMSG // continue dial-up sequence
|
|
#define DL_DISCONNECTED DL_MINMSG+1 // a connection is not active
|
|
#define DL_AUTHENTICATE DL_MINMSG+2 // auth module sent a message
|
|
#define DL_CONNECTED DL_MINMSG+3 // a new connection is active
|
|
#define DL_CLOSE DL_MINMSG+4 // Terminate the connection window
|
|
#define DL_MAC_MSG DL_MINMSG+5 // MAC requests disconnection
|
|
#define DL_RECONNECT DL_MINMSG+6 // a connection needs reconnect
|
|
#define DL_NOTIFYICON DL_MINMSG+7 // tray icon notification
|
|
#define DL_SHOW_STAT DL_MINMSG+8 // display the status dialog
|
|
|
|
//****************************************************************************
|
|
// Communication with gateway manager
|
|
//****************************************************************************
|
|
|
|
#define GW_MINMSG WM_RNAMSG
|
|
#define GW_DIALEVENT DL_DIALEVENT // !!WARNING!! shared message
|
|
#define GW_CONNECTED GW_MINMSG + 1
|
|
#define GW_DISCONNECTED GW_MINMSG + 2
|
|
#define GW_LOG GW_MINMSG + 3
|
|
#define GW_CLOSE DL_CLOSE // !!WARNING!! shared message
|
|
#define GW_MAC_MSG DL_MAC_MSG // MAC requests disconnection
|
|
|
|
#define MAX_AUTODISCONNECT 60000 // server autodisconnect sec.
|
|
|
|
//
|
|
// Gateway to Supervisor Communication
|
|
//
|
|
LRESULT WINAPI DialInMessage(HWND, UINT, WPARAM, LPARAM);
|
|
|
|
/******************************************************************************
|
|
Request for services from RNADLL
|
|
******************************************************************************/
|
|
|
|
DWORD WINAPI RnaEngineRequest (UINT uCommand, DWORD dwParam);
|
|
DWORD WINAPI DialEngineRequest (UINT uCommand, DWORD dwParam1, DWORD dwParam2);
|
|
DWORD WINAPI SuprvRequest (UINT uCommand, DWORD dwParam1, DWORD dwParam2);
|
|
|
|
#define RA_MINCMD 0
|
|
#define RA_LOAD RA_MINCMD // Notify Rna process is a loader
|
|
#define RA_INIT RA_MINCMD+1 // Initialize the rna engine
|
|
#define RA_TERMINATE RA_MINCMD+2 // rna engine terminated
|
|
#define RA_REG_DEVCHG RA_MINCMD+3 // register dev change notification
|
|
#define RA_DEREG_DEVCHG RA_MINCMD+4 // deregister dev change notification
|
|
#define RA_REINIT RA_MINCMD+5 // Reinitialize the rna engine
|
|
#define RA_ADD_DEVICE RA_MINCMD+6 // Device added
|
|
#define RA_DEL_DEVICE RA_MINCMD+7 // Device removed
|
|
#define RA_GET_PROP RA_MINCMD+8 // Get property page
|
|
#define RA_MAXCMD RA_MINCMD+50
|
|
|
|
#define GA_MINCMD RA_MAXCMD+1
|
|
#define GA_INIT_SUPRV GA_MINCMD // Initialize supervisor
|
|
#define GA_ACTIVE_SUPRV GA_MINCMD+1 // Activate supervisor
|
|
#define GA_SHUTDOWN RA_MINCMD+2 // Shutdown the system
|
|
#define GA_LOG_SUPRV GA_MINCMD+3 // Register log event
|
|
#define GA_LOGON_INFO GA_MINCMD+4 // Logon session information
|
|
#define GA_DISCONNECT GA_MINCMD+5 // Terminate logon session
|
|
#define GA_START_SUPRV GA_MINCMD+6 // Start the host
|
|
#define GA_STOP_SUPRV GA_MINCMD+7 // Stop the host
|
|
#define GA_DEV_CHANGE GA_MINCMD+8 // A device changed
|
|
#define GA_GET_STATS GA_MINCMD+9 // Get the server information
|
|
#define GA_COUNT_ACTIVE GA_MINCMD+10 // Count the active connection
|
|
#define GA_MAXCMD GA_MINCMD+50
|
|
|
|
#define DA_MINCMD GA_MAXCMD+1
|
|
#define DA_CONNINFO DA_MINCMD // connection information
|
|
#define DA_DISCONNECT DA_MINCMD+1 // disconnect an active connection
|
|
#define DA_RECONNECT DA_MINCMD+2 // reconnect a dropped connection
|
|
#define DA_NEWCONN DA_MINCMD+3 // a new connection is added
|
|
#define DA_SHUTDOWN DA_MINCMD+4 // Shutdown the system
|
|
#define DA_NEWEVENT DA_MINCMD+5 // Notify a new event
|
|
#define DA_COMPASYN DA_MINCMD+6 // Notify a async operation completion
|
|
#define DA_DEV_CHANGE DA_MINCMD+7 // A device changed
|
|
#define DA_GET_UI_WND DA_MINCMD+8 // Get the UI window
|
|
#define DA_SET_WND_POS DA_MINCMD+9 // Set the status window position
|
|
#define DA_GETSTATS DL_MINMSG+10 // a connection needs stats
|
|
#define DA_GET_CONNSTAT DL_MINMSG+11 // Get current connection status
|
|
#define DA_GET_SUBENTRY DL_MINMSG+12 // Get sub-entry information
|
|
#define DA_DIAL_SUBENTRY DL_MINMSG+13 // Dial a sub-entry
|
|
#define DA_MAXCMD DA_MINCMD+50
|
|
|
|
typedef struct tagConnInfo {
|
|
char szEntryName[RAS_MaxEntryName+1];
|
|
DWORD dwRate;
|
|
char szSMMDesc[RAS_MaxSMMDesc+1];
|
|
DWORD fdwProtocols;
|
|
char szDeviceType[RAS_MaxDeviceType+1];
|
|
char szDeviceName[RAS_MaxDeviceName+1];
|
|
} CONNINFO, *PCONNINFO, FAR* LPCONNINFO;
|
|
|
|
typedef struct tagMLInfo {
|
|
BOOL fEnabled;
|
|
DWORD cSubEntries;
|
|
} MLINFO, *PMLINFO, FAR* LPMLINFO;
|
|
|
|
typedef struct tagSubConnInfo {
|
|
DWORD iSubEntry;
|
|
MLINFO mli;
|
|
} SUBCONNINFO, *PSUBCONNINFO, FAR* LPSUBCONNINFO;
|
|
|
|
#define PARENT_ENTRY_ID 0xFFFFFFFF
|
|
|
|
// Flags for protocols in fdwProtocols
|
|
//
|
|
#define PROTOCOL_AMB 0x00000001
|
|
#define PROTOCOL_PPPNBF 0x00000002
|
|
#define PROTOCOL_PPPIPX 0x00000004
|
|
#define PROTOCOL_PPPIP 0x00000008
|
|
|
|
//****************************************************************************
|
|
// RNAAPP Command line interface
|
|
//****************************************************************************
|
|
|
|
#define RNAAPP_EXE_NAME "rnaapp"
|
|
#define LOAD_REQ "-l" // RnaDll loads Rnaapp
|
|
|
|
//****************************************************************************
|
|
// RNAUI Private Interface
|
|
//****************************************************************************
|
|
|
|
#define DT_NULLMODEM "null"
|
|
#define DT_MODEM "modem"
|
|
#define DT_ISDN "isdn"
|
|
#define DT_UNKNOWN "unknown"
|
|
|
|
#define DIRECTCC "Direct Cable Connection Host Logon"
|
|
|
|
typedef HICON FAR* LPHICON;
|
|
|
|
// SMM Usage type flags
|
|
//
|
|
#define CLIENT_SMM 0x00000001
|
|
#define SERVER_SMM 0x00000002
|
|
|
|
typedef struct tagSMMCFG {
|
|
DWORD dwSize;
|
|
DWORD fdwOptions;
|
|
DWORD fdwProtocols;
|
|
} SMMCFG, *PSMMCFG, FAR* LPSMMCFG;
|
|
|
|
typedef struct tagSMMINFO {
|
|
char szSMMType[RNA_MaxSMMType+1];
|
|
SMMCFG SMMConfig;
|
|
} SMMINFO, *PSMMINFO, FAR* LPSMMINFO;
|
|
|
|
typedef struct tagIPData {
|
|
DWORD dwSize;
|
|
DWORD fdwTCPIP;
|
|
DWORD dwIPAddr;
|
|
DWORD dwDNSAddr;
|
|
DWORD dwDNSAddrAlt;
|
|
DWORD dwWINSAddr;
|
|
DWORD dwWINSAddrAlt;
|
|
} IPDATA, *PIPDATA, FAR *LPIPDATA;
|
|
|
|
typedef struct tagSMMData {
|
|
struct tagSMMData *pNext;
|
|
SMMINFO smmi;
|
|
DWORD fdwOptAllow;
|
|
DWORD fdwProtAllow;
|
|
IPDATA ipData;
|
|
} SMMDATA, *PSMMDATA, FAR *LPSMMDATA;
|
|
|
|
// Flags for the fdwTCPIP field
|
|
//
|
|
|
|
#define IPF_IP_SPECIFIED 0x00000001
|
|
#define IPF_NAME_SPECIFIED 0x00000002
|
|
#define IPF_NO_COMPRESS 0x00000004
|
|
#define IPF_NO_WAN_PRI 0x00000008
|
|
|
|
typedef struct tagDEVICEINFO {
|
|
DWORD dwVersion;
|
|
UINT uSize;
|
|
char szDeviceName[RAS_MaxDeviceName+1];
|
|
char szDeviceType[RAS_MaxDeviceType+1];
|
|
} DEVICEINFO, *PDEVICEINFO, FAR* LPDEVICEINFO;
|
|
|
|
typedef struct tagDevConfig {
|
|
HICON hIcon;
|
|
SMMINFO smmi;
|
|
DEVICEINFO di;
|
|
} DEVCONFIG, *PDEVCONFIG, FAR* LPDEVCONFIG;
|
|
|
|
typedef struct tagPhoneNum {
|
|
DWORD dwCountryID;
|
|
DWORD dwCountryCode;
|
|
char szAreaCode[RAS_MaxAreaCode+1];
|
|
char szLocal[RAS_MaxLocal+1];
|
|
char szExtension[RAS_MaxExtension+1];
|
|
} PHONENUM, *PPHONENUM, FAR *LPPHONENUM;
|
|
|
|
typedef struct tagCountryInfo {
|
|
DWORD dwCountryID;
|
|
DWORD dwNextCountryID;
|
|
DWORD dwCountryCode;
|
|
DWORD dwCountryNameOffset;
|
|
} COUNTRYINFO, *PCOUNTRYINFO, FAR* LPCOUNTRYINFO;
|
|
|
|
typedef struct tagConnEntry {
|
|
PSTR pszEntry;
|
|
PHONENUM pn;
|
|
PDEVCONFIG pDevConfig;
|
|
DWORD dwFlags;
|
|
DWORD cSubEntry;
|
|
} CONNENTRY, *PCONNENTRY, FAR* LPCONNENTRY;
|
|
|
|
#define CESZENTRY(pCE) ((PSTR)(((PBYTE)pCE)+sizeof(CONNENTRY)))
|
|
|
|
#define DEVCONFIGSIZE(diSize) (diSize+(sizeof(DEVCONFIG)-sizeof(DEVICEINFO)))
|
|
|
|
typedef struct tagSubConnEntry {
|
|
DWORD dwSize;
|
|
DWORD dwFlags;
|
|
char szDeviceType[RAS_MaxDeviceType+1];
|
|
char szDeviceName[RAS_MaxDeviceName+1];
|
|
char szLocal[RAS_MaxPhoneNumber+1];
|
|
} SUBCONNENTRY, *PSUBCONNENTRY, FAR* LPSUBCONNENTRY;
|
|
|
|
typedef struct tagConnEntDlg {
|
|
PCONNENTRY pConnEntry;
|
|
PDEVCONFIG pDevConfig;
|
|
PSMMDATA pSMMList;
|
|
PSMMDATA pSMMType;
|
|
PMLINFO pmli;
|
|
DWORD cmlChannel;
|
|
} CONNENTDLG, *PCONNENTDLG, FAR *LPCONNENTDLG;
|
|
|
|
typedef struct tagRNAPropPage {
|
|
UINT idPage;
|
|
HMODULE hModule;
|
|
UINT idRes;
|
|
DLGPROC pfn;
|
|
} RNAPROPPAGE, *PRNAPROPPAGE, FAR *LPRNAPROPPAGE;
|
|
|
|
#define SRV_TYPE_PAGE 0 // Server Type page id
|
|
|
|
DWORD WINAPI RnaEnumConnEntries(LPSTR lpBuf, UINT cb, LPDWORD lpcEntries);
|
|
PCONNENTRY WINAPI RnaGetConnEntry(LPSTR szEntry, BOOL bNeedIcon, BOOL fDevice);
|
|
BOOL WINAPI RnaFreeConnEntry(PCONNENTRY);
|
|
DWORD WINAPI RnaSaveConnEntry(PCONNENTRY lpConnEntry);
|
|
BOOL WINAPI RnaDeleteConnEntry(LPSTR szEntry);
|
|
DWORD WINAPI RnaRenameConnEntry(LPSTR szOldEntry, LPSTR szNewEntry);
|
|
DWORD WINAPI RnaValidateEntryName (LPSTR szEntry, BOOL fNew);
|
|
|
|
DWORD WINAPI RnaEnumCountryInfo (LPCOUNTRYINFO, LPDWORD);
|
|
DWORD WINAPI RnaGetAreaCodeList (LPSTR, LPDWORD);
|
|
DWORD WINAPI RnaGetCurrentCountry (LPDWORD);
|
|
|
|
DWORD WINAPI RnaEnumDevices (LPBYTE lpBuff, LPDWORD lpcbSize,
|
|
LPDWORD lpcEntries);
|
|
PDEVCONFIG WINAPI RnaGetDefaultDevConfig (LPSTR szDeviceName);
|
|
DWORD WINAPI RnaGetDeviceInfo(LPSTR szDeviceName, LPDEVICEINFO lpdi);
|
|
DWORD WINAPI RnaGetDeviceChannel (LPSTR szDeviceName);
|
|
PDEVCONFIG WINAPI RnaBuildDevConfig (PDEVCONFIG pDevConfig, HICON hIcon, BOOL bNeedIcon);
|
|
DWORD WINAPI RnaDevConfigDlg(HWND hWnd, PDEVCONFIG pDevConfig);
|
|
BOOL WINAPI RnaFreeDevConfig(PDEVCONFIG pDevConfig);
|
|
|
|
DWORD WINAPI RnaSMMInfoDialog(HWND hWnd, LPSTR szEntryName,
|
|
LPSTR szDeviceName,
|
|
LPSMMINFO lpsmmi, DWORD dwUsage);
|
|
DWORD WINAPI RnaEnumerateMacNames (LPSTR szDeviceName, LPBYTE lpBuff,
|
|
LPDWORD lpcb);
|
|
DWORD WINAPI RnaEnumerateSMMNames (LPSTR szDeviceName, LPBYTE lpBuff,
|
|
LPDWORD lpcb, DWORD dwType);
|
|
DWORD WINAPI RnaGetDefaultSMMInfo(LPSTR szDeviceName, LPSMMINFO lpsmmi,
|
|
BOOL fClient);
|
|
DWORD WINAPI RnaGetIPInfo(LPSTR szEntryName, PIPDATA pIpData,
|
|
BOOL fDefault);
|
|
DWORD WINAPI RnaSetIPInfo(LPSTR szEntryName, PIPDATA pIpData);
|
|
|
|
|
|
DWORD WINAPI RnaLogon(HWND);
|
|
DWORD WINAPI RnaActivateEngine();
|
|
DWORD WINAPI RnaDeactivateEngine();
|
|
DWORD WINAPI RnaUIDial(HWND, LPSTR);
|
|
DWORD WINAPI RnaImplicitDial(HWND, LPSTR);
|
|
|
|
DWORD WINAPI RnaFindDriver(HWND hwnd, LPSTR lpszDriverList);
|
|
DWORD WINAPI RnaInstallDriver (HWND hwnd, LPSTR lpszDriverList);
|
|
|
|
DWORD WINAPI RnaExportEntry (LPSTR szEntryName, LPSTR szFileName);
|
|
DWORD WINAPI RnaImportEntry (LPSTR szFileName, LPBYTE lpBuff, DWORD cb);
|
|
DWORD WINAPI RnaValidateImportEntry (LPSTR szFileName);
|
|
|
|
DWORD WINAPI RnaGetMultiLinkInfo (LPSTR, LPMLINFO);
|
|
DWORD WINAPI RnaSetMultiLinkInfo (LPSTR, LPMLINFO);
|
|
DWORD WINAPI RnaGetSubEntry (LPSTR, DWORD, PSUBCONNENTRY, LPDWORD);
|
|
DWORD WINAPI RnaSetSubEntry (LPSTR, DWORD, PSUBCONNENTRY, DWORD);
|
|
|
|
#define LOG_INACTIVE 0
|
|
#define LOG_DISCONNECTION 1
|
|
#define LOG_ACTIVE 2
|
|
#define LOG_LISTEN 3
|
|
#define LOG_AUTH_TIMEOUT 4
|
|
#define LOG_CALLBACK 5
|
|
#define LOG_ANSWERED 6
|
|
#define LOG_ERROR 7
|
|
|
|
typedef struct tagLOGINFO {
|
|
LPSTR szPortName;
|
|
HWND hwnd;
|
|
UINT uLogEvent;
|
|
} LOGINFO, *PLOGINFO, FAR* LPLOGINFO;
|
|
|
|
typedef struct tagGWLOGONINFO {
|
|
LPSTR szPortName;
|
|
char szUserName[UNLEN+1];
|
|
SYSTEMTIME sysTime;
|
|
} GWLOGONINFO, *PGWLOGONINFO, FAR* LPGWLOGONINFO;
|
|
|
|
typedef enum tagRNASECURITY { RNAPASSWORD, RNAPASSTHROUGH } RNASECURITY;
|
|
|
|
#define RNAADMIN_DIALIN 1
|
|
|
|
#define USERTYPE_USER 0x00000001
|
|
#define USERTYPE_GROUP 0x00000002
|
|
#define USERTYPE_WORLD 0x00000004
|
|
|
|
typedef struct tagUSER_ACCESS {
|
|
RNAACCESSTYPE accesstype;
|
|
BOOL fUseCallbacks;
|
|
DWORD dwUsertype;
|
|
} USERACCESS, *PUSERACCESS, FAR *LPUSERACCESS;
|
|
|
|
typedef struct tagPORTSTATS
|
|
{
|
|
char szPortName[RAS_MaxPortName+1];
|
|
char szDeviceType[RAS_MaxDeviceType+1];
|
|
BOOL fAccessEnabled;
|
|
UINT TimeOut;
|
|
SMMINFO smmi;
|
|
char szComment[RAS_MaxComment+1];
|
|
BOOL AdminAccess;
|
|
RNASECURITY security;
|
|
union {
|
|
struct tagPassthru {
|
|
DWORD cUsers;
|
|
DWORD dwOffsetUsers; }
|
|
Passthru;
|
|
|
|
struct tagPassword {
|
|
USERACCESS shareaccess;
|
|
char szPassword[PWLEN+1]; }
|
|
Password;
|
|
};
|
|
} RNAPORTSTATS, *PRNAPORTSTATS, FAR *LPRNAPORTSTATS;
|
|
|
|
DWORD WINAPI SuprvEnumAccessInfo (LPBYTE, LPINT, LPINT);
|
|
DWORD WINAPI SuprvGetAccessInfo (LPSTR, LPRNAPORTSTATS, LPDWORD);
|
|
DWORD WINAPI SuprvSetAccessInfo (LPRNAPORTSTATS);
|
|
DWORD WINAPI SuprvInitialize (LPDWORD);
|
|
DWORD WINAPI SuprvDeInitialize();
|
|
DWORD WINAPI SuprvGetAdminConfig();
|
|
|
|
DWORD WINAPI RnaSetCallbackList (DWORD, LPSTR, LPSTR, int);
|
|
|
|
DWORD WINAPI RnaAllocateLana(HANDLE hConn, LPDWORD lpLana);
|
|
DWORD WINAPI RnaDeallocateLana(HANDLE hConn);
|
|
|
|
DWORD WINAPI RnaRunScript(HANDLE hConn, PSESS_CONFIGURATION_INFO lpSCI,
|
|
BOOL fForce);
|
|
|
|
typedef DWORD (WINAPI * LPFNCREATE)(HWND);
|
|
typedef DWORD (WINAPI * LPFNEDIT)(HWND, LPSTR);
|
|
typedef void (WINAPI * LPFNUINOTIFY)(LPSTR);
|
|
|
|
DWORD WINAPI Remote_CreateEntry (HWND);
|
|
DWORD WINAPI Remote_EditEntry (HWND, LPSTR);
|
|
void WINAPI Remote_Notify (LPSTR);
|
|
|
|
//***************************************************************************
|
|
// Dial global setting for redial and implicit connection
|
|
//***************************************************************************
|
|
|
|
#define MAX_REDIAL_COUNT 100
|
|
#define MIN_REDIAL_COUNT 1
|
|
#define MAX_REDIAL_MINUTE 119
|
|
#define MIN_REDIAL_MINUTE 0
|
|
#define MAX_REDIAL_SECOND 59
|
|
#define MIN_REDIAL_SECOND 0
|
|
|
|
typedef struct tagRnaSetting {
|
|
BOOL fRedial;
|
|
DWORD cRetry;
|
|
DWORD dwMin;
|
|
DWORD dwSec;
|
|
BOOL fImplicit;
|
|
DWORD dwDialUI;
|
|
} RNASETTING, *PRNASETTING, FAR *LPRNASETTING;
|
|
|
|
#define DIALUI_NO_PROMPT 0x00000001 // Do not display connect prompt
|
|
#define DIALUI_NO_CONFIRM 0x00000002 // Do not display connect confirm
|
|
#define DIALUI_NO_TRAY 0x00000004 // No tray icon
|
|
|
|
DWORD WINAPI RnaGetDialSettings(LPRNASETTING);
|
|
DWORD WINAPI RnaSetDialSettings(LPRNASETTING);
|
|
|
|
//***************************************************************************
|
|
// The following are SMM Interface we cut from version 1.0
|
|
//***************************************************************************
|
|
#ifndef WINNT_RAS
|
|
//
|
|
// CALLBACKINFO conflicts with a structure defined in "pbuser.h",
|
|
// and RAS_STATISTICS conflicts with a structure in "rasman.h".
|
|
// The Win9x scripting code uses neither, so they have been commented out.
|
|
//
|
|
|
|
// Callback request information
|
|
//
|
|
typedef struct tagCALLBACKINFO
|
|
{
|
|
DWORD dwSize;
|
|
BOOL fUseCallbackDelay;
|
|
DWORD dwCallbackDelay;
|
|
char szPhoneNumber[RAS_MaxPhoneNumber+1];
|
|
} CALLBACKINFO, *PCALLBACKINFO, FAR* LPCALLBACKINFO;
|
|
|
|
DWORD WINAPI RnaSetCallbackInfo( HANDLE hConn, LPCALLBACKINFO lpcbinfo );
|
|
|
|
DWORD WINAPI RnaReportLinkSpeed( HANDLE hConn, DWORD dwLinkSpeed );
|
|
DWORD WINAPI RnaUIStatus( HANDLE hConn, LPSTR lpszStatusMsg );
|
|
DWORD WINAPI RnaLog( HANDLE hConn, LPSTR lpszLogMsg );
|
|
|
|
//***************************************************************************
|
|
// The following are connection statistics
|
|
//***************************************************************************
|
|
|
|
#define NUM_RAS_SERIAL_STATS 14
|
|
|
|
#define BYTES_XMITED 0 //Generic Stats
|
|
#define BYTES_RCVED 1
|
|
#define FRAMES_XMITED 2
|
|
#define FRAMES_RCVED 3
|
|
|
|
#define CRC_ERR 4 //Serial Stats
|
|
#define TIMEOUT_ERR 5
|
|
#define ALIGNMENT_ERR 6
|
|
#define SERIAL_OVERRUN_ERR 7
|
|
#define FRAMING_ERR 8
|
|
#define BUFFER_OVERRUN_ERR 9
|
|
|
|
#define BYTES_XMITED_UNCOMP 10 //Compression Stats
|
|
#define BYTES_RCVED_UNCOMP 11
|
|
#define BYTES_XMITED_COMP 12
|
|
#define BYTES_RCVED_COMP 13
|
|
|
|
typedef struct tagRAS_STATISTICS
|
|
{
|
|
DWORD S_NumOfStatistics ;
|
|
DWORD S_Statistics[NUM_RAS_SERIAL_STATS] ;
|
|
} RAS_STATISTICS, FAR* LPRAS_STATISTICS;
|
|
#endif // WINNT_RAS
|
|
|
|
//**************************************************************************
|
|
// Script support
|
|
//**************************************************************************
|
|
|
|
// Script processing mode
|
|
//
|
|
#define NORMAL_MODE 0
|
|
#define TEST_MODE 1
|
|
|
|
typedef DWORD (WINAPI * PFN_RUN_SCRIPT)(HANDLE, LPSESS_CONFIGURATION_INFO);
|
|
|
|
#endif // _RNAP_H_
|