diff options
-rw-r--r-- | patches/dev300/apply | 9 | ||||
-rw-r--r-- | patches/dev300/vosremoval-socket.diff | 3609 |
2 files changed, 0 insertions, 3618 deletions
diff --git a/patches/dev300/apply b/patches/dev300/apply index 4b46dbc16..ee6b12a97 100644 --- a/patches/dev300/apply +++ b/patches/dev300/apply @@ -1896,15 +1896,9 @@ unit-sc.diff # needed? (It's on one place only) vosremoval-process.diff -# remove vos/diagnose.hxx -vosremoval-diagnose.diff - # remove vos/ref*.hxx vosremoval-reference.diff -# remove vos/thread.hxx -vosremoval-thread.diff - # remove vos/mutex.hxx vosremoval-mutex.diff @@ -1926,9 +1920,6 @@ vosremoval-module.diff # remove vos/security.hxx vosremoval-security.diff -# remove vos/socket.hxx -vosremoval-socket.diff - # remove includes of non-existing/unused headers (vos/process.hxx, # vos/dynload.hxx, vos/object.hxx, vos/types.hxx, vos/runnable.hxx, # vos/thread.hxx) diff --git a/patches/dev300/vosremoval-socket.diff b/patches/dev300/vosremoval-socket.diff deleted file mode 100644 index 028950b39..000000000 --- a/patches/dev300/vosremoval-socket.diff +++ /dev/null @@ -1,3609 +0,0 @@ -diff --git a/automation/inc/automation/communi.hxx b/automation/inc/automation/communi.hxx -index 1ff4a31..f83e80b 100644 ---- automation/inc/automation/communi.hxx -+++ automation/inc/automation/communi.hxx -@@ -98,7 +98,7 @@ public: - class CommunicationLinkViaSocket : public SimpleCommunicationLinkViaSocket, public osl::Thread - { - public: -- CommunicationLinkViaSocket( CommunicationManager *pMan, vos::OStreamSocket *pSocket ); -+ CommunicationLinkViaSocket( CommunicationManager *pMan, osl::StreamSocket *pSocket ); - virtual ~CommunicationLinkViaSocket(); - - virtual BOOL IsCommunicationError(); -@@ -164,7 +164,7 @@ protected: - - private: - CommunicationManagerServerViaSocket* pMyServer; -- vos::OAcceptorSocket *pAcceptorSocket; -+ osl::AcceptorSocket *pAcceptorSocket; - ULONG nPortToListen; - USHORT nMaxConnections; - ULONG nAddConnectionEventId; -@@ -193,7 +193,7 @@ private: - ByteString aHostToTalk; - ULONG nPortToTalk; - protected: -- virtual CommunicationLink *CreateCommunicationLink( CommunicationManager *pCM, vos::OConnectorSocket *pCS ){ return new CommunicationLinkViaSocket( pCM, pCS ); } -+ virtual CommunicationLink *CreateCommunicationLink( CommunicationManager *pCM, osl::ConnectorSocket *pCS ){ return new CommunicationLinkViaSocket( pCM, pCS ); } - }; - - #endif -diff --git a/automation/inc/automation/simplecm.hxx b/automation/inc/automation/simplecm.hxx -index c8486f1..73bd7cf 100644 ---- automation/inc/automation/simplecm.hxx -+++ automation/inc/automation/simplecm.hxx -@@ -44,8 +44,8 @@ - #ifndef _STREAM_HXX //autogen - #include <tools/stream.hxx> - #endif --#ifndef _VOS_SOCKET_HXX_ //autogen --#include <vos/socket.hxx> -+#ifndef _OSL_SOCKET_HXX_ -+#include <osl/socket.hxx> - #endif - #ifndef _TOOLS_DEBUG_HXX //autogen - #include <tools/debug.hxx> -@@ -357,19 +357,19 @@ private: - ByteString aMyName; - - TCPIO* pTCPIO; -- vos::OStreamSocket *pStreamSocket; -+ osl::StreamSocket *pStreamSocket; - - protected: -- SimpleCommunicationLinkViaSocket( CommunicationManager *pMan, vos::OStreamSocket *pSocket ); -+ SimpleCommunicationLinkViaSocket( CommunicationManager *pMan, osl::StreamSocket *pSocket ); - virtual ~SimpleCommunicationLinkViaSocket(); - -- vos::OStreamSocket* GetStreamSocket() { return pStreamSocket; } -- void SetStreamSocket( vos::OStreamSocket* pSocket ); -+ osl::StreamSocket* GetStreamSocket() { return pStreamSocket; } -+ void SetStreamSocket( osl::StreamSocket* pSocket ); - - SvStream *pReceiveStream; - BOOL DoReceiveDataStream(); /// Recieve DataPacket from Socket - virtual BOOL SendHandshake( HandshakeType aHandshakeType, SvStream* pData = NULL); -- void SetFinalRecieveTimeout(); -+ BOOL IsReceiveReady(); - BOOL bIsRequestShutdownPending; - virtual void WaitForShutdown()=0; - void SetNewPacketAsCurrent(); -@@ -378,7 +378,7 @@ protected: - class SimpleCommunicationLinkViaSocketWithReceiveCallbacks : public SimpleCommunicationLinkViaSocket - { - public: -- SimpleCommunicationLinkViaSocketWithReceiveCallbacks( CommunicationManager *pMan, vos::OStreamSocket *pSocket ); -+ SimpleCommunicationLinkViaSocketWithReceiveCallbacks( CommunicationManager *pMan, osl::StreamSocket *pSocket ); - ~SimpleCommunicationLinkViaSocketWithReceiveCallbacks(); - virtual BOOL ReceiveDataStream(); - protected: -@@ -391,7 +391,7 @@ class CommonSocketFunctions - public: - BOOL DoStartCommunication( CommunicationManager *pCM, ICommunicationManagerClient *pCMC, ByteString aHost, ULONG nPort ); - protected: -- virtual CommunicationLink *CreateCommunicationLink( CommunicationManager *pCM, vos::OConnectorSocket *pCS )=0; -+ virtual CommunicationLink *CreateCommunicationLink( CommunicationManager *pCM, osl::ConnectorSocket *pCS )=0; - }; - - class SingleCommunicationManagerClientViaSocket : public SingleCommunicationManager, public ICommunicationManagerClient, CommonSocketFunctions -@@ -407,7 +407,7 @@ private: - ByteString aHostToTalk; - ULONG nPortToTalk; - protected: -- virtual CommunicationLink *CreateCommunicationLink( CommunicationManager *pCM, vos::OConnectorSocket *pCS ){ return new SimpleCommunicationLinkViaSocketWithReceiveCallbacks( pCM, pCS ); } -+ virtual CommunicationLink *CreateCommunicationLink( CommunicationManager *pCM, osl::ConnectorSocket *pCS ){ return new SimpleCommunicationLinkViaSocketWithReceiveCallbacks( pCM, pCS ); } - }; - - #endif -diff --git a/automation/source/communi/communi.cxx b/automation/source/communi/communi.cxx -index 63f1ebb..a280681 100644 ---- automation/source/communi/communi.cxx -+++ automation/source/communi/communi.cxx -@@ -48,8 +48,8 @@ - #ifndef _SV_SVAPP_HXX //autogen - #include <vcl/svapp.hxx> - #endif --#ifndef _VOS_SOCKET_HXX_ //autogen --#include <vos/socket.hxx> -+#ifndef _OSL_SOCKET_HXX_ -+#include <osl/socket.hxx> - #endif - #ifndef _STREAM_HXX //autogen - #include <tools/stream.hxx> -@@ -89,7 +89,7 @@ SV_IMPL_PTRARR_SORT( CommunicationLinkList, CommunicationLink* ); - - osl::Mutex *pMPostUserEvent=NULL; // Notwendig, da nicht threadfest - --CommunicationLinkViaSocket::CommunicationLinkViaSocket( CommunicationManager *pMan, vos::OStreamSocket *pSocket ) -+CommunicationLinkViaSocket::CommunicationLinkViaSocket( CommunicationManager *pMan, osl::StreamSocket *pSocket ) - : SimpleCommunicationLinkViaSocket( pMan, pSocket ) - , nConnectionClosedEventId( 0 ) - , nDataReceivedEventId( 0 ) -@@ -153,7 +153,7 @@ BOOL CommunicationLinkViaSocket::ShutdownCommunication() - - join(); - -- vos::OStreamSocket *pTempSocket = GetStreamSocket(); -+ osl::StreamSocket *pTempSocket = GetStreamSocket(); - SetStreamSocket( NULL ); - delete pTempSocket; - -@@ -521,10 +521,10 @@ void CommunicationManagerServerAcceptThread::run() - if ( !nPortToListen ) - return; - -- pAcceptorSocket = new vos::OAcceptorSocket(); -- vos::OInetSocketAddr Addr; -+ pAcceptorSocket = new osl::AcceptorSocket(); -+ osl::SocketAddr Addr; - Addr.setPort( nPortToListen ); -- pAcceptorSocket->setReuseAddr( 1 ); -+ pAcceptorSocket->setOption( osl_Socket_OptionReuseAddr, 1 ); - if ( !pAcceptorSocket->bind( Addr ) ) - { - return; -@@ -535,16 +535,16 @@ void CommunicationManagerServerAcceptThread::run() - } - - -- vos::OStreamSocket *pStreamSocket = NULL; -+ osl::StreamSocket *pStreamSocket = NULL; - - while ( schedule() ) - { -- pStreamSocket = new vos::OStreamSocket; -+ pStreamSocket = new osl::StreamSocket; - switch ( pAcceptorSocket->acceptConnection( *pStreamSocket ) ) - { -- case vos::ISocketTypes::TResult_Ok: -+ case osl_Socket_Ok: - { -- pStreamSocket->setTcpNoDelay( 1 ); -+ pStreamSocket->setOption( osl_Socket_OptionTcpNoDelay, 1 ); - - TimeValue sNochEins = {0, 100}; - while ( schedule() && xmNewConnection.Is() ) // Solange die letzte Connection nicht abgeholt wurde warten wir -@@ -558,17 +558,17 @@ void CommunicationManagerServerAcceptThread::run() - } - } - break; -- case vos::ISocketTypes::TResult_TimedOut: -+ case osl_Socket_TimedOut: - delete pStreamSocket; - pStreamSocket = NULL; - break; -- case vos::ISocketTypes::TResult_Error: -+ case osl_Socket_Error: - delete pStreamSocket; - pStreamSocket = NULL; - break; - -- case vos::ISocketTypes::TResult_Interrupted: -- case vos::ISocketTypes::TResult_InProgress: -+ case osl_Socket_Interrupted: -+ case osl_Socket_InProgress: - break; // -Wall not handled... - } - } -diff --git a/automation/source/server/server.cxx b/automation/source/server/server.cxx -index c85bff3..ecee839 100644 ---- automation/source/server/server.cxx -+++ automation/source/server/server.cxx -@@ -69,7 +69,7 @@ - #include <tools/config.hxx> - #endif - --#include <vos/socket.hxx> -+#include <osl/socket.hxx> - - #if 1 - #ifndef _SVTOOLS_TTPROPS_HXX // handmade -diff --git a/automation/source/server/statemnt.cxx b/automation/source/server/statemnt.cxx -index 6c748cf..b8a7329 100644 ---- automation/source/server/statemnt.cxx -+++ automation/source/server/statemnt.cxx -@@ -174,7 +174,7 @@ - #ifndef _BASIC_DISPDEFS_HXX - #include <basic/dispdefs.hxx> - #endif --#include <vos/socket.hxx> -+#include <osl/socket.hxx> - #include <svtools/pickerhistory.hxx> - #include <com/sun/star/util/XCancellable.hpp> - -diff --git a/automation/source/simplecm/simplecm.cxx b/automation/source/simplecm/simplecm.cxx -index 4aa883f..78e7f54 100644 ---- automation/source/simplecm/simplecm.cxx -+++ automation/source/simplecm/simplecm.cxx -@@ -147,7 +147,7 @@ void CommunicationLink::SetApplication( const ByteString& aApp ) - } - - --SimpleCommunicationLinkViaSocket::SimpleCommunicationLinkViaSocket( CommunicationManager *pMan, vos::OStreamSocket *pSocket ) -+SimpleCommunicationLinkViaSocket::SimpleCommunicationLinkViaSocket( CommunicationManager *pMan, osl::StreamSocket *pSocket ) - : CommunicationLink( pMan ) - , aCommunicationPartner() - , aMyName() -@@ -169,7 +169,7 @@ SimpleCommunicationLinkViaSocket::~SimpleCommunicationLinkViaSocket() - pStreamSocket = NULL; - } - --void SimpleCommunicationLinkViaSocket::SetStreamSocket( vos::OStreamSocket* pSocket ) -+void SimpleCommunicationLinkViaSocket::SetStreamSocket( osl::StreamSocket* pSocket ) - { - if ( pTCPIO ) - pTCPIO->SetStreamSocket( pSocket ); -@@ -190,15 +190,6 @@ BOOL SimpleCommunicationLinkViaSocket::StopCommunication() - return TRUE; - } - --void SimpleCommunicationLinkViaSocket::SetFinalRecieveTimeout() --{ -- if ( !IsCommunicationError() ) -- { -- TimeValue aTime = {30, 0}; // 30 seconds -- pStreamSocket->setRecvTimeout( &aTime ); -- } --} -- - BOOL SimpleCommunicationLinkViaSocket::IsCommunicationError() - { - return !pStreamSocket; -@@ -213,9 +204,9 @@ ByteString SimpleCommunicationLinkViaSocket::GetCommunicationPartner( CM_NameTyp - case CM_DOTTED: - { - rtl::OUString aDotted; -- vos::OSocketAddr *pPeerAdr = new vos::OSocketAddr; -+ osl::SocketAddr *pPeerAdr = new osl::SocketAddr; - pStreamSocket->getPeerAddr( *pPeerAdr ); -- ((vos::OInetSocketAddr*)pPeerAdr)->getDottedAddr( aDotted ); -+ osl_getDottedInetAddrOfSocketAddr( pPeerAdr->getHandle(), &aDotted.pData ); - delete pPeerAdr; - return ByteString( UniString(aDotted), RTL_TEXTENCODING_UTF8 ); - } -@@ -224,8 +215,7 @@ ByteString SimpleCommunicationLinkViaSocket::GetCommunicationPartner( CM_NameTyp - { - if ( !aCommunicationPartner.Len() ) - { -- rtl::OUString aFQDN; -- pStreamSocket->getPeerHost( aFQDN ); -+ rtl::OUString aFQDN( pStreamSocket->getPeerHost() ); - aCommunicationPartner = ByteString( UniString(aFQDN), RTL_TEXTENCODING_UTF8 ); - } - return aCommunicationPartner; -@@ -245,9 +235,9 @@ ByteString SimpleCommunicationLinkViaSocket::GetMyName( CM_NameType eType ) - case CM_DOTTED: - { - rtl::OUString aDotted; -- vos::OSocketAddr *pPeerAdr = new vos::OSocketAddr; -+ osl::SocketAddr *pPeerAdr = new osl::SocketAddr; - pStreamSocket->getLocalAddr( *pPeerAdr ); -- ((vos::OInetSocketAddr*)pPeerAdr)->getDottedAddr( aDotted ); -+ osl_getDottedInetAddrOfSocketAddr( pPeerAdr->getHandle(), &aDotted.pData ); - delete pPeerAdr; - return ByteString( UniString(aDotted), RTL_TEXTENCODING_UTF8 ); - } -@@ -256,8 +246,7 @@ ByteString SimpleCommunicationLinkViaSocket::GetMyName( CM_NameType eType ) - { - if ( !aMyName.Len() ) - { -- rtl::OUString aFQDN; -- pStreamSocket->getLocalHost( aFQDN ); -+ rtl::OUString aFQDN( pStreamSocket->getLocalHost() ); - aMyName = ByteString( UniString(aFQDN), RTL_TEXTENCODING_UTF8 ); - } - return aMyName; -@@ -318,6 +307,17 @@ void SimpleCommunicationLinkViaSocket::SetNewPacketAsCurrent() - nServiceHeaderType = pPacketHandler->GetReceiveHeaderType(); - } - -+BOOL SimpleCommunicationLinkViaSocket::IsReceiveReady() -+{ -+ if ( !IsCommunicationError() ) -+ { -+ TimeValue aTime = {30, 0}; // 30 seconds -+ return pStreamSocket->isRecvReady( &aTime ); -+ } -+ -+ return FALSE; -+} -+ - BOOL SimpleCommunicationLinkViaSocket::SendHandshake( HandshakeType aHandshakeType, SvStream* pData ) - { - BOOL bWasError; -@@ -363,7 +363,7 @@ BOOL SimpleCommunicationLinkViaSocket::SendHandshake( HandshakeType aHandshakeTy - return !bWasError; - } - --SimpleCommunicationLinkViaSocketWithReceiveCallbacks::SimpleCommunicationLinkViaSocketWithReceiveCallbacks( CommunicationManager *pMan, vos::OStreamSocket *pSocket ) -+SimpleCommunicationLinkViaSocketWithReceiveCallbacks::SimpleCommunicationLinkViaSocketWithReceiveCallbacks( CommunicationManager *pMan, osl::StreamSocket *pSocket ) - : SimpleCommunicationLinkViaSocket( pMan, pSocket ) - { - } -@@ -377,8 +377,9 @@ SimpleCommunicationLinkViaSocketWithReceiveCallbacks::~SimpleCommunicationLinkVi - void SimpleCommunicationLinkViaSocketWithReceiveCallbacks::WaitForShutdown() - { - CommunicationLinkRef rHold(this); // avoid deleting this link before the end of the method -- SetFinalRecieveTimeout(); -- while ( pMyManager && !IsCommunicationError() ) -+ const TimeValue aTime = {30, 0}; // 30 seconds -+ -+ while ( pMyManager && !IsCommunicationError() && IsReceiveReady() ) - ReceiveDataStream(); - } - -@@ -407,7 +408,7 @@ BOOL SimpleCommunicationLinkViaSocketWithReceiveCallbacks::ShutdownCommunication - if ( GetStreamSocket() ) - GetStreamSocket()->close(); - -- vos::OStreamSocket *pTempSocket = GetStreamSocket(); -+ osl::StreamSocket *pTempSocket = GetStreamSocket(); - SetStreamSocket( NULL ); - delete pTempSocket; - -@@ -447,8 +448,7 @@ BOOL CommunicationManager::StartCommunication( ByteString aHost, ULONG nPort ) - - ByteString CommunicationManager::GetMyName( CM_NameType ) - { -- rtl::OUString aHostname; -- vos::OSocketAddr::getLocalHostname( aHostname ); -+ rtl::OUString aHostname( osl::SocketAddr::getLocalHostname() ); - return ByteString( UniString(aHostname), RTL_TEXTENCODING_UTF8 ); - } - -@@ -683,22 +683,19 @@ SingleCommunicationManagerClientViaSocket::SingleCommunicationManagerClientViaSo - - BOOL CommonSocketFunctions::DoStartCommunication( CommunicationManager *pCM, ICommunicationManagerClient *pCMC, ByteString aHost, ULONG nPort ) - { -- vos::OInetSocketAddr Addr; -- vos::OConnectorSocket *pConnSocket; -- -- Addr.setAddr( rtl::OUString( UniString( aHost, RTL_TEXTENCODING_UTF8 ) ) ); -- Addr.setPort( nPort ); -+ osl::SocketAddr Addr( rtl::OUString( UniString( aHost, RTL_TEXTENCODING_UTF8 ) ), nPort ); -+ osl::ConnectorSocket *pConnSocket; - - TimeValue aTV; - aTV.Seconds = 10; // Warte 10 Sekunden - aTV.Nanosec = 0; - do - { -- pConnSocket = new vos::OConnectorSocket(); -- pConnSocket->setTcpNoDelay( 1 ); -- if ( pConnSocket->connect( Addr, &aTV ) == vos::ISocketTypes::TResult_Ok ) -+ pConnSocket = new osl::ConnectorSocket(); -+ pConnSocket->setOption( osl_Socket_OptionTcpNoDelay, 1 ); -+ if ( pConnSocket->connect( Addr, &aTV ) == osl_Socket_Ok ) - { -- pConnSocket->setTcpNoDelay( 1 ); -+ pConnSocket->setOption( osl_Socket_OptionTcpNoDelay, 1 ); - - pCM->CallConnectionOpened( CreateCommunicationLink( pCM, pConnSocket ) ); - return TRUE; -diff --git a/automation/source/simplecm/tcpio.cxx b/automation/source/simplecm/tcpio.cxx -index ca640c7..1fa1c4d 100644 ---- automation/source/simplecm/tcpio.cxx -+++ automation/source/simplecm/tcpio.cxx -@@ -71,7 +71,7 @@ comm_USHORT TCPIO::ReceiveBytes( void* pBuffer, comm_UINT32 nLen ) - - - // helper --void TCPIO::SetStreamSocket( vos::OStreamSocket *pSocket ) -+void TCPIO::SetStreamSocket( osl::StreamSocket *pSocket ) - { - osl::MutexGuard aRGuard( aMSocketReadAccess ); - osl::MutexGuard aWGuard( aMSocketWriteAccess ); -diff --git a/automation/source/simplecm/tcpio.hxx b/automation/source/simplecm/tcpio.hxx -index e078875..71bd6c4 100644 ---- automation/source/simplecm/tcpio.hxx -+++ automation/source/simplecm/tcpio.hxx -@@ -36,8 +36,8 @@ - #ifndef TCPIO_HXX - #define TCPIO_HXX - --#ifndef _VOS_SOCKET_HXX_ //autogen --#include <vos/socket.hxx> -+#ifndef _OSL_SOCKET_HXX_ -+#include <osl/socket.hxx> - #endif - - #ifndef _OSL_MUTEX_HXX_ -@@ -49,14 +49,14 @@ - class TCPIO : public ITransmiter, public IReceiver - { - private: -- vos::OStreamSocket *pStreamSocket; -+ osl::StreamSocket *pStreamSocket; - osl::Mutex aMSocketReadAccess; - osl::Mutex aMSocketWriteAccess; - - public: - - /// -- TCPIO( vos::OStreamSocket *pSocket ):pStreamSocket( pSocket ){} -+ TCPIO( osl::StreamSocket *pSocket ):pStreamSocket( pSocket ){} - virtual ~TCPIO(){} - - -@@ -67,7 +67,7 @@ public: - virtual comm_USHORT ReceiveBytes( void* pBuffer, comm_UINT32 nLen ); - - // helper -- void SetStreamSocket( vos::OStreamSocket *pSocket ); -+ void SetStreamSocket( osl::StreamSocket *pSocket ); - - }; - -diff --git a/automation/source/testtool/httprequest.cxx b/automation/source/testtool/httprequest.cxx -index 778be47..d13715a 100644 ---- automation/source/testtool/httprequest.cxx -+++ automation/source/testtool/httprequest.cxx -@@ -39,8 +39,8 @@ - #include <stdio.h> - #include "httprequest.hxx" - --#ifndef _VOS_SOCKET_HXX_ //autogen --#include <vos/socket.hxx> -+#ifndef _OSL_SOCKET_HXX_ -+#include <osl/socket.hxx> - #endif - #ifndef _TOOLS_DEBUG_HXX //autogen - #include <tools/debug.hxx> -@@ -91,25 +91,23 @@ BOOL HttpRequest::Execute() - Init(); - - // Open channel to standard redir host -- vos::OInetSocketAddr aConnectAddr; -+ osl::SocketAddr aConnectAddr; - - if ( aProxyHost.Len() ) - { -- aConnectAddr.setAddr( rtl::OUString( UniString( aProxyHost, RTL_TEXTENCODING_UTF8 ) ) ); -- aConnectAddr.setPort( nProxyPort ); -+ aConnectAddr = osl::SocketAddr( rtl::OUString( UniString( aProxyHost, RTL_TEXTENCODING_UTF8 ) ), nProxyPort ); - } - else - { -- aConnectAddr.setAddr( rtl::OUString( UniString( aRequestHost, RTL_TEXTENCODING_UTF8 ) ) ); -- aConnectAddr.setPort( nRequestPort ); -+ aConnectAddr = osl::SocketAddr( rtl::OUString( UniString( aRequestHost, RTL_TEXTENCODING_UTF8 ) ), nRequestPort ); - } - - TimeValue aTV; - aTV.Seconds = 10; // Warte 10 Sekunden - aTV.Nanosec = 0; - -- pOutSocket = new vos::OConnectorSocket(); -- if ( pOutSocket->connect( aConnectAddr, &aTV ) == vos::ISocketTypes::TResult_Ok ) -+ pOutSocket = new osl::ConnectorSocket(); -+ if ( pOutSocket->connect( aConnectAddr, &aTV ) == osl_Socket_Ok ) - { - // pOutSocket->setTcpNoDelay( 1 ); - } -@@ -215,7 +213,7 @@ Servlet-Engine: Tomcat Web Server/3.2.1 (JSP 1.1; Servlet 2.2; Java 1.3.0; Linux - Connection: close - Content-Type: text/xml; charset=ISO-8859-1 - */ --void HttpRequest::SendString( vos::OStreamSocket* pSocket , ByteString aText ) -+void HttpRequest::SendString( osl::StreamSocket* pSocket , ByteString aText ) - { - if ( nStatus == HTTP_REQUEST_PENDING ) - pSocket->write( aText.GetBuffer(), aText.Len() ); -diff --git a/automation/source/testtool/httprequest.hxx b/automation/source/testtool/httprequest.hxx -index b4c6ebe..802f5b7 100644 ---- automation/source/testtool/httprequest.hxx -+++ automation/source/testtool/httprequest.hxx -@@ -49,10 +49,10 @@ - #include <tools/stream.hxx> - #endif - --namespace vos -+namespace osl - { -- class OStreamSocket; -- class OConnectorSocket; -+ class StreamSocket; -+ class ConnectorSocket; - } - - class HttpRequest -@@ -64,14 +64,14 @@ class HttpRequest - USHORT nProxyPort; - - USHORT nStatus; -- vos::OConnectorSocket *pOutSocket; -+ osl::ConnectorSocket *pOutSocket; - - ByteString aHeader; - USHORT nResultId; - ByteString aContentType; - SvMemoryStream* pStream; - -- void SendString( vos::OStreamSocket* pSocket, ByteString aText ); -+ void SendString( osl::StreamSocket* pSocket, ByteString aText ); - BOOL IsItem( ByteString aItem, ByteString aLine ); - void Init(); - public: -diff --git a/configmgr/inc/pch/precompiled_configmgr.hxx b/configmgr/inc/pch/precompiled_configmgr.hxx -index 3502b7c..03e1410 100644 ---- configmgr/inc/pch/precompiled_configmgr.hxx -+++ configmgr/inc/pch/precompiled_configmgr.hxx -@@ -245,7 +245,7 @@ - #include "vos/pipe.hxx" - #include "rtl/ref.hxx" - #include "salhelper/simplereferenceobject.hxx" --#include "vos/socket.hxx" -+#include "osl/socket.hxx" - #include "osl/thread.hxx" - #include "vos/timer.hxx" - //---MARKER--- -diff --git a/configmgr/workben/local_io/cfglocal.cxx b/configmgr/workben/local_io/cfglocal.cxx -index b77089d..1a0df5b 100644 ---- configmgr/workben/local_io/cfglocal.cxx -+++ configmgr/workben/local_io/cfglocal.cxx -@@ -41,8 +41,8 @@ - #include <string.h> - #include <stdio.h> - --#ifndef _VOS_SOCKET_HXX_ --#include <vos/socket.hxx> -+#ifndef _OSL_SOCKET_HXX_ -+#include <osl/socket.hxx> - #endif - - #ifndef _CONFIGMGR_MISC_ATTRIBUTES_HXX_ -diff --git a/sfx2/inc/pch/precompiled_sfx2.hxx b/sfx2/inc/pch/precompiled_sfx2.hxx -index ed8e57f..10e4786 100644 ---- sfx2/inc/pch/precompiled_sfx2.hxx -+++ sfx2/inc/pch/precompiled_sfx2.hxx -@@ -674,7 +674,7 @@ - #include "osl/module.hxx" - #include "osl/mutex.hxx" - #include "osl/security.hxx" --#include "vos/socket.hxx" -+#include "osl/socket.hxx" - #include "osl/thread.hxx" - //---MARKER--- - #endif -diff --git a/sfx2/source/appl/appbas.cxx b/sfx2/source/appl/appbas.cxx -index 6637ade..f3ccb55 100644 ---- sfx2/source/appl/appbas.cxx -+++ sfx2/source/appl/appbas.cxx -@@ -150,8 +150,8 @@ - #define ITEMID_SEARCH SID_SEARCH_ITEM - - #include <sfx2/srchitem.hxx> --#ifndef _VOS_SOCKET_HXX_ //autogen --#include <vos/socket.hxx> -+#ifndef _OSL_SOCKET_HXX_ -+#include <osl/socket.hxx> - #endif - - #define SFX_TYPEMAP -diff --git a/vcl/source/app/svmain.cxx b/vcl/source/app/svmain.cxx -index 75c16fd..1add69f 100644 ---- vcl/source/app/svmain.cxx -+++ vcl/source/app/svmain.cxx -@@ -69,8 +69,8 @@ - #ifndef _OSL_SIGNAL_H_ - #include <osl/signal.h> - #endif --#ifndef _VOS_SOCKET_HXX --#include <vos/socket.hxx> -+#ifndef _OSL_SOCKET_HXX_ -+#include <osl/socket.hxx> - #endif - #ifndef _TOOLS_H - #include <tools/tools.h> -diff --git a/vcl/unx/source/app/osssound.cxx b/vcl/unx/source/app/osssound.cxx -index cd7360a..cf4be9a 100644 ---- vcl/unx/source/app/osssound.cxx -+++ vcl/unx/source/app/osssound.cxx -@@ -58,7 +58,6 @@ - #include <osl/thread.h> - - using namespace vcl_sal; --using namespace vos; - using namespace osl; - - int OSSSound::s_nDevice = -1; -diff --git a/vcl/unx/source/app/rptpsound.cxx b/vcl/unx/source/app/rptpsound.cxx -index bb0b7f1..d671d8d 100644 ---- vcl/unx/source/app/rptpsound.cxx -+++ vcl/unx/source/app/rptpsound.cxx -@@ -52,22 +52,21 @@ - #include <unistd.h> - - using namespace vcl_sal; --using namespace vos; - using namespace psp; - - BOOL RPTPSound::s_bConnected = FALSE; - BOOL RPTPSound::s_bFailedOnce = FALSE; --OConnectorSocket RPTPSound::s_aConnector; -+osl::ConnectorSocket RPTPSound::s_aConnector; - RPTPSound::RPTPSoundList RPTPSound::s_aSounds; - - int RPTPSound::getFileDescriptor() - { -- return *(int*)(oslSocket)s_aConnector; -+ return *(int*)s_aConnector.getHandle(); - } - - BOOL RPTPSound::connect() - { -- if( s_bConnected && s_aConnector.isValid() ) -+ if( s_bConnected && ( s_aConnector.getHandle() != 0 ) ) - return TRUE; - - if( s_bFailedOnce ) -@@ -111,11 +110,10 @@ BOOL RPTPSound::connect() - - ::rtl::OUString aHost( sBuf, strlen(sBuf), gsl_getSystemTextEncoding() ); - -- OInetSocketAddr aAddr( OSocketAddr::resolveHostname( aHost ) ); -- aAddr.setPort( nPort ); -- s_aConnector = OConnectorSocket(); -+ osl::SocketAddr aAddr( aHost, nPort ); -+ s_aConnector = osl::ConnectorSocket(); - TimeValue aTimeout = { 0, 100000 }; -- if( s_aConnector.connect( aAddr, &aTimeout ) == ISocketTypes::TResult_Ok ) -+ if( s_aConnector.connect( aAddr, &aTimeout ) == osl_Socket_Ok ) - { - s_bConnected = TRUE; - readLine(); -diff --git a/vcl/unx/source/app/salimpsound.hxx b/vcl/unx/source/app/salimpsound.hxx -index b13b65b..e80efce 100644 ---- vcl/unx/source/app/salimpsound.hxx -+++ vcl/unx/source/app/salimpsound.hxx -@@ -38,7 +38,7 @@ - #include <vsound.hxx> - - #include <osl/mutex.hxx> --#include <vos/socket.hxx> -+#include <osl/socket.hxx> - - #include <tools/list.hxx> - #include <tools/link.hxx> -@@ -235,7 +235,7 @@ class RPTPSound : public VSound - DECLARE_LIST( RPTPSoundList, RPTPSound* ) - - static BOOL s_bConnected; -- static vos::OConnectorSocket s_aConnector; -+ static osl::ConnectorSocket s_aConnector; - static RPTPSoundList s_aSounds; - static BOOL s_bFailedOnce; - -diff --git a/vos/inc/vos/process.hxx b/vos/inc/vos/process.hxx -index 2440c5a..eb59c0c 100644 ---- vos/inc/vos/process.hxx -+++ vos/inc/vos/process.hxx -@@ -45,9 +45,6 @@ - #ifndef _VOS_OBJECT_HXX_ - # include <vos/object.hxx> - #endif --#ifndef _VOS_SOCKET_HXX_ --# include <vos/socket.hxx> --#endif - #ifndef _OSL_PROCESS_H_ - # include <osl/process.h> - #endif -diff --git a/vos/inc/vos/socket.hxx b/vos/inc/vos/socket.hxx -deleted file mode 100644 -index e84c8df..0000000 ---- vos/inc/vos/socket.hxx -+++ /dev/null -@@ -1,1152 +0,0 @@ --/************************************************************************* -- * -- * OpenOffice.org - a multi-platform office productivity suite -- * -- * $RCSfile: socket.hxx,v $ -- * -- * $Revision: 1.7 $ -- * -- * last change: $Author: vg $ $Date: 2006/06/02 12:40:06 $ -- * -- * The Contents of this file are made available subject to -- * the terms of GNU Lesser General Public License Version 2.1. -- * -- * -- * GNU Lesser General Public License Version 2.1 -- * ============================================= -- * Copyright 2005 by Sun Microsystems, Inc. -- * 901 San Antonio Road, Palo Alto, CA 94303, USA -- * -- * This library is free software; you can redistribute it and/or -- * modify it under the terms of the GNU Lesser General Public -- * License version 2.1, as published by the Free Software Foundation. -- * -- * This library is distributed in the hope that it will be useful, -- * but WITHOUT ANY WARRANTY; without even the implied warranty of -- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- * Lesser General Public License for more details. -- * -- * You should have received a copy of the GNU Lesser General Public -- * License along with this library; if not, write to the Free Software -- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, -- * MA 02111-1307 USA -- * -- ************************************************************************/ -- --#ifndef _VOS_SOCKET_HXX_ --#define _VOS_SOCKET_HXX_ -- --#ifndef _VOS_TYPES_HXX_ --# include <vos/types.hxx> --#endif --#ifndef _VOS_OBJECT_HXX_ --# include <vos/object.hxx> --#endif --#ifndef _VOS_ISTREAM_HXX_ --# include <vos/istream.hxx> --#endif --#ifndef _VOS_REFERMCE_HXX_ --# include <vos/refernce.hxx> --#endif --#ifndef _VOS_REFOBJ_HXX_ --# include <vos/refobj.hxx> --#endif --#ifndef _RTL_USTRING_HXX_ --# include <rtl/ustring.hxx> --#endif --#ifndef _OSL_SOCKET_H_ --# include <osl/socket.h> --#endif -- --#ifndef _OSL_TIME_H_ --#include <osl/time.h> --#endif -- --namespace vos --{ -- --/** Base data types --*/ --class ISocketTypes --{ --public: -- -- ISocketTypes() { } -- virtual ~ISocketTypes() { } -- -- /* -- Represents the address-family of a socket -- */ -- enum TAddrFamily { -- TFamily_Inet = osl_Socket_FamilyInet, /* IP */ -- TFamily_Ipx = osl_Socket_FamilyIpx, /* Novell IPX/SPX */ -- TFamily_Invalid = osl_Socket_FamilyInvalid -- }; -- -- /* -- represent a specific protocol within a address-family -- */ -- enum TProtocol { -- TProtocol_Ip = osl_Socket_ProtocolIp, /* for all af_inet */ -- TProtocol_Ipx = osl_Socket_ProtocolIpx, /* af_ipx datagram sockets (IPX) */ -- TProtocol_Spx = osl_Socket_ProtocolSpx, /* af_ipx seqpacket or stream for SPX */ -- TProtocol_SpxII = osl_Socket_ProtocolSpxII, /* af_ipx seqpacket or stream for SPX II */ -- TProtocol_Invalid = osl_Socket_ProtocolInvalid -- }; -- -- /* -- Represents the type of a socket -- */ -- enum TSocketType { -- TType_Stream = osl_Socket_TypeStream, -- TType_Dgram = osl_Socket_TypeDgram, -- TType_Raw = osl_Socket_TypeRaw, -- TType_Rdm = osl_Socket_TypeRdm, -- TType_SeqPacket = osl_Socket_TypeSeqPacket, -- TType_Invalid = osl_Socket_TypeInvalid -- }; -- -- /* -- Represents socket-options -- */ -- enum TSocketOption { -- TOption_Debug = osl_Socket_OptionDebug, -- TOption_AcceptConn = osl_Socket_OptionAcceptConn, -- TOption_ReuseAddr = osl_Socket_OptionReuseAddr, -- TOption_KeepAlive = osl_Socket_OptionKeepAlive, -- TOption_DontRoute = osl_Socket_OptionDontRoute, -- TOption_Broadcast = osl_Socket_OptionBroadcast, -- TOption_UseLoopback = osl_Socket_OptionUseLoopback, -- TOption_Linger = osl_Socket_OptionLinger, -- TOption_OOBinLine = osl_Socket_OptionOOBinLine, -- TOption_SndBuf = osl_Socket_OptionSndBuf, -- TOption_RcvBuf = osl_Socket_OptionRcvBuf, -- TOption_SndLowat = osl_Socket_OptionSndLowat, -- TOption_RcvLowat = osl_Socket_OptionRcvLowat, -- TOption_SndTimeo = osl_Socket_OptionSndTimeo, -- TOption_RcvTimeo = osl_Socket_OptionRcvTimeo, -- TOption_Error = osl_Socket_OptionError, -- TOption_Type = osl_Socket_OptionType, -- TOption_TcpNoDelay = osl_Socket_OptionTcpNoDelay, -- TOption_Invalid = osl_Socket_OptionInvalid -- }; -- -- /* -- Represents the different socket-option levels -- */ -- enum TSocketOptionLevel { -- TLevel_Socket = osl_Socket_LevelSocket, -- TLevel_Tcp = osl_Socket_LevelTcp, -- TLevel_Invalid = osl_Socket_LevelInvalid -- }; -- -- /* -- Represents flags to be used with send/recv-calls. -- */ -- enum TSocketMsgFlag { -- TMsg_Normal = osl_Socket_MsgNormal, -- TMsg_OOB = osl_Socket_MsgOOB, -- TMsg_Peek = osl_Socket_MsgPeek, -- TMsg_DontRoute = osl_Socket_MsgDontRoute, -- TMsg_MaxIOVLen = osl_Socket_MsgMaxIOVLen, -- TMsg_Invalid = osl_Socket_MsgInvalid -- }; -- -- /* -- Used by shutdown to denote which end of the socket to "close". -- */ -- enum TSocketDirection { -- TDirection_Read = osl_Socket_DirRead, -- TDirection_Write = osl_Socket_DirWrite, -- TDirection_ReadWrite = osl_Socket_DirReadWrite, -- TDirection_Invalid = osl_Socket_DirInvalid -- }; -- -- enum TSocketError { -- E_None = osl_Socket_E_None, /* no error */ -- E_NotSocket = osl_Socket_E_NotSocket, /* Socket operation on non-socket */ -- E_DestAddrReq = osl_Socket_E_DestAddrReq, /* Destination address required */ -- E_MsgSize = osl_Socket_E_MsgSize, /* Message too sal_Int32 */ -- E_Prototype = osl_Socket_E_Prototype, /* Protocol wrong type for socket */ -- E_NoProtocol = osl_Socket_E_NoProtocol, /* Protocol not available */ -- E_ProtocolNoSupport = osl_Socket_E_ProtocolNoSupport, /* Protocol not supported */ -- E_TypeNoSupport = osl_Socket_E_TypeNoSupport, /* Socket type not supported */ -- E_OpNotSupport = osl_Socket_E_OpNotSupport, /* Operation not supported on socket */ -- E_PfNoSupport = osl_Socket_E_PfNoSupport, /* Protocol family not supported */ -- E_AfNoSupport = osl_Socket_E_AfNoSupport, /* Address family not supported by */ -- /* protocol family */ -- E_AddrInUse = osl_Socket_E_AddrInUse, /* Address already in use */ -- E_AddrNotAvail = osl_Socket_E_AddrNotAvail, /* Can't assign requested address */ -- E_NetDown = osl_Socket_E_NetDown, /* Network is down */ -- E_NetUnreachable = osl_Socket_E_NetUnreachable, /* Network is unreachable */ -- E_NetReset = osl_Socket_E_NetReset, /* Network dropped connection because */ -- /* of reset */ -- E_ConnAborted = osl_Socket_E_ConnAborted, /* Software caused connection abort */ -- E_ConnReset = osl_Socket_E_ConnReset, /* Connection reset by peer */ -- E_NoBufferSpace = osl_Socket_E_NoBufferSpace, /* No buffer space available */ -- E_IsConnected = osl_Socket_E_IsConnected, /* Socket is already connected */ -- E_NotConnected = osl_Socket_E_NotConnected, /* Socket is not connected */ -- E_Shutdown = osl_Socket_E_Shutdown, /* Can't send after socket shutdown */ -- E_TooManyRefs = osl_Socket_E_TooManyRefs, /* Too many references: can't splice */ -- E_TimedOut = osl_Socket_E_TimedOut, /* Connection timed out */ -- E_ConnRefused = osl_Socket_E_ConnRefused, /* Connection refused */ -- E_HostDown = osl_Socket_E_HostDown, /* Host is down */ -- E_HostUnreachable = osl_Socket_E_HostUnreachable, /* No route to host */ -- E_WouldBlock = osl_Socket_E_WouldBlock, /* call would block on non-blocking socket */ -- E_Already = osl_Socket_E_Already, /* operation already in progress */ -- E_InProgress = osl_Socket_E_InProgress, /* operation now in progress */ -- -- E_Invalid = osl_Socket_E_InvalidError /* unmapped error */ -- }; -- -- enum TResult { -- TResult_Ok = osl_Socket_Ok, /* successful completion */ -- TResult_Error = osl_Socket_Error, /* error occured, check osl_getLastSocketError() for details */ -- TResult_TimedOut = osl_Socket_TimedOut, /* blocking operation timed out */ -- TResult_Interrupted = osl_Socket_Interrupted, /* blocking operation was interrupted */ -- TResult_InProgress = osl_Socket_InProgress /* nonblocking operation is in progress */ -- }; --}; -- -- --/** Base class for socket addresses. --*/ --class ISocketAddr : public vos::ISocketTypes --{ --public: -- virtual ~ISocketAddr() { } -- -- -- virtual TAddrFamily SAL_CALL getFamily() const= 0; -- virtual TResult SAL_CALL getHostname(::rtl::OUString& strHostName) const= 0; -- virtual SAL_CALL operator oslSocketAddr() const= 0; -- virtual void SAL_CALL operator= (oslSocketAddr Addr)= 0; -- virtual sal_Bool SAL_CALL operator== (oslSocketAddr Addr)= 0; --}; -- --class OSocketAddr : public vos::ISocketAddr, -- public vos::OObject -- --{ -- VOS_DECLARE_CLASSINFO(vos::OSocketAddr); --public: -- -- /** Creates socket address of unknown type. -- */ -- OSocketAddr(); -- -- /** Copy constructor. -- */ -- OSocketAddr(const OSocketAddr& Addr); -- -- /** -- */ -- OSocketAddr(oslSocketAddr Addr); -- -- /** destroys underlying oslSocketAddress -- */ -- virtual ~OSocketAddr(); -- -- /** Queries the socket for its address family. -- @return the address family of the socket. -- */ -- virtual TAddrFamily SAL_CALL getFamily() const; -- -- /** Cast Object to the underlying oslSocketAddr. -- */ -- virtual SAL_CALL operator oslSocketAddr() const; -- -- /** Converts the address to a (human readable) domain-name. -- @return the hostname represented by the address. -- On failure returns the empty string. -- */ -- virtual TResult SAL_CALL getHostname(::rtl::OUString& strHostName) const; -- -- /** Get the hostname for the local interface. -- @return the hostname or an error. -- */ -- static TResult SAL_CALL getLocalHostname(::rtl::OUString& strLocalHostName); -- -- /** Tries to find an address for a host. -- @return A new created socket-address or 0 if the name could not be found. -- */ -- static oslSocketAddr SAL_CALL resolveHostname(const ::rtl::OUString& strHostName); -- -- /** Wraps itself around the osl Socket-Address. -- The object assumes ownership of the Addr, it -- will be destroyed by destructor(). If the socket is already attached to -- an oslSocketAddr, the existing one will be destroyed. -- */ -- virtual void SAL_CALL operator= (oslSocketAddr Addr); -- -- /** Compares to Addr -- */ -- virtual sal_Bool SAL_CALL operator== (oslSocketAddr Addr); -- -- /** Makes a copy of Addr. -- */ -- OSocketAddr& SAL_CALL operator= (const OSocketAddr& Addr); -- -- --protected: -- -- oslSocketAddr m_SockAddr; --}; -- -- --/** Represents an internet-address. --*/ --class OInetSocketAddr : public vos::OSocketAddr --{ -- VOS_DECLARE_CLASSINFO(vos::OInetSocketAddr); --public: -- -- /** Creates an empty internet-address (INADDR_ANY). -- */ -- OInetSocketAddr(); -- -- /** Wraps itself around the osl Socket-Address. -- The object assumes ownership of the Addr, it -- will be destroyed by ~OInetSocketAddr(). -- */ -- OInetSocketAddr(oslSocketAddr Addr); -- -- /** -- Create a socket address either from a dotted decimal address -- (e.g. 141.99.128.50) or a hostname (e.g. www.stardiv.de). -- */ -- OInetSocketAddr(const ::rtl::OUString& strAddrOrHostName, sal_Int32 Port); -- -- /** -- Copy constructor. -- */ -- OInetSocketAddr(const OInetSocketAddr& Addr); -- -- /** -- */ -- OInetSocketAddr(const OSocketAddr& Addr); -- -- -- virtual ~OInetSocketAddr(); -- -- /** -- */ -- virtual void SAL_CALL operator= (oslSocketAddr Addr); -- -- /** -- */ -- virtual sal_Bool SAL_CALL operator== (oslSocketAddr Addr); -- -- /** -- */ -- OInetSocketAddr& SAL_CALL operator= (const OInetSocketAddr& Addr); -- -- /** -- */ -- OInetSocketAddr& SAL_CALL operator= (const OSocketAddr& Addr); -- -- /** -- Tries to find the port associated with the given service/protocol- -- pair (e.g. "ftp"/"tcp"). -- @return the port number in host-byte order or CVOS_PORT_NONE -- if no service/protocol pair could be found. -- */ -- static sal_Int32 SAL_CALL getServicePort(const ::rtl::OUString& strServiceName, -- const ::rtl::OUString& strProtocolName= ::rtl::OUString::createFromAscii( "tcp" ) ); -- -- -- /** Delivers the port number of the address. -- @return the port in host-byte order or or OSL_INVALID_PORT on errors. -- */ -- sal_Int32 SAL_CALL getPort() const; -- -- /** Sets the port number of the address. -- @return False if the port couldn't be set -- (e.g because the address is not of family TFamily_Inet). -- */ -- sal_Bool SAL_CALL setPort(sal_Int32 Port); -- -- /** @return the dotted-address-form (141.99.128.90) of this address. -- On failure returns the empty string. -- */ -- TResult SAL_CALL getDottedAddr(::rtl::OUString& strDottedAddr) const; -- -- /** Sets the host-part of the address from the dotted-address-form (141.99.128.90) -- or from a hostname. -- @param strDottedAddrOrHostname the address in dotted form or a hostname. -- */ -- sal_Bool SAL_CALL setAddr(const ::rtl::OUString& strDottedAddrOrHostname); -- --}; -- --/** Represents an IPX/SPX address. --*/ --class OIpxSocketAddr : public vos::OSocketAddr --{ -- VOS_DECLARE_CLASSINFO(vos::OIpxSocketAddr); --public: -- -- typedef oslSocketIpxNetNumber TIpxNetNumber; -- typedef oslSocketIpxNodeNumber TIpxNodeNumber; -- -- /** Creates an empty ipx-address. -- */ -- OIpxSocketAddr(); -- -- /** Wraps itself around the osl Socket-Address. -- The object assumes ownership of the Addr, it -- will be destroyed by the destructor. -- */ -- OIpxSocketAddr(oslSocketAddr Addr); -- -- /** Create an IPX/SPX socketaddress from native parameters. -- */ -- OIpxSocketAddr(const ::rtl::OUString& strNetNumber, -- const ::rtl::OUString& strNodeNumber, -- sal_uInt32 SocketNumber); -- -- /** Copy constructor. -- */ -- OIpxSocketAddr(const OIpxSocketAddr& Addr); -- -- /** -- */ -- OIpxSocketAddr(const OSocketAddr& Addr); -- -- virtual ~OIpxSocketAddr(); -- -- /** -- */ -- virtual void SAL_CALL operator= (oslSocketAddr Addr); -- -- /** -- */ -- virtual sal_Bool SAL_CALL operator== (oslSocketAddr Addr); -- -- /** -- */ -- OIpxSocketAddr& SAL_CALL operator= (const OIpxSocketAddr& Addr); -- -- /** -- */ -- OIpxSocketAddr& SAL_CALL operator= (const OSocketAddr& Addr); -- -- /** -- */ -- TResult SAL_CALL getNetNumber(TIpxNetNumber& NetNumber) const; -- -- /** -- */ -- TResult SAL_CALL getNodeNumber(TIpxNodeNumber& NodeNumber) const; -- -- /** -- */ -- sal_uInt32 SAL_CALL getSocketNumber() const; -- -- /** Builds a human readable string in the format network.node:socket. -- The numbers are given in hexadecimal form. -- */ -- void SAL_CALL getAddressString(::rtl::OUString& strAddressString) const; --}; -- -- --/** Represents a socket. --*/ --class OSocket : public vos::ISocketTypes, -- public vos::OReference, -- public vos::OObject --{ -- VOS_DECLARE_CLASSINFO(vos::OSocket); -- --protected: -- typedef ORefObj<oslSocket> SockRef; -- -- SockRef* m_pSockRef; -- -- TimeValue* m_pSendTimeout; -- TimeValue* m_pRecvTimeout; -- --public: -- -- /** Does not create a socket. Use assignment operator to -- make this a useable socket. -- */ -- OSocket(); -- -- /** Creates a socket. -- @param Family -- @param Type -- @param Protocol -- */ -- OSocket(TSocketType Type, -- TAddrFamily Family = TFamily_Inet, -- TProtocol Protocol = TProtocol_Ip); -- -- /** Copy constructor. -- */ -- OSocket(const OSocket& sock); -- -- /** Creates socket as wrapper around the underlying oslSocket. -- @param Socket -- */ -- OSocket(oslSocket Socket); -- -- /** Destructor. Destroys the underlying oslSocket. -- */ -- virtual ~OSocket(); -- -- /** Create a socket with the given attributes. -- If socket was already created, the old one will be discarded. -- @param Type -- @param Family -- @param Protocol -- @return True if socket was successfully created. -- */ -- sal_Bool SAL_CALL create(TSocketType Type, -- TAddrFamily Family = TFamily_Inet, -- TProtocol Protocol = TProtocol_Ip); -- -- /** Assignment operator. If socket was already created, the old one will -- be discarded. -- */ -- OSocket& SAL_CALL operator= (const OSocket& sock); -- -- /** Allow cast to underlying oslSocket. -- */ -- SAL_CALL operator oslSocket() const; -- -- /** Checks if the socket is valid. -- @return True if the object represents a valid socket. -- */ -- sal_Bool SAL_CALL isValid() const; -- -- sal_Bool SAL_CALL operator==( const OSocket& rSocket ) -- { -- return m_pSockRef == rSocket.m_pSockRef; -- } -- -- /** Closes the socket. -- */ -- virtual void SAL_CALL close(); -- -- /** Retrieves the address of the local interface of this socket. -- @param Addr [out] receives the address. -- */ -- void SAL_CALL getLocalAddr(OSocketAddr& Addr) const; -- -- /** Get the local port of the socket. -- @return the port number or OSL_INVALID_PORT on errors. -- */ -- sal_Int32 SAL_CALL getLocalPort() const; -- -- /** Get the hostname for the local interface. -- @return the hostname or an empty string (""). -- */ -- TResult SAL_CALL getLocalHost(::rtl::OUString& strLocalHost) const; -- -- /** Retrieves the address of the remote host of this socket. -- @param Addr [out] receives the address. -- */ -- void SAL_CALL getPeerAddr(OSocketAddr& Addr) const; -- -- /** Get the remote port of the socket. -- @return the port number or OSL_INVALID_PORT on errors. -- */ -- sal_Int32 SAL_CALL getPeerPort() const; -- -- /** Get the hostname for the remote interface. -- @return the hostname or an empty string (""). -- */ -- TResult SAL_CALL getPeerHost(::rtl::OUString& strPeerHost) const; -- -- /** Binds the socket to the specified (local) interface. -- @param LocalInterface Address of the Interface -- @return True if bind was successful. -- */ -- sal_Bool SAL_CALL bind(const OSocketAddr& LocalInterface); -- -- -- /** Blocking send operations will unblock after the send-timeout. -- @return 0 for disables timeout else timeout value. -- */ -- const TimeValue* SAL_CALL getSendTimeout() const -- { return m_pSendTimeout; } -- -- /** Blocking receive operations will unblock after the send-timeout. -- @return 0 for disables timeout else timeout value. -- */ -- const TimeValue* SAL_CALL getRecvTimeout() const -- { return m_pRecvTimeout; } -- -- /** Blocking send operations will unblock after the send-timeout. -- @param time pTimeout == 0 disables timeout. pTimeout != 0 sets timeout value. -- */ -- void SAL_CALL setSendTimeout(const TimeValue* pTimeout = 0); -- -- /** Blocking receive operations will unblock after the send-timeout. -- @param time pTimeout == 0 disables timeout. pTimeout != 0 sets timeout value. -- */ -- void SAL_CALL setRecvTimeout(const TimeValue* pTimeout = 0); -- -- /** Checks if read operations will block. -- You can specify a timeout-value in seconds/nanoseconds that denotes -- how sal_Int32 the operation will block if the Socket is not ready. -- @return True if read operations (recv, recvFrom, accept) on the Socket -- will NOT block; False if it would block or if an error occured. -- -- @param pTimeout if 0, the operation will block without a timeout. Otherwise -- the specified amout of time. -- */ -- sal_Bool SAL_CALL isRecvReady(const TimeValue* pTimeout = 0) const; -- -- /** Checks if send operations will block. -- You can specify a timeout-value in seconds/nanoseconds that denotes -- how sal_Int32 the operation will block if the Socket is not ready. -- @return True if send operations (send, sendTo) on the Socket -- will NOT block; False if it would block or if an error occured. -- -- @param pTimeout if 0, the operation will block without a timeout. Otherwise -- the specified amout of time. -- */ -- sal_Bool SAL_CALL isSendReady(const TimeValue* pTimeout = 0) const; -- -- /** Checks if a request for out-of-band data will block. -- You can specify a timeout-value in seconds/nanoseconds that denotes -- how sal_Int32 the operation will block if the Socket has no pending OOB data. -- -- @return True if OOB-request operations (recv with appropriate flags) -- on the Socket will NOT block; False if it would block or if an error occured. -- -- @param pTimeout if 0, the operation will block without a timeout. Otherwise -- the specified amout of time. -- */ -- sal_Bool SAL_CALL isExceptionPending(const TimeValue* pTimeout = 0) const; -- -- /** Retrieves option-attributes associated with the socket. -- @param Option The attribute to query. -- Valid values (depending on the Level) are: -- <ul> -- <li> TOption_Debug -- <li> TOption_AcceptConn -- <li> TOption_ReuseAddr -- <li> TOption_KeepAlive -- <li> TOption_DontRoute -- <li> TOption_Broadcast -- <li> TOption_UseLoopback -- <li> TOption_Linger -- <li> TOption_OOBinLine -- <li> TOption_SndBuf -- <li> TOption_RcvBuf -- <li> TOption_SndLowat -- <li> TOption_RcvLowat -- <li> TOption_SndTimeo -- <li> TOption_RcvTimeo -- <li> TOption_Error -- <li> TOption_Type -- <li> TOption_TcpNoDelay -- </ul> -- If not above mentioned otherwise, the options are only valid for -- level TLevel_Socket. -- -- @param pBuffer The Buffer will be filled with the attribute. -- -- @param BufferSize The size of pBuffer. -- -- @param Level The option level. Valid values are: -- <ul> -- <li> TLevel_Socket : Socket Level -- <li> TLevel_Tcp : Level of Transmission Control Protocol -- </ul> -- -- @return The size of the attribute copied into pBuffer ot -1 if an error -- occured. -- */ -- sal_Int32 SAL_CALL getOption(TSocketOption Option, -- void* pBuffer, -- sal_uInt32 BufferLen, -- TSocketOptionLevel Level= TLevel_Socket) const; -- -- /** Sets the sockets attributes. -- -- @param Option denotes the option to modify. -- Valid values (depending on the Level) are: -- <ul> -- <li> TOption_Debug -- <li> TOption_AcceptConn -- <li> TOption_ReuseAddr -- <li> TOption_KeepAlive -- <li> TOption_DontRoute -- <li> TOption_Broadcast -- <li> TOption_UseLoopback -- <li> TOption_Linger -- <li> TOption_OOBinLine -- <li> TOption_SndBuf -- <li> TOption_RcvBuf -- <li> TOption_SndLowat -- <li> TOption_RcvLowat -- <li> TOption_SndTimeo -- <li> TOption_RcvTimeo -- <li> TOption_Error -- <li> TOption_Type -- <li> TOption_TcpNoDelay -- </ul> -- If not above mentioned otherwise, the options are only valid for -- level TLevel_Socket. -- -- @param pBuffer Pointer to a Buffer which contains the attribute-value. -- -- @param BufferSize contains the length of the Buffer. -- -- @param Level selects the level for which an option should be changed. -- Valid values are: -- <ul> -- <li> TLevel_Socket : Socket Level -- <li> TLevel_Tcp : Level of Transmission Control Protocol -- </ul> -- -- @return True if the option could be changed. -- */ -- sal_Bool SAL_CALL setOption(TSocketOption Option, -- void* pBuffer, -- sal_uInt32 BufferLen, -- TSocketOptionLevel Level= TLevel_Socket) const; -- -- -- /** Enables/disables non-blocking mode of the socket. -- @param On If True, non-blocking mode will be switched on, if False -- socket will become a blocking socket, which is the default behaviour of a -- socket. -- @return True if mode could be set. -- */ -- sal_Bool SAL_CALL enableNonBlockingMode(sal_Bool On= sal_True); -- -- /** Query non-blocking mode of the socket. -- @return True if non-blocking mode is set. -- */ -- sal_Bool SAL_CALL isNonBlockingMode() const; -- -- /** Queries the socket for its type. -- @return one of: -- <ul> -- <li> TType_Stream -- <li> TType_Dgram -- <li> TType_Raw -- <li> TType_Rdm -- <li> TType_SeqPacket -- <li> TType_Invalid -- </ul> -- */ -- TSocketType SAL_CALL getType() const; -- -- -- /** Gets and clears the error status of the socket. -- @returns the current error state. -- */ -- sal_Int32 SAL_CALL clearError() const; -- -- /** Enables/Disables debugging. -- @param opt 1 sets, 0 resets, -1 won't change anything -- @return the previous setting -- */ -- sal_Int32 SAL_CALL setDebug(sal_Int32 opt = -1) const; -- -- /** Allow the socket to be bound to an address that is already in use. -- @param opt 1 sets, 0 resets, -1 won't change anything -- @return the previous setting -- */ -- sal_Int32 SAL_CALL setReuseAddr(sal_Int32 opt = -1) const; -- -- /** Send keepalive-packets. -- @param opt 1 sets, 0 resets, -1 won't change anything -- @return the previous setting -- */ -- sal_Int32 SAL_CALL setKeepAlive(sal_Int32 opt = -1) const; -- -- /** Do not route: send directly to interface. -- @param opt 1 sets, 0 resets, -1 won't change anything -- @return the previous setting -- */ -- sal_Int32 SAL_CALL setDontRoute(sal_Int32 opt = -1) const; -- -- -- /** Allow transmission of broadcast messages on the socket. -- @param opt 1 sets, 0 resets, -1 won't change anything -- @return the previous setting -- */ -- sal_Int32 SAL_CALL setBroadcast(sal_Int32 opt = -1) const; -- -- /** Receive out-of-band data in the normal data stream. -- @param opt 1 sets, 0 resets, -1 won't change anything -- @return the previous setting -- */ -- sal_Int32 SAL_CALL setOobinline(sal_Int32 opt = -1) const; -- -- /** Linger on close if unsent data is present. -- @param time values > 0 enable lingering with a timeout of time in seconds. -- If time is 0, lingering will be disabled. If time is -1 no changes will occur. -- @return the previous setting (0 == off, > 0 timeout-value in seconds). -- */ -- sal_Int32 SAL_CALL setLinger(sal_Int32 time = -1) const; -- -- /** Specify buffer size for sends. -- You might want to use getOption() to check if the size changes were -- really successful. -- @param size Size >= 0 sets the size, -1 won't change anything. -- @return the previous setting -- */ -- sal_Int32 SAL_CALL setSendBufSize(sal_Int32 size =-1) const; -- -- /** Specify buffer size for receives. -- You might want to use getOption() to check if the size changes were -- really successful. -- @param size Size >= 0 sets the size, -1 won't change anything. -- @return the previous setting -- */ -- sal_Int32 SAL_CALL setRecvBufSize(sal_Int32 size =-1) const; -- -- /** 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 response-times.) -- @param opt 1 sets, 0 resets, -1 won't change anything -- @return the previous setting -- */ -- sal_Int32 SAL_CALL setTcpNoDelay(sal_Int32 sz =-1) const; -- -- /** Builds a string with the last error-message for the socket. -- @param pBuffer is filled with the error message. -- @param nSize the size of pBuffer. The message will be cut -- sal_Int16 if the buffer isn't large enough, but still remains -- a valid zero-terminated string. -- */ -- void SAL_CALL getError(::rtl::OUString& strError) const; -- -- /** Delivers a constant decribing the last error for the socket system. -- @return ENONE if no error occured, invalid_SocketError if -- an unknown (unmapped) error occured, otherwise an enum describing the -- error. -- */ -- TSocketError SAL_CALL getError() const; -- --}; -- --/** A socket to send or receive a stream of data. --*/ --class OStreamSocket : public vos::OSocket, -- public vos::IStream --{ -- VOS_DECLARE_CLASSINFO(vos::OStreamSocket); --public: -- -- /** Creates an unattached socket. You must attach the socket to an oslSocket -- e.g. by using the operator=(oslSocket), before you can use the stream- -- functionality of the object. -- */ -- OStreamSocket(); -- -- -- -- /** Creates socket as wrapper around the underlying oslSocket. -- @param Socket -- */ -- OStreamSocket(oslSocket Socket); -- -- -- /** Copy constructor. -- @param Socket -- */ -- OStreamSocket(const OStreamSocket& Socket); -- -- -- /** -- */ -- OStreamSocket(const OSocket& Socket); -- -- /** Destructor. Calls shutdown(readwrite) and close(). -- */ -- virtual ~OStreamSocket(); -- -- /** Closes the socket after calling shutdown. -- */ -- virtual void SAL_CALL close(); -- -- /** Attaches the oslSocket to this object. If the object -- already was attached to an oslSocket, the old one will -- be closed and destroyed. -- @param Socket. -- */ -- OStreamSocket& SAL_CALL operator=(oslSocket Socket); -- -- /** -- */ -- OStreamSocket& SAL_CALL operator=(const OSocket& Socket); -- -- /** -- */ -- OStreamSocket& SAL_CALL operator=(const OStreamSocket& Socket); -- -- /** Retrieves n bytes from the stream and copies them into pBuffer. -- The method avoids incomplete reads due to packet boundaries. -- @param pBuffer receives the read data. -- @param n the number of bytes to read. pBuffer must be large enough -- to hold the n bytes! -- @return the number of read bytes. The number will only be smaller than -- n if an exceptional condition (e.g. connection closed) occurs. -- */ -- virtual sal_Int32 SAL_CALL read(void* pBuffer, sal_uInt32 n) const; -- -- /** Writes n bytes from pBuffer to the stream. The method avoids -- incomplete writes due to packet boundaries. -- @param pBuffer contains the data to be written. -- @param n the number of bytes to write. -- @return the number of written bytes. The number will only be smaller than -- n if an exceptional condition (e.g. connection closed) occurs. -- */ -- virtual sal_Int32 SAL_CALL write(const void* pBuffer, sal_uInt32 n); -- -- /** Checks if socket is closed. -- @return True if socket is closed. -- */ -- virtual sal_Bool SAL_CALL isEof() const; -- -- /** Tries to receives BytesToRead data from the connected socket, -- -- @param pBuffer [out] Points to a buffer that will be filled with the received -- data. -- @param BytesToRead [in] The number of bytes to read. pBuffer must have at least -- this size. -- @param Flag [in] Modifier for the call. Valid values are: -- <ul> -- <li> TMsg_Normal -- <li> TMsg_OOB -- <li> TMsg_Peek -- <li> TMsg_DontRoute -- <li> TMsg_MaxIOVLen -- </ul> -- -- @return the number of received bytes. -- */ -- sal_Int32 SAL_CALL recv(void* pBuffer, -- sal_uInt32 BytesToRead, -- TSocketMsgFlag Flag= TMsg_Normal); -- -- -- /** Tries to sends BytesToSend data from the connected socket. -- -- @param pBuffer [in] Points to a buffer that contains the send-data. -- @param BytesToSend [in] The number of bytes to send. pBuffer must have at least -- this size. -- @param Flag [in] Modifier for the call. Valid values are: -- <ul> -- <li> TMsg_Normal -- <li> TMsg_OOB -- <li> TMsg_Peek -- <li> TMsg_DontRoute -- <li> TMsg_MaxIOVLen -- </ul> -- -- @return the number of transfered bytes. -- */ -- sal_Int32 SAL_CALL send(const void* pBuffer, -- sal_uInt32 BytesToSend, -- TSocketMsgFlag Flag= TMsg_Normal); -- -- /** Closes a connection in a controlled manner. -- @param Direction Says which "end" of the socket is to be closed. -- */ -- sal_Bool SAL_CALL shutdown(TSocketDirection Direction= TDirection_ReadWrite); --protected: -- -- /** Creates a socket. This constructor is used only by derived classes -- (e.g. OConnectorSocket). -- @param Family -- @param Protocol -- @param Type For some protocols it might be desirable to -- use a different type than sock_stream (like sock_seqpacket). -- Therefore we do not hide this parameter here. -- */ -- OStreamSocket(TAddrFamily Family, -- TProtocol Protocol, -- TSocketType Type= TType_Stream); -- -- --}; -- -- --/** A socket to accept incoming connections. --*/ --class OAcceptorSocket : public vos::OSocket --{ -- VOS_DECLARE_CLASSINFO(vos::OAcceptorSocket); --public: -- -- /** Creates a socket that can accept connections. -- @param Type For some protocols it might be desirable to -- use a different type than sock_stream (like sock_seqpacket). -- Therefore we do not hide this parameter here. -- */ -- OAcceptorSocket(TAddrFamily Family= TFamily_Inet, -- TProtocol Protocol= TProtocol_Ip, -- TSocketType Type= TType_Stream); -- -- /** Copy constructor. -- */ -- OAcceptorSocket(const OAcceptorSocket& Socket); -- -- /** Destructor. Closes the socket and destroys the underlying oslSocket. -- */ -- virtual ~OAcceptorSocket(); -- -- /** Closes the socket. Also calls shutdown, needed to unblock -- accept on some systems. -- */ -- virtual void SAL_CALL close(); -- -- /** Prepare a socket for the accept-call. -- @param MaxPendingConnections The maximum number of pending -- connections (waiting to be accepted) on this socket. If you use -- -1, a system default value is used. -- @return True if call was successful. -- */ -- sal_Bool SAL_CALL listen(sal_Int32 MaxPendingConnections= -1); -- -- /** Accepts incoming connections on the socket. You must -- precede this call with bind() and listen(). -- @param Connection receives the incoming connection. -- @return result_ok: if a connection has been accepted, -- result_timeout: if m_RecvTimeout milliseconds passed without connect, -- result_error: on errors. -- */ -- TResult SAL_CALL acceptConnection(OStreamSocket& Connection); -- -- /** Accepts incoming connections on the socket. You must -- precede this call with bind() and listen(). -- @param PeerAddr receives the address of the connecting entity -- (your communication partner). -- @param Connection receives the incoming connection. -- @return True if a connection has been accepted, False on errors. -- @return result_ok: if a connection has been accepted, -- result_timeout: if m_RecvTimeout milliseconds passed without connect, -- result_error: on errors. -- */ -- TResult SAL_CALL acceptConnection(OStreamSocket& Connection, -- OSocketAddr& PeerAddr); -- --}; -- -- --/** A socket to initiate a conenction. --*/ --class OConnectorSocket : public vos::OStreamSocket --{ -- VOS_DECLARE_CLASSINFO(vos::OConnectorSocket); --public: -- -- /** Creates a socket that can accept connections. -- @param Type For some protocols it might be desirable to -- use a different type than sock_stream (like sock_seqpacket). -- Therefore we do not hide this parameter here. -- */ -- OConnectorSocket(TAddrFamily Family= TFamily_Inet, -- TProtocol Protocol= TProtocol_Ip, -- TSocketType Type= TType_Stream); -- -- /** Copy constructor. Doesn't duplicate oslSocket. -- */ -- OConnectorSocket(const OConnectorSocket& Socket); -- -- /** Destructor. Relies on ~OStreamSocket to close down connection gracefully. -- */ -- virtual ~OConnectorSocket(); -- -- /** Connects the socket to a (remote) host. -- @param TargetHost The address of the target. -- @param msTimeout The timeout in milliseconds. Use -1 to block. -- @return result_ok if connected successfully, -- result_timeout on timeout, -- result_interrupted if unblocked forcefully (by close()), -- result_error if connect failed. -- */ -- TResult SAL_CALL connect(const OSocketAddr& TargetHost, const TimeValue* pTimeout = 0); --}; -- -- --/** A connectionless socket to send and receive datagrams. --*/ --class ODatagramSocket : public vos::OSocket --{ -- VOS_DECLARE_CLASSINFO(vos::ODatagramSocket); --public: -- -- /** Creates a datagram socket. -- @param Type is sock_dgram by default. -- */ -- ODatagramSocket(TAddrFamily Family= TFamily_Inet, -- TProtocol Protocol= TProtocol_Ip, -- TSocketType Type= TType_Dgram); -- -- /** Copy constructor. -- */ -- ODatagramSocket(const ODatagramSocket& Socket); -- -- /** Destructor. Closes the socket. -- */ -- virtual ~ODatagramSocket(); -- -- -- /** Tries to receives BufferSize data from the socket, if no error occurs. -- -- @param pSenderAddr [out] You must provide pointer to a SocketAddr. -- It will be filled with the address of the datagrams sender. -- If pSenderAddr is 0, it is ignored. -- @param pBuffer [out] Points to a buffer that will be filled with the received -- datagram. -- @param BufferSize [in] The size of pBuffer. -- @param Flag [in] Modifier for the call. Valid values are: -- <ul> -- <li> TMsg_Normal -- <li> TMsg_OOB -- <li> TMsg_Peek -- <li> TMsg_DontRoute -- <li> TMsg_MaxIOVLen -- </ul> -- -- @return the number of received bytes. -- */ -- sal_Int32 SAL_CALL recvFrom(void* pBuffer, -- sal_uInt32 BufferSize, -- OSocketAddr* pSenderAddr= 0, -- TSocketMsgFlag Flag= TMsg_Normal); -- -- /** Tries to send one datagram with BytesToSend data to the given ReceiverAddr. -- Since we only send one packet, we don't need to concern ourselfes here with -- incomplete sends due to packet boundaries. -- -- @param ReceiverAddr [in] A SocketAddr that contains -- the destination address for this send. -- -- @param pBuffer [in] Points to a buffer that contains the send-data. -- @param BufferSize [in] The number of bytes to send. pBuffer must have at least -- this size. -- @param Flag [in] Modifier for the call. Valid values are: -- <ul> -- <li> TMsg_Normal -- <li> TMsg_OOB -- <li> TMsg_Peek -- <li> TMsg_DontRoute -- <li> TMsg_MaxIOVLen -- </ul> -- -- @return the number of transfered bytes. -- */ -- sal_Int32 SAL_CALL sendTo(const OSocketAddr& ReceiverAddr, -- const void* pBuffer, -- sal_uInt32 BufferSize, -- TSocketMsgFlag Flag= TMsg_Normal); --}; -- -- -- --} -- --#endif // _VOS_SOCKET_HXX_ -- -diff --git a/vos/source/makefile.mk b/vos/source/makefile.mk -index 0d2ae51..b258071 100644 ---- vos/source/makefile.mk -+++ vos/source/makefile.mk -@@ -48,7 +48,6 @@ ENABLE_EXCEPTIONS=TRUE - SLOFILES= \ - $(SLO)$/object.obj \ - $(SLO)$/refernce.obj \ -- $(SLO)$/socket.obj \ - $(SLO)$/thread.obj \ - $(SLO)$/stream.obj \ - $(SLO)$/timer.obj \ -@@ -60,7 +59,6 @@ SLOFILES= \ - OBJFILES= \ - $(OBJ)$/object.obj \ - $(OBJ)$/refernce.obj \ -- $(OBJ)$/socket.obj \ - $(OBJ)$/thread.obj \ - $(OBJ)$/stream.obj \ - $(OBJ)$/timer.obj \ -diff --git a/vos/source/socket.cxx b/vos/source/socket.cxx -deleted file mode 100644 -index 5c25093..0000000 ---- vos/source/socket.cxx -+++ /dev/null -@@ -1,1734 +0,0 @@ --/************************************************************************* -- * -- * OpenOffice.org - a multi-platform office productivity suite -- * -- * $RCSfile: socket.cxx,v $ -- * -- * $Revision: 1.17 $ -- * -- * last change: $Author: hr $ $Date: 2007/08/02 14:22:09 $ -- * -- * The Contents of this file are made available subject to -- * the terms of GNU Lesser General Public License Version 2.1. -- * -- * -- * GNU Lesser General Public License Version 2.1 -- * ============================================= -- * Copyright 2005 by Sun Microsystems, Inc. -- * 901 San Antonio Road, Palo Alto, CA 94303, USA -- * -- * This library is free software; you can redistribute it and/or -- * modify it under the terms of the GNU Lesser General Public -- * License version 2.1, as published by the Free Software Foundation. -- * -- * This library is distributed in the hope that it will be useful, -- * but WITHOUT ANY WARRANTY; without even the implied warranty of -- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- * Lesser General Public License for more details. -- * -- * You should have received a copy of the GNU Lesser General Public -- * License along with this library; if not, write to the Free Software -- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, -- * MA 02111-1307 USA -- * -- ************************************************************************/ -- --#include <stdio.h> -- --#include <rtl/memory.h> -- --#ifndef _OSL_TIME_H_ --#include <osl/time.h> --#endif --#include <vos/socket.hxx> --#include <osl/diagnose.h> --//#include <osl/tools.h> -- --using namespace vos; -- -- --VOS_IMPLEMENT_CLASSINFO(VOS_CLASSNAME(OSocketAddr, vos), -- VOS_NAMESPACE(OSocketAddr, vos), -- VOS_NAMESPACE(OObject, vos), 0); -- -- --/*****************************************************************************/ --// OSocketAddr() --/*****************************************************************************/ --OSocketAddr::OSocketAddr() --{ -- m_SockAddr= 0; --} -- --/*****************************************************************************/ --// OSocketAddr() --/*****************************************************************************/ --OSocketAddr::OSocketAddr(oslSocketAddr Addr) --{ -- m_SockAddr= Addr; --} -- --/*****************************************************************************/ --// OSocketAddr() --/*****************************************************************************/ --OSocketAddr::OSocketAddr(const OSocketAddr& Addr) : --ISocketAddr(), OObject() --{ -- m_SockAddr= osl_copySocketAddr((oslSocketAddr)Addr); --} -- --/*****************************************************************************/ --// ~OSocketAddr() --/*****************************************************************************/ --OSocketAddr::~OSocketAddr() --{ -- osl_destroySocketAddr(m_SockAddr); --} -- -- --/*****************************************************************************/ --// getFamily() --/*****************************************************************************/ --OSocketAddr::TAddrFamily OSocketAddr::getFamily() const --{ -- return (TAddrFamily)osl_getFamilyOfSocketAddr(m_SockAddr); --} -- --/*****************************************************************************/ --// operator oslSocketAddr () --/*****************************************************************************/ --OSocketAddr::operator oslSocketAddr() const --{ -- return m_SockAddr; --} -- --/*****************************************************************************/ --// getHostname() --/*****************************************************************************/ --OSocketAddr::TResult OSocketAddr::getHostname(rtl::OUString& rBuffer ) const --{ -- return (TResult)osl_getHostnameOfSocketAddr(m_SockAddr, &rBuffer.pData ); --} -- --/*****************************************************************************/ --// getLocalHostname() --/*****************************************************************************/ --OSocketAddr::TResult OSocketAddr::getLocalHostname( rtl::OUString& pBuffer ) --{ -- return (TResult)osl_getLocalHostname( &pBuffer.pData ); --} -- --/*****************************************************************************/ --// resolveHostname() --/*****************************************************************************/ --oslSocketAddr OSocketAddr::resolveHostname(const rtl::OUString& ustrHostname) --{ -- return osl_resolveHostname( ustrHostname.pData ); --} -- --/*****************************************************************************/ --// operator= (oslSocketAddr Addr) --/*****************************************************************************/ --void OSocketAddr::operator= (oslSocketAddr Addr) --{ -- if(m_SockAddr) { -- osl_destroySocketAddr(m_SockAddr); -- } -- -- m_SockAddr= Addr; --} -- --/*****************************************************************************/ --// operator== (oslSocketAddr Addr) --/*****************************************************************************/ --sal_Bool OSocketAddr::operator== (oslSocketAddr Addr) --{ -- return (osl_isEqualSocketAddr(m_SockAddr, Addr)); --} -- --/*****************************************************************************/ --// operator=(const OSocketAddr& Addr) --/*****************************************************************************/ --OSocketAddr& OSocketAddr::operator=(const OSocketAddr& Addr) --{ -- if(m_SockAddr) { -- osl_destroySocketAddr(m_SockAddr); -- } -- -- m_SockAddr= osl_copySocketAddr((oslSocketAddr)Addr); -- -- return *this; --} -- -- --VOS_IMPLEMENT_CLASSINFO(VOS_CLASSNAME(OInetSocketAddr, vos), -- VOS_NAMESPACE(OInetSocketAddr, vos), -- VOS_NAMESPACE(OSocketAddr, vos), 0); -- -- -- --/*****************************************************************************/ --// OInetSocketAddr --// creates arbitrary inet-address (INADDR_ANY) --/*****************************************************************************/ --OInetSocketAddr::OInetSocketAddr() --{ -- m_SockAddr= osl_createEmptySocketAddr(osl_Socket_FamilyInet); --} -- --/*****************************************************************************/ --// OInetSocketAddr --// uses the given oslSocketAddr as its own --/*****************************************************************************/ --OInetSocketAddr::OInetSocketAddr(oslSocketAddr Addr) : -- OSocketAddr(Addr) --{ -- OSL_ASSERT(osl_getFamilyOfSocketAddr(Addr) == osl_Socket_FamilyInet); --} -- --/*****************************************************************************/ --// OInetSocketAddr --// Create a socket address either from a dotted decimal address --//(e.g. 141.99.128.50) or a hostname (e.g. www.stardiv.de). --/*****************************************************************************/ --OInetSocketAddr::OInetSocketAddr(const rtl::OUString& ustrAddrOrHostname, sal_Int32 Port) --{ -- // first try as dotted address. -- m_SockAddr= osl_createInetSocketAddr(ustrAddrOrHostname.pData, Port); -- -- // create failed, maybe it's an hostname -- if(m_SockAddr == 0) -- { -- m_SockAddr= osl_resolveHostname(ustrAddrOrHostname.pData); -- -- // host found? -- if(m_SockAddr) -- { -- // set port will fail if addrtype is not osl_Socket_FamilyInet -- OSL_VERIFY(osl_setInetPortOfSocketAddr(m_SockAddr, Port)); -- } -- } --} -- --/*****************************************************************************/ --// OInetSocketAddr(const OInetSocketAddr&) --/*****************************************************************************/ --OInetSocketAddr::OInetSocketAddr(const OInetSocketAddr& sa) : -- OSocketAddr(sa) --{ -- OSL_ASSERT(getFamily() == TFamily_Inet); --} -- --/*****************************************************************************/ --// OInetSocketAddr(const OSocketAddr&) --/*****************************************************************************/ --OInetSocketAddr::OInetSocketAddr(const OSocketAddr& sa) : -- OSocketAddr(sa) --{ -- OSL_ASSERT(sa.getFamily() == TFamily_Inet); --} -- --/*****************************************************************************/ --// ~OInetSocketAddr --/*****************************************************************************/ --OInetSocketAddr::~OInetSocketAddr() --{ --} -- --/*****************************************************************************/ --// operator= (oslSocketAddr Addr) --/*****************************************************************************/ --void OInetSocketAddr::operator= (oslSocketAddr Addr) --{ -- OSL_PRECOND(osl_getFamilyOfSocketAddr(Addr) == osl_Socket_FamilyInet, -- "oslSocketAddr not of type osl_Socket_FamilyInet!"); -- -- OSocketAddr::operator=(Addr); --} -- --/*****************************************************************************/ --// operator== (oslSocketAddr Addr) --/*****************************************************************************/ --sal_Bool OInetSocketAddr::operator== (oslSocketAddr Addr) --{ -- return (osl_isEqualSocketAddr(m_SockAddr, Addr)); --} -- --/*****************************************************************************/ --// operator=(const OInetSocketAddr& Addr) --/*****************************************************************************/ --OInetSocketAddr& OInetSocketAddr::operator=(const OInetSocketAddr& Addr) --{ -- OSL_ASSERT(Addr.getFamily() == TFamily_Inet); -- -- OSocketAddr::operator=(Addr); -- -- return *this; --} -- --/*****************************************************************************/ --// operator=(const OSocketAddr& Addr) --/*****************************************************************************/ --OInetSocketAddr& OInetSocketAddr::operator=(const OSocketAddr& Addr) --{ -- OSL_ASSERT(Addr.getFamily() == TFamily_Inet); -- -- OSocketAddr::operator=(Addr); -- -- return *this; --} -- --/*****************************************************************************/ --// getServicePort() --/*****************************************************************************/ --sal_Int32 OInetSocketAddr::getServicePort(const rtl::OUString& ustrServiceName, -- const rtl::OUString& ustrProtocolName) --{ -- return osl_getServicePort(ustrServiceName.pData, ustrProtocolName.pData); --} -- -- --/*****************************************************************************/ --// getPort() --/*****************************************************************************/ --sal_Int32 OInetSocketAddr::getPort () const --{ -- return osl_getInetPortOfSocketAddr(m_SockAddr); --} -- -- --/*****************************************************************************/ --// setPort() --/*****************************************************************************/ --sal_Bool OInetSocketAddr::setPort (sal_Int32 Port) --{ -- return osl_setInetPortOfSocketAddr(m_SockAddr, Port); --} -- -- --/*****************************************************************************/ --// getDottedAddr() --/*****************************************************************************/ --OSocketAddr::TResult OInetSocketAddr::getDottedAddr( rtl::OUString& pBuffer ) const --{ -- return (TResult)osl_getDottedInetAddrOfSocketAddr(m_SockAddr, &pBuffer.pData ); --} -- --/*****************************************************************************/ --// setAddr() --/*****************************************************************************/ --sal_Bool OInetSocketAddr::setAddr(const rtl::OUString& ustrAddrOrHostname) --{ -- sal_Int32 Port = 0; -- -- if(m_SockAddr) { -- -- // retrieve old port -- Port= getPort(); -- -- // free old address -- osl_destroySocketAddr(m_SockAddr); -- m_SockAddr= 0; -- } -- -- // first try as dotted address. -- m_SockAddr= osl_createInetSocketAddr(ustrAddrOrHostname.pData, Port); -- -- // create failed, maybe it's an hostname -- if(m_SockAddr == 0) -- { -- -- m_SockAddr= osl_resolveHostname( ustrAddrOrHostname.pData ); -- -- // host found? -- if(m_SockAddr==0) -- { -- return sal_False; -- } -- -- // set port will fail if addrtype is not osl_Socket_FamilyInet -- OSL_VERIFY(osl_setInetPortOfSocketAddr(m_SockAddr, Port)); -- -- } -- -- return sal_True; --} -- --/////////////////////////////////////////////////////////////////////////////// --// OIpxSocketAddr -- --VOS_IMPLEMENT_CLASSINFO(VOS_CLASSNAME(OIpxSocketAddr, vos), -- VOS_NAMESPACE(OIpxSocketAddr, vos), -- VOS_NAMESPACE(OSocketAddr, vos), 0); -- -- --/*****************************************************************************/ --// OIpxSocketAddr() --/*****************************************************************************/ --OIpxSocketAddr::OIpxSocketAddr() --{ -- m_SockAddr= osl_createEmptySocketAddr(osl_Socket_FamilyIpx); --} -- --/*****************************************************************************/ --// OIpxSocketAddr(oslSocketAddr) --/*****************************************************************************/ --OIpxSocketAddr::OIpxSocketAddr(oslSocketAddr Addr) : -- OSocketAddr(Addr) --{ -- OSL_ASSERT(osl_getFamilyOfSocketAddr(Addr) == osl_Socket_FamilyIpx); --} -- --/*****************************************************************************/ --// OIpxSocketAddr() --/*****************************************************************************/ --OIpxSocketAddr::OIpxSocketAddr(const rtl::OUString&, -- const rtl::OUString&, -- sal_uInt32 ) --{ -- // jbu : functionality removed from vos --} -- --/*****************************************************************************/ --// OIpxSocketAddr(OIpxSocketAddr&) --/*****************************************************************************/ --OIpxSocketAddr::OIpxSocketAddr(const OIpxSocketAddr& sa) : -- OSocketAddr(sa) --{ -- OSL_ASSERT(sa.getFamily() == TFamily_Ipx); --} -- -- --/*****************************************************************************/ --// OIpxSocketAddr(OSocketAddr&) --/*****************************************************************************/ --OIpxSocketAddr::OIpxSocketAddr(const OSocketAddr& sa) : -- OSocketAddr(sa) --{ -- OSL_ASSERT(sa.getFamily() == TFamily_Ipx); --} -- --/*****************************************************************************/ --// ~OIpxSocketAddr() --/*****************************************************************************/ --OIpxSocketAddr::~OIpxSocketAddr() --{ --} -- -- --/*****************************************************************************/ --// operator=() --/*****************************************************************************/ --void OIpxSocketAddr::operator= (oslSocketAddr Addr) --{ -- OSL_PRECOND(osl_getFamilyOfSocketAddr(Addr) == osl_Socket_FamilyIpx, -- "oslSocketAddr not of type osl_Socket_FamilyIpx!"); -- -- OSocketAddr::operator=(Addr); --} -- --/*****************************************************************************/ --// operator== (oslSocketAddr Addr) --/*****************************************************************************/ --sal_Bool OIpxSocketAddr::operator== (oslSocketAddr Addr) --{ -- return (osl_isEqualSocketAddr(m_SockAddr, Addr)); --} -- --/*****************************************************************************/ --// operator=(const OIpxSocketAddr& Addr) --/*****************************************************************************/ --OIpxSocketAddr& OIpxSocketAddr::operator=(const OIpxSocketAddr& Addr) --{ -- OSL_ASSERT(Addr.getFamily() == TFamily_Ipx); -- -- OSocketAddr::operator=(Addr); -- -- return *this; --} -- --/*****************************************************************************/ --// operator=(const OSocketAddr& Addr) --/*****************************************************************************/ --OIpxSocketAddr& OIpxSocketAddr::operator=(const OSocketAddr& Addr) --{ -- OSL_ASSERT(Addr.getFamily() == TFamily_Ipx); -- -- OSocketAddr::operator=(Addr); -- -- return *this; --} -- --/*****************************************************************************/ --// getNetNumber() --/*****************************************************************************/ --OSocketAddr::TResult OIpxSocketAddr::getNetNumber(TIpxNetNumber&) const --{ -- // jbu : functionality removed from vos -- return (TResult)0; --} -- --/*****************************************************************************/ --// getNodeNumber() --/*****************************************************************************/ --OSocketAddr::TResult OIpxSocketAddr::getNodeNumber(TIpxNodeNumber& ) const --{ -- // jbu : functionality removed from vos -- return (TResult)0; --} -- --/*****************************************************************************/ --// getSocketNumber() --/*****************************************************************************/ --sal_uInt32 OIpxSocketAddr::getSocketNumber() const --{ --// return osl_getIpxSocketNumber(m_SockAddr); -- return (TResult)0; --} -- -- --/*****************************************************************************/ --// getAddressString() --/*****************************************************************************/ --//void OIpxSocketAddr::getAddressString(sal_Char* Buffer, sal_uInt32 Len) const --void OIpxSocketAddr::getAddressString( rtl::OUString& ) const --{ -- // jbu : functionality removed from vos --} -- -- --/////////////////////////////////////////////////////////////////////////////// --// Socket -- -- --VOS_IMPLEMENT_CLASSINFO(VOS_CLASSNAME(OSocket, vos), -- VOS_NAMESPACE(OSocket, vos), -- VOS_NAMESPACE(OObject, vos), 0); -- --/*****************************************************************************/ --// OSocket() --/*****************************************************************************/ --OSocket::OSocket() --{ -- m_pRecvTimeout = 0; -- m_pSendTimeout = 0; -- -- m_pSockRef= 0; --} -- -- --/*****************************************************************************/ --// OSocket() --/*****************************************************************************/ --OSocket::OSocket(TSocketType Type, -- TAddrFamily Family, -- TProtocol Protocol) --{ -- m_pRecvTimeout = 0; -- m_pSendTimeout = 0; -- -- m_pSockRef= -- new SockRef(osl_createSocket((oslAddrFamily)Family, -- (oslSocketType)Type, -- (oslProtocol)Protocol)); -- -- OSL_POSTCOND(m_pSockRef != 0, "OSocket(): new failed.\n"); -- OSL_POSTCOND((*m_pSockRef)(), "OSocket(): creation of socket failed!\n"); --} -- --/*****************************************************************************/ --// OSocket() --/*****************************************************************************/ --OSocket::OSocket(const OSocket& sock) : --ISocketTypes(), OReference(), OObject() --{ -- m_pRecvTimeout = 0; -- m_pSendTimeout = 0; -- m_pSockRef=0; -- -- OSL_ASSERT(sock.m_pSockRef != 0); -- -- if ( sock.m_pSockRef !=0 ) -- { -- m_pSockRef= sock.m_pSockRef; -- -- setRecvTimeout(sock.m_pRecvTimeout); -- setSendTimeout(sock.m_pSendTimeout); -- -- m_pSockRef->acquire(); -- } --} -- --/*****************************************************************************/ --// OSocket() --/*****************************************************************************/ --OSocket::OSocket(oslSocket Socket) --{ -- m_pRecvTimeout = 0; -- m_pSendTimeout = 0; -- -- m_pSockRef = new SockRef(Socket); --} -- -- --/*****************************************************************************/ --// ~OSocket() --/*****************************************************************************/ --OSocket::~OSocket() --{ -- close(); -- -- delete m_pRecvTimeout; -- delete m_pSendTimeout; --} -- -- --/*****************************************************************************/ --// create --/*****************************************************************************/ --sal_Bool OSocket::create(TSocketType Type, -- TAddrFamily Family, -- TProtocol Protocol) --{ -- // if this was a valid socket, decrease reference -- if ((m_pSockRef) && (m_pSockRef->release() == 0)) -- { -- osl_releaseSocket((*m_pSockRef)()); -- delete m_pSockRef; -- m_pSockRef= 0; -- } -- -- m_pSockRef= -- new SockRef(osl_createSocket((oslAddrFamily)Family, -- (oslSocketType)Type, -- (oslProtocol)Protocol)); -- -- OSL_POSTCOND(m_pSockRef != 0, "OSocket(): new failed.\n"); -- -- return (*m_pSockRef)() != 0; --} -- --/*****************************************************************************/ --// operator= --/*****************************************************************************/ --OSocket& OSocket::operator= (const OSocket& sock) --{ -- OSL_PRECOND(sock.m_pSockRef != 0, "OSocket::operator=: tried to assign an empty/invalid socket\n"); -- -- if (m_pSockRef == sock.m_pSockRef) -- return *this; -- -- // if this was a valid socket, decrease reference -- if ((m_pSockRef) && (m_pSockRef->release() == 0)) -- { -- osl_releaseSocket((*m_pSockRef)()); -- delete m_pSockRef; -- m_pSockRef= 0; -- } -- -- m_pSockRef= sock.m_pSockRef; -- -- setRecvTimeout(sock.m_pRecvTimeout); -- setSendTimeout(sock.m_pSendTimeout); -- -- m_pSockRef->acquire(); -- -- return *this; --} -- --/*****************************************************************************/ --// operator oslSocket() --/*****************************************************************************/ --OSocket::operator oslSocket() const --{ -- OSL_ASSERT(m_pSockRef); -- return (*m_pSockRef)(); --} -- --/*****************************************************************************/ --// isValid() --/*****************************************************************************/ --sal_Bool OSocket::isValid() const --{ -- return m_pSockRef != 0 && (*m_pSockRef)() != 0; --} -- -- --/*****************************************************************************/ --// close --/*****************************************************************************/ --void OSocket::close() --{ -- if (m_pSockRef && (*m_pSockRef)() && (m_pSockRef->release() == 0)) -- { -- osl_releaseSocket((*m_pSockRef)()); -- delete m_pSockRef; -- } -- -- m_pSockRef= 0; --} -- --/*****************************************************************************/ --// getLocalAddr --/*****************************************************************************/ --void OSocket::getLocalAddr(OSocketAddr& sa) const --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- sa= osl_getLocalAddrOfSocket((*m_pSockRef)()); -- } --} -- --/*****************************************************************************/ --// getLocalPort --/*****************************************************************************/ --sal_Int32 OSocket::getLocalPort() const --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- sal_Int32 Port= OSL_INVALID_PORT; -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- oslSocketAddr Addr= osl_getLocalAddrOfSocket((*m_pSockRef)()); -- -- if(Addr) -- { -- Port= osl_getInetPortOfSocketAddr(Addr); -- osl_destroySocketAddr(Addr); -- } -- } -- -- return Port; --} -- --/*****************************************************************************/ --// getLocalHost --/*****************************************************************************/ --OSocket::TResult OSocket::getLocalHost( rtl::OUString& pBuffer) const --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- oslSocketAddr Addr= osl_getLocalAddrOfSocket((*m_pSockRef)()); -- -- if(Addr) -- { --// TResult Result= (TResult)osl_getHostnameOfSocketAddr(Addr, --// pBuffer, BufferSize); -- TResult Result= (TResult)osl_getHostnameOfSocketAddr(Addr, -- &pBuffer.pData ); -- -- osl_destroySocketAddr(Addr); -- -- return Result; -- } -- } -- -- return TResult_Error; --} -- --/*****************************************************************************/ --// getPeerAddr --/*****************************************************************************/ --void OSocket::getPeerAddr(OSocketAddr& sa) const --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- sa= osl_getPeerAddrOfSocket((*m_pSockRef)()); -- } --} -- --/*****************************************************************************/ --// getPeerPort --/*****************************************************************************/ --sal_Int32 OSocket::getPeerPort() const --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- sal_Int32 Port= OSL_INVALID_PORT; -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- oslSocketAddr Addr= osl_getPeerAddrOfSocket((*m_pSockRef)()); -- -- if(Addr) -- { -- Port= osl_getInetPortOfSocketAddr(Addr); -- osl_destroySocketAddr(Addr); -- } -- } -- -- return Port; --} -- --/*****************************************************************************/ --// getPeerHost --/*****************************************************************************/ --OSocket::TResult OSocket::getPeerHost( rtl::OUString& pBuffer ) const --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- oslSocketAddr Addr= osl_getPeerAddrOfSocket((*m_pSockRef)()); -- -- if(Addr) -- { --// TResult Result= (TResult)osl_getHostnameOfSocketAddr(Addr, --// pBuffer, BufferSize); -- TResult Result= (TResult)osl_getHostnameOfSocketAddr(Addr, -- &pBuffer.pData ); -- -- osl_destroySocketAddr(Addr); -- -- return Result; -- } -- } -- -- return TResult_Error; --} -- --/*****************************************************************************/ --// bind --/*****************************************************************************/ --sal_Bool OSocket::bind(const OSocketAddr& Addr) --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- return osl_bindAddrToSocket((*m_pSockRef)(), (oslSocketAddr)Addr); -- } -- -- return sal_False; --} -- -- --/*****************************************************************************/ --// setSendTimeout --/*****************************************************************************/ --void OSocket::setSendTimeout(const TimeValue* pTimeout) --{ -- delete m_pSendTimeout; -- -- if (pTimeout) -- m_pSendTimeout = new TimeValue(*pTimeout); -- else -- m_pSendTimeout = 0; --} -- --/*****************************************************************************/ --// setRecvTimeout --/*****************************************************************************/ --void OSocket::setRecvTimeout(const TimeValue* pTimeout) --{ -- delete m_pRecvTimeout; -- -- if (pTimeout) -- m_pRecvTimeout = new TimeValue(*pTimeout); -- else -- m_pRecvTimeout = 0; --} -- --/*****************************************************************************/ --// isRecvReady --/*****************************************************************************/ --sal_Bool OSocket::isRecvReady(const TimeValue* pTimeout) const --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- return osl_isReceiveReady((*m_pSockRef)(), pTimeout); -- } -- -- return sal_False; --} -- --/*****************************************************************************/ --// isSendReady --/*****************************************************************************/ --sal_Bool OSocket::isSendReady(const TimeValue* pTimeout) const --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- return osl_isSendReady((*m_pSockRef)(), pTimeout); -- } -- -- return sal_False; --} -- --/*****************************************************************************/ --// isExceptionPending --/*****************************************************************************/ --sal_Bool OSocket::isExceptionPending(const TimeValue* pTimeout) const --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- return osl_isExceptionPending((*m_pSockRef)(), pTimeout); -- } -- -- return sal_False; --} -- -- --/*****************************************************************************/ --// getOption --/*****************************************************************************/ --sal_Int32 OSocket::getOption(TSocketOption Option, -- void* pBuffer, -- sal_uInt32 BufferLen, -- TSocketOptionLevel Level) const --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- return osl_getSocketOption((*m_pSockRef)(), -- (oslSocketOptionLevel)Level, -- (oslSocketOption)Option, -- pBuffer, -- BufferLen); -- } -- -- return sal_False; --} -- --/*****************************************************************************/ --// setOption --/*****************************************************************************/ --sal_Bool OSocket::setOption(TSocketOption Option, -- void* pBuffer, -- sal_uInt32 BufferLen, -- TSocketOptionLevel Level) const --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- return osl_setSocketOption((*m_pSockRef)(), -- (oslSocketOptionLevel)Level, -- (oslSocketOption)Option, -- pBuffer, -- BufferLen); -- } -- -- return sal_False; --} -- -- --/*****************************************************************************/ --// enableNonBlockingMode --/*****************************************************************************/ --sal_Bool OSocket::enableNonBlockingMode(sal_Bool On) --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- return osl_enableNonBlockingMode((*m_pSockRef)(), On); -- } -- -- return sal_False; --} -- --/*****************************************************************************/ --// isNonBlockingMode --/*****************************************************************************/ --sal_Bool OSocket::isNonBlockingMode() const --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- return osl_isNonBlockingMode((*m_pSockRef)()); -- } -- -- return sal_False; --} -- --/*****************************************************************************/ --// getType --/*****************************************************************************/ --OSocket::TSocketType OSocket::getType() const --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- return (TSocketType)osl_getSocketType((*m_pSockRef)()); -- } -- -- return TType_Invalid; --} -- --/*****************************************************************************/ --// clearError --/*****************************************************************************/ --sal_Int32 OSocket::clearError() const --{ -- sal_Int32 err = 0; -- -- getOption(TOption_Error, &err, sizeof(err)); -- -- return err; --} -- --/*****************************************************************************/ --// setDebug --/*****************************************************************************/ --sal_Int32 OSocket::setDebug(sal_Int32 opt) const --{ -- sal_Int32 old= 0; -- -- getOption(TOption_Debug, &old, sizeof(old)); -- -- if (opt != -1) -- setOption(TOption_Debug, &opt, sizeof(opt)); -- -- return old; --} -- --/*****************************************************************************/ --// setReuseAddr --/*****************************************************************************/ --sal_Int32 OSocket::setReuseAddr(sal_Int32 opt) const --{ -- sal_Int32 old = 0; -- -- getOption(TOption_ReuseAddr, &old, sizeof(old)); -- -- if (opt != -1) -- setOption(TOption_ReuseAddr, &opt, sizeof(opt)); -- -- return (old); --} -- --/*****************************************************************************/ --// setKeepAlive --/*****************************************************************************/ --sal_Int32 OSocket::setKeepAlive(sal_Int32 opt) const --{ -- sal_Int32 old = 0; -- -- getOption(TOption_KeepAlive, &old, sizeof(old)); -- -- if (opt != -1) -- setOption(TOption_KeepAlive, &opt, sizeof(opt)); -- -- return (old); --} -- --/*****************************************************************************/ --// setDontRoute --/*****************************************************************************/ --sal_Int32 OSocket::setDontRoute(sal_Int32 opt) const --{ -- sal_Int32 old = 0; -- -- getOption(TOption_DontRoute, &old, sizeof(old)); -- -- if (opt != -1) -- setOption(TOption_DontRoute, &opt, sizeof(opt)); -- -- return (old); --} -- --/*****************************************************************************/ --// setBroadcast --/*****************************************************************************/ --sal_Int32 OSocket::setBroadcast(sal_Int32 opt) const --{ -- sal_Int32 old = 0; -- -- getOption(TOption_Broadcast, &old, sizeof(old)); -- -- if (opt != -1) -- setOption(TOption_Broadcast, &opt, sizeof(opt)); -- -- return (old); --} -- --/*****************************************************************************/ --// setOobinline --/*****************************************************************************/ --sal_Int32 OSocket::setOobinline(sal_Int32 opt) const --{ -- sal_Int32 old = 0; -- -- getOption(TOption_OOBinLine, &old, sizeof(old)); -- -- if (opt != -1) -- setOption(TOption_OOBinLine, &opt, sizeof(opt)); -- -- return (old); --} -- --/*****************************************************************************/ --// setLinger --/*****************************************************************************/ --sal_Int32 OSocket::setLinger(sal_Int32 time) const --{ -- /* local decl. of linger-struct */ -- struct SockLinger -- { -- sal_Int32 m_onoff; // option on/off -- sal_Int32 m_linger; // linger time -- }; -- -- -- SockLinger old = { 0, 0 }; -- -- getOption(TOption_Linger, &old, sizeof(old)); -- -- if (time > 0) // enable linger with wait-times > 0 -- { -- SockLinger nw = { 1, time }; -- setOption(TOption_Linger, &nw, sizeof(nw)); -- } -- else if (time == 0) // disable linger with wait-time == 0 -- { -- SockLinger nw = { 0, old.m_linger }; -- setOption(TOption_Linger, &nw, sizeof(nw)); -- } -- -- // returns 0 if linger was off, else the linger-time -- return (old.m_onoff ? old.m_linger : 0); --} -- --/*****************************************************************************/ --// setSendBufSize --/*****************************************************************************/ --sal_Int32 OSocket::setSendBufSize(sal_Int32 sz) const --{ -- sal_Int32 old = 0; -- -- getOption(TOption_SndBuf, &old, sizeof(old)); -- -- if (sz >= 0) -- setOption(TOption_SndBuf, &sz, sizeof(sz)); -- -- return (old); --} -- --/*****************************************************************************/ --// setRecvBufSize --/*****************************************************************************/ --sal_Int32 OSocket::setRecvBufSize(sal_Int32 sz) const --{ -- sal_Int32 old = 0; -- -- getOption(TOption_RcvBuf, &old, sizeof(old)); -- -- if (sz >= 0) -- setOption(TOption_RcvBuf, &sz, sizeof(sz)); -- -- return (old); --} -- --/*****************************************************************************/ --// setTcpNoDelay --/*****************************************************************************/ --sal_Int32 OSocket::setTcpNoDelay(sal_Int32 sz) const --{ -- sal_Int32 old = 0; -- -- getOption(TOption_TcpNoDelay, &old, sizeof(old), TLevel_Tcp); -- -- if (sz >= 0) -- setOption(TOption_TcpNoDelay, &sz, sizeof(sz), TLevel_Tcp); -- -- return (old); --} -- --/*****************************************************************************/ --// getError --/*****************************************************************************/ --//void OSocket::getError(sal_Char* pBuffer, sal_uInt32 nSize) const --void OSocket::getError( rtl::OUString& pBuffer ) const --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if (m_pSockRef && (*m_pSockRef)()) -- osl_getLastSocketErrorDescription((*m_pSockRef)(), &pBuffer.pData ); -- else -- osl_getLastSocketErrorDescription(NULL, &pBuffer.pData ); --} -- --/*****************************************************************************/ --// getError --/*****************************************************************************/ --OSocket::TSocketError OSocket::getError() const --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if (m_pSockRef && (*m_pSockRef)()) -- return (TSocketError)osl_getLastSocketError((*m_pSockRef)()); -- else -- return (TSocketError)osl_getLastSocketError(NULL); --} -- -- -- --VOS_IMPLEMENT_CLASSINFO(VOS_CLASSNAME(OAcceptorSocket, vos), -- VOS_NAMESPACE(OAcceptorSocket, vos), -- VOS_NAMESPACE(OSocket, vos), 0); -- -- --/*****************************************************************************/ --// OAcceptorSocket --/*****************************************************************************/ --OAcceptorSocket::OAcceptorSocket(TAddrFamily Family, -- TProtocol Protocol, -- TSocketType Type) : -- OSocket(Type, Family, Protocol) --{ --} -- --/*****************************************************************************/ --// OAcceptorSocket --/*****************************************************************************/ --OAcceptorSocket::OAcceptorSocket(const OAcceptorSocket& sock) : -- OSocket(sock) --{ --} -- --/*****************************************************************************/ --// ~OAcceptorSocket --/*****************************************************************************/ --OAcceptorSocket::~OAcceptorSocket() --{ -- if (m_pSockRef && (*m_pSockRef)() && (m_pSockRef->release() == 0)) -- { -- /* mfe: prepare for forthcoming api change */ -- osl_closeSocket((*m_pSockRef)()); -- osl_releaseSocket((*m_pSockRef)()); -- delete m_pSockRef; -- m_pSockRef = 0; -- } --} -- --/*****************************************************************************/ --// close --/*****************************************************************************/ --void OAcceptorSocket::close() --{ -- if (m_pSockRef && (*m_pSockRef)() && (m_pSockRef->release() == 0)) -- { -- osl_closeSocket((*m_pSockRef)()); -- } -- -- m_pSockRef= 0; --} -- --/*****************************************************************************/ --// listen --/*****************************************************************************/ --sal_Bool OAcceptorSocket::listen(sal_Int32 MaxPendingConnections) --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- return osl_listenOnSocket((*m_pSockRef)(), MaxPendingConnections); -- } -- -- return sal_False; --} -- -- --/*****************************************************************************/ --// acceptConnection --/*****************************************************************************/ --OSocket::TResult OAcceptorSocket::acceptConnection(OStreamSocket& connection) --{ -- if (m_pRecvTimeout && ! isRecvReady(m_pRecvTimeout)) -- return TResult_TimedOut; -- -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- OStreamSocket aSocket; -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- aSocket = osl_acceptConnectionOnSocket((*m_pSockRef)(), 0); -- } -- -- if( aSocket.isValid() ) -- { -- connection = aSocket; -- return TResult_Ok; -- } -- else -- { -- return TResult_Error; -- } -- --} -- --/*****************************************************************************/ --// acceptConnection --/*****************************************************************************/ --OSocket::TResult OAcceptorSocket::acceptConnection(OStreamSocket& connection, -- OSocketAddr& sa) --{ -- oslSocketAddr PeerAddr = 0; -- oslSocket Socket = 0; -- -- if (m_pRecvTimeout && ! isRecvReady(m_pRecvTimeout)) -- return TResult_TimedOut; -- -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- Socket= osl_acceptConnectionOnSocket((*m_pSockRef)(), &PeerAddr); -- } -- -- if (Socket) -- { -- sa= PeerAddr; -- connection= Socket; -- return TResult_Ok; -- } -- else -- { -- return TResult_Error; -- } --} -- -- --VOS_IMPLEMENT_CLASSINFO(VOS_CLASSNAME(OStreamSocket, vos), -- VOS_NAMESPACE(OStreamSocket, vos), -- VOS_NAMESPACE(OSocket, vos), 0); -- -- -- --/*****************************************************************************/ --// OStreamSocket --/*****************************************************************************/ --OStreamSocket::OStreamSocket() --{ --} -- --/*****************************************************************************/ --// OStreamSocket --/*****************************************************************************/ --OStreamSocket::OStreamSocket(TAddrFamily Family, -- TProtocol Protocol, -- TSocketType Type) : -- OSocket(Type, Family, Protocol) --{ --} -- -- --/*****************************************************************************/ --// OStreamSocket --/*****************************************************************************/ --OStreamSocket::OStreamSocket(oslSocket Socket) : -- OSocket(Socket) --{ --} -- --/*****************************************************************************/ --// OStreamSocket --// copy constructor --/*****************************************************************************/ --OStreamSocket::OStreamSocket(const OStreamSocket& sock) : -- OSocket(sock), IStream() --{ --} -- --/*****************************************************************************/ --// OStreamSocket --// copy constructor --/*****************************************************************************/ --OStreamSocket::OStreamSocket(const OSocket& sock) : -- OSocket(sock) --{ --} -- --/*****************************************************************************/ --// ~OStreamSocket --/*****************************************************************************/ --OStreamSocket::~OStreamSocket() --{ --} -- --/*****************************************************************************/ --// close --/*****************************************************************************/ --void OStreamSocket::close() --{ -- if (m_pSockRef && (*m_pSockRef)() && (m_pSockRef->release() == 0)) -- { -- shutdown(); -- osl_releaseSocket((*m_pSockRef)()); -- delete m_pSockRef; -- } -- -- m_pSockRef= 0; --} -- -- --/*****************************************************************************/ --// operator=(oslSocket) --/*****************************************************************************/ --OStreamSocket& OStreamSocket::operator=(oslSocket Socket) --{ -- OSocket::operator=(Socket); -- -- return *this; --} -- --/*****************************************************************************/ --// operator= --/*****************************************************************************/ --OStreamSocket& OStreamSocket::operator= (const OSocket& sock) --{ -- OSocket::operator=(sock); -- -- return *this; --} -- --/*****************************************************************************/ --// operator= --/*****************************************************************************/ --OStreamSocket& OStreamSocket::operator= (const OStreamSocket& sock) --{ -- OSocket::operator=(sock); -- -- return *this; --} -- --/*****************************************************************************/ --// read --/*****************************************************************************/ --sal_Int32 OStreamSocket::read(void* pBuffer, sal_uInt32 n) const --{ -- sal_uInt8 *Ptr = (sal_uInt8 *)pBuffer; -- -- if (m_pRecvTimeout && ! isRecvReady(m_pRecvTimeout)) -- return 0; -- -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( ! ( m_pSockRef && (*m_pSockRef)() ) ) -- { -- return -1; -- } -- -- /* loop until all desired bytes were read or an error occured */ -- sal_uInt32 BytesRead= 0; -- sal_uInt32 BytesToRead= n; -- while (BytesToRead > 0) -- { -- sal_Int32 RetVal; -- RetVal= osl_receiveSocket((*m_pSockRef)(), -- Ptr, -- BytesToRead, -- osl_Socket_MsgNormal); -- -- /* error occured? */ -- if(RetVal <= 0) -- { -- break; -- } -- -- BytesToRead -= RetVal; -- BytesRead += RetVal; -- Ptr += RetVal; -- -- /* wait for next available data or timeout */ -- if ( BytesToRead > 0 && m_pRecvTimeout && ! isRecvReady(m_pRecvTimeout)) -- break; -- -- } -- -- return BytesRead; --} -- --/*****************************************************************************/ --// write --/*****************************************************************************/ --sal_Int32 OStreamSocket::write(const void* pBuffer, sal_uInt32 n) --{ -- sal_uInt8 *Ptr = (sal_uInt8 *)pBuffer; -- -- if (m_pSendTimeout && ! isSendReady(m_pSendTimeout)) -- return 0; -- -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( ! ( m_pSockRef && (*m_pSockRef)() ) ) -- { -- return -1; -- } -- -- /* loop until all desired bytes were send or an error occured */ -- sal_uInt32 BytesSend= 0; -- sal_uInt32 BytesToSend= n; -- while (BytesToSend > 0) -- { -- sal_Int32 RetVal; -- -- RetVal= osl_sendSocket((*m_pSockRef)(), -- Ptr, -- BytesToSend, -- osl_Socket_MsgNormal); -- -- /* error occured? */ -- if(RetVal <= 0) -- { -- break; -- } -- -- BytesToSend -= RetVal; -- BytesSend += RetVal; -- Ptr += RetVal; -- -- /* wait till new data is available or timeout occures */ -- if ( BytesToSend > 0 && m_pSendTimeout && ! isSendReady(m_pSendTimeout)) -- break; -- } -- -- return BytesSend; --} -- --sal_Bool OStreamSocket::isEof() const --{ -- return isValid(); -- // BHO not enough --} -- --/*****************************************************************************/ --// recv --/*****************************************************************************/ --sal_Int32 OStreamSocket::recv(void* pBuffer, -- sal_uInt32 BytesToRead, -- TSocketMsgFlag Flag) --{ -- if (m_pRecvTimeout && ! isRecvReady(m_pRecvTimeout)) -- return 0; -- -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( ! ( m_pSockRef && (*m_pSockRef)() ) ) -- { -- return -1; -- } -- -- return osl_receiveSocket((*m_pSockRef)(), -- pBuffer, -- BytesToRead, -- (oslSocketMsgFlag)Flag); --} -- --/*****************************************************************************/ --// send --/*****************************************************************************/ --sal_Int32 OStreamSocket::send(const void* pBuffer, -- sal_uInt32 BytesToSend, -- TSocketMsgFlag Flag) --{ -- if (m_pSendTimeout && ! isSendReady(m_pSendTimeout)) -- return 0; -- -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( ! ( m_pSockRef && (*m_pSockRef)() ) ) -- { -- return -1; -- } -- -- return osl_sendSocket((*m_pSockRef)(), -- pBuffer, -- BytesToSend, -- (oslSocketMsgFlag)Flag); --} -- --/*****************************************************************************/ --// shutdown --/*****************************************************************************/ --sal_Bool OStreamSocket::shutdown(TSocketDirection Direction) --{ -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- return osl_shutdownSocket((*m_pSockRef)(), (oslSocketDirection)Direction); -- } -- -- return sal_False; --} -- -- -- --VOS_IMPLEMENT_CLASSINFO(VOS_CLASSNAME(OConnectorSocket, vos), -- VOS_NAMESPACE(OConnectorSocket, vos), -- VOS_NAMESPACE(OStreamSocket, vos), 0); -- -- -- --/*****************************************************************************/ --// OConnectorSocket --/*****************************************************************************/ --OConnectorSocket::OConnectorSocket(TAddrFamily Family, -- TProtocol Protocol, -- TSocketType Type) : -- OStreamSocket(Family, Protocol, Type) --{ --} -- --/*****************************************************************************/ --// OConnectorSocket --/*****************************************************************************/ --OConnectorSocket::OConnectorSocket(const OConnectorSocket& sock) : -- OStreamSocket(sock) --{ --} -- --/*****************************************************************************/ --// ~OConnectorSocket --/*****************************************************************************/ --OConnectorSocket::~OConnectorSocket() --{ --} -- --/*****************************************************************************/ --// connect --/*****************************************************************************/ --OSocket::TResult OConnectorSocket::connect(const OSocketAddr& Addr, -- const TimeValue* pTimeout) --{ -- -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( m_pSockRef && (*m_pSockRef)() ) -- { -- return (TResult)osl_connectSocketTo((*m_pSockRef)(), -- (oslSocketAddr)Addr, -- pTimeout); -- } -- -- return TResult_Error; --} -- -- --VOS_IMPLEMENT_CLASSINFO(VOS_CLASSNAME(ODatagramSocket, vos), -- VOS_NAMESPACE(ODatagramSocket, vos), -- VOS_NAMESPACE(OSocket, vos), 0); -- -- --/*****************************************************************************/ --// ODatagramSocket --/*****************************************************************************/ --ODatagramSocket::ODatagramSocket(TAddrFamily Family, -- TProtocol Protocol, -- TSocketType Type) : -- OSocket(Type, Family, Protocol) --{ --} -- --/*****************************************************************************/ --// ODatagramSocket --/*****************************************************************************/ --ODatagramSocket::ODatagramSocket(const ODatagramSocket& sock) : -- OSocket(sock) --{ --} -- --/*****************************************************************************/ --// ~ODatagramSocket --/*****************************************************************************/ --ODatagramSocket::~ODatagramSocket() --{ --} -- -- --/*****************************************************************************/ --// recvFrom --/*****************************************************************************/ --sal_Int32 ODatagramSocket::recvFrom(void* pBuffer, -- sal_uInt32 BufferSize, -- OSocketAddr* pSenderAddr, -- TSocketMsgFlag Flag) --{ -- -- if (m_pRecvTimeout && ! isRecvReady(m_pRecvTimeout)) -- return 0; -- -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( ! ( m_pSockRef && (*m_pSockRef)() ) ) -- { -- return -1; -- } -- -- sal_Int32 BytesRead; -- -- if(pSenderAddr) -- { -- // we are interested in the senders address -- oslSocketAddr SenderAddr= osl_createEmptySocketAddr(osl_Socket_FamilyInet); -- -- BytesRead= -- osl_receiveFromSocket((*m_pSockRef)(), -- SenderAddr, -- pBuffer, -- BufferSize, -- (oslSocketMsgFlag)Flag); -- -- *pSenderAddr= SenderAddr; -- } -- else -- { -- // we don't want to know the senders address -- -- BytesRead= -- osl_receiveFromSocket((*m_pSockRef)(), -- 0, -- pBuffer, -- BufferSize, -- (oslSocketMsgFlag)Flag); -- } -- -- return BytesRead; --} -- -- --/*****************************************************************************/ --// sendTo --/*****************************************************************************/ --sal_Int32 ODatagramSocket::sendTo(const OSocketAddr& ReceiverAddr, -- const void* pBuffer, -- sal_uInt32 BufferSize, -- TSocketMsgFlag Flag) --{ -- if (m_pSendTimeout && ! isSendReady(m_pSendTimeout)) -- return 0; -- -- OSL_ASSERT(m_pSockRef && (*m_pSockRef)()); -- -- if ( ( m_pSockRef && (*m_pSockRef)() ) ) -- { -- -- return osl_sendToSocket((*m_pSockRef)(), -- (oslSocketAddr)ReceiverAddr, -- pBuffer, -- BufferSize, -- (oslSocketMsgFlag)Flag); -- } -- -- return -1; --} -- |