OpenVPN 3 Core Library
Loading...
Searching...
No Matches
openvpn::AsioPolySock::TCP Struct Reference

#include <asiopolysock.hpp>

Inheritance diagram for openvpn::AsioPolySock::TCP:
[legend]
Collaboration diagram for openvpn::AsioPolySock::TCP:
[legend]

Public Types

typedef RCPtr< TCPPtr
 
- Public Types inherited from openvpn::AsioPolySock::Base
typedef RCPtr< BasePtr
 
- Public Types inherited from openvpn::RC< thread_unsafe_refcount >
typedef RCPtr< RCPtr
 

Public Member Functions

 TCP (openvpn_io::io_context &io_context, const size_t index)
 
void async_send (const openvpn_io::const_buffer &buf, Function< void(const openvpn_io::error_code &, const size_t)> &&callback) override
 
void async_receive (const openvpn_io::mutable_buffer &buf, Function< void(const openvpn_io::error_code &, const size_t)> &&callback) override
 
std::string remote_endpoint_str () const override
 
bool remote_ip_port (IP::Addr &addr, unsigned int &port) const override
 
void non_blocking (const bool state) override
 
void tcp_nodelay () override
 
void set_cloexec () override
 
void shutdown (const unsigned int flags) override
 
void close () override
 
bool is_open () const override
 
bool is_local () const override
 
openvpn_io::detail::socket_type native_handle () override
 
- Public Member Functions inherited from openvpn::AsioPolySock::Base
size_t index () const
 
- Public Member Functions inherited from openvpn::RC< thread_unsafe_refcount >
 RC () noexcept=default
 
 RC (const RC &)=delete
 
virtual ~RC ()=default
 
RCoperator= (const RC &)=delete
 
olong use_count () const noexcept
 Delegates call to RCImpl and returns the result.
 

Public Attributes

openvpn_io::ip::tcp::socket socket
 

Additional Inherited Members

- Static Public Member Functions inherited from openvpn::RC< thread_unsafe_refcount >
static constexpr bool is_thread_safe ()
 Delegates call to RCImpl and returns the result.
 
- Protected Member Functions inherited from openvpn::AsioPolySock::Base
 Base (const size_t index)
 

Detailed Description

Definition at line 113 of file asiopolysock.hpp.

Member Typedef Documentation

◆ Ptr

Definition at line 115 of file asiopolysock.hpp.

Constructor & Destructor Documentation

◆ TCP()

openvpn::AsioPolySock::TCP::TCP ( openvpn_io::io_context &  io_context,
const size_t  index 
)
inline

Definition at line 117 of file asiopolysock.hpp.

Member Function Documentation

◆ async_receive()

void openvpn::AsioPolySock::TCP::async_receive ( const openvpn_io::mutable_buffer &  buf,
Function< void(const openvpn_io::error_code &, const size_t)> &&  callback 
)
inlineoverridevirtual

Implements openvpn::AsioPolySock::Base.

Definition at line 130 of file asiopolysock.hpp.

◆ async_send()

void openvpn::AsioPolySock::TCP::async_send ( const openvpn_io::const_buffer &  buf,
Function< void(const openvpn_io::error_code &, const size_t)> &&  callback 
)
inlineoverridevirtual

Implements openvpn::AsioPolySock::Base.

Definition at line 124 of file asiopolysock.hpp.

◆ close()

void openvpn::AsioPolySock::TCP::close ( )
inlineoverridevirtual

Implements openvpn::AsioPolySock::Base.

Definition at line 191 of file asiopolysock.hpp.

◆ is_local()

bool openvpn::AsioPolySock::TCP::is_local ( ) const
inlineoverridevirtual

Implements openvpn::AsioPolySock::Base.

Definition at line 201 of file asiopolysock.hpp.

◆ is_open()

bool openvpn::AsioPolySock::TCP::is_open ( ) const
inlineoverridevirtual

Implements openvpn::AsioPolySock::Base.

Definition at line 196 of file asiopolysock.hpp.

◆ native_handle()

openvpn_io::detail::socket_type openvpn::AsioPolySock::TCP::native_handle ( )
inlineoverridevirtual

Reimplemented from openvpn::AsioPolySock::Base.

Definition at line 206 of file asiopolysock.hpp.

◆ non_blocking()

void openvpn::AsioPolySock::TCP::non_blocking ( const bool  state)
inlineoverridevirtual

Implements openvpn::AsioPolySock::Base.

Definition at line 164 of file asiopolysock.hpp.

◆ remote_endpoint_str()

std::string openvpn::AsioPolySock::TCP::remote_endpoint_str ( ) const
inlineoverridevirtual

Implements openvpn::AsioPolySock::Base.

Definition at line 137 of file asiopolysock.hpp.

Here is the caller graph for this function:

◆ remote_ip_port()

bool openvpn::AsioPolySock::TCP::remote_ip_port ( IP::Addr addr,
unsigned int &  port 
) const
inlineoverridevirtual

Implements openvpn::AsioPolySock::Base.

Definition at line 150 of file asiopolysock.hpp.

◆ set_cloexec()

void openvpn::AsioPolySock::TCP::set_cloexec ( )
inlineoverridevirtual

Reimplemented from openvpn::AsioPolySock::Base.

Definition at line 175 of file asiopolysock.hpp.

◆ shutdown()

void openvpn::AsioPolySock::TCP::shutdown ( const unsigned int  flags)
inlineoverridevirtual

Reimplemented from openvpn::AsioPolySock::Base.

Definition at line 183 of file asiopolysock.hpp.

◆ tcp_nodelay()

void openvpn::AsioPolySock::TCP::tcp_nodelay ( )
inlineoverridevirtual

Reimplemented from openvpn::AsioPolySock::Base.

Definition at line 169 of file asiopolysock.hpp.

Member Data Documentation

◆ socket

openvpn_io::ip::tcp::socket openvpn::AsioPolySock::TCP::socket

Definition at line 227 of file asiopolysock.hpp.


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