llarp::TCPConnection

Inherits from std::enable_shared_from_this< TCPConnection >

Public Types

Name
using std::function< void(std::optional< OwnedBuffer >, std::error_code)> RecvHandler
using std::function< void(std::error_code)> SendCompletionHandler

Public Functions

Name
virtual ~TCPConnection() =default
virtual void Send(OwnedBuffer buffer, SendCompletionHandler completionHandler =nullptr) =0
virtual void Close() =0
virtual SockAddr LocalAddr() const =0
virtual SockAddr RemoteAddr() const =0
virtual int Bind(SockAddr laddr) =0
virtual bool Start() =0
void SetRecvHandler(RecvHandler h)

Protected Functions

Name
TCPConnection(RecvHandler recvHandler, TCPConnectionPool & pool)
void Untrack()

Protected Attributes

Name
RecvHandler m_RecvHandler
TCPConnectionPool & m_Pool

Public Types Documentation

using RecvHandler

using llarp::TCPConnection::RecvHandler =  std::function<void(std::optional<OwnedBuffer>, std::error_code)>;

using SendCompletionHandler

using llarp::TCPConnection::SendCompletionHandler =  std::function<void(std::error_code)>;

Public Functions Documentation

function ~TCPConnection

virtual ~TCPConnection() =default

function Send

virtual void Send(
    OwnedBuffer buffer,
    SendCompletionHandler completionHandler =nullptr
) =0

function Close

virtual void Close() =0

function LocalAddr

virtual SockAddr LocalAddr() const =0

function RemoteAddr

virtual SockAddr RemoteAddr() const =0

function Bind

virtual int Bind(
    SockAddr laddr
) =0

function Start

virtual bool Start() =0

function SetRecvHandler

void SetRecvHandler(
    RecvHandler h
)

Protected Functions Documentation

function TCPConnection

TCPConnection(
    RecvHandler recvHandler,
    TCPConnectionPool & pool
)

function Untrack

void Untrack()

Protected Attributes Documentation

variable m_RecvHandler

RecvHandler m_RecvHandler;

variable m_Pool

TCPConnectionPool & m_Pool;

Updated on 2026-04-01 at 23:35:39 +0000