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.
|
|
/********************************************************************/ /** Copyright(c) 1996 Microsoft Corporation. **/ /********************************************************************/
//***
//
// Filename: arapif.h
//
// Description: Contains structures and definitions for components that
// interface directly or indirectly with the Arap module
// These componenets are Arap and DDM
//
// History: Sep 9, 1996 Shirish Koti Created original version.
//
//***
#ifndef _ARAPIF_
#define _ARAPIF_
//#include <ras.h>
//#include <mprapi.h>
typedef struct _ARAPCONFIGINFO { DWORD dwNumPorts; // total number of ports configured
PVOID FnMsgDispatch; // function that Arap should use to send msgs to DDM
DWORD NASIpAddress; // ipaddress of the system
PVOID FnAuthProvider; // function that Arap should use to call AuthProvider
PVOID FnAuthFreeAttrib; PVOID FnAcctStartAccounting; PVOID FnAcctInterimAccounting; PVOID FnAcctStopAccounting; PVOID FnAcctFreeAttrib; DWORD dwAuthRetries; // retries for Authentication
} ARAPCONFIGINFO;
//
// Authentication info sent to DDM by Arap
//
typedef struct _ARAPDDM_AUTH_RESULT { WCHAR wchUserName[ UNLEN + 1 ]; WCHAR wchLogonDomain[ DNLEN + 1 ]; } ARAPDDM_AUTH_RESULT;
//
// Callback info sent to DDM by Arap
//
typedef struct _ARAPDDM_CALLBACK_REQUEST { BOOL fUseCallbackDelay; DWORD dwCallbackDelay; CHAR szCallbackNumber[ RAS_MaxCallbackNumber + 1 ]; } ARAPDDM_CALLBACK_REQUEST;
//
// ARAP error notification
//
typedef struct _ARAPDDM_DISCONNECT { DWORD dwError; WCHAR wchUserName[ UNLEN + 1 ]; WCHAR wchLogonDomain[ DNLEN + 1 ]; } ARAPDDM_DISCONNECT;
typedef struct _ARAPDDM_DONE { DWORD NetAddress; DWORD SessTimeOut; } ARAPDDM_DONE;
//
// Message used for Arap/DDM notification
//
typedef struct _ARAP_MESSAGE { struct _ARAP_MESSAGE * pNext; DWORD dwError; DWORD dwMsgId; HPORT hPort;
union { ARAPDDM_AUTH_RESULT AuthResult; // dwMsgId = ARAPDDMMSG_Authenticated
ARAPDDM_CALLBACK_REQUEST CallbackRequest; // dwMsgId = ARAPDDMMSG_CallbackRequest
ARAPDDM_DONE Done; // dwMsgId = ARAPDDMMSG_Done
ARAPDDM_DISCONNECT FailureInfo; // dwMsgId = ARAPDDMMSG_Failure
} ExtraInfo;
} ARAP_MESSAGE;
//
// ARAP_MESSAGE dwMsgId codes.
//
typedef enum _ARAP_MSG_ID { ARAPDDMMSG_Started, // ARAP engine has started (response to ArapStartup)
ARAPDDMMSG_Authenticated, // Client has been authenticated.
ARAPDDMMSG_CallbackRequest, // Callback client now.
ARAPDDMMSG_Done, // ARAP negotiated successfully and connection is up
ARAPDDMMSG_Failure, // Client has been authenticated.
ARAPDDMMSG_Disconnected, // Client has been authenticated.
ARAPDDMMSG_Inactive, // Client is inactive
ARAPDDMMSG_Stopped, // ARAP engine has stopped (response to ArapShutdown)
} ARAP_MSG_ID;
typedef DWORD (* ARAPPROC1)(ARAP_MESSAGE *pArapMsg);
//
// prototypes for Arap functions
//
DWORD ArapDDMLoadModule( IN VOID );
VOID ArapEventHandler( IN VOID );
VOID ArapSetModemParms( IN PVOID pDevObjPtr, IN BOOLEAN TurnItOff );
//
// exports from rasarap.lib
//
DWORD ArapStartup( IN ARAPCONFIGINFO *pArapConfig );
DWORD ArapAcceptConnection( IN HPORT hPort, IN HANDLE hConnection, IN PCHAR Frame, IN DWORD FrameLen );
DWORD ArapDisconnect( IN HPORT hPort );
DWORD ArapCallBackDone( IN HPORT hPort );
DWORD ArapSendUserMsg( IN HPORT hPort, IN PCHAR MsgBuf, IN DWORD MsgBufLen );
DWORD ArapForcePwdChange( IN HPORT hPort, IN DWORD Reason );
DWORD ArapShutdown( IN VOID );
#endif
|