20 #ifndef INCLUDED_OSL_SOCKET_DECL_HXX 21 #define INCLUDED_OSL_SOCKET_DECL_HXX 53 #if defined LIBO_INTERNAL_ONLY 77 inline SocketAddr(const ::rtl::OUString& strAddrOrHostName, sal_Int32 nPort);
88 inline bool is()
const;
109 inline bool SAL_CALL
setHostname(const ::rtl::OUString &sDottedIpOrHostname);
115 inline sal_Int32 SAL_CALL
getPort()
const;
124 inline bool SAL_CALL
setPort(sal_Int32 nPort);
131 inline bool SAL_CALL
setAddr(const ::rtl::ByteSequence & address);
143 #if defined LIBO_INTERNAL_ONLY 177 const ::rtl::OUString & strHostName ,
SocketAddr & Addr );
186 const ::rtl::OUString& strServiceName,
187 const ::rtl::OUString & strProtocolName= ::
rtl::OUString(
"tcp") );
256 inline void SAL_CALL close();
262 inline void SAL_CALL getLocalAddr(
SocketAddr &Addr )
const;
267 inline sal_Int32 SAL_CALL getLocalPort()
const;
272 inline ::rtl::OUString SAL_CALL getLocalHost()
const;
277 inline void SAL_CALL getPeerAddr(
SocketAddr & Addr)
const;
282 inline sal_Int32 SAL_CALL getPeerPort()
const;
287 inline ::rtl::OUString SAL_CALL getPeerHost()
const;
293 inline bool SAL_CALL bind(
const SocketAddr& LocalInterface);
305 inline bool SAL_CALL isRecvReady(
const TimeValue *pTimeout = NULL)
const;
317 inline bool SAL_CALL isSendReady(
const TimeValue *pTimeout = NULL)
const;
332 inline bool SAL_CALL isExceptionPending(
const TimeValue *pTimeout = NULL)
const;
427 inline sal_Int32 SAL_CALL getOption(
430 sal_uInt32 BufferLen,
476 sal_uInt32 BufferLen,
495 inline bool SAL_CALL enableNonBlockingMode(
bool bNonBlockingMode);
500 inline bool SAL_CALL isNonBlockingMode()
const;
505 inline void SAL_CALL clearError()
const;
518 inline ::rtl::OUString getErrorAsString( )
const;
556 inline sal_Int32 SAL_CALL read(
void* pBuffer, sal_uInt32 n);
565 inline sal_Int32 SAL_CALL write(
const void* pBuffer, sal_uInt32 n);
584 inline sal_Int32 SAL_CALL recv(
void* pBuffer,
585 sal_uInt32 BytesToRead,
604 sal_Int32 SAL_CALL send(
const void* pBuffer,
605 sal_uInt32 BytesToSend,
653 inline bool SAL_CALL listen(sal_Int32 MaxPendingConnections= -1);
711 inline sal_Int32 SAL_CALL recvFrom(
void* pBuffer,
712 sal_uInt32 BufferSize,
738 inline sal_Int32 SAL_CALL sendTo(
const SocketAddr& ReceiverAddr,
740 sal_uInt32 BufferSize,
inline ::rtl::OUString getHostname(oslSocketResult *pResult=NULL) const
Converts the address to a (human readable) domain-name.
Definition: socket.hxx:83
SocketAddr & assign(oslSocketAddr Addr, __osl_socket_NoCopy nocopy)
Assigns the socket addr without copyconstructing it.
Definition: socket.hxx:154
Allows to accept socket connections.
Definition: socket_decl.hxx:639
bool setPort(sal_Int32 nPort)
Sets the port number of the address.
Definition: socket.hxx:99
oslSocketAddr getHandle() const
Returns the underlying SocketAddr handle without copyconstructing it.
Definition: socket.hxx:168
Definition: socket_decl.hxx:33
bool setHostname(const ::rtl::OUString &sDottedIpOrHostname)
Sets the IP address or hostname of the SocketAddress.
Definition: socket.hxx:104
bool is() const
Checks if the SocketAddr was created successful.
Definition: socket.hxx:174
oslSocketMsgFlag
Represents flags to be used with send/recv-calls.
Definition: socket.h:131
sal_Int32 getPort() const
Returns the port number of the address.
Definition: socket.hxx:93
oslSocket m_handle
Definition: socket_decl.hxx:194
Definition: socket_decl.hxx:191
bool setAddr(const ::rtl::ByteSequence &address)
Sets the address of the underlying socket address struct in network byte order.
Definition: socket.hxx:111
oslSocketError
Describes the various error socket error conditions, which may occur.
Definition: socket.h:154
struct oslSocketImpl * oslSocket
Definition: socket.h:211
~SocketAddr()
destroys underlying oslSocketAddress
Definition: socket.hxx:76
struct oslSocketAddrImpl * oslSocketAddr
Opaque datatype SocketAddr.
Definition: socket.h:40
Definition: socket_decl.hxx:609
oslSocketAddr m_handle
Definition: socket_decl.hxx:42
The class should be understood as a reference to a socket address handle (struct sockaddr).
Definition: socket_decl.hxx:39
This String class provides base functionality for C++ like Unicode character array handling...
Definition: ustring.hxx:121
inline ::rtl::ByteSequence getAddr(oslSocketResult *pResult=NULL) const
Returns the address of the underlying socket in network byte order.
Definition: socket.hxx:117
Definition: conditn.hxx:36
oslSocketDirection
Used by shutdown to denote which end of the socket to "close".
Definition: socket.h:144
oslProtocol
represent a specific protocol within a address-family
Definition: socket.h:55
bool operator==(oslSocketAddr Addr) const
Returns true if the underlying handle is identical to the Addr handle.
Definition: socket.hxx:163
A connectionless socket to send and receive datagrams.
Definition: socket_decl.hxx:679
__sal_NoAcquire
Definition: types.h:376
Definition: socket_decl.hxx:526
oslSocketOption
Represents socket-options.
Definition: socket.h:85
__osl_socket_NoCopy
Definition: socket_decl.hxx:33
static sal_Int32 getServicePort(const ::rtl::OUString &strServiceName, const ::rtl::OUString &strProtocolName=::rtl::OUString("tcp"))
Tries to find the port associated with the given service/protocol- pair (e.g.
Definition: socket.hxx:194
oslAddrFamily
Represents the address-family of a socket.
Definition: socket.h:45
static void resolveHostname(const ::rtl::OUString &strHostName, SocketAddr &Addr)
Tries to find an address for a host.
Definition: socket.hxx:188
SocketAddr & operator=(oslSocketAddr Addr)
assign the handle to this reference.
Definition: socket.hxx:127
oslSocketOptionLevel
Represents the different socket-option levels.
Definition: socket.h:121
oslSocketResult
Common return codes of socket related functions.
Definition: socket.h:193
SocketAddr()
Creates socket address of unknown type.
Definition: socket.hxx:27
static inline ::rtl::OUString getLocalHostname(oslSocketResult *pResult=NULL)
Get the hostname for the local interface.
Definition: socket.hxx:179
oslSocketType
Represents the type of a socket.
Definition: socket.h:67