VPNStats Class Reference

`#include <VPNStats.h>`

## Public Member Functions

const std::list< RouteInfo * > & | getSecureRoutes ()
const std::list< RouteInfo * > & | getNonsecureRoutes ()
const std::list< ProtocolInfo * > & | getProtocolInfo ()
const std::list< FirewallInfo * > & | getFirewallInfo ()
const tstring & | getStatValue (tstring &label)
const tstring & | getValue (tstring &label)
Public Member Functions inherited from VPNStatsBase
| VPNStatsBase (const VPNStatsBase &existing)
VPNStatsBase & | operator= (const VPNStatsBase &)
const std::list< RouteInfo * > & | getSecureRoutes ()
uint16_t | getAppliedSecureRouteCount (bool bIPv6)
const std::list< RouteInfo * > & | getNonsecureRoutes ()
uint16_t | getAppliedNonsecureRouteCount (bool bIPv6)
const std::list< ProtocolInfo * > & | getProtocolInfo ()
const std::list< FirewallInfo * > & | getFirewallInfo ()
const tstring & | getStatValue (tstring &label)
void | setConnectionStatistics (CStatisticsTlv *connectionStats)
bool | ClearConnectionStatistics ()
bool | ClearVPNSessionStats ()
bool | hasSessionInfo ()
bool | IsFirewallInfoEqual (VPNStatsBase &stats)
void | setDisconnected ()
bool | setStateInfo (CStateTlv *stateInfo, STATE &rSessionState, VPNCON_SUBSTATE &rSessionSubState, STATE &rMgmtTunSessionState, VPNCON_SUBSTATE &rMgmtTunSessionSubState, NETENV_STATE &rNetEnvState, NETCTRL_STATE &rNetCtrlState, NETWORK_TYPE &rNetType)
void | setSessionInfo (CSessionInfoTlv *sessionInfo)
void | setTNDInfo (CSessionInfoTlv &sessionInfo)
void | setClientOperatingMode (uint32_t operatingMode)
void | StreamStats (tostream &outStream)

## Static Public Member Functions

static tstring | getTranslatedLabel (tstring &label)
Static Public Member Functions inherited from VPNStatsBase
static const tstring::value_type *const * | getVpnStatsStringTable ()

## Static Public Attributes

static tstring | State
static tstring | MgmtTunState
static tstring | TimeConnected
static tstring | SessionDisconnect
static tstring | BytesSent
static tstring | BytesReceived
static tstring | PacketsSent
static tstring | PacketsReceived
static tstring | ControlBytesSent
static tstring | ControlBytesReceived
static tstring | ControlPacketsSent
static tstring | ControlPacketsReceived
static tstring | EncryptedBytesSent
static tstring | EncryptedBytesReceived
static tstring | EncryptedPacketsSent
static tstring | EncryptedPacketsReceived
static tstring | CompressedBytesSent
static tstring | CompressedBytesReceived
static tstring | CompressedPacketsSent
static tstring | CompressedPacketsReceived
static tstring | InboundDiscarded
static tstring | OutboundDiscarded
static tstring | InboundBypassed
static tstring | OutboundBypassed
static tstring | ClientAddress
static tstring | ServerAddress
static tstring | ClientAddressV6
static tstring | ServerHostName
static tstring | ProxyAddress
static tstring | ProxyHostName
static tstring | ProxyPort
static tstring | TunnelingMode
static tstring | TunnelingModeV6
static tstring | DynamicTunnelExclusion
static tstring | DynamicTunnelInclusion
static tstring | Enabled
static tstring | Disabled
static tstring | Unconfirmed
static tstring | FipsMode
static tstring | TrustedNetworkDetectionMode
static tstring | AlwaysOnMode
static tstring | NetworkStatus
static tstring | DAPMessage
static tstring | MUSHost
static tstring | MUSStatus
static tstring | AdministrativeDomain
static tstring | ProfileName

## Additional Inherited Members

Static Protected Attributes inherited from VPNStatsBase
static const tstring::value_type *const | sm_pVpnStatsStringTable []

## Detailed Description

Use this class to retrieve statistics related to the tunnel and protocol being used.

The class has two uses: it provides a consistent localized label definition mechanism and it uses this label mechanism to do values lookups.

Labels are automatically localized at application startup. See the AnyConnect Release notes for additional information on localization.

To retrieve a value for one of the labels, use the method getStatValue(). For example, to get Time connected use: getStatValue(VPNStats::TimeConnected)

## Member Function Documentation

## getFirewallInfo()

const std::list< FirewallInfo * > & VPNStats::getFirewallInfo | ( |  | ) |

Get a list of firewall Info objects. Method returns a list of FirewallInfo pointers

## getNonsecureRoutes()

const std::list< RouteInfo * > & VPNStats::getNonsecureRoutes | ( |  | ) |

Get a list of Nonsecure Routes. Method returns a list of RouteInfo pointers

## getProtocolInfo()

const std::list< ProtocolInfo * > & VPNStats::getProtocolInfo | ( |  | ) |

Get a list of protocol Info objects. Method returns a list of ProtocolInfo pointers

## getSecureRoutes()

const std::list< RouteInfo * > & VPNStats::getSecureRoutes | ( |  | ) |

Get a list of Secure Routes. Method returns a list of RouteInfo pointers

## getStatValue()

const tstring & VPNStats::getStatValue | ( | tstring & | label | ) |

Method used to retrieve statistics by name.

## getTranslatedLabel()

tstring VPNStats::getTranslatedLabel | ( | tstring & | label | ) |

static

Return a translated stats label. As an example, passing VPNStats::State will return a translated label for State text.

NOTE: Do not use this translated label to retrieve stats values; it is meant only as a label translation mechanism.

## getValue()

const tstring & VPNStats::getValue | ( | tstring & | label | ) |

inline

Alias for getStatValue.

{ return getStatValue(label); }
VPNStats::getStatValue
const tstring & getStatValue(tstring &label)

## Member Data Documentation

## AdministrativeDomain

tstring VPNStats::AdministrativeDomain

static

Administrative Domain Name:

- domain name of the SG that the user connects to for the first time
- "Admin Defined" if there are authorized SGs specified in the local policy file
- "Not Applicable" otherwise.

## AlwaysOnMode

tstring VPNStats::AlwaysOnMode

static

< Trusted Network Detection. Values are "Enabled" or "Disabled" Always On. Values are "Enabled" or "Disabled"

## BytesReceived

tstring VPNStats::BytesReceived

static

Bytes received from the remote network.

## BytesSent

tstring VPNStats::BytesSent

static

Bytes sent to the remote network.

## ClientAddress

tstring VPNStats::ClientAddress

static

Client IPv4 address.

## ClientAddressV6

tstring VPNStats::ClientAddressV6

static

Client IPv6 address.

## CompressedBytesReceived

tstring VPNStats::CompressedBytesReceived

static

Compressed bytes received from the remote network.

## CompressedBytesSent

tstring VPNStats::CompressedBytesSent

static

Compressed bytes sent to the remote network.

## CompressedPacketsReceived

tstring VPNStats::CompressedPacketsReceived

static

Compressed packets received from the remote network.

## CompressedPacketsSent

tstring VPNStats::CompressedPacketsSent

static

Compressed packets sent to the remote network.

## ControlBytesReceived

tstring VPNStats::ControlBytesReceived

static

Control bytes received from the remote gateway.

## ControlBytesSent

tstring VPNStats::ControlBytesSent

static

Control bytes sent to the remote gateway.

## ControlPacketsReceived

tstring VPNStats::ControlPacketsReceived

static

Control packets received from the remote gateway.

## ControlPacketsSent

tstring VPNStats::ControlPacketsSent

static

Control packets sent to the remote gateway.

## DAPMessage

tstring VPNStats::DAPMessage

static

DAP message received from gateway. Used for Quarantine mode, etc.

## DynamicTunnelExclusion

tstring VPNStats::DynamicTunnelExclusion

static

Domain names dynamically excluded from tunneling

## DynamicTunnelInclusion

tstring VPNStats::DynamicTunnelInclusion

static

Domain names dynamically added to tunnel

## EncryptedBytesReceived

tstring VPNStats::EncryptedBytesReceived

static

Encrypted bytes received from the remote network.

## EncryptedBytesSent

tstring VPNStats::EncryptedBytesSent

static

Encrypted bytes sent to the remote network.

## EncryptedPacketsReceived

tstring VPNStats::EncryptedPacketsReceived

static

Encrypted packets received from the remote network.

## EncryptedPacketsSent

tstring VPNStats::EncryptedPacketsSent

static

Encrypted packets sent to the remote network.

## FipsMode

tstring VPNStats::FipsMode

static

FIPS mode (Federal security standard). Values are "Enabled" or "Disabled"

## InboundBypassed

tstring VPNStats::InboundBypassed

static

Incoming skipped bytes.

## InboundDiscarded

tstring VPNStats::InboundDiscarded

static

Incoming discarded bytes.

## MgmtTunState

tstring VPNStats::MgmtTunState

static

Current state (see VPNState) of the management VPN tunnel.

## MUSHost

tstring VPNStats::MUSHost

static

MUS Host delivered from secure gateway.

## MUSStatus

tstring VPNStats::MUSStatus

static

MUS Status: Enabled, Disabled.

## NetworkStatus

tstring VPNStats::NetworkStatus

static

Network Status. Values include are: "No Networks Detected", "DNS Services Unavailable", "Web Authentication Required", "Proxy Authentication Required", "Access Restricted", "Access Unrestricted"

## OutboundBypassed

tstring VPNStats::OutboundBypassed

static

Outgoing skipped bytes.

## OutboundDiscarded

tstring VPNStats::OutboundDiscarded

static

Outgoing discarded bytes.

## PacketsReceived

tstring VPNStats::PacketsReceived

static

Packets received from the remote network.

## PacketsSent

tstring VPNStats::PacketsSent

static

Packets sent to the remote network.

## ProfileName

tstring VPNStats::ProfileName

static

Active profile name.

## ProxyAddress

tstring VPNStats::ProxyAddress

static

Proxy server IP address.

## ProxyHostName

tstring VPNStats::ProxyHostName

static

Proxy server host name.

## ProxyPort

tstring VPNStats::ProxyPort

static

Port used for communicating with proxy server.

## ServerAddress

tstring VPNStats::ServerAddress

static

Remote gateway IP address.

## ServerHostName

tstring VPNStats::ServerHostName

static

Host name of the remote gateway.

## SessionDisconnect

tstring VPNStats::SessionDisconnect

static

Estimate of time left until VPN session is disconnected due to ASA configured timeout.

## State

tstring VPNStats::State

static

Current state (see VPNState) of the VPN tunnel.

## TimeConnected

tstring VPNStats::TimeConnected

static

Time hh:mm:ss the VPN tunnel has been active.

## TunnelingMode

tstring VPNStats::TunnelingMode

static

Mode IPv4 traffic is being passed over the tunnel. Values are "Tunnel All Traffic", "Split Include", "Split Exclude", "Application Tunnel", "Drop All Traffic" or "Bypass All Traffic".

## TunnelingModeV6

tstring VPNStats::TunnelingModeV6

static

Mode IPv6 traffic is being passed over the tunnel. Values are "Tunnel All Traffic", "Split Include", "Split Exclude", "Drop All Traffic" or "Bypass All Traffic".

## Unconfirmed

tstring VPNStats::Unconfirmed

static

Used for Secure Mobility Solution. If the WSA is not reachable from the agent, it might be due to private side proxy configuration. In such a case report Unconfirmed to the UI