<html> <head> <title>Methods of Class Socket</title> <link rel="stylesheet" type="text/css" href="../../../cpp.css"> </head> <body> <div id="adc-cppref"> <a name="_top_"> </a><table class="navimain" border="0" cellpadding="1" cellspacing="0"> <tr align="center" valign="top"> <td class="navimain"> <a href="../../../index.html">Overview</a> </td> <td class="navimain"> <a href="../index.html">Namespace</a> </td> <td class="navimain"> <a href="../c-Socket.html">Class</a> </td> <td class="navimain"> <a href="../../../index-files/index-1.html">Index</a> </td> <td class="navimain"> <a href="../../../help.html">Help</a> </td> </tr> </table> <table class="navisub" cellpadding="0" cellspacing="3"></table> <hr> <div class="title"><h2>Methods of Class Socket</h2> </div><hr> <dl class="member"> <dt class="member"><a name="Socket-166"> </a>Socket</dt> <dd class="member"><dl> <dt class="simple"> <strong>Socket</strong>(</dt> <dd><table class="param-table"> <tr> <td><a href="../../t-oslSocketType.html">oslSocketType</a> </td> <td> Type,</td> </tr> <tr> <td><a href="../../t-oslAddrFamily.html">oslAddrFamily</a></td> <td>Family = osl_Socket_FamilyInet,</td> </tr> <tr> <td><a href="../../t-oslProtocol.html">oslProtocol</a></td> <td>Protocol = osl_Socket_ProtocolIp );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Creates a socket. Note it's protected. </dd> <dt>Parameters</dt> <dd><table border="0" width="100%" cellpadding="3" cellspacing="0" class="expl-table"> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">Type</td> <td><pre/></td> </tr> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">Family</td> <td><pre/></td> </tr> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">Protocol</td> <td><pre/></td> </tr> </table> </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="Socket-167"> </a>Socket</dt> <dd class="member"><dl> <dt class="simple"> <strong>Socket</strong>();</dt> <dd><table class="param-table"></table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"/></dl> <hr> <dl class="member"> <dt class="member"><a name="Socket-168"> </a>Socket</dt> <dd class="member"><dl> <dt class="simple"> <strong>Socket</strong>(</dt> <dd><table class="param-table"> <tr> <td>const <a href="../../osl/c-Socket.html">Socket</a> & </td> <td> socket );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"/></dl> <hr> <dl class="member"> <dt class="member"><a name="Socket-169"> </a>Socket</dt> <dd class="member"><dl> <dt class="simple"> <strong>Socket</strong>(</dt> <dd><table class="param-table"> <tr> <td><a href="../../t-oslSocket.html">oslSocket</a> </td> <td> socketHandle );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"/></dl> <hr> <dl class="member"> <dt class="member"><a name="Socket-170"> </a>Socket</dt> <dd class="member"><dl> <dt class="simple"> <strong>Socket</strong>(</dt> <dd><table class="param-table"> <tr> <td><a href="../../t-oslSocket.html">oslSocket</a> </td> <td> socketHandle,</td> </tr> <tr> <td><a href="../../e-__sal_NoAcquire.html">__sal_NoAcquire</a></td> <td>noacquire );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>The instance takes over the handle's ownership without acquiring the handle, but releases it within the dtor. </dd> <dt>Parameters</dt> <dd><table border="0" width="100%" cellpadding="3" cellspacing="0" class="expl-table"> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">noacquire</td> <td><pre>use SAL_NO_ACQUIRE </pre></td> </tr> </table> </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="~Socket-171"> </a>~Socket</dt> <dd class="member"><dl> <dt class="simple"> <strong>~Socket</strong>();</dt> <dd><table class="param-table"></table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Destructor. Releases the underlying handle </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="operator=-172"> </a>operator=</dt> <dd class="member"><dl> <dt class="simple"><a href="../../osl/c-Socket.html">Socket</a> & <strong>operator=</strong>(</dt> <dd><table class="param-table"> <tr> <td><a href="../../t-oslSocket.html">oslSocket</a> </td> <td> socketHandle );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Assignment operator. If socket was already created, the old one will be discarded. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="operator=-173"> </a>operator=</dt> <dd class="member"><dl> <dt class="simple"><a href="../../osl/c-Socket.html">Socket</a> & <strong>operator=</strong>(</dt> <dd><table class="param-table"> <tr> <td>const <a href="../../osl/c-Socket.html">Socket</a> & </td> <td> sock );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Assignment operator. If socket was already created, the old one will be discarded. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="operator==-174"> </a>operator==</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-sal_Bool.html">sal_Bool</a> <strong>operator==</strong>(</dt> <dd><table class="param-table"> <tr> <td>const <a href="../../osl/c-Socket.html">Socket</a> & </td> <td> rSocket ) const;</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Return</dt> <dd><code>sal_True</code>, when the underlying handle of both Socket instances are identical, <code>sal_False</code> otherwise. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="operator==-175"> </a>operator==</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-sal_Bool.html">sal_Bool</a> <strong>operator==</strong>(</dt> <dd><table class="param-table"> <tr> <td>const <a href="../../t-oslSocket.html">oslSocket</a> </td> <td> socketHandle ) const;</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Return</dt> <dd><code>sal_True</code>, when the underlying handle of both Socket instances are identical, <code>sal_False</code> otherwise. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="shutdown-176"> </a>shutdown</dt> <dd class="member"><dl> <dt class="simple">void <strong>shutdown</strong>(</dt> <dd><table class="param-table"> <tr> <td><a href="../../t-oslSocketDirection.html">oslSocketDirection</a> </td> <td> Direction = osl_Socket_DirReadWrite );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Closes a definite or both directions of the bidirectional stream. </dd> <dt>Parameters</dt> <dd><table border="0" width="100%" cellpadding="3" cellspacing="0" class="expl-table"> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">Direction</td> <td><pre/></td> </tr> </table> </dd> <dt>See Also</dt> <dd><a href="../../o-socket.h.html#osl_shutdownSocket-1041">osl_shutdownSocket()</a> <br> </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="close-177"> </a>close</dt> <dd class="member"><dl> <dt class="simple">void <strong>close</strong>();</dt> <dd><table class="param-table"></table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Description</dt> <dd>Closes a socket. Note that closing a socket is identical to shutdown( osl_Socket_DirReadWrite ), as the operating system distinguish both cases, both functions or offered in this API. </dd> <dt>See Also</dt> <dd><a href="../../o-socket.h.html#osl_closeSocket-1057">osl_closeSocket()</a> <br> </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="getLocalAddr-178"> </a>getLocalAddr</dt> <dd class="member"><dl> <dt class="simple">void <strong>getLocalAddr</strong>(</dt> <dd><table class="param-table"> <tr> <td><a href="../../osl/c-SocketAddr.html">SocketAddr</a> & </td> <td> Addr ) const;</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Retrieves the address of the local interface of this socket. </dd> <dt>Parameters</dt> <dd><table border="0" width="100%" cellpadding="3" cellspacing="0" class="expl-table"> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">Addr</td> <td><pre>receives the address. </pre></td> </tr> </table> </dd> <dt>See Also</dt> <dd><a href="../../o-socket.h.html#osl_getLocalAddrOfSocket-1028">osl_getLocalAddrOfSocket()</a> <br> </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="getLocalPort-179"> </a>getLocalPort</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-sal_Int32.html">sal_Int32</a> <strong>getLocalPort</strong>();</dt> <dd><table class="param-table"></table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Get the local port of the socket. Usually used after bind(). </dd> <dt>Return</dt> <dd>the port number or OSL_INVALID_PORT on errors. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="getLocalHost-180"> </a>getLocalHost</dt> <dd class="member"><dl> <dt class="simple">::rtl::<a href="../../rtl/c-OUString.html">OUString</a> <strong>getLocalHost</strong>();</dt> <dd><table class="param-table"></table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Get the hostname for the local interface. </dd> <dt>Return</dt> <dd>the hostname or an empty string (""). </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="getPeerAddr-181"> </a>getPeerAddr</dt> <dd class="member"><dl> <dt class="simple">void <strong>getPeerAddr</strong>(</dt> <dd><table class="param-table"> <tr> <td><a href="../../osl/c-SocketAddr.html">SocketAddr</a> & </td> <td> Addr ) const;</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Retrieves the address of the remote host of this socket. </dd> <dt>Parameters</dt> <dd><table border="0" width="100%" cellpadding="3" cellspacing="0" class="expl-table"> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">Addr</td> <td><pre>receives the address. </pre></td> </tr> </table> </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="getPeerPort-182"> </a>getPeerPort</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-sal_Int32.html">sal_Int32</a> <strong>getPeerPort</strong>();</dt> <dd><table class="param-table"></table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Get the remote port of the socket. </dd> <dt>Return</dt> <dd>the port number or OSL_INVALID_PORT on errors. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="getPeerHost-183"> </a>getPeerHost</dt> <dd class="member"><dl> <dt class="simple">::rtl::<a href="../../rtl/c-OUString.html">OUString</a> <strong>getPeerHost</strong>();</dt> <dd><table class="param-table"></table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Get the hostname for the remote interface. </dd> <dt>Return</dt> <dd>the hostname or an empty string (""). </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="bind-184"> </a>bind</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-sal_Bool.html">sal_Bool</a> <strong>bind</strong>(</dt> <dd><table class="param-table"> <tr> <td>const <a href="../../osl/c-SocketAddr.html">SocketAddr</a> & </td> <td> LocalInterface );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Binds the socket to the specified (local) interface. </dd> <dt>Parameters</dt> <dd><table border="0" width="100%" cellpadding="3" cellspacing="0" class="expl-table"> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">LocalInterface</td> <td><pre>Address of the Interface </pre></td> </tr> </table> </dd> <dt>Return</dt> <dd>True if bind was successful. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="isRecvReady-185"> </a>isRecvReady</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-sal_Bool.html">sal_Bool</a> <strong>isRecvReady</strong>(</dt> <dd><table class="param-table"> <tr> <td>const <a href="../../t-TimeValue.html">TimeValue</a> * </td> <td> pTimeout = 0 ) const;</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Checks if read operations will block. </dd> <dt>Description</dt> <dd>You can specify a timeout-value in seconds/nanoseconds that denotes how the operation will block if the Socket is not ready. </dd> <dt>Return</dt> <dd><code>sal_True</code> if read operations (recv, recvFrom, accept) on the Socket will NOT block; <code>sal_False</code> if it would block or if an error occured. </dd> <dt>Parameters</dt> <dd><table border="0" width="100%" cellpadding="3" cellspacing="0" class="expl-table"> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">pTimeout</td> <td><pre>if 0, the operation will block without a timeout. Otherwise the specified amout of time. </pre></td> </tr> </table> </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="isSendReady-186"> </a>isSendReady</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-sal_Bool.html">sal_Bool</a> <strong>isSendReady</strong>(</dt> <dd><table class="param-table"> <tr> <td>const <a href="../../t-TimeValue.html">TimeValue</a> * </td> <td> pTimeout = 0 ) const;</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Checks if send operations will block. </dd> <dt>Description</dt> <dd>You can specify a timeout-value in seconds/nanoseconds that denotes how the operation will block if the Socket is not ready. </dd> <dt>Return</dt> <dd><code>sal_True</code> if send operations (send, sendTo) on the Socket will NOT block; <code>sal_False</code> if it would block or if an error occured. </dd> <dt>Parameters</dt> <dd><table border="0" width="100%" cellpadding="3" cellspacing="0" class="expl-table"> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">pTimeout</td> <td><pre>if 0, the operation will block without a timeout. Otherwise the specified amout of time. </pre></td> </tr> </table> </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="isExceptionPending-187"> </a>isExceptionPending</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-sal_Bool.html">sal_Bool</a> <strong>isExceptionPending</strong>(</dt> <dd><table class="param-table"> <tr> <td>const <a href="../../t-TimeValue.html">TimeValue</a> * </td> <td> pTimeout = 0 ) const;</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Checks if a request for out-of-band data will block. </dd> <dt>Description</dt> <dd>You can specify a timeout-value in seconds/nanoseconds that denotes how the operation will block if the Socket has no pending OOB data. </dd> <dt>Return</dt> <dd><code>sal_True</code> if OOB-request operations (recv with appropriate flags) on the Socket will NOT block; <code>sal_False</code> if it would block or if an error occured. </dd> <dt>Parameters</dt> <dd><table border="0" width="100%" cellpadding="3" cellspacing="0" class="expl-table"> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">pTimeout</td> <td><pre>if 0, the operation will block without a timeout. Otherwise the specified amout of time. </pre></td> </tr> </table> </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="getType-188"> </a>getType</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-oslSocketType.html">oslSocketType</a> <strong>getType</strong>();</dt> <dd><table class="param-table"></table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Queries the socket for its type. </dd> <dt>Return</dt> <dd>one of: <ul> <li> <code>osl_Socket_TypeStream</code> <li> <code>osl_Socket_TypeDgram</code> <li> <code>osl_Socket_TypeRaw</code> <li> <code>osl_Socket_TypeRdm</code> <li> <code>osl_Socket_TypeSeqPacket</code> <li> <code>osl_invalid_SocketType</code>, if an error occured </ul> </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="getOption-189"> </a>getOption</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-sal_Int32.html">sal_Int32</a> <strong>getOption</strong>(</dt> <dd><table class="param-table"> <tr> <td><a href="../../t-oslSocketOption.html">oslSocketOption</a> </td> <td> Option,</td> </tr> <tr> <td>void *</td> <td>pBuffer,</td> </tr> <tr> <td><a href="../../t-sal_uInt32.html">sal_uInt32</a></td> <td>BufferLen,</td> </tr> <tr> <td><a href="../../t-oslSocketOptionLevel.html">oslSocketOptionLevel</a></td> <td>Level = osl_Socket_LevelSocket ) const;</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Retrieves option-attributes associated with the socket. </dd> <dt>Parameters</dt> <dd><table border="0" width="100%" cellpadding="3" cellspacing="0" class="expl-table"> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">Option</td> <td><pre>The attribute to query. Valid values (depending on the Level) are: <ul> <li> <code>osl_Socket_Option_Debug</code><br> (sal_Bool) Socket debug flag 1 = enabled, 0 = disabled. <li> <code>osl_Socket_OptionAcceptConn</code><br> <li> <code>osl_Socket_OptionReuseAddr</code><br> (sal_Bool) Allows the socket to be bound to an address that is already in use. 1 = multiple bound allowed, 0 = no multiple bounds allowed <li><code>osl_Socket_OptionKeepAlive</code><br> (sal_Bool) Keepalive packets are sent by the underlying socket. 1 = enabled, 0 = disabled <li><code>osl_Socket_OptionDontRoute</code><br> (sal_Bool) Do not route: send directly to interface. 1 = do not route , 0 = routing possible <li><code>osl_Socket_OptionBroadcast</code><br> (sal_Bool) Transmission of broadcast messages are allowed on the socket. 1 = transmission allowed, 0 = transmission disallowed <li><code>osl_Socket_OptionUseLoopback</code><br> <li><code>osl_Socket_OptionLinger</code><br> (linger) Linger on close if unsent data is present. linger has two members: l_onoff, l_linger l_onoff = 0 is off, l_onoff > 0 and l_linger= timeout in seconds. <li><code>osl_Socket_OptionOOBinLine</code><br> <li><code>osl_Socket_OptionSndBuf</code><br> (sal_Int32) Size of the send buffer in bytes. Data is sent after SndTimeo or when the buffer is full. This allows faster writing to the socket. <li><code>osl_Socket_OptionRcvBuf</code><br> (sal_Int32) Size of the receive buffer in bytes. Data is sent after SndTimeo or when the buffer is full. This allows faster writing to the socket and larger packet sizes. <li><code>osl_Socket_OptionSndLowat</code><br> <li><code>osl_Socket_OptionRcvLowat</code><br> <li><code>osl_Socket_OptionSndTimeo</code><br> (sal_Int32) Data is sent after this timeout. This allows gathering of data to send larger packages but increases latency times. <li><code>osl_Socket_OptionRcvTimeo</code><br> <li><code>osl_Socket_OptionError</code><br> <li><code>osl_Socket_OptionType</code><br> <li><code>osl_Socket_OptionTcpNoDelay</code><br> Disables the Nagle algorithm for send coalescing. (Do not collect data until a packet is full, instead send immediatly. This increases network traffic but might improve latency-times.) 1 = disables the algorithm, 0 = keeps it enabled. </ul> If not above mentioned otherwise, the options are only valid for level <code>osl_Socket_LevelSocket</code>. </pre></td> </tr> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">pBuffer</td> <td><pre>The Buffer will be filled with the attribute. </pre></td> </tr> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">BufferSize</td> <td><pre>The size of pBuffer. </pre></td> </tr> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">Level</td> <td><pre>The option level. Valid values are: <ul> <li><code>osl_Socket_LevelSocket</code> : Socket Level <li><code>osl_Socket_LevelTcp</code> : Level of Transmission Control Protocol </ul> </pre></td> </tr> </table> </dd> <dt>Return</dt> <dd>The size of the attribute copied into pBuffer or -1 if an error occured. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="setOption-190"> </a>setOption</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-sal_Bool.html">sal_Bool</a> <strong>setOption</strong>(</dt> <dd><table class="param-table"> <tr> <td><a href="../../t-oslSocketOption.html">oslSocketOption</a> </td> <td> Option,</td> </tr> <tr> <td>void *</td> <td>pBuffer,</td> </tr> <tr> <td><a href="../../t-sal_uInt32.html">sal_uInt32</a></td> <td>BufferLen,</td> </tr> <tr> <td><a href="../../t-oslSocketOptionLevel.html">oslSocketOptionLevel</a></td> <td>Level = osl_Socket_LevelSocket ) const;</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Sets the sockets attributes. </dd> <dt>Parameters</dt> <dd><table border="0" width="100%" cellpadding="3" cellspacing="0" class="expl-table"> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">Option</td> <td><pre>denotes the option to modify. Valid values (depending on the Level) are: <ul> <li> osl_Socket_Option_Debug <li> osl_Socket_OptionAcceptConn <li> osl_Socket_OptionReuseAddr <li> osl_Socket_OptionKeepAlive <li> osl_Socket_OptionDontRoute <li> osl_Socket_OptionBroadcast <li> osl_Socket_OptionUseLoopback <li> osl_Socket_OptionLinger <li> osl_Socket_OptionOOBinLine <li> osl_Socket_OptionSndBuf <li> osl_Socket_OptionRcvBuf <li> osl_Socket_OptionSndLowat <li> osl_Socket_OptionRcvLowat <li> osl_Socket_OptionSndTimeo <li> osl_Socket_OptionRcvTimeo <li> osl_Socket_OptionError <li> osl_Socket_OptionType <li> osl_Socket_OptionTcpNoDelay </ul> If not above mentioned otherwise, the options are only valid for level osl_Socket_LevelSocket. </pre></td> </tr> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">pBuffer</td> <td><pre>Pointer to a Buffer which contains the attribute-value. </pre></td> </tr> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">BufferSize</td> <td><pre>contains the length of the Buffer. </pre></td> </tr> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">Level</td> <td><pre>selects the level for which an option should be changed. Valid values are: <ul> <li> osl_Socket_evel_Socket : Socket Level <li> osl_Socket_Level_Tcp : Level of Transmission Control Protocol </ul> </pre></td> </tr> </table> </dd> <dt>Return</dt> <dd>True if the option could be changed. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="setOption-191"> </a>setOption</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-sal_Bool.html">sal_Bool</a> <strong>setOption</strong>(</dt> <dd><table class="param-table"> <tr> <td><a href="../../t-oslSocketOption.html">oslSocketOption</a> </td> <td> option,</td> </tr> <tr> <td><a href="../../t-sal_Int32.html">sal_Int32</a></td> <td>nValue );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Convenience function for setting sal_Bool and sal_Int32 option values. </dd> <dt>See Also</dt> <dd><a href="o.html#setOption-191">setOption()</a> <br> </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="getOption-192"> </a>getOption</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-sal_Int32.html">sal_Int32</a> <strong>getOption</strong>(</dt> <dd><table class="param-table"> <tr> <td><a href="../../t-oslSocketOption.html">oslSocketOption</a> </td> <td> option ) const;</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Convenience function for retrieving sal_Bool and sal_Int32 option values. </dd> <dt>See Also</dt> <dd><a href="o.html#setOption-191">setOption()</a> <br> </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="enableNonBlockingMode-193"> </a>enableNonBlockingMode</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-sal_Bool.html">sal_Bool</a> <strong>enableNonBlockingMode</strong>(</dt> <dd><table class="param-table"> <tr> <td><a href="../../t-sal_Bool.html">sal_Bool</a> </td> <td> bNonBlockingMode );</td> </tr> </table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Enables/disables non-blocking mode of the socket. </dd> <dt>Parameters</dt> <dd><table border="0" width="100%" cellpadding="3" cellspacing="0" class="expl-table"> <tr> <td width="15%" style="vertical-align:top; font-weight:bold">bNonBlockingMode</td> <td><pre>If <code>sal_True</code>, blocking mode will be switched off If <code>sal_False</code>, the socket will become a blocking socket (which is the default behaviour of a socket). </pre></td> </tr> </table> </dd> <dt>Return</dt> <dd><code>sal_True</code> if mode could be set. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="isNonBlockingMode-194"> </a>isNonBlockingMode</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-sal_Bool.html">sal_Bool</a> <strong>isNonBlockingMode</strong>();</dt> <dd><table class="param-table"></table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Query blocking mode of the socket. </dd> <dt>Return</dt> <dd><code>sal_True</code> if non-blocking mode is set. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="clearError-195"> </a>clearError</dt> <dd class="member"><dl> <dt class="simple">void <strong>clearError</strong>();</dt> <dd><table class="param-table"></table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>clears the error status </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="getError-196"> </a>getError</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-oslSocketError.html">oslSocketError</a> <strong>getError</strong>();</dt> <dd><table class="param-table"></table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>returns a constant decribing the last error for the socket system. </dd> <dt>Return</dt> <dd>osl_Socket_E_NONE if no error occured, invalid_SocketError if an unknown (unmapped) error occured, otherwise an enum describing the error. </dd> <dt>See Also</dt> <dd><a href="../../o-socket.h.html#osl_getLastSocketError-1048">osl_getLastSocketError()</a> <br> </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="getErrorAsString-197"> </a>getErrorAsString</dt> <dd class="member"><dl> <dt class="simple">::rtl::<a href="../../rtl/c-OUString.html">OUString</a> <strong>getErrorAsString</strong>();</dt> <dd><table class="param-table"></table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Builds a string with the last error-message for the socket. </dd> </dl> </dd> </dl> <hr> <dl class="member"> <dt class="member"><a name="getHandle-198"> </a>getHandle</dt> <dd class="member"><dl> <dt class="simple"><a href="../../t-oslSocket.html">oslSocket</a> <strong>getHandle</strong>();</dt> <dd><table class="param-table"></table> </dd> </dl> <br> </dd> <dd class="member"><table class="flag-table" border="1" cellspacing="0"> <tr> <td width="12%" class="flagname">virtual</td> <td width="12%" class="flagname">abstract</td> <td width="12%" class="flagname">const</td> <td width="12%" class="flagname">volatile</td> <td width="12%" class="flagname">template</td> <td width="12%" class="flagname">static</td> <td width="12%" class="flagname">inline</td> <td width="12%" class="flagname">C-linkage</td> </tr> <tr> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagno">NO</td> <td class="flagyes">YES</td> <td class="flagno">NO</td> </tr> </table> <br> </dd> <dd class="member"><dl> <dt>Summary</dt> <dd>Returns the underlying handle unacquired (The caller must acquire it to keep it). </dd> </dl> </dd> </dl> <hr> <a href="#_top_" class="objchapter">Top of Page</a><hr size="3"><p class="copyright" align="center">Copyright © 2008 Sun Microsystems, Inc.</p> </div> <!-- id="adc-cppref" --> </body> </html>