Class Poco::Net::SecureServerSocketImpl (original) (raw)
Library: NetSSL_OpenSSL
Package: SSLSockets
Header: Poco/Net/SecureServerSocketImpl.h
Description
Inheritance
Direct Base Classes: ServerSocketImpl
All Base Classes: ServerSocketImpl, SocketImpl, Poco::RefCountedObject
Member Summary
Member Functions: acceptConnection, bind, bind6, close, connect, connectNB, context, listen, receiveBytes, receiveFrom, secure, sendBytes, sendTo, sendUrgent
Inherited Functions: acceptConnection, address, available, bind, bind6, checkBrokenTimeout, close, connect, connectNB, duplicate, error, fcntl, getBlocking, getBroadcast, getError, getKeepAlive, getLinger, getNoDelay, getOOBInline, getOption, getRawOption, getReceiveBufferSize, getReceiveTimeout, getReuseAddress, getReusePort, getSendBufferSize, getSendTimeout, init, initSocket, initialized, ioctl, lastError, listen, peerAddress, poll, receiveBytes, receiveFrom, referenceCount, release, reset, secure, sendBytes, sendFile, sendFileBlockwise, sendFileNative, sendTo, sendUrgent, setBlocking, setBroadcast, setKeepAlive, setLinger, setNoDelay, setOOBInline, setOption, setRawOption, setReceiveBufferSize, setReceiveTimeout, setReuseAddress, setReusePort, setSendBufferSize, setSendTimeout, shutdown, shutdownReceive, shutdownSend, socketError, sockfd, type, useFileDescriptor
Constructors
SecureServerSocketImpl
SecureServerSocketImpl(
Context::Ptr pContext
);
Destructor
~SecureServerSocketImpl

Member Functions
acceptConnection 
SocketImpl * acceptConnection(
SocketAddress & clientAddr
);
Get the next completed connection from the socket's completed connection queue.
If the queue is empty, waits until a connection request completes.
Returns a new TCP socket for the connection with the client.
The client socket's address is returned in clientAddr.
bind 
void bind(
const SocketAddress & address,
bool reuseAddress = false
);
Bind a local address to the socket.
This is usually only done when establishing a server socket. TCP clients should not bind a socket to a specific address.
If reuseAddress is true, sets the SO_REUSEADDR socket option.
bind 
void bind(
const SocketAddress & address,
bool reuseAddress,
bool reusePort
);
Bind a local address to the socket.
This is usually only done when establishing a server socket. TCP clients should not bind a socket to a specific address.
If reuseAddress is true, sets the SO_REUSEADDR socket option.
If reusePort is true, sets the SO_REUSEPORT socket option.
bind6 
void bind6(
const SocketAddress & address,
bool reuseAddress = false,
bool ipV6Only = false
);
Bind a local IPv6 address to the socket.
This is usually only done when establishing a server socket. TCP clients should not bind a socket to a specific address.
If reuseAddress is true, sets the SO_REUSEADDR socket option.
The given address must be an IPv6 address. The IPPROTO_IPV6/IPV6_V6ONLY option is set on the socket according to the ipV6Only parameter.
If the library has not been built with IPv6 support, a Poco::NotImplementedException will be thrown.
bind6 
void bind6(
const SocketAddress & address,
bool reuseAddress,
bool reusePort,
bool ipV6Only
);
Bind a local IPv6 address to the socket.
This is usually only done when establishing a server socket. TCP clients should not bind a socket to a specific address.
If reuseAddress is true, sets the SO_REUSEADDR socket option.
If reusePort is true, sets the SO_REUSEPORT socket option.
The given address must be an IPv6 address. The IPPROTO_IPV6/IPV6_V6ONLY option is set on the socket according to the ipV6Only parameter.
If the library has not been built with IPv6 support, a Poco::NotImplementedException will be thrown.
close 
void close();
Close the socket.
connect 
void connect(
const SocketAddress & address
);
connect 
void connect(
const SocketAddress & address,
const Poco::Timespan & timeout
);
connectNB 
void connectNB(
const SocketAddress & address
);
context 
Context::Ptr context() const;
Returns the SSL context used by this socket.
listen 
void listen(
int backlog = 64
);
Puts the socket into listening state.
The socket becomes a passive socket that can accept incoming connection requests.
The backlog argument specifies the maximum number of connections that can be queued for this socket.
receiveBytes 
int receiveBytes(
void * buffer,
int length,
int flags = 0
);
receiveFrom 
int receiveFrom(
void * buffer,
int length,
SocketAddress & address,
int flags = 0
);
secure 
bool secure() const;
Returns true iff the socket's connection is secure (using SSL or TLS).
sendBytes 
int sendBytes(
const void * buffer,
int length,
int flags = 0
);
sendTo 
int sendTo(
const void * buffer,
int length,
const SocketAddress & address,
int flags = 0
);
sendUrgent 
void sendUrgent(
unsigned char data
);