PRemoteConnection Class Reference

Remote Access Connection class. More...

#include <remconn.h>

Inheritance diagram for PRemoteConnection:

PObject List of all members.

Error/Status functions

enum  Status {
  Idle, Connected, InProgress, LineBusy,
  NoDialTone, NoAnswer, PortInUse, NoNameOrNumber,
  AccessDenied, HardwareFailure, GeneralFailure, ConnectionLost,
  NotInstalled, NumStatuses
}
 Status codes for remote connection. More...
Status GetStatus () const
 Get the current status of the RAS connection.
DWORD GetErrorCode () const
 Get the error code for the last operation.

Information functions

const PStringGetName () const
 Get the name of the RAS connection.
PString GetAddress ()
 Get the IP address in dotted decimal form for the RAS connection.
static PStringArray GetAvailableNames ()
 Get an array of names for all of the available remote connections on this system.

Configuration functions

Status GetConfiguration (Configuration &config)
 Get the configuration of the specified remote access connection.
Status SetConfiguration (const Configuration &config, PBoolean create=false)
 Set the configuration of the specified remote access connection.
static Status GetConfiguration (const PString &name, Configuration &config)
 Get the configuration of the specified remote access connection.
static Status SetConfiguration (const PString &name, const Configuration &config, PBoolean create=false)
 Set the configuration of the specified remote access connection.
static Status RemoveConfiguration (const PString &name)
 Remove the specified remote access connection.

Public Member Functions

Construction
 PRemoteConnection ()
 Create a new remote connection.
 PRemoteConnection (const PString &name)
 Create a new remote connection.
 ~PRemoteConnection ()
 Disconnect remote connection.
Overrides from class PObject
virtual Comparison Compare (const PObject &obj) const
 Compare two connections.
virtual PINDEX HashFunction () const
 Get has value for the connection.
Dial/Hangup functions
PBoolean Open (PBoolean existing=false)
 Open the remote connection.
PBoolean Open (const PString &name, PBoolean existing=false)
 Open the remote connection.
PBoolean Open (const PString &name, const PString &username, const PString &password, PBoolean existing=false)
 Open the remote connection.
void Close ()
 Close the remote connection.

Protected Attributes

PString remoteName
PString userName
PString password
DWORD osError
PString pppDeviceName
PPipeChannelpipeChannel
PBoolean wasConnected
Status status
PString deviceStr

Classes

struct  Configuration
 Structure for a RAS configuration. More...

Detailed Description

Remote Access Connection class.


Member Enumeration Documentation

enum PRemoteConnection::Status

Status codes for remote connection.

Enumerator:
Idle  Connection has not been made and no attempt is being made.
Connected  Connection is completed and active.
InProgress  Connection is in progress.
LineBusy  Connection failed due to the line being busy.
NoDialTone  Connection failed due to the line havin no dial tone.
NoAnswer  Connection failed due to the remote not answering.
PortInUse  Connection failed due to the port being in use.
NoNameOrNumber  Connection failed due to the RAS setting name/number being incorrect.
AccessDenied  Connection failed due to insufficient privilege.
HardwareFailure  Connection failed due to a hardware failure.
GeneralFailure  Connection failed due to a general failure.
ConnectionLost  Connection was lost after successful establishment.
NotInstalled  The Remote Access Operating System support is not installed.
NumStatuses 


Constructor & Destructor Documentation

PRemoteConnection::PRemoteConnection (  ) 

Create a new remote connection.

PRemoteConnection::PRemoteConnection ( const PString name  ) 

Create a new remote connection.

This will initiate the connection using the specified settings.

Parameters:
name  Name of RAS configuration.

PRemoteConnection::~PRemoteConnection (  ) 

Disconnect remote connection.


Member Function Documentation

void PRemoteConnection::Close (  ) 

Close the remote connection.

This will hang up/dosconnect the connection, net access will no longer be available to this site.

virtual Comparison PRemoteConnection::Compare ( const PObject obj  )  const [virtual]

Compare two connections.

Returns:
EqualTo of same RAS connectionconfiguration.
Parameters:
obj  Another connection instance.

Reimplemented from PObject.

PString PRemoteConnection::GetAddress (  ) 

Get the IP address in dotted decimal form for the RAS connection.

Returns:
String for IP address, or empty string if none.

static PStringArray PRemoteConnection::GetAvailableNames (  )  [static]

Get an array of names for all of the available remote connections on this system.

Returns:
Array of strings for remote connection names.

static Status PRemoteConnection::GetConfiguration ( const PString name,
Configuration config 
) [static]

Get the configuration of the specified remote access connection.

Returns:
Connected if the configuration information was obtained, NoNameOrNumber if the particular RAS name does not exist, NotInstalled if there is no RAS support in the operating system, GeneralFailure on any other error.
Parameters:
name  Remote connection name to get configuration
config  Configuration of remote connection

Status PRemoteConnection::GetConfiguration ( Configuration config  ) 

Get the configuration of the specified remote access connection.

Returns:
Connected if the configuration information was obtained, NoNameOrNumber if the particular RAS name does not exist, NotInstalled if there is no RAS support in the operating system, GeneralFailure on any other error.
Parameters:
config  Configuration of remote connection

DWORD PRemoteConnection::GetErrorCode (  )  const [inline]

Get the error code for the last operation.

Returns:
Operating system error code.

const PString& PRemoteConnection::GetName (  )  const [inline]

Get the name of the RAS connection.

Returns:
String for IP address, or empty string if none.

Status PRemoteConnection::GetStatus (  )  const

Get the current status of the RAS connection.

Returns:
Status code.

virtual PINDEX PRemoteConnection::HashFunction (  )  const [virtual]

Get has value for the connection.

Returns:
Hash value of the connection name string.

Reimplemented from PObject.

PBoolean PRemoteConnection::Open ( const PString name,
const PString username,
const PString password,
PBoolean  existing = false 
)

Open the remote connection.

Parameters:
name  RAS name of of connection to open.
username  Username for remote log in.
password  password for remote log in.
existing  Flag for open only if already connected.

PBoolean PRemoteConnection::Open ( const PString name,
PBoolean  existing = false 
)

Open the remote connection.

Parameters:
name  RAS name of of connection to open.
existing  Flag for open only if already connected.

PBoolean PRemoteConnection::Open ( PBoolean  existing = false  ) 

Open the remote connection.

Parameters:
existing  Flag for open only if already connected.

static Status PRemoteConnection::RemoveConfiguration ( const PString name  )  [static]

Remove the specified remote access connection.

Returns:
Connected if the configuration information was removed, NoNameOrNumber if the particular RAS name does not exist, NotInstalled if there is no RAS support in the operating system, GeneralFailure on any other error.
Parameters:
name  Remote connection name to configure

static Status PRemoteConnection::SetConfiguration ( const PString name,
const Configuration config,
PBoolean  create = false 
) [static]

Set the configuration of the specified remote access connection.

Returns:
Connected if the configuration information was set, NoNameOrNumber if the particular RAS name does not exist, NotInstalled if there is no RAS support in the operating system, GeneralFailure on any other error.
Parameters:
name  Remote connection name to configure
config  Configuration of remote connection
create  Flag to create connection if not present

Status PRemoteConnection::SetConfiguration ( const Configuration config,
PBoolean  create = false 
)

Set the configuration of the specified remote access connection.

Returns:
Connected if the configuration information was set, NoNameOrNumber if the particular RAS name does not exist, NotInstalled if there is no RAS support in the operating system, GeneralFailure on any other error.
Parameters:
config  Configuration of remote connection
create  Flag to create connection if not present


Member Data Documentation

PString PRemoteConnection::deviceStr [protected]

DWORD PRemoteConnection::osError [protected]

PString PRemoteConnection::password [protected]

PPipeChannel* PRemoteConnection::pipeChannel [protected]

PString PRemoteConnection::pppDeviceName [protected]

PString PRemoteConnection::remoteName [protected]

Status PRemoteConnection::status [protected]

PString PRemoteConnection::userName [protected]

PBoolean PRemoteConnection::wasConnected [protected]


The documentation for this class was generated from the following file:
Generated on Fri Oct 14 01:44:12 2011 for PTLib by  doxygen 1.4.7