#ifndef _NNTP_RASINTERFACE_HPP_ #define _NNTP_RASINTERFACE_HPP_ #ifndef _RASAPI_RASAPI_HPP_ #include #endif #ifndef _RASAPI_REMOTEACCESSSERVER_HPP_ #include #endif #ifndef _RASAPI_RASDIALPARAMS_HPP_ #include #endif class RasInterface { public: RasInterface(void); virtual ~RasInterface(); WORD login(const String &userName,const String &password,const String &entryName); WORD enumEntries(Block &rasEntryNames); WORD isOkay(void)const; private: WORD locateEntry(Block &rasEntryNames,RasEntryName &rasEntryName); RemoteAccessServer mRemoteServerInterface; RasConnectionStatus mRasConnectionStatus; RasConnectionState mRasConnectionState; HRASCONN mhRasConn; }; inline RasInterface::RasInterface(void) : mhRasConn(0) { } inline RasInterface::~RasInterface() { if(!mhRasConn)return; mRemoteServerInterface.rasHangUp(mhRasConn); mhRasConn=0; } inline WORD RasInterface::enumEntries(Block &rasEntryNames) { rasEntryNames.remove(); if(!mRemoteServerInterface.isOkay())return FALSE; mRemoteServerInterface.rasEnumEntries(rasEntryNames); return (rasEntryNames.size()?TRUE:FALSE); } inline WORD RasInterface::isOkay(void)const { return mRemoteServerInterface.isOkay(); } #endif