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

Public Types

typedef RCPtr< MyClientInstancePtr
 
typedef RCPtr< MyClientInstancePtr
 
- Public Types inherited from openvpn::WS::Server::Listener::Client
typedef RCPtr< ClientPtr
 

Public Member Functions

 MyClientInstance (WS::Server::Listener::Client::Initializer &ci)
 
virtual ~MyClientInstance ()=default
 
 MyClientInstance (WS::Server::Listener::Client::Initializer &ci)
 
virtual ~MyClientInstance ()=default
 
- Public Member Functions inherited from openvpn::WS::Server::Listener::Client
virtual ~Client ()
 
bool remote_ip_port (IP::Addr &addr, unsigned int &port) const
 
IP::Addr remote_ip () const
 
AuthCert::Ptr auth_cert () const
 
bool is_ssl () const
 
bool is_local () const
 
bool is_alt_routing () const
 
- Public Member Functions inherited from openvpn::WS::HTTPBase< PARENT, CONFIG, STATUS, REQUEST_REPLY, CONTENT_INFO, CONTENT_LENGTH_TYPE, REFCOUNT_BASE >
void rr_reset ()
 
void reset ()
 
bool is_ready () const
 
bool is_websocket () const
 
bool is_deferred () const
 
bool http_in_started () const
 
bool http_out_started () const
 
const REQUEST_REPLY::State & request_reply () const
 
const HTTP::HeaderListheaders () const
 
olong content_length () const
 
std::string ssl_handshake_details () const
 
bool ssl_did_full_handshake () const
 
void ssl_no_cache ()
 
const CONFIG & http_config () const
 
void set_async_out (const bool async_out_arg)
 
void http_content_out_finish (BufferPtr buf)
 
void reduce_max_content_bytes (const CONTENT_LENGTH_TYPE new_max_content_bytes)
 

Private Member Functions

void generate_reply (const Json::Value &jout)
 
void http_request_received () override
 
void http_content_in (BufferAllocated &buf) override
 
BufferPtr http_content_out () override
 
bool http_out_eof () override
 
void http_pipeline_peek (BufferAllocated &buf) override
 
bool http_stop (const int status, const std::string &description) override
 
MyListenerparent ()
 
void generate_reply (const Json::Value &jout)
 
void http_request_received () override
 
void http_content_in (BufferAllocated &buf) override
 
BufferPtr http_content_out () override
 
bool http_out_eof () override
 
bool http_stop (const int status, const std::string &description) override
 
HANDLE get_client_pipe () const
 
DWORD get_client_pid (const HANDLE client_pipe)
 Get the named pipe client process id.
 
std::wstring get_client_exe (const HANDLE client_pipe)
 
Win::ScopedHANDLE get_client_process (const HANDLE pipe, ULONG pid_hint) const
 
MyListenerparent ()
 

Private Attributes

ScopedFD send_fd
 
BufferList in
 
BufferPtr out
 

Additional Inherited Members

- Protected Member Functions inherited from openvpn::WS::Server::Listener::Client
 Client (Initializer &ci)
 
void generate_reply_headers (ContentInfo ci)
 
void generate_custom_reply_headers (BufferPtr &&buf)
 
bool keepalive_request ()
 
const HTTP::Requestrequest () const
 
void register_activity ()
 
void external_stop (const std::string &description)
 
void abort (const std::string &description, const int status=Status::E_ABORTED)
 
std::string remote_endpoint_str () const
 
client_t get_client_id () const
 
Listenerget_parent () const
 
- Protected Member Functions inherited from openvpn::WS::HTTPBase< PARENT, CONFIG, STATUS, REQUEST_REPLY, CONTENT_INFO, CONTENT_LENGTH_TYPE, REFCOUNT_BASE >
 HTTPBase (const typename CONFIG::Ptr &config_arg)
 
void http_out_begin ()
 
void http_out ()
 
void tcp_in (BufferAllocated &b)
 
- Protected Attributes inherited from openvpn::WS::Server::Listener::Client
openvpn_io::io_context & io_context
 
AsioPolySock::Base::Ptr sock
 
std::deque< BufferAllocatedpipeline
 
Time::Duration timeout_duration
 
- Protected Attributes inherited from openvpn::WS::HTTPBase< PARENT, CONFIG, STATUS, REQUEST_REPLY, CONTENT_INFO, CONTENT_LENGTH_TYPE, REFCOUNT_BASE >
bool halt = false
 
bool ready = true
 
bool async_out = false
 
bool websocket = false
 
CONFIG::Ptr config
 
CONTENT_INFO content_info
 
SSLAPI::Ptr ssl_sess
 
BufferPtr outbuf
 
Frame::Ptr frame
 
SessionStats::Ptr stats
 

Detailed Description

Definition at line 328 of file ovpnagent.cpp.

Member Typedef Documentation

◆ Ptr [1/2]

Definition at line 331 of file ovpnagent.cpp.

◆ Ptr [2/2]

Definition at line 537 of file ovpnagent.cpp.

Constructor & Destructor Documentation

◆ MyClientInstance() [1/2]

MyClientInstance::MyClientInstance ( WS::Server::Listener::Client::Initializer ci)
inline

Definition at line 333 of file ovpnagent.cpp.

◆ ~MyClientInstance() [1/2]

virtual MyClientInstance::~MyClientInstance ( )
virtualdefault

◆ MyClientInstance() [2/2]

MyClientInstance::MyClientInstance ( WS::Server::Listener::Client::Initializer ci)
inline

Definition at line 539 of file ovpnagent.cpp.

◆ ~MyClientInstance() [2/2]

virtual MyClientInstance::~MyClientInstance ( )
virtualdefault

Member Function Documentation

◆ generate_reply() [1/2]

void MyClientInstance::generate_reply ( const Json::Value &  jout)
inlineprivate

Definition at line 341 of file ovpnagent.cpp.

Here is the caller graph for this function:

◆ generate_reply() [2/2]

void MyClientInstance::generate_reply ( const Json::Value &  jout)
inlineprivate

Definition at line 547 of file ovpnagent.cpp.

◆ get_client_exe()

std::wstring MyClientInstance::get_client_exe ( const HANDLE  client_pipe)
inlineprivate

Definition at line 851 of file ovpnagent.cpp.

Here is the caller graph for this function:

◆ get_client_pid()

DWORD MyClientInstance::get_client_pid ( const HANDLE  client_pipe)
inlineprivate

Get the named pipe client process id.

Parameters
client_pipeThe handle to the named pipe
Returns
DWORD The client process id

Definition at line 846 of file ovpnagent.cpp.

Here is the caller graph for this function:

◆ get_client_pipe()

HANDLE MyClientInstance::get_client_pipe ( ) const
inlineprivate

Definition at line 832 of file ovpnagent.cpp.

Here is the caller graph for this function:

◆ get_client_process()

Win::ScopedHANDLE MyClientInstance::get_client_process ( const HANDLE  pipe,
ULONG  pid_hint 
) const
inlineprivate

Definition at line 857 of file ovpnagent.cpp.

Here is the caller graph for this function:

◆ http_content_in() [1/2]

void MyClientInstance::http_content_in ( BufferAllocated buf)
inlineoverrideprivatevirtual

Reimplemented from openvpn::WS::Server::Listener::Client.

Definition at line 449 of file ovpnagent.cpp.

◆ http_content_in() [2/2]

void MyClientInstance::http_content_in ( BufferAllocated buf)
inlineoverrideprivatevirtual

Reimplemented from openvpn::WS::Server::Listener::Client.

Definition at line 802 of file ovpnagent.cpp.

◆ http_content_out() [1/2]

BufferPtr MyClientInstance::http_content_out ( )
inlineoverrideprivatevirtual

Reimplemented from openvpn::WS::Server::Listener::Client.

Definition at line 455 of file ovpnagent.cpp.

◆ http_content_out() [2/2]

BufferPtr MyClientInstance::http_content_out ( )
inlineoverrideprivatevirtual

Reimplemented from openvpn::WS::Server::Listener::Client.

Definition at line 808 of file ovpnagent.cpp.

◆ http_out_eof() [1/2]

bool MyClientInstance::http_out_eof ( )
inlineoverrideprivatevirtual

Reimplemented from openvpn::WS::Server::Listener::Client.

Definition at line 464 of file ovpnagent.cpp.

◆ http_out_eof() [2/2]

bool MyClientInstance::http_out_eof ( )
inlineoverrideprivatevirtual

Reimplemented from openvpn::WS::Server::Listener::Client.

Definition at line 815 of file ovpnagent.cpp.

◆ http_pipeline_peek()

void MyClientInstance::http_pipeline_peek ( BufferAllocated buf)
inlineoverrideprivatevirtual

Reimplemented from openvpn::WS::Server::Listener::Client.

Definition at line 473 of file ovpnagent.cpp.

◆ http_request_received() [1/2]

void MyClientInstance::http_request_received ( )
inlineoverrideprivatevirtual

Reimplemented from openvpn::WS::Server::Listener::Client.

Definition at line 353 of file ovpnagent.cpp.

◆ http_request_received() [2/2]

void MyClientInstance::http_request_received ( )
inlineoverrideprivatevirtual

Reimplemented from openvpn::WS::Server::Listener::Client.

Definition at line 559 of file ovpnagent.cpp.

◆ http_stop() [1/2]

bool MyClientInstance::http_stop ( const int  status,
const std::string &  description 
)
inlineoverrideprivatevirtual

Reimplemented from openvpn::WS::Server::Listener::Client.

Definition at line 491 of file ovpnagent.cpp.

◆ http_stop() [2/2]

bool MyClientInstance::http_stop ( const int  status,
const std::string &  description 
)
inlineoverrideprivatevirtual

Reimplemented from openvpn::WS::Server::Listener::Client.

Definition at line 821 of file ovpnagent.cpp.

◆ parent() [1/2]

MyListener * MyClientInstance::parent ( )
inlineprivate

Definition at line 512 of file ovpnagent.cpp.

Here is the caller graph for this function:

◆ parent() [2/2]

MyListener * MyClientInstance::parent ( )
inlineprivate

Definition at line 865 of file ovpnagent.cpp.

Member Data Documentation

◆ in

BufferList MyClientInstance::in
private

Definition at line 518 of file ovpnagent.cpp.

◆ out

BufferPtr MyClientInstance::out
private

Definition at line 519 of file ovpnagent.cpp.

◆ send_fd

ScopedFD MyClientInstance::send_fd
private

Definition at line 517 of file ovpnagent.cpp.


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