Library: Net
Package: WebSocket
Header: Poco/Net/WebSocketImpl.h
Description
Inheritance
Direct Base Classes: StreamSocketImpl
All Base Classes: SocketImpl, StreamSocketImpl, Poco::RefCountedObject
Member Summary
Member Functions: acceptConnection, available, bind, bind6, close, connect, connectNB, frameFlags, getBlocking, getMaxPayloadSize, getReceiveBufferSize, getReceiveTimeout, getSendBufferSize, getSendTimeout, listen, mustMaskPayload, peekHeader, peekSomeBytes, receiveBytes, receiveFrom, receiveNBytes, receivePayload, receiveSomeBytes, secure, sendBytes, sendTo, sendUrgent, setBlocking, setMaxPayloadSize, setReceiveBufferSize, setReceiveTimeout, setSendBufferSize, setSendTimeout, shutdown, shutdownReceive, shutdownSend, skipHeader
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
Nested Classes
struct ReceiveState  
 
struct SendState  
 
Enumerations
Anonymous  
 
FRAME_FLAG_MASK = 0x80
MAX_HEADER_LENGTH = 14
MASK_LENGTH = 4
Constructors
WebSocketImpl
WebSocketImpl(
    StreamSocketImpl * pStreamSocketImpl,
    HTTPSession & session,
    bool mustMaskPayload
);
Creates a WebSocketImpl.
Destructor
~WebSocketImpl  
   
 
virtual ~WebSocketImpl();
Member Functions
acceptConnection  
 
virtual SocketImpl * acceptConnection(
    SocketAddress & clientAddr
);
available  
 
virtual int available();
See also: Poco::Net::SocketImpl::available()
bind  
 
virtual void bind(
    const SocketAddress & address,
    bool reuseAddress = false
);
See also: Poco::Net::SocketImpl::bind()
bind  
 
virtual void bind(
    const SocketAddress & address,
    bool reuseAddress,
    bool reusePort
);
See also: Poco::Net::SocketImpl::bind()
bind6  
 
virtual void bind6(
    const SocketAddress & address,
    bool reuseAddress = false,
    bool ipV6Only = false
);
See also: Poco::Net::SocketImpl::bind6()
bind6  
 
virtual void bind6(
    const SocketAddress & address,
    bool reuseAddress,
    bool reusePort,
    bool ipV6Only
);
See also: Poco::Net::SocketImpl::bind6()
close  
 
virtual void close();
See also: Poco::Net::SocketImpl::close()
connect  
 
virtual void connect(
    const SocketAddress & address
);
See also: Poco::Net::SocketImpl::connect()
connect  
 
virtual void connect(
    const SocketAddress & address,
    const Poco::Timespan & timeout
);
See also: Poco::Net::SocketImpl::connect()
connectNB  
 
virtual void connectNB(
    const SocketAddress & address
);
See also: Poco::Net::SocketImpl::connectNB()
frameFlags  
 
int frameFlags() const;
Returns the frame flags of the most recently received frame.
getBlocking  
 
virtual bool getBlocking() const;
See also: Poco::Net::SocketImpl::getBlocking()
getMaxPayloadSize  
 
int getMaxPayloadSize() const;
Returns the maximum payload size for receiveFrame().
The default is std::numeric_limits<int>::max().
getReceiveBufferSize  
 
virtual int getReceiveBufferSize();
getReceiveTimeout  
 
virtual Poco::Timespan getReceiveTimeout();
getSendBufferSize  
 
virtual int getSendBufferSize();
getSendTimeout  
 
virtual Poco::Timespan getSendTimeout();
See also: Poco::Net::SocketImpl::getSendTimeout()
listen  
 
virtual void listen(
    int backlog = 64
);
See also: Poco::Net::SocketImpl::listen()
mustMaskPayload  
 
bool mustMaskPayload() const;
Returns true if the payload must be masked.
receiveBytes  
 
virtual int receiveBytes(
    void * buffer,
    int length,
    int flags
);
Receives a WebSocket protocol frame.
See WebSocket::receiveFrame() for more information, including behavior if set to non-blocking.
See also: Poco::Net::SocketImpl::receiveBytes()
receiveBytes  
 
virtual int receiveBytes(
    Poco::Buffer < char > & buffer,
    int flags = 0,
    const Poco::Timespan & span = 0
);
Receives a WebSocket protocol frame.
See WebSocket::receiveFrame() for more information, including behavior if set to non-blocking.
See also: Poco::Net::SocketImpl::receiveBytes()
receiveFrom  
 
virtual int receiveFrom(
    void * buffer,
    int length,
    SocketAddress & address,
    int flags = 0
);
See also: Poco::Net::SocketImpl::receiveFrom()
secure  
 
virtual bool secure() const;
See also: Poco::Net::SocketImpl::secure()
sendBytes  
 
virtual int sendBytes(
    const void * buffer,
    int length,
    int flags
);
Sends a WebSocket protocol frame.
See WebSocket::sendFrame() for more information, including behavior if set to non-blocking.
See also: Poco::Net::StreamSocketImpl::sendBytes()
sendTo  
 
virtual int sendTo(
    const void * buffer,
    int length,
    const SocketAddress & address,
    int flags = 0
);
See also: Poco::Net::SocketImpl::sendTo()
sendUrgent  
 
virtual void sendUrgent(
    unsigned char data
);
See also: Poco::Net::SocketImpl::sendUrgent()
setBlocking  
 
virtual void setBlocking(
    bool flag
);
See also: Poco::Net::SocketImpl::setBlocking()
setMaxPayloadSize
void setMaxPayloadSize(
    int maxPayloadSize
);
Sets the maximum payload size for receiveFrame().
The default is std::numeric_limits<int>::max().
setReceiveBufferSize  
 
virtual void setReceiveBufferSize(
    int size
);
setReceiveTimeout  
 
virtual void setReceiveTimeout(
    const Poco::Timespan & timeout
);
setSendBufferSize  
 
virtual void setSendBufferSize(
    int size
);
setSendTimeout  
 
virtual void setSendTimeout(
    const Poco::Timespan & timeout
);
See also: Poco::Net::SocketImpl::setSendTimeout()
shutdown  
 
virtual int shutdown();
See also: Poco::Net::SocketImpl::shutdown()
shutdownReceive  
 
virtual void shutdownReceive();
See also: Poco::Net::SocketImpl::shutdownReceive()
shutdownSend  
 
virtual int shutdownSend();
See also: Poco::Net::SocketImpl::shutdownSend()
peekHeader  
 
int peekHeader(
    ReceiveState & receiveState
);
peekSomeBytes  
 
int peekSomeBytes(
    char * buffer,
    int length
);
receiveNBytes  
 
int receiveNBytes(
    void * buffer,
    int length
);
receivePayload  
 
int receivePayload(
    char * buffer,
    int payloadLength,
    char mask[MASK_LENGTH],
    bool useMask,
    int maskOffset
);
receiveSomeBytes  
 
int receiveSomeBytes(
    char * buffer,
    int length
);
skipHeader  
 
void skipHeader(
    int headerLength
);
