OpenVPN 3 Core Library
Loading...
Searching...
No Matches
ClientBase Class Reference
Inheritance diagram for ClientBase:
[legend]
Collaboration diagram for ClientBase:
[legend]

Public Member Functions

bool socket_protect (openvpn_io::detail::socket_type socket, std::string remote, bool ipv6) override
 
- Public Member Functions inherited from openvpn::ClientAPI::OpenVPNClient
 OpenVPNClient ()
 
virtual ~OpenVPNClient ()
 
EvalConfig eval_config (const Config &)
 
Status provide_creds (const ProvideCreds &)
 
Status connect ()
 
ConnectionInfo connection_info ()
 
bool session_token (SessionToken &tok)
 
void stop ()
 
void pause (const std::string &reason)
 
void resume ()
 
void reconnect (int seconds)
 
virtual bool pause_on_connection_timeout ()=0
 
long long stats_value (int index) const
 
std::vector< long long > stats_bundle () const
 
InterfaceStats tun_stats () const
 
TransportStats transport_stats () const
 
void post_cc_msg (const std::string &msg)
 
void send_app_control_channel_msg (const std::string &protocol, const std::string &msg)
 
void start_cert_check (const std::string &client_cert, const std::string &clientkey, const std::optional< const std::string > &ca=std::nullopt)
 Start up the cert check handshake using the given certs and key.
 
void start_cert_check_epki (const std::string &alias, const std::optional< const std::string > &ca)
 Start up the cert check handshake using the given epki_alias string.
 
virtual void event (const Event &)=0
 
virtual void acc_event (const AppCustomControlMessageEvent &)=0
 
virtual void log (const LogInfo &) override=0
 
virtual void external_pki_cert_request (ExternalPKICertRequest &)=0
 
virtual void external_pki_sign_request (ExternalPKISignRequest &)=0
 
virtual bool remote_override_enabled ()
 
virtual void remote_override (RemoteOverride &)
 
virtual void clock_tick ()
 
- Public Member Functions inherited from openvpn::TunBuilderBase
virtual bool tun_builder_new ()
 Callback to construct a new TunBuilder. This function should be called first.
 
virtual bool tun_builder_set_layer (int layer)
 Optional callback that indicates OSI layer to be used.
 
virtual bool tun_builder_set_remote_address (const std::string &address, bool ipv6)
 Callback to set the address of the remote server.
 
virtual bool tun_builder_add_address (const std::string &address, int prefix_length, const std::string &gateway, bool ipv6, bool net30)
 Callback to add a network address to the VPN interface.
 
virtual bool tun_builder_set_route_metric_default (int metric)
 Optional callback to set default value for route metric.
 
virtual bool tun_builder_reroute_gw (bool ipv4, bool ipv6, unsigned int flags)
 Callback to reroute the default gateway to the VPN interface.
 
virtual bool tun_builder_add_route (const std::string &address, int prefix_length, int metric, bool ipv6)
 Callback to add a route to the VPN interface.
 
virtual bool tun_builder_exclude_route (const std::string &address, int prefix_length, int metric, bool ipv6)
 Callback to exclude route from VPN interface.
 
virtual bool tun_builder_set_dns_options (const DnsOptions &dns)
 Callback to set DNS related options to VPN interface.
 
virtual bool tun_builder_set_mtu (int mtu)
 Callback to set the MTU of the VPN interface.
 
virtual bool tun_builder_set_session_name (const std::string &name)
 Sets the session name for the TunBuilder.
 
virtual bool tun_builder_add_proxy_bypass (const std::string &bypass_host)
 Callback to add a host which should bypass the proxy.
 
virtual bool tun_builder_set_proxy_auto_config_url (const std::string &url)
 Callback to set the proxy "Auto Config URL".
 
virtual bool tun_builder_set_proxy_http (const std::string &host, int port)
 Callback to set the HTTP proxy.
 
virtual bool tun_builder_set_proxy_https (const std::string &host, int port)
 Set the HTTPS proxy for the TunBuilder session.
 
virtual bool tun_builder_add_wins_server (const std::string &address)
 Callback to add a Windows WINS server to the VPN interface.
 
virtual bool tun_builder_set_allow_family (int af, bool allow)
 Indicates whether traffic of a certain address family (AF_INET or AF_INET6) should be blocked or allowed.
 
virtual bool tun_builder_set_allow_local_dns (bool allow)
 Optional callback that indicates whether local DNS traffic should be blocked or allowed to prevent DNS queries from leaking while the tunnel is connected.
 
virtual int tun_builder_establish ()
 Callback to establish the VPN tunnel.
 
virtual bool tun_builder_persist ()
 Determines if the TUN interface can be persisted.
 
virtual std::vector< std::string > tun_builder_get_local_networks (bool ipv6)
 Retrieves a list of local networks to exclude from the VPN network.
 
virtual void tun_builder_establish_lite ()
 Indicates a reconnection with persisted TUN state.
 
virtual void tun_builder_teardown (bool disconnect)
 Indicates that tunnel is being torn down.
 
virtual ~TunBuilderBase ()=default
 Virtual destructor for the TunBuilderBase class.
 
- Public Member Functions inherited from openvpn::ClientAPI::LogReceiver
virtual ~LogReceiver ()=default
 

Additional Inherited Members

- Static Public Member Functions inherited from openvpn::ClientAPI::OpenVPNClient
static int stats_n ()
 
static std::string stats_name (int index)
 
- Protected Member Functions inherited from openvpn::ClientAPI::OpenVPNClient
Status do_connect ()
 
virtual void connect_attach ()
 
virtual void connect_pre_run ()
 
virtual void connect_run ()
 
virtual void connect_session_stop ()
 
virtual Stopget_async_stop ()
 
- Protected Attributes inherited from openvpn::ClientAPI::OpenVPNClient
Private::ClientStatestate
 

Detailed Description

Definition at line 196 of file cli.cpp.

Member Function Documentation

◆ socket_protect()

bool ClientBase::socket_protect ( openvpn_io::detail::socket_type  socket,
std::string  remote,
bool  ipv6 
)
inlineoverridevirtual

Reimplemented from openvpn::ClientAPI::OpenVPNClient.

Definition at line 199 of file cli.cpp.


The documentation for this class was generated from the following file: