14#ifndef OPENVPN_TRANSPORT_TCPLINK_H
15#define OPENVPN_TRANSPORT_TCPLINK_H
39template <
typename Protocol,
typename ReadHandler,
bool RAW_MODE_ONLY>
44 typedef std::deque<BufferPtr>
Queue;
58 typename Protocol::socket &socket_arg,
59 const size_t send_queue_max_size_arg,
60 const size_t free_list_max_size_arg,
63 :
Base(read_handler_arg,
65 send_queue_max_size_arg,
66 free_list_max_size_arg,
85 pfp->buf.set_size(bytes_recvd);
void queue_recv(PacketFrom *tcpfrom)
bool process_recv_buffer(BufferAllocated &buf)
void queue_send_buffer(BufferPtr &buf)
TCPLink(ReadHandler read_handler_arg, typename Protocol::socket &socket_arg, const size_t send_queue_max_size_arg, const size_t free_list_max_size_arg, const Frame::Context &frame_context_arg, const SessionStats::Ptr &stats_arg)
virtual void from_app_send_buffer(BufferPtr &buf) override
std::deque< BufferPtr > Queue
LinkCommon< Protocol, ReadHandler, RAW_MODE_ONLY > Base
virtual void recv_buffer(PacketFrom::SPtr &pfp, const size_t bytes_recvd) override
std::unique_ptr< PacketFrom > SPtr
#define OPENVPN_LOG_TCPLINK_VERBOSE(x)