eckit::ProxiedTCPClient class

Base classes

class TCPClient

Public static functions

static auto addrToHost(in_addr) -> std::string
static auto hostToAddr(const std::string&) -> in_addr
static auto hostName(const std::string& h, bool full = false) -> std::string
static void register_ignore_sigpipe()

Constructors, destructors, conversion operators

ProxiedTCPClient(const std::string& proxyHost, int proxyPort, int port = 0)
~ProxiedTCPClient() override

Public functions

auto connect(const std::string& host, int port, int retries = 5, int timeout = 0) -> net::TCPSocket& override
auto connect(const net::Endpoint& endpoint, int retries = 5, int timeout = 0) -> TCPSocket& virtual
auto write(const void* buf, long length) const -> long
auto read(void* buf, long length) const -> long
auto rawRead(void*, long) -> long
auto isConnected() const -> bool
auto stillConnected() const -> bool
void close() virtual
auto remoteAddr() const -> in_addr
auto remoteHost() const -> const std::string&
auto remotePort() const -> int
auto localAddr() const -> in_addr
auto localHost() const -> const std::string&
auto localPort() const -> int
void bufferSize(int n)
void receiveBufferSize(int n)
void sendBufferSize(int n)
auto socket() -> int virtual
void closeOutput()
void closeInput()
void debug(bool on)

Public variables

bool on
bool newline
char mode

Private functions

void print(std::ostream& s) const override

Function documentation

static std::string eckit::ProxiedTCPClient::addrToHost(in_addr)

static in_addr eckit::ProxiedTCPClient::hostToAddr(const std::string&)

static std::string eckit::ProxiedTCPClient::hostName(const std::string& h, bool full = false)

static void eckit::ProxiedTCPClient::register_ignore_sigpipe()

long eckit::ProxiedTCPClient::write(const void* buf, long length) const

long eckit::ProxiedTCPClient::read(void* buf, long length) const

Parameters
buf The buffer to read into
length The maximum number of bytes to read

Read from a TCP socket

Configuration flags

  • useSelectOnTCPSocket (bool): use select for improved resilience on flaky connections
  • socketSelectTimeout (long): timeout in seconds for the select (only if useSelectOnTCPSocket is enabled)

long eckit::ProxiedTCPClient::rawRead(void*, long)

bool eckit::ProxiedTCPClient::isConnected() const

bool eckit::ProxiedTCPClient::stillConnected() const

void eckit::ProxiedTCPClient::close() virtual

in_addr eckit::ProxiedTCPClient::remoteAddr() const

const std::string& eckit::ProxiedTCPClient::remoteHost() const

int eckit::ProxiedTCPClient::remotePort() const

in_addr eckit::ProxiedTCPClient::localAddr() const

const std::string& eckit::ProxiedTCPClient::localHost() const

int eckit::ProxiedTCPClient::localPort() const

void eckit::ProxiedTCPClient::bufferSize(int n)

void eckit::ProxiedTCPClient::receiveBufferSize(int n)

void eckit::ProxiedTCPClient::sendBufferSize(int n)

int eckit::ProxiedTCPClient::socket() virtual

void eckit::ProxiedTCPClient::closeOutput()

void eckit::ProxiedTCPClient::closeInput()

void eckit::ProxiedTCPClient::debug(bool on)

Variable documentation

bool eckit::ProxiedTCPClient::on

bool eckit::ProxiedTCPClient::newline

char eckit::ProxiedTCPClient::mode

This website is beyond its original expiry date and the content may be out of date. The site owner has been notified and may choose to extend the expiry date and remove this banner. If you have any questions about this, please visit our support portal.