LibreOffice
LibreOffice 24.2 SDK C/C++ API Reference
Public Member Functions | List of all members
osl::ConnectorSocket Class Reference

#include <socket_decl.hxx>

Inheritance diagram for osl::ConnectorSocket:
osl::StreamSocket osl::Socket

Public Member Functions

 ConnectorSocket (oslAddrFamily Family=osl_Socket_FamilyInet, oslProtocol Protocol=osl_Socket_ProtocolIp, oslSocketType Type=osl_Socket_TypeStream)
 Creates a socket that can connect to a (remote) host. More...
 
oslSocketResult connect (const SocketAddr &TargetHost, const TimeValue *pTimeout=NULL)
 Connects the socket to a (remote) host. More...
 
- Public Member Functions inherited from osl::StreamSocket
 StreamSocket (oslAddrFamily Family=osl_Socket_FamilyInet, oslProtocol Protocol=osl_Socket_ProtocolIp, oslSocketType Type=osl_Socket_TypeStream)
 Creates a socket. More...
 
 StreamSocket (oslSocket Socket, __sal_NoAcquire noacquire)
 
 StreamSocket (oslSocket Socket)
 
sal_Int32 read (void *pBuffer, sal_uInt32 n)
 Retrieves n bytes from the stream and copies them into pBuffer. More...
 
sal_Int32 write (const void *pBuffer, sal_uInt32 n)
 Writes n bytes from pBuffer to the stream. More...
 
sal_Int32 recv (void *pBuffer, sal_uInt32 BytesToRead, oslSocketMsgFlag flags=osl_Socket_MsgNormal)
 Tries to receive BytesToRead data from the connected socket,. More...
 
sal_Int32 send (const void *pBuffer, sal_uInt32 BytesToSend, oslSocketMsgFlag=osl_Socket_MsgNormal)
 Tries to send BytesToSend data to the connected socket. More...
 
- Public Member Functions inherited from osl::Socket
 Socket ()
 
 Socket (const Socket &socket)
 
 Socket (oslSocket socketHandle)
 
 Socket (oslSocket socketHandle, __sal_NoAcquire noacquire)
 The instance takes over the handle's ownership without acquiring the handle, but releases it within the dtor. More...
 
 ~Socket ()
 Destructor. More...
 
Socketoperator= (oslSocket socketHandle)
 Assignment operator. More...
 
Socketoperator= (const Socket &sock)
 Assignment operator. More...
 
bool operator== (const Socket &rSocket) const
 
bool operator== (const oslSocket socketHandle) const
 
void shutdown (oslSocketDirection Direction=osl_Socket_DirReadWrite)
 Closes a definite or both directions of the bidirectional stream. More...
 
void close ()
 Closes a socket. More...
 
void getLocalAddr (SocketAddr &Addr) const
 Retrieves the address of the local interface of this socket. More...
 
sal_Int32 getLocalPort () const
 Get the local port of the socket. More...
 
inline ::rtl::OUString getLocalHost () const
 Get the hostname for the local interface. More...
 
void getPeerAddr (SocketAddr &Addr) const
 Retrieves the address of the remote host of this socket. More...
 
sal_Int32 getPeerPort () const
 Get the remote port of the socket. More...
 
inline ::rtl::OUString getPeerHost () const
 Get the hostname for the remote interface. More...
 
bool bind (const SocketAddr &LocalInterface)
 Binds the socket to the specified (local) interface. More...
 
bool isRecvReady (const TimeValue *pTimeout=NULL) const
 Checks if read operations will block. More...
 
bool isSendReady (const TimeValue *pTimeout=NULL) const
 Checks if send operations will block. More...
 
bool isExceptionPending (const TimeValue *pTimeout=NULL) const
 Checks if a request for out-of-band data will block. More...
 
oslSocketType getType () const
 Queries the socket for its type. More...
 
sal_Int32 getOption (oslSocketOption Option, void *pBuffer, sal_uInt32 BufferLen, oslSocketOptionLevel Level=osl_Socket_LevelSocket) const
 Retrieves option-attributes associated with the socket. More...
 
bool setOption (oslSocketOption Option, void *pBuffer, sal_uInt32 BufferLen, oslSocketOptionLevel Level=osl_Socket_LevelSocket) const
 Sets the sockets attributes. More...
 
bool setOption (oslSocketOption option, sal_Int32 nValue)
 Convenience function for setting sal_Bool and sal_Int32 option values. More...
 
sal_Int32 getOption (oslSocketOption option) const
 Convenience function for retrieving sal_Bool and sal_Int32 option values. More...
 
bool enableNonBlockingMode (bool bNonBlockingMode)
 Enables/disables non-blocking mode of the socket. More...
 
bool isNonBlockingMode () const
 Query blocking mode of the socket. More...
 
void clearError () const
 clears the error status More...
 
oslSocketError getError () const
 returns a constant describing the last error for the socket system. More...
 
inline ::rtl::OUString getErrorAsString () const
 Builds a string with the last error-message for the socket. More...
 
oslSocket getHandle () const
 Returns the underlying handle unacquired (The caller must acquire it to keep it). More...
 

Additional Inherited Members

- Protected Member Functions inherited from osl::Socket
 Socket (oslSocketType Type, oslAddrFamily Family=osl_Socket_FamilyInet, oslProtocol Protocol=osl_Socket_ProtocolIp)
 Creates a socket. More...
 
- Protected Attributes inherited from osl::Socket
oslSocket m_handle
 

Constructor & Destructor Documentation

◆ ConnectorSocket()

osl::ConnectorSocket::ConnectorSocket ( oslAddrFamily  Family = osl_Socket_FamilyInet,
oslProtocol  Protocol = osl_Socket_ProtocolIp,
oslSocketType  Type = osl_Socket_TypeStream 
)
inline

Creates a socket that can connect to a (remote) host.

Parameters
Familythe Family of the socket (Inet by default)
Protocolthe Protocon of the socket (IP by default)
TypeFor some protocols it might be desirable to use a different type than sock_stream osl_Socket_TypeSeqPacket (like osl_Socket_TypeSeqPacket). Therefore we do not hide this parameter here.

Member Function Documentation

◆ connect()

oslSocketResult osl::ConnectorSocket::connect ( const SocketAddr TargetHost,
const TimeValue pTimeout = NULL 
)
inline

Connects the socket to a (remote) host.

Parameters
TargetHostThe address of the target.
pTimeoutThe timeout for blocking. If 0, a default system dependent timeout us used.
Returns
osl_Socket_Ok if connected successfully, osl_Socket_TimedOut on timeout, osl_Socket_Interrupted if unblocked forcefully (by osl::Socket::close()), osl_Socket_Error if connect failed.

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