CCF
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
quic::QUICEchoSession Class Reference

#include <quic_session.h>

Inherits quic::QUICSession.

Public Member Functions

 QUICEchoSession (std::shared_ptr< ccf::RPCMap > rpc_map, int64_t session_id, const ccf::ListenInterfaceID &interface_id, ringbuffer::AbstractWriterFactory &writer_factory)
 
void send_data (std::span< const uint8_t > data) override
 
void handle_incoming_data (std::span< const uint8_t > data) override
 
void recv_ (const uint8_t *data_, size_t size_, sockaddr addr_)
 
- Public Member Functions inherited from quic::QUICSession
 QUICSession (int64_t session_id_, ringbuffer::AbstractWriterFactory &writer_factory_)
 
 ~QUICSession ()
 
std::string hostname ()
 
std::vector< uint8_t > peer_cert ()
 
size_t read (uint8_t *data, size_t size, sockaddr addr, bool exact=false)
 
void recv_buffered (const uint8_t *data, size_t size, sockaddr addr)
 
void send_raw (const uint8_t *data, size_t size, sockaddr addr)
 
void send_raw_thread (const std::vector< uint8_t > &data, sockaddr addr)
 
void send_buffered (const std::vector< uint8_t > &data, sockaddr addr)
 
void flush ()
 
void close_session () override
 
void close_thread ()
 
- Public Member Functions inherited from ccf::Session
virtual ~Session ()=default
 

Static Public Member Functions

static void recv_cb (std::unique_ptr< threading::Tmsg< SendRecvMsg > > msg)
 
- Static Public Member Functions inherited from quic::QUICSession
static void send_raw_cb (std::unique_ptr< threading::Tmsg< SendRecvMsg > > msg)
 
static void close_cb (std::unique_ptr< threading::Tmsg< EmptyMsg > > msg)
 

Additional Inherited Members

- Protected Types inherited from quic::QUICSession
enum  Status {
  handshake , ready , closed , authfail ,
  error
}
 
using PendingBuffer = PendingIO< uint8_t >
 
using PendingList = std::vector< PendingBuffer >
 
- Protected Member Functions inherited from quic::QUICSession
Status get_status () const
 
- Protected Attributes inherited from quic::QUICSession
ringbuffer::WriterPtr to_host
 
ccf::tls::ConnID session_id
 
size_t execution_thread
 
PendingList pending_writes
 
PendingList pending_reads
 

Constructor & Destructor Documentation

◆ QUICEchoSession()

quic::QUICEchoSession::QUICEchoSession ( std::shared_ptr< ccf::RPCMap rpc_map,
int64_t  session_id,
const ccf::ListenInterfaceID interface_id,
ringbuffer::AbstractWriterFactory writer_factory 
)
inline

Member Function Documentation

◆ handle_incoming_data()

void quic::QUICEchoSession::handle_incoming_data ( std::span< const uint8_t >  data)
inlineoverridevirtual

Implements ccf::Session.

◆ recv_()

void quic::QUICEchoSession::recv_ ( const uint8_t *  data_,
size_t  size_,
sockaddr  addr_ 
)
inline

◆ recv_cb()

static void quic::QUICEchoSession::recv_cb ( std::unique_ptr< threading::Tmsg< SendRecvMsg > >  msg)
inlinestatic

◆ send_data()

void quic::QUICEchoSession::send_data ( std::span< const uint8_t >  data)
inlineoverridevirtual

Implements ccf::Session.


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