--- a/genericopenlibs/liboil/tsrc/testsuite/dct/src/dct.c Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/liboil/tsrc/testsuite/dct/src/dct.c Fri Sep 17 08:38:54 2010 +0300
@@ -311,7 +311,7 @@
//float * d_32, const float * s_32
float output[32];
float input[32];
- float linux_output[] = {528.00000000000000000000,-207.42237854003906250000,-0.00000000000002593932,-22.97223091125488281250,-0.00000000000002312733,-8.21512222290039062500,-0.00000000000000679665,-4.14796209335327148438,-0.00000000000003045654,-2.47257304191589355469,0.00000000000000630225,-1.62263202667236328125,0.00000000000008801467,-1.13173198699951171875,-0.00000000000003877801,-0.82146918773651123047,0.00000000000035616302,-0.61161065101623535156,0.00000000000014964419,-0.46168053150177001953,0.00000000000006150462,-0.34939777851104736328,-0.00000000000018143386,-0.26159864664077758789,0.00000000000003763656,-0.19001007080078125000,-0.00000000000012429814,-0.12911282479763031006,-0.00000000000002208823,-0.07497953623533248901,-0.00000000000003485602,-0.02459304779767990112};
+ float expected_output[] = {528.00000000000000000000,-207.42237854003906250000,-0.00000000000002593932,-22.97223091125488281250,-0.00000000000002312733,-8.21512222290039062500,0.00000000000000710542,-4.14796209335327148438,-0.00000000000003045654,-2.47257304191589355469,0.00000000000000630225,-1.62263202667236328125,0.00000000000008801467,-1.13173198699951171875,-0.00000000000003877801,-0.82146918773651123047,0.00000000000035616302,-0.61161065101623535156,0.00000000000014964419,-0.46168053150177001953,0.00000000000006150462,-0.34939777851104736328,-0.00000000000018143386,-0.26159864664077758789,0.00000000000003763656,-0.19001007080078125000,-0.00000000000012429814,-0.12911282479763031006,-0.00000000000002208823,-0.07497953623533248901,-0.00000000000003485602,-0.02459304779767990112};
int i = 0;
for(i=0; i<32; i++)
@@ -324,9 +324,9 @@
for(i=0; i<32; i++)
{
- if(comparefloats(output[i], linux_output[i]))
+ if(comparefloats(output[i], expected_output[i]))
{
- std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %15.14f, actual value - %15.14f", i,linux_output[i],output[i]);
+ std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %15.14f, actual value - %15.14f", i,expected_output[i],output[i]);
assert_failed = 1;
}
}
--- a/genericopenlibs/liboil/tsrc/testsuite/mas/src/mas.c Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/liboil/tsrc/testsuite/mas/src/mas.c Fri Sep 17 08:38:54 2010 +0300
@@ -563,7 +563,7 @@
int16_t input2[8];
int16_t input3[2];
uint8_t output[SIZE];
- int16_t linux_output[] = {3,3,4,5,6,7,8,9,10,10,11,12,13,14,15,16,17,17,18,19};
+ int16_t expected_output[] = {7,8,10,11,13,15,16,18,20,21,23,24,26,28,29,31,33,34,36,37};
int i;
for(i = 0; i < SIZE+7; i++)
@@ -585,9 +585,9 @@
for(i = 0; i < SIZE; i++)
{
- if(output[i] != linux_output[i])
+ if(output[i] != expected_output[i])
{
- std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,linux_output[i],output[i]);
+ std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,expected_output[i],output[i]);
assert_failed = 1;
}
}
--- a/genericopenlibs/liboil/tsrc/testsuite/trans8x8/src/trans8x8.c Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/liboil/tsrc/testsuite/trans8x8/src/trans8x8.c Fri Sep 17 08:38:54 2010 +0300
@@ -70,7 +70,7 @@
//uint16_t * d_8x8, int ds, const uint16_t * s_8x8, int ss
uint16_t output[SIZE];
uint16_t input[SIZE];
- uint16_t linux_output[SIZE] = {2816,8470,14124,19778,14124,19778,25432,31086,33792,36608,39424,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
+ uint16_t expected_output[SIZE] = {2816,5643,8470,11297,14124,16951,19778,22605,28259,33913,39567,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
int i = 0;
for(i=0; i<SIZE; i++)
@@ -83,9 +83,9 @@
for(i=0; i<SIZE; i++)
{
- if(output[i] != linux_output[i])
+ if(output[i] != expected_output[i])
{
- std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,linux_output[i],output[i]);
+ std_log(LOG_FILENAME_LINE, "output[%d]: expected value - %d, actual value - %d", i,expected_output[i],output[i]);
assert_failed = 1;
}
}
@@ -143,12 +143,12 @@
}
}
-int main (int argc, char *argv[])
+int main (/*int argc, char *argv[]*/)
{
oil_init ();
-
- std_log(LOG_FILENAME_LINE,"START oil_trans8x8_f64 TEST");
- test_oil_trans8x8_f64();
+
+ std_log(LOG_FILENAME_LINE,"START oil_trans8x8_u8 TEST");
+ test_oil_trans8x8_u8();
std_log(LOG_FILENAME_LINE,"END TEST\n");
std_log(LOG_FILENAME_LINE,"START oil_trans8x8_u16 TEST");
@@ -159,10 +159,10 @@
test_oil_trans8x8_u32();
std_log(LOG_FILENAME_LINE,"END TEST\n");
- std_log(LOG_FILENAME_LINE,"START oil_trans8x8_u8 TEST");
- test_oil_trans8x8_u8();
+ std_log(LOG_FILENAME_LINE,"START oil_trans8x8_f64 TEST");
+ test_oil_trans8x8_f64();
std_log(LOG_FILENAME_LINE,"END TEST\n");
-
+
if(assert_failed)
std_log(LOG_FILENAME_LINE,"Test Failed");
else
--- a/genericopenlibs/openenvcore/backend/bwins/backendu.def Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/backend/bwins/backendu.def Fri Sep 17 08:38:54 2010 +0300
@@ -170,4 +170,4 @@
_memcpy_r @ 169 NONAME
_memmove_r @ 170 NONAME
_lstat_r @ 171 NONAME
-
+ _unsetdefaultif_r @ 172 NONAME
--- a/genericopenlibs/openenvcore/backend/bwins/backendwolibrtu.def Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/backend/bwins/backendwolibrtu.def Fri Sep 17 08:38:54 2010 +0300
@@ -170,4 +170,4 @@
_memcpy_r @ 169 NONAME
_memmove_r @ 170 NONAME
_lstat_r @ 171 NONAME
-
+ _unsetdefaultif_r @ 172 NONAME
--- a/genericopenlibs/openenvcore/backend/bwins/old_backendu.def Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/backend/bwins/old_backendu.def Fri Sep 17 08:38:54 2010 +0300
@@ -170,4 +170,4 @@
_memcpy_r @ 169 NONAME
_memmove_r @ 170 NONAME
_lstat_r @ 171 NONAME
-
+ _unsetdefaultif_r @ 172 NONAME
--- a/genericopenlibs/openenvcore/backend/eabi/backendu.def Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/backend/eabi/backendu.def Fri Sep 17 08:38:54 2010 +0300
@@ -174,4 +174,4 @@
_memcpy_r @ 173 NONAME
_memmove_r @ 174 NONAME
_lstat_r @ 175 NONAME
-
+ _unsetdefaultif_r @ 176 NONAME
--- a/genericopenlibs/openenvcore/backend/eabi/backendwolibrtu.def Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/backend/eabi/backendwolibrtu.def Fri Sep 17 08:38:54 2010 +0300
@@ -174,4 +174,4 @@
_memcpy_r @ 173 NONAME
_memmove_r @ 174 NONAME
_lstat_r @ 175 NONAME
-
+ _unsetdefaultif_r @ 176 NONAME
--- a/genericopenlibs/openenvcore/backend/eabi/old_backendu.def Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/backend/eabi/old_backendu.def Fri Sep 17 08:38:54 2010 +0300
@@ -174,4 +174,4 @@
_memcpy_r @ 173 NONAME
_memmove_r @ 174 NONAME
_lstat_r @ 175 NONAME
-
+ _unsetdefaultif_r @ 176 NONAME
--- a/genericopenlibs/openenvcore/backend/inc/fdesc.h Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/backend/inc/fdesc.h Fri Sep 17 08:38:54 2010 +0300
@@ -22,6 +22,7 @@
#define _FDESC_H
#include <e32std.h>
+#include <e32atomics.h>
#include <e32cons.h>
#include <f32file.h>
#include <es_sock.h>
@@ -64,6 +65,22 @@
#endif //SYMBIAN_OE_LARGE_FILE_SUPPORT && !SYMBIAN_OE_NO_LFS
+// Atomic socket operations support
+
+#define ATOMICSOCKETOP(realcall,on_error) \
+ { \
+ if (__e32_atomic_tau_ord32((void *)&iCount, 0x8000, 0, 1) >= 0x8000) \
+ { \
+ on_error; \
+ } \
+ else \
+ { \
+ realcall; \
+ __e32_atomic_tas_ord32((void *)&iCount, 0, -1, 0); \
+ } \
+ }
+
+#define NOP
//Enumarations for Polling
enum TPollMode
@@ -511,10 +528,20 @@
iIoctlLock.Signal();
return iSelectEvents();
}
- inline int CreateLock()
+
+ inline TInt CreateLock()
{
- return (iIoctlLock.CreateLocal(1)|| iReadLock.CreateLocal() || iWriteLock.CreateLocal());
+ TInt err = iIoctlLock.CreateLocal(1) || iReadLock.CreateLocal() || iWriteLock.CreateLocal();
+ if (err != KErrNone)
+ {
+ // closes on unopened handles are safe
+ iIoctlLock.Close();
+ iReadLock.Close();
+ iWriteLock.Close();
+ }
+ return err;
}
+
inline RSemaphore& GetIoctlLock()
{
return iIoctlLock;
@@ -531,9 +558,9 @@
protected:
//rearrange these
- CSockDescBase():iAddrFamily(-1),iProtocol(KUndefinedProtocol),iIoctlFlag(EFalse)
+ CSockDescBase():iAddrFamily(-1),iProtocol(KUndefinedProtocol),iIoctlFlag(EFalse),iCount(0)
{
-
+
}
RSocket iSocket;
TSockXfrLength iLength;
@@ -545,8 +572,10 @@
// For preventing simultaneous ioctl calls.
// No native support.
RSemaphore iIoctlLock;
+ // Is this required?
TBool iIoctlFlag;
-
+ // Safeguard against issue of a second Read/Write request while the first is pending.
+ // The iReadLock also guards OpenUsingPreference
//For locking the descriptor before any operation.
//To make it thread safe.
RFastLock iReadLock;
@@ -555,6 +584,7 @@
//Flag to mark the connect status of a non-blocking socket as "in progress"
//to prevent duplicate connection request
TBool iConnectInProgress;
+ volatile TInt iCount;
protected:
inline TInt isStream() const // inline, but private
@@ -659,6 +689,22 @@
TInt GetInterfaceDetails( void *aParam ,TInt aFlag, TInt aType );
TInt SetInterafceParamInfo( void *aParam,TInt aType);
TInt SetInterfaceDetails( void *aParam ,TInt aFlag, TInt aType );
+
+ TInt maybe_reopen_socket()
+ {
+ TInt err = KErrNone;
+ if (!__e32_atomic_load_acq32(&iSocketPtr))
+ {
+ iReadLock.Wait();
+ if (!iSocketPtr)
+ {
+ err = OpenUsingPreference();
+ }
+ iReadLock.Signal();
+ }
+ return err;
+ }
+
enum InterfaceType
{
EACCESS_POINT,
--- a/genericopenlibs/openenvcore/backend/inc/sysif.h Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/backend/inc/sysif.h Fri Sep 17 08:38:54 2010 +0300
@@ -506,7 +506,7 @@
int aselect(int maxfd, fd_set *readfds, fd_set *writefds,fd_set *exceptfds, struct timeval *tvptr, TRequestStatus* requeststatus,int& anErrno);
- int cancelaselect(TRequestStatus* requeststatus,int& anErrno,int performcleanup = 0);
+ int cancelaselect(TRequestStatus* requeststatus, int& anErrno, TBool perform_cleanup = EFalse);
int eselect(int maxfd, fd_set *readfds, fd_set *writefds,fd_set *exceptfds, struct timeval *tvptr, int arraycount,TRequestStatus* waitarray,int& anErrno);
@@ -552,6 +552,7 @@
//Set the default interface for network operations
int setdefaultif(const struct ifreq* aIfReq);
+ int unsetdefaultif(TBool allow_bringup = ETrue);
IMPORT_C CFileDescBase* GetDesc(int aFid);
@@ -669,6 +670,10 @@
RConnection iDefConnection;
//Protect the iDefConnection from concurrent GetDefaultConnection calls
RFastLock iDefConnLock;
+ //Calling unsetdefaultif(), instead of setdefaultif(NULL) ensures that the torn down
+ //connection is not brought back up again, by subsequent socket/network calls.
+ //This variable enables this facility. It is reset to default (ETrue) by setdefaultif(<pref>)
+ TBool iDefConnResurrect;
//Lock for protecting iASelectRequest across threads
RFastLock iASelectLock;
--- a/genericopenlibs/openenvcore/backend/inc/sysreent.h Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/backend/inc/sysreent.h Fri Sep 17 08:38:54 2010 +0300
@@ -243,6 +243,7 @@
struct ifreq;
IMPORT_C int _setdefaultif_r(int *aErrno, const struct ifreq* aIfReq);
+IMPORT_C int _unsetdefaultif_r(int *aErrno);
IMPORT_C void *_memcpy_r(void *dst0, const void *src0, size_t length);
IMPORT_C void *_memmove_r(void *dst0, const void *src0, size_t length);
--- a/genericopenlibs/openenvcore/backend/src/corebackend/fdesc.cpp Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/backend/src/corebackend/fdesc.cpp Fri Sep 17 08:38:54 2010 +0300
@@ -333,7 +333,7 @@
if (!socketBase)
{
err=KErrNoMemory;
- return 0;
+ return NULL;
}
err = socketBase->Socket(aSs,family,style,protocol);
--- a/genericopenlibs/openenvcore/backend/src/corebackend/localif.cpp Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/backend/src/corebackend/localif.cpp Fri Sep 17 08:38:54 2010 +0300
@@ -82,7 +82,7 @@
// Construction of Backend Object which is going to be singleton object for the process
EXPORT_C CLocalSystemInterface::CLocalSystemInterface() : iOpenDirList(CLocalSystemInterface::KDirGran),
-iTLDInfoList(CLocalSystemInterface::KTLDInfoListGran), iDefConnPref(NULL)
+iTLDInfoList(CLocalSystemInterface::KTLDInfoListGran), iDefConnResurrect(ETrue), iDefConnPref(NULL)
{
#ifdef SYMBIAN_OE_POSIX_SIGNALS
iSignalsInitialized = EFalse;
@@ -1588,37 +1588,50 @@
if(!err)
{
- // Check if a connection request is already in progress
- // for a non-blocking socket.
- if(f->GetConnectionProgress())
+ // Check if a connection request is already in progress for a non-blocking socket.
+ if (f->GetConnectionProgress())
{
- // Poll to see if the connect() is completed
- err = f->Poll( EReadyForWriting );
-
- // The above Poll is common for all descriptors.
- // In case of socket-descriptors, Poll will either return "KErrNone"
- // or any of the requested events. To check for Poll error in case of
- // socket-descriptors, "iPollErr" should be checked.
- if( (err < 0) || (f->iPollErr < 0) ) //Error in poll
- (err < 0) ? (mapErr = err):(mapErr = f->iPollErr);
- else if( err == 0 ) //Connect still in progress
- mapErr = EALREADY;
- else if( err & EReadyForWriting ) //Connect has completed
- f->SetConnectionProgress(EFalse);
+ mapErr = f->iPollErr;
+
+ if (f->iPollErr < 0)
+ {
+ mapErr = f->iPollErr;
+ f->iPollErr = 0;
+ f->SetConnectionProgress(EFalse);
+ }
+ else
+ {
+ // Poll to see if the connect() is completed
+ err = f->Poll(EReadyForWriting);
+ // The above Poll is common for all descriptors.
+ // In case of socket-descriptors, Poll will either return "KErrNone"
+ // or any of the requested events. To check for Poll error in case of
+ // socket-descriptors, "iPollErr" should be checked.
+ if (f->iPollErr < 0)
+ {
+ mapErr = f->iPollErr;
+ f->iPollErr = 0;
+ }
+ else if (err == 0) //Connect still in progress
+ mapErr = EALREADY;
+ else if (err & EReadyForWriting)
+ {
+ mapErr = EISCONN;
+ }
+ }
}
if(!mapErr)
{
TRequestStatus status;
f->Connect(addr,size,status);
- err=status.Int();
+ err = status.Int();
if (err == KErrWouldBlock)
{
- f->SetConnectionProgress(ETrue);
mapErr = EINPROGRESS;
}
- else if(err == KErrAlreadyExists)
+ else if (err == KErrAlreadyExists)
{
mapErr = EISCONN;
}
@@ -1786,26 +1799,25 @@
// CLocalSystemInterface::aselect
// -----------------------------------------------------------------------------
//
-int CLocalSystemInterface::cancelaselect(TRequestStatus* requeststatus,int& anErrno,int performcleanup)
+int CLocalSystemInterface::cancelaselect(TRequestStatus* requeststatus, int& anErrno, TBool perform_cleanup)
{
iASelectLock.Wait();
// Search for the aselect request entry in the aselect request array
- for ( TInt i=0; i<iASelectRequest.Count(); i++ )
+ for (TInt i = 0; i < iASelectRequest.Count(); ++i)
{
- if( (iASelectRequest[i].iRequestStatus == requeststatus) || performcleanup )
+ if (iASelectRequest[i].iRequestStatus == requeststatus || perform_cleanup)
{
// The specified request exists
- RThread threadHandle;
+ RThread thread;
// Open a handle to the service thread
- TInt res = threadHandle.Open(iASelectRequest[i].iThreadId,EOwnerThread);
- if( res == KErrNone )
+ TInt res = thread.Open(iASelectRequest[i].iThreadId,EOwnerThread);
+ if (res == KErrNone)
{
// Kill the service thread
- threadHandle.Kill(KErrCancel);
- threadHandle.Close();
- if( !performcleanup )
+ thread.Kill(KErrCancel);
+ thread.Close();
+ if (!perform_cleanup)
{
- // Complete the request with KErrcancel
User::RequestComplete(iASelectRequest[i].iRequestStatus,KErrCancel);
}
// Switch to backend heap
@@ -1814,15 +1826,15 @@
iASelectRequest.Remove(i);
// Switch back to old heap
User::SwitchHeap(oldHeap);
- if( !performcleanup )
+ if (!perform_cleanup)
{
iASelectLock.Signal();
- return MapError(KErrNone, anErrno);
+ return KErrNone;
}
}
else
{
- if( !performcleanup )
+ if (!perform_cleanup)
{
iASelectLock.Signal();
// unable to open a handle to the service thread
@@ -1833,14 +1845,7 @@
}
iASelectLock.Signal();
// No request found with the specified TRequestStatus object
- if( !performcleanup )
- {
- return MapError(KErrNotFound, anErrno);
- }
- else
- {
- return MapError(KErrNone, anErrno);
- }
+ return MapError((!perform_cleanup ? KErrNotFound : KErrNone), anErrno);
}
// -----------------------------------------------------------------------------
// CLocalSystemInterface::ASelectRequest
@@ -2195,20 +2200,28 @@
if ( (*reqarray[i]).Int() != KRequestPending )
{
TInt readyevents = fdesc->TweakReadyEvents((*reqarray[i]).Int());
- if (readfds && FD_ISSET(reqfds[i], readfds) && (readyevents & EReadyForReading) )
+ TInt event_marked = EFalse;
+ if (readfds && FD_ISSET(reqfds[i], readfds) && (readyevents & EReadyForReading))
{
FD_SET(reqfds[i], &retreadfds);
- ++nDescriptorsSet;
+ ++nDescriptorsSet;
+ event_marked = ETrue;
+
}
if(writefds && FD_ISSET(reqfds[i], writefds) && (readyevents & EReadyForWriting) )
{
FD_SET(reqfds[i], &retwritefds);
+
+ event_marked = ETrue;
++nDescriptorsSet;
}
if(exceptfds && FD_ISSET(reqfds[i], exceptfds) && (readyevents & EAnyException))
{
+ if (!fdesc->GetConnectionProgress() || !event_marked)
+ {
FD_SET(reqfds[i], &retexceptfds);
++nDescriptorsSet;
+ }
}
}
else
@@ -3771,8 +3784,8 @@
// -----------------------------------------------------------------------------
// CLocalSystemInterface::StartDefConnection
//
-// Helper function for the setdefaultif() API to restart the
-// default RConnection with the new settings.
+// Helper function for the setdefaultif() API to start the
+// default RConnection with/without preferences
// -----------------------------------------------------------------------------
//
TInt CLocalSystemInterface::StartDefConnection()
@@ -3794,6 +3807,42 @@
return err;
}
+TInt CLocalSystemInterface::unsetdefaultif(TBool allow_bringup)
+ {
+ iDefConnLock.Wait();
+ if (iDefConnection.SubSessionHandle() != 0)
+ {
+ TUint count = iSocketArray.Count();
+ for (TInt i = 0; i < count; ++i)
+ {
+ iSocketArray[i]->TempClose();
+ }
+ iDefConnection.Close();
+ }
+
+ RHeap* oheap = User::SwitchHeap(iPrivateHeap);
+ iSocketArray.Reset();
+
+ if (iDefConnPref)
+ {
+ if (iDefConnPref->ExtensionId() == TConnPref::EConnPrefSnap)
+ {
+ delete (TCommSnapPref*)iDefConnPref;
+ }
+ else
+ {
+ delete (TCommDbConnPref*)iDefConnPref;
+ }
+ }
+ User::SwitchHeap(oheap);
+
+ iDefConnPref = NULL;
+ iDefConnResurrect = allow_bringup;
+ iDefConnLock.Signal();
+ return KErrNone;
+ }
+
+
// -----------------------------------------------------------------------------
// CLocalSystemInterface::setdefaultif
//
@@ -3802,147 +3851,78 @@
//
int CLocalSystemInterface::setdefaultif(const struct ifreq* aIfReq)
{
- //If the argument is NULL, close the existing connection
- if(aIfReq == NULL )
- {
- // Obtain lock on the iDefConnection
- iDefConnLock.Wait();
-
- if (iDefConnection.SubSessionHandle() != 0)
+ // Do this in any case - whether the argument be a valid pref or NULL
+ iDefConnResurrect = ETrue;
+
+ // If the argument is NULL, tear down existing connection
+ if (aIfReq == NULL)
{
- TUint count = iSocketArray.Count();
- for (TInt i = 0; i < count; ++i)
- {
- iSocketArray[i]->TempClose();
- }
- iDefConnection.Close();
- RHeap* oheap = User::SwitchHeap(iPrivateHeap);
- iSocketArray.Reset();
- User::SwitchHeap(oheap);
- }
-
- if( iDefConnPref )
- {
- switch( iDefConnPref->ExtensionId() )
- {
- case TConnPref::EConnPrefSnap:
- {
- RHeap* oldHeap = User::SwitchHeap(iPrivateHeap);
- delete (TCommSnapPref*)iDefConnPref;
- // Switch back to old heap
- User::SwitchHeap(oldHeap);
- iDefConnPref = NULL;
- }
- break;
-
- case TConnPref::EConnPrefCommDb:
- {
- RHeap* oldHeap = User::SwitchHeap(iPrivateHeap);
- delete (TCommDbConnPref*)iDefConnPref;
- // Switch back to old heap
- User::SwitchHeap(oldHeap);
- iDefConnPref = NULL;
- }
- break;
-
- default:
- {
- iDefConnLock.Signal();
- // Unknown type of Connection Pref
- return KErrUnknown;
- }
- }
- }
- // Release lock on the iDefConnection
- iDefConnLock.Signal();
- return KErrNone;
+ return unsetdefaultif();
}
TPtrC8 namePtr((TText8*)aIfReq->ifr_name);
TBuf<KCommsDbSvrMaxColumnNameLength> name;
- TInt err = CnvUtfConverter::ConvertToUnicodeFromUtf8(name,namePtr);
- if( err != KErrNone )
+
+ TInt err = CnvUtfConverter::ConvertToUnicodeFromUtf8(name, namePtr);
+ if (err != KErrNone)
return err;
-
- if( iDefConnPref )
+
+ if (name.Length() == 0)
{
- switch( iDefConnPref->ExtensionId() )
+ // interface name is an empty string, SNAP id is specified in ifr_ifru.snap_id
+ if (iDefConnPref && iDefConnPref->ExtensionId() == TConnPref::EConnPrefSnap)
{
- case TConnPref::EConnPrefSnap:
- {
- RHeap* oldHeap = User::SwitchHeap(iPrivateHeap);
- delete (TCommSnapPref*)iDefConnPref;
- // Switch back to old heap
- User::SwitchHeap(oldHeap);
- iDefConnPref = NULL;
- }
- break;
-
- case TConnPref::EConnPrefCommDb:
- {
- RHeap* oldHeap = User::SwitchHeap(iPrivateHeap);
- delete (TCommDbConnPref*)iDefConnPref;
- // Switch back to old heap
- User::SwitchHeap(oldHeap);
- iDefConnPref = NULL;
- }
- break;
-
- default:
- {
- // Unknown type of Connection Pref
- return KErrUnknown;
- }
+ ((TCommSnapPref*)iDefConnPref)->SetSnap(aIfReq->ifr_ifru.snap_id);
+ return KErrNone;
}
- }
-
- // If the interface name is an empty string, the SNAP id is to be set
- if(name.Length() == 0)
- {
- // Switch to backend heap
+
RHeap* oldHeap = User::SwitchHeap(iPrivateHeap);
+ delete (TCommDbConnPref*)iDefConnPref; // may be a delete(NULL)
iDefConnPref = new TCommSnapPref;
- // Switch back to old heap
User::SwitchHeap(oldHeap);
- if( iDefConnPref == NULL )
+
+ if (!iDefConnPref)
{
return KErrNoMemory;
}
- TCommSnapPref* snapprefptr = (TCommSnapPref*)iDefConnPref;
- snapprefptr->SetSnap(aIfReq->ifr_ifru.snap_id);
+
+ ((TCommSnapPref*)iDefConnPref)->SetSnap(aIfReq->ifr_ifru.snap_id);
return KErrNone;
}
- else //Set the IAP name
+
+ CTrapCleanup *cleanupStack = NULL;
+
+ // Create a cleanup stack if one doesn't exist
+ if (User::TrapHandler() == NULL)
{
- CTrapCleanup *cleanupStack = NULL;
- //Create a clean up stack if it is not existing.
- if(User::TrapHandler() == NULL)
- {
- cleanupStack = CTrapCleanup::New(); //This will be deleted after use
- if(cleanupStack == NULL)
- return KErrNoMemory;
- }
-
- // Switch to backend heap
- RHeap* oldHeap = User::SwitchHeap(iPrivateHeap);
+ cleanupStack = CTrapCleanup::New();
+ if (cleanupStack == NULL)
+ return KErrNoMemory;
+ }
+
+ if (iDefConnPref && iDefConnPref->ExtensionId() == TConnPref::EConnPrefCommDb)
+ {
+ TRAP(err, (err = GetConnectionPreferencesL(name, *(TCommDbConnPref*)iDefConnPref)));
+ }
+ else
+ {
+ RHeap *oldHeap = User::SwitchHeap(iPrivateHeap);
+ delete (TCommSnapPref*)iDefConnPref;
iDefConnPref = new TCommDbConnPref;
- // Switch back to old heap
User::SwitchHeap(oldHeap);
- if( iDefConnPref == NULL )
+
+ if (iDefConnPref)
{
- if( cleanupStack != NULL )
- delete cleanupStack;
- return KErrNoMemory;
+ TRAP(err, (err = GetConnectionPreferencesL(name, *(TCommDbConnPref*)iDefConnPref)));
}
- TRAP(err, (err = GetConnectionPreferencesL(name,*(TCommDbConnPref*)iDefConnPref)))
-
- if( cleanupStack != NULL )
- delete cleanupStack;
-
- return err;
}
+
+ delete cleanupStack;
+
+ return (iDefConnPref ? KErrNone : KErrNoMemory);
}
+
// -----------------------------------------------------------------------------
// CLocalSystemInterface::GetDefaultConnection
//
@@ -3953,16 +3933,16 @@
RConnection& CLocalSystemInterface::GetDefaultConnection()
{
// If GetDefaultConnection is called without calling
- // setdefaultif then the connection started without any preferences
+ // setdefaultif then the connection is started without any preferences
// Obtain lock on the iDefConnection
iDefConnLock.Wait();
- if(iDefConnection.SubSessionHandle() == 0)
+ if(iDefConnection.SubSessionHandle() == 0 && iDefConnResurrect)
{
StartDefConnection();
}
// Release lock on the iDefConnection
iDefConnLock.Signal();
- return iDefConnection;
+ return iDefConnection;
}
// -----------------------------------------------------------------------------
--- a/genericopenlibs/openenvcore/backend/src/corebackend/usocket.cpp Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/backend/src/corebackend/usocket.cpp Fri Sep 17 08:38:54 2010 +0300
@@ -76,7 +76,7 @@
// We have to deal with the network byte ordering of AF_INET addresses
//
{
- if (aBuf==0)
+ if (!aBuf)
{
iError = EFAULT;
SetLength(0);
@@ -194,10 +194,10 @@
}
}
+/*
+ * Extract a struct sockaddr from a TSockAddr
+ */
EXPORT_C void TUSockAddr::Get(TAny* addr, unsigned long* len)
-//
-// Extract a struct sockaddr from a TSockAddr
-//
{
if (addr==0)
{
@@ -393,18 +393,15 @@
void CSocketDesc::Write (TDes8& aBuf, TRequestStatus& aStatus)
{
- //Acquire the Lock before write and release it later
- iWriteLock.Wait();
- if (iSocketPtr == NULL)
- {
- TInt ret = OpenUsingPreference();
- if (ret != KErrNone) // Error in open
- {
- Complete(aStatus,ret);
- iWriteLock.Signal();
- return;
- }
- }
+
+ TInt err = maybe_reopen_socket();
+ if (err != KErrNone)
+ {
+ Complete(aStatus, err);
+ return;
+ }
+
+ iWriteLock.Wait();
CSockDescBase::Write(aBuf, aStatus);
iWriteLock.Signal();
}
@@ -427,52 +424,43 @@
{
return addr.iError;
}
-
- if (iSocketPtr == NULL)
- {
- ret = OpenUsingPreference();
- if (ret != KErrNone) // Error in open
- {
- return ret;
- }
- }
- return iSocket.Bind(addr);
+
+ ret = maybe_reopen_socket();
+ if (ret != KErrNone)
+ return ret;
+ ATOMICSOCKETOP(ret = iSocket.Bind(addr),return KErrBadHandle)
+ return ret;
}
TInt CSocketDesc::Listen(TUint qSize)
{
+
+ TInt ret;
if (iStyle == SOCK_DGRAM) // Listen on UDP socket, crashing at RSocket::Listen().
{
return EOPNOTSUPP;
}
- if (iSocketPtr == NULL)
- {
- TInt ret = OpenUsingPreference();
- if (ret != KErrNone) // Error in open
- {
- return ret;
- }
- }
+
+ ret = maybe_reopen_socket();
+ if (ret != KErrNone)
+ return ret;
+
return CSockDescBase::Listen(qSize);
}
TInt CSocketDesc::SockName(int anEnd, struct sockaddr* anAddr,unsigned long* aSize)
{
- TInt ret;
- if (iSocketPtr == NULL)
+
+
+ if (!anAddr)
{
- ret = OpenUsingPreference();
- if (ret != KErrNone) // Error in open
- {
- return ret;
- }
- }
-
- if ( anAddr == 0 ) // if the sockaddr passed is NULL return EFAULT.
- {
- return EFAULT;
+ return EFAULT;
}
+ TInt ret = maybe_reopen_socket();
+ if (ret != KErrNone)
+ return ret;
+
struct sockaddr temp;
unsigned long len = sizeof( temp );
@@ -503,24 +491,19 @@
{
return EINVAL;
}
- if (iSocketPtr == NULL)
- {
- ret = OpenUsingPreference();
- if (ret != KErrNone) // Error in open
- {
- return ret;
- }
- }
+
+ ret = maybe_reopen_socket();
+ if (ret != KErrNone)
+ return ret;
if (SO_TYPE == anOptionName && SOL_SOCKET == anOptionLevel)
{
TProtocolDesc protocolInfo;
- ret = iSocket.Info(protocolInfo);
+ ATOMICSOCKETOP(ret = iSocket.Info(protocolInfo), ret = KErrBadHandle)
if (KErrNone == ret )
{
- //Copy the Socket Type to the buffer
- TInt size;
- size = (anOption.Length() < sizeof(protocolInfo.iSockType))? anOption.Length(): sizeof(protocolInfo.iSockType);
+ // Copy the Socket Type to the buffer
+ TInt size = (anOption.Length() < sizeof(protocolInfo.iSockType))? anOption.Length(): sizeof(protocolInfo.iSockType);
Mem::Copy((unsigned char*)anOption.Ptr(), &protocolInfo.iSockType, size);
anOption.SetLength(size);
}
@@ -532,20 +515,16 @@
TUSockAddr addr;
struct sockaddr_in sockAddress;
sockAddress.sin_family = AF_INET;
- sockAddress.sin_port = iSocket.LocalPort();
- iSocket.LocalName(addr);
-
+ ATOMICSOCKETOP(sockAddress.sin_port = iSocket.LocalPort(),return KErrBadHandle)
+ ATOMICSOCKETOP(iSocket.LocalName(addr);,return KErrBadHandle)
TInt a = sizeof(sockAddress);
addr.Get(&sockAddress,(unsigned long*)&a);
- TInt size;
- size = (anOption.Length() < sizeof(sockAddress.sin_addr))? anOption.Length(): sizeof(sockAddress.sin_addr);
+ TInt size = (anOption.Length() < sizeof(sockAddress.sin_addr))? anOption.Length(): sizeof(sockAddress.sin_addr);
Mem::Copy((unsigned char*)anOption.Ptr(), &(sockAddress.sin_addr), size);
anOption.SetLength(size);
return KErrNone;
}
-
-
switch(anOptionLevel)
{
case IPPROTO_TCP:
@@ -583,8 +562,8 @@
anOptionName=KSoIp6MulticastLoop;
break;
}
-
- return iSocket.GetOpt(anOptionName,anOptionLevel,anOption);
+ ATOMICSOCKETOP(ret = iSocket.GetOpt(anOptionName,anOptionLevel,anOption), return KErrBadHandle)
+ return ret;
}
TInt CSocketDesc::GetInterfaceIndex(TUint32 anAddr)
@@ -598,12 +577,14 @@
}
else
{
- TInt ret = iSocket.SetOpt(KSoInetEnumInterfaces, KSolInetIfCtrl);
+ TInt ret = KErrNone;
+ ATOMICSOCKETOP(ret = iSocket.SetOpt(KSoInetEnumInterfaces, KSolInetIfCtrl), ret = KErrBadHandle)
if (ret != KErrNone)
return KErrGeneral;
TPckgBuf<TSoInetInterfaceInfo>iface;
- while(iSocket.GetOpt(KSoInetNextInterface, KSolInetIfCtrl, iface) == KErrNone)
+ ATOMICSOCKETOP( ret = iSocket.GetOpt(KSoInetNextInterface, KSolInetIfCtrl, iface), ret = KErrBadHandle )
+ while(ret == KErrNone)
{
TSoInetInterfaceInfo &info = iface();
TInt result;
@@ -612,13 +593,13 @@
if (anAddr == info.iAddress.Address())
{
ifq().iName = info.iName;
- result = iSocket.GetOpt(KSoInetIfQueryByName, KSolInetIfQuery, ifq);
+ ATOMICSOCKETOP( result = iSocket.GetOpt(KSoInetIfQueryByName, KSolInetIfQuery, ifq), result = KErrBadHandle )
if (result == KErrNone)
aIndex = ifq().iIndex;
}
}
-
+ ATOMICSOCKETOP( ret = iSocket.GetOpt(KSoInetNextInterface, KSolInetIfCtrl, iface), ret = KErrBadHandle )
}
}
return aIndex;
@@ -635,14 +616,10 @@
{
return EINVAL;
}
- if (iSocketPtr == NULL)
- {
- ret = OpenUsingPreference();
- if (ret != KErrNone) // Error in open
- {
- return ret;
- }
- }
+
+ ret = maybe_reopen_socket();
+ if (ret != KErrNone)
+ return ret;
switch(anOptionLevel)
{
@@ -694,30 +671,26 @@
maddr=(from[0]<<24)+(from[1]<<16)+(from[2]<<8)+from[3];
multiAddr.SetAddress( maddr);
multiAddr.ConvertToV4Mapped();
- if(multiAddr.IsMulticast()){
- req().iAddr = multiAddr.Ip6Address();
- req().iInterface = aIndex;
- }
- return iSocket.SetOpt(anOptionName, anOptionLevel, req);
+ if (multiAddr.IsMulticast())
+ {
+ req().iAddr = multiAddr.Ip6Address();
+ req().iInterface = aIndex;
+ }
+ ATOMICSOCKETOP( ret = iSocket.SetOpt(anOptionName, anOptionLevel, req), return KErrBadHandle )
+ return ret;
case IP_MULTICAST_TTL:
anOptionLevel=KSolInetIp;
anOptionName=KSoIp6MulticastHops;
Option = (TInt*)anOption.Ptr();
ttlValue = *Option;
- return iSocket.SetOpt(anOptionName,anOptionLevel,ttlValue);
-
+ ATOMICSOCKETOP( ret = iSocket.SetOpt(anOptionName,anOptionLevel,ttlValue), return KErrBadHandle )
+ return ret;
+
case SO_BROADCAST:
//check if user is trying to disable broadcast
Option = (TInt*)anOption.Ptr();
- if (*Option == 0)
- {
- return KErrNotSupported;
- }
- else
- {
- return KErrNone;
- }
+ return (*Option == 0 ? KErrNotSupported : KErrNone);
case IP_MULTICAST_IF:
{
@@ -726,10 +699,11 @@
struct in_addr *inAddress = (struct in_addr*)anOption.Ptr();
struct sockaddr_in sockAddress;
sockAddress.sin_family = AF_INET;
- sockAddress.sin_port = iSocket.LocalPort();
+ ATOMICSOCKETOP(sockAddress.sin_port = iSocket.LocalPort();,return KErrBadHandle)
sockAddress.sin_addr.s_addr = inAddress->s_addr;
- TUSockAddr ifAddress(&sockAddress, sizeof(sockAddress));
- return iSocket.Bind(ifAddress);
+ TUSockAddr ifAddress(&sockAddress, sizeof(sockAddress));
+ ATOMICSOCKETOP( ret = iSocket.Bind(ifAddress), return KErrBadHandle )
+ return ret;
}
case IP_MULTICAST_LOOP:
@@ -737,11 +711,11 @@
anOptionName=KSoIp6MulticastLoop;
break;
- default:
- break;
+
}
- return iSocket.SetOpt(anOptionName,anOptionLevel,anOption);
+ ATOMICSOCKETOP( ret = iSocket.SetOpt(anOptionName,anOptionLevel,anOption), return KErrBadHandle )
+ return ret;
}
void CSocketDesc::Sync (TRequestStatus& aStatus)
@@ -752,19 +726,14 @@
void CSocketDesc::RecvFrom(TDes8& aDesc, TSockAddr& from, int flags, TRequestStatus& aStatus)
{
+ TInt err = maybe_reopen_socket();
+ if (err != KErrNone)
+ {
+ Complete(aStatus, err);
+ return;
+ }
+
iReadLock.Wait();
- // RSocket::Open() is postponed from socket()
- if (iSocketPtr == NULL)
- {
- TInt ret = OpenUsingPreference();
- if (ret != KErrNone)
- {
- Complete(aStatus,ret); // Error in open
- iReadLock.Signal();
- return;
- }
- }
-
CSockDescBase::RecvFrom(aDesc, from, flags, aStatus);
iReadLock.Signal();
}
@@ -780,25 +749,23 @@
void CSocketDesc::SendTo(TDes8& aDesc, const struct sockaddr* anAddr, unsigned long aAddrLen, int flags, TRequestStatus& aStatus)
{
- iWriteLock.Wait();
-
- if (iSocketPtr == NULL)
- {
- TInt ret = OpenUsingPreference();
- if (ret != KErrNone)
- {
- Complete(aStatus,ret); // Error in open
- iWriteLock.Signal();
- return;
- }
- }
- TUSockAddr toAddr(anAddr,aAddrLen);
+ TInt err = maybe_reopen_socket();
+ if (err != KErrNone)
+ {
+ Complete(aStatus, err);
+ return;
+ }
+
+ TUSockAddr toAddr(anAddr, aAddrLen);
+
+ iWriteLock.Wait();
CSockDescBase::SendTo(aDesc, toAddr, flags, aStatus);
iWriteLock.Signal();
}
void CSocketDesc::SendToCancel()
{
+// Should we use atomic loads here?
if (iSocketPtr != NULL)
{
CSockDescBase::SendToCancel();
@@ -807,7 +774,8 @@
void CSocketDesc::Shutdown(TUint aHow,TRequestStatus& aStatus)
{
- if (iSocketPtr == NULL) // Not opened at all. Nothing to do.
+
+ if (__e32_atomic_load_acq32(&iSocketPtr) == NULL) // Not opened at all. Nothing to do.
{
Complete(aStatus,KErrNone);
return;
@@ -819,52 +787,61 @@
void CSocketDesc::Accept(CFileDescBase*& aNewSocket, TRequestStatus& aStatus, RSocketServ& aSs, TSockAddr * /*aAddr*/)
{
- //Acquire the Lock before accept and release it later
+ aNewSocket = NULL;
+ TInt err = maybe_reopen_socket();
+ if (err != KErrNone)
+ {
+ Complete(aStatus, err);
+ return;
+ }
+
iReadLock.Wait();
-
- TInt err = KErrNone;
- if (iSocketPtr == NULL)
- {
- err = OpenUsingPreference();
- if (err != KErrNone) // Error in open
- {
- Complete(aStatus,err);
- iReadLock.Signal();
- return;
- }
- }
-
+ // what are the below coverity thingummichs?
//coverity[alloc_fn]
//coverity[assign]
CSocketDesc *newSocket = new CSocketDesc;
- if (newSocket!=0)
+ if (!newSocket)
+ {
+ Complete(aStatus, KErrNoMemory);
+ iReadLock.Signal();
+ return;
+ }
+
+ err = newSocket->CreateLock();
+ if (err)
{
- err = newSocket->CreateLock();
- if (err)
- {
- Complete(aStatus, KErrNoMemory);
- delete newSocket;
- aNewSocket = NULL;
- iReadLock.Signal();
- //coverity[memory_leak]
- return;
- }
+ Complete(aStatus, KErrNoMemory);
+ delete newSocket;
+ iReadLock.Signal();
+ //coverity[memory_leak]
+ return;
+ }
- err=newSocket->iSocket.Open(aSs);
- }
- if (newSocket ==0 || err!=KErrNone)
+ err = newSocket->iSocket.Open(aSs);
+ if (err)
{
- Complete(aStatus,KErrNoMemory);
+ Complete(aStatus, err);
+ newSocket->FinalClose(); // this will Close locks
delete newSocket;
- aNewSocket = NULL;
+
iReadLock.Signal();
//coverity[memory_leak]
return;
}
newSocket->iSocketPtr = &newSocket->iSocket;
newSocket->iStyle = iStyle;
- iSocket.Accept(newSocket->iSocket,aStatus);
- aNewSocket = newSocket;
+ err = KErrNone;
+ ATOMICSOCKETOP( iSocket.Accept(newSocket->iSocket,aStatus), err = KErrBadHandle )
+ if( err )
+ {
+ Complete(aStatus, err);
+ newSocket->FinalClose(); // this will Close locks
+ delete newSocket;
+ }
+ else
+ {
+ aNewSocket = newSocket;
+ }
iReadLock.Signal();
}
@@ -872,7 +849,7 @@
{
if (iSocketPtr != NULL)
{
- iSocket.CancelAccept();
+ ATOMICSOCKETOP( iSocket.CancelAccept(), NOP )
}
}
@@ -885,56 +862,63 @@
aStatus = addr.iError;
return;
}
- if (iSocketPtr == NULL)
- {
- // RSocket::Open() is postponed from socket()
- TInt ret = OpenUsingPreference();
- if (ret != KErrNone) // error in open
- {
- aStatus = ret;
- return;
- }
- }
-
- iSocket.Connect(addr,aStatus);
- User::WaitForRequest(aStatus);
+
+ TInt err = maybe_reopen_socket();
+ if (err != KErrNone)
+ {
+ aStatus = err;
+ return;
+ }
+
+ iWriteLock.Wait();
+ if( GetConnectionProgress() == EFalse )
+ {
+ ATOMICSOCKETOP(iSocket.Connect(addr, aStatus), Complete(aStatus,KErrBadHandle))
+ User::WaitForRequest(aStatus);
+ if( aStatus.Int() == KErrWouldBlock )
+ SetConnectionProgress(ETrue);
+ }
+ else
+ {
+ aStatus = EALREADY;
+ }
+ iWriteLock.Signal();
}
void CSocketDesc::ConnectCancel()
{
if (iSocketPtr != NULL)
{
- iSocket.CancelConnect();
+ ATOMICSOCKETOP(iSocket.CancelConnect(),NOP)
}
}
void CSocketDesc::Ioctl(int aCmd, void* aParam, TRequestStatus& aStatus)
{
- TInt ret=KErrNone;
+ TInt ret = KErrNone;
int* param = reinterpret_cast<int*>(aParam);
- if (iSocketPtr == NULL)
- {
- ret = OpenUsingPreference();
- if (ret != KErrNone) // Error in open
- {
- Complete(aStatus,ret);
- return;
- }
- }
+ ret = maybe_reopen_socket();
+ if (ret != KErrNone)
+ {
+ Complete(aStatus, ret);
+ return;
+ }
switch ((unsigned)aCmd)
{
case FIONREAD:
case E32IONREAD:
- ret=iSocket.GetOpt(KSOReadBytesPending,KSOLSocket,*param);
+ {
+ ATOMICSOCKETOP( ret=iSocket.GetOpt(KSOReadBytesPending,KSOLSocket,*param), ret = KErrBadHandle )
+ }
break;
case E32IOSELECT:
{
iIoctlBuf.Set((TText8*)aParam,4,4);
iIoctlLock.Wait();
iIoctlFlag = ETrue;
- iSocket.Ioctl(KIOctlSelect,aStatus,&iIoctlBuf,KSOLSocket);
+ ATOMICSOCKETOP(iSocket.Ioctl(KIOctlSelect,aStatus,&iIoctlBuf,KSOLSocket), Complete(aStatus,KErrBadHandle))
}
return;
case SIOCGIFCONF:
@@ -969,7 +953,7 @@
ret = StopInterface(aParam);
break;
case SIOCATMARK:
- ret=iSocket.GetOpt(KSoTcpRcvAtMark,KSolInetTcp,*param);
+ ATOMICSOCKETOP(ret=iSocket.GetOpt(KSoTcpRcvAtMark,KSolInetTcp,*param), ret = KErrBadHandle)
break;
case SIOCGIFADDR:
ret = GetIpAddress(aParam);
@@ -1011,7 +995,7 @@
{
if (iSocketPtr && iIoctlFlag)
{
- iSocket.CancelIoctl();
+ ATOMICSOCKETOP(iSocket.CancelIoctl(), NOP)
iIoctlLock.Signal();
iIoctlFlag = EFalse;
}
@@ -1026,27 +1010,25 @@
//
TInt CSocketDesc::Fcntl(TUint anArg, TUint aCmd)
{
- if (iSocketPtr == NULL)
- {
- TInt ret = OpenUsingPreference();
- if (ret != KErrNone) // Error in open
- {
- return ret;
- }
- }
- return CSockDescBase::Fcntl(anArg, aCmd);
+
+ TInt err = maybe_reopen_socket();
+ if (err != KErrNone)
+ return err;
+
+ return CSockDescBase::Fcntl(anArg, aCmd);
}
TInt CSocketDesc :: GetIpAddress( void *aParam )
{
TInetAddr myAddr;
- iSocket.LocalName(myAddr);
+ ATOMICSOCKETOP( iSocket.LocalName(myAddr), return KErrBadHandle )
TUint32 myIP = myAddr.Address();
- ifreq *ifr = (ifreq *)aParam;
- if(myIP == 0)
+ if (myIP == 0)
{
return KErrGeneral;
}
+
+ ifreq *ifr = (ifreq *)aParam;
((struct sockaddr_in *)&ifr->ifr_addr)->sin_addr.s_addr = myIP;
return KErrNone;
}
@@ -1054,13 +1036,14 @@
TInt CSocketDesc :: GetRemoteIpAddress( void *aParam )
{
TInetAddr remoteAddr;
- iSocket.RemoteName(remoteAddr);
+ ATOMICSOCKETOP( iSocket.RemoteName(remoteAddr), return KErrBadHandle )
TUint32 remoteIP = remoteAddr.Address();
- ifreq *ifr = (ifreq *)aParam;
- if(remoteIP == 0)
+
+ if (remoteIP == 0)
{
return KErrGeneral;
}
+ ifreq *ifr = (ifreq *)aParam;
((struct sockaddr_in *)&ifr->ifr_dstaddr)->sin_addr.s_addr = remoteIP;
return KErrNone;
}
@@ -1208,16 +1191,16 @@
TPckgBuf<TSoInetIfQuery> ifq;
TBuf8 <25> ipBuf8;
TName aBuf;
-
- TInt ret = iSocket.SetOpt(KSoInetEnumInterfaces, KSolInetIfCtrl);
+ TInt ret = KErrNone;
+ ATOMICSOCKETOP( ret = iSocket.SetOpt(KSoInetEnumInterfaces, KSolInetIfCtrl), ret = KErrBadHandle )
if (ret != KErrNone)
{
return KErrGeneral;
}
TPckgBuf<TSoInet6InterfaceInfo> info;
TSoInet6InterfaceInfo &in = info();
-
- while(iSocket.GetOpt(KSoInetNextInterface, KSolInetIfCtrl, info) == KErrNone)
+ ATOMICSOCKETOP( ret = iSocket.GetOpt(KSoInetNextInterface, KSolInetIfCtrl, info), ret = KErrBadHandle )
+ while(ret == KErrNone)
{
if(info().iName != _L("") && info().iName != _L("loop6") && info().iName != _L("loop4"))
{
@@ -1324,28 +1307,33 @@
}
}
- }
+ }
+ ATOMICSOCKETOP( ret = iSocket.GetOpt(KSoInetNextInterface, KSolInetIfCtrl, info), ret = KErrBadHandle )
}
setout:
TPckgBuf<TSoInet6InterfaceInfo> changeToNew(info());
- return iSocket.SetOpt(KSoInetConfigInterface, KSolInetIfCtrl,changeToNew);
+ ATOMICSOCKETOP(ret = iSocket.SetOpt(KSoInetConfigInterface, KSolInetIfCtrl,changeToNew), return KErrBadHandle )
+ return ret;
}
#endif // __SYMBIAN_COMPILE_UNUSED__
TInt CSocketDesc::GetInterfaceDetails( void *aParam ,TInt aFlag, TInt aType )
{
- ifreq *ifr = (ifreq *)aParam;
TPckgBuf<TSoInetIfQuery> ifq;
- TInt ret = iSocket.SetOpt(KSoInetEnumInterfaces, KSolInetIfCtrl);
+ TInt ret = KErrNone;
+ ATOMICSOCKETOP( ret = iSocket.SetOpt(KSoInetEnumInterfaces, KSolInetIfCtrl), ret = KErrBadHandle )
if (ret != KErrNone)
{
return KErrGeneral;
}
+
+ ifreq *ifr = (ifreq *)aParam;
*(ifr->ifr_addr.sa_data) = '\0';
TPckgBuf<TSoInetInterfaceInfo> info;
- while(iSocket.GetOpt(KSoInetNextInterface, KSolInetIfCtrl, info) == KErrNone)
+ ATOMICSOCKETOP( ret = iSocket.GetOpt(KSoInetNextInterface, KSolInetIfCtrl, info), ret = KErrBadHandle )
+ while( ret == KErrNone)
{
if(info().iName != _L("") && info().iName != _L("loop6") && info().iName != _L("loop4"))
@@ -1460,12 +1448,12 @@
if(info().iFeatures&KIfCanSetHardwareAddr) */
break;
- default:
- break;
+
}
}
- }
+ }
+ ATOMICSOCKETOP( ret = iSocket.GetOpt(KSoInetNextInterface, KSolInetIfCtrl, info), ret = KErrBadHandle )
}
return KErrNone;
@@ -1473,19 +1461,14 @@
TInt CSocketDesc::Poll(TPollMode aMode,TBool& aReadyStatus,TInt& aErrno)
{
- TInt ret;
-
- if (iSocketPtr == NULL)
- {
- ret = OpenUsingPreference();
- if (ret != KErrNone) // Error in open
- {
- return ret;
- }
- }
+ TInt ret = maybe_reopen_socket();
+ if (ret != KErrNone)
+ {
+ return ret;
+ }
TInt status;
- ret = iSocket.GetOpt(KSOSelectPoll, KSOLSocket, status);
+ ATOMICSOCKETOP(ret = iSocket.GetOpt(KSOSelectPoll, KSOLSocket, status), ret = KErrBadHandle)
if (ret == KErrNone)
{
aReadyStatus = status & aMode;
@@ -1497,16 +1480,11 @@
/* The synchronous - non-blocking Poll */
TInt CSocketDesc::Poll(TUint aEvents)
{
- TInt err = 0;
- if (iSocketPtr == NULL)
- {
- err = OpenUsingPreference();
- if (err != KErrNone) // Error in open
- {
- return err;
- }
- }
+ TInt err = maybe_reopen_socket();
+ if (err != KErrNone)
+ return err;
+
return CSockDescBase::Poll(aEvents);
}
@@ -1567,6 +1545,8 @@
TInt ifCount = ifc.ifc_len / sizeof(ifreq);
TInt i = 0;
+ // We wouldn't need this if we were using a StrNcmp below
+ ifrQuery->ifr_name[IFNAMSIZ-1] = 0; // don't assume NULL terminated input
// Search for the interface name
for (; i < ifCount; i++, ifr++)
{
@@ -1612,11 +1592,10 @@
ret = KErrArgument;
}
- if (ret != KErrNone)
- {
- return ret;
- }
- ifc->ifc_len = sizeof(ifreq) * count;
+ if (ret == KErrNone)
+ {
+ ifc->ifc_len = sizeof(ifreq) * count;
+ }
return ret;
}
@@ -1656,7 +1635,7 @@
for (apIndex = 0; apIndex < length; apIndex++,ifr++)
{
TAccessPointRecord& ref = (*apArray)[apIndex];
- // Catch the character pointer
+ ifr->ifr_name[IFNAMSIZ-1] = 0; // don't assume NULL terminated input
TPtr8 ptr((TText8*)ifr->ifr_name, IFNAMSIZ);
ret = CnvUtfConverter::ConvertFromUnicodeToUtf8(ptr, ref.iName);
@@ -1705,12 +1684,12 @@
TInt CSocketDesc::SetInterfaceByName(void *aParam)
{
ifreq *ifr = (ifreq *)aParam;
- if (ifr == NULL)
+ if (!ifr)
{
return KErrArgument;
}
- // Copy the null terminated interface name
+ ifr->ifr_name[IFNAMSIZ-1] = 0; // don't assume NULL terminated input
TPtrC8 ptr((TText8*)ifr->ifr_name);
TInt ret = CnvUtfConverter::ConvertToUnicodeFromUtf8(iConnPref.iName,ptr);
if(ret > KErrNone )
@@ -1773,20 +1752,34 @@
}
else // No connection preference is set
{
- ret = iSocket.Open(*iSockServPtr,addrfamily,iStyle,iProtocol);
- }
- }
-
- if(KErrNone == ret)
- {
- iSocketPtr = &iSocket;
- }
- iConnectInProgress = EFalse;
- return ret;
- }
+ ret = ECONNABORTED;
+ }
+ }
+
+ if (ret == KErrNone)
+ {
+ __e32_atomic_store_rel32(&iSocketPtr, (unsigned long)&iSocket);
+ }
+
+ iConnectInProgress = EFalse;
+
+ return ret;
+ }
void CSocketDesc::TempClose()
{
+ TUint32 ret = __e32_atomic_ior_ord32((void *)&iCount,0x8000);
+ if( ret >= 0x8000 )
+ {
+ // This indicates a TempClose has already been done from one of the threads
+ return;
+ }
+ // loop and yeild till no more references are held to the iSocket
+ while( iCount != 0x8000 )
+ {
+ // Yeild for 1 ms
+ User::After(1000);
+ }
if (iSocket.SubSessionHandle() != 0)
{
iSocketPtr = NULL;
@@ -2125,7 +2118,8 @@
ConvertRtEntry(iroute(), rt);
//add the entry
- return iSocket.SetOpt(aReq, KSolInetRtCtrl, iroute);
+ ATOMICSOCKETOP( ret = iSocket.SetOpt(aReq, KSolInetRtCtrl, iroute),return KErrBadHandle )
+ return ret;
}
return KErrUnknown;
@@ -2175,22 +2169,23 @@
TInt CSocketDesc::GetInterfaceByName(const TDesC& aIfName, TPckgBuf<TSoInetInterfaceInfo>& aIface)
{
- TInt ret = iSocket.SetOpt(KSoInetEnumInterfaces, KSolInetIfCtrl);
+ TInt ret = KErrNone;
+ ATOMICSOCKETOP(ret = iSocket.SetOpt(KSoInetEnumInterfaces, KSolInetIfCtrl), ret = KErrBadHandle)
if (ret != KErrNone)
{
return ret;
}
TPckgBuf<TSoInetInterfaceInfo> iface;
- while((ret = iSocket.GetOpt(KSoInetNextInterface, KSolInetIfCtrl, iface)) == KErrNone)
+ ATOMICSOCKETOP(ret = iSocket.GetOpt(KSoInetNextInterface, KSolInetIfCtrl, iface), ret = KErrBadHandle)
+ while(ret == KErrNone)
{
- if(!iface().iAddress.IsUnspecified()
- && iface().iName.CompareF(aIfName) == 0)
+ if (!iface().iAddress.IsUnspecified() && iface().iName.CompareF(aIfName) == 0)
{
aIface = iface;
return ret;
}
+ ATOMICSOCKETOP( ret = iSocket.GetOpt(KSoInetNextInterface, KSolInetIfCtrl, iface), ret = KErrBadHandle )
}
-
return KErrUnknown;
}
@@ -2203,27 +2198,25 @@
return KErrArgument;
}
- if (ifr->ifr_name[0]!='\0')
+ if (ifr->ifr_name[0] != '\0')
{
- TPckgBuf<TSoInetInterfaceInfo> iface;
- TFileName name;
- name.Copy(TPtrC8((TText8*)ifr->ifr_name));
-
- TInt ret = GetInterfaceByName(name, iface);
-
- if (ret != KErrNone)
- {
- return ret;
- }
-
- if(iface().iHwAddr.Length() > sizeof(SSockAddr))
- {
- Mem::Copy(&(ifr->ifr_hwaddr.sa_data[0]),&(iface().iHwAddr[sizeof(SSockAddr)]), 6);
- ifr->ifr_hwaddr.sa_family = (TUint16)iface().iHwAddr.Family();
- ifr->ifr_hwaddr.sa_port = ByteOrder::Swap16(iface().iHwAddr.Port());
- return ret;
+ TPckgBuf<TSoInetInterfaceInfo> iface;
+ TFileName name;
+ ifr->ifr_name[IFNAMSIZ-1] = 0; // don't assume NULL terminated input
+ name.Copy(TPtrC8((TText8*)ifr->ifr_name));
+
+ TInt ret = GetInterfaceByName(name, iface);
+ if (ret != KErrNone)
+ return ret;
+
+ if (iface().iHwAddr.Length() > sizeof(SSockAddr))
+ {
+ Mem::Copy(&(ifr->ifr_hwaddr.sa_data[0]),&(iface().iHwAddr[sizeof(SSockAddr)]), 6);
+ ifr->ifr_hwaddr.sa_family = (TUint16)iface().iHwAddr.Family();
+ ifr->ifr_hwaddr.sa_port = ByteOrder::Swap16(iface().iHwAddr.Port());
+ return ret;
+ }
}
- }
return KErrUnknown;
}
@@ -2236,14 +2229,15 @@
TInt CSocketDesc::GetActiveInterface( void *aParam)
{
TInt ifindex = -1;
- TInt ret = iSocket.GetOpt(KSoInterfaceIndex, KSolInetIp , ifindex);
+ TInt ret = KErrNone;
+ ATOMICSOCKETOP(ret = iSocket.GetOpt(KSoInterfaceIndex, KSolInetIp , ifindex), ret = KErrBadHandle)
if(ret!=KErrNone)
{
return ret;
}
TPckgBuf<TSoInetIfQuery> opt;
opt().iIndex = ifindex;
- ret = iSocket.GetOpt(KSoInetIfQueryByIndex, KSolInetIfQuery, opt);
+ ATOMICSOCKETOP(ret = iSocket.GetOpt(KSoInetIfQueryByIndex, KSolInetIfQuery, opt), ret = KErrBadHandle)
if(ret!=KErrNone)
{
return ret;
--- a/genericopenlibs/openenvcore/backend/src/corebackend/usocketbase.cpp Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/backend/src/corebackend/usocketbase.cpp Fri Sep 17 08:38:54 2010 +0300
@@ -37,12 +37,12 @@
TUint flags = iFcntlFlag;
if( anArg & O_NONBLOCK )
{
- retVal = iSocket.SetOpt(KSONonBlockingIO, KSOLSocket);
+ ATOMICSOCKETOP(retVal = iSocket.SetOpt(KSONonBlockingIO, KSOLSocket),retVal = EBADF;)
flags |= O_NONBLOCK;
}
else
{
- retVal = iSocket.SetOpt(KSOBlockingIO, KSOLSocket);
+ ATOMICSOCKETOP(retVal = iSocket.SetOpt(KSOBlockingIO, KSOLSocket),retVal = EBADF;)
flags &= ~O_NONBLOCK;
}
if (retVal == KErrNone)
@@ -91,7 +91,8 @@
TSockXfrLength len;
TRequestStatus tempStatus;
- iSocket.RecvOneOrMore(aBuf, 0, tempStatus, len); // needs a completion which returns the length
+ ATOMICSOCKETOP(iSocket.RecvOneOrMore(aBuf, 0, tempStatus, len),Complete(tempStatus,KErrBadHandle))
+ // needs a completion which returns the length
User::WaitForRequest(tempStatus);
if (tempStatus.Int() != KErrNone)
{
@@ -108,12 +109,12 @@
TRequestStatus tempStatus;
TInt bytesWritten = 0;
TInt bufLength = aBuf.Length();
- TSockXfrLength len;
+ TSockXfrLength len = 0;
do
{
- iSocket.Send(aBuf.Mid(bytesWritten), 0, tempStatus, len);
+ ATOMICSOCKETOP(iSocket.Send(aBuf.Mid(bytesWritten), 0, tempStatus, len),Complete(tempStatus,KErrBadHandle))
User::WaitForRequest(tempStatus);
- if (len() == 0)
+ if (len() == 0 || tempStatus.Int() == KErrDisconnected )
{
break;
}
@@ -155,20 +156,21 @@
// recvfrom on a stream ignores the from address - get the peername
if (from.Length())
SockName(1,from);
-
- iSocket.RecvOneOrMore(aDesc,rSockFlags,tempStatus,len);
+
+ ATOMICSOCKETOP(iSocket.RecvOneOrMore(aDesc,rSockFlags,tempStatus,len),Complete(tempStatus,KErrBadHandle))
break;
case SOCK_SEQPACKET:
// get the peername (as above)
if (from.Length())
SockName(1,from);
- iSocket.Recv(aDesc, rSockFlags, tempStatus);
+ ATOMICSOCKETOP(iSocket.Recv(aDesc, rSockFlags, tempStatus),Complete(tempStatus,KErrBadHandle))
+
break;
default: // including SOCK_RAW, SOCK_DGRAM
// assume datagram, as per behavior of original stdlib code:
- iSocket.RecvFrom(aDesc,from,rSockFlags,tempStatus,len);
+ ATOMICSOCKETOP(iSocket.RecvFrom(aDesc,from,rSockFlags,tempStatus,len),Complete(tempStatus,KErrBadHandle))
}
User::WaitForRequest(tempStatus);
@@ -196,8 +198,8 @@
if (to.Length()==0)
{
- iSocket.Send(aDesc,flags,tempStatus,len);
- sendflg = ETrue;
+ ATOMICSOCKETOP(iSocket.Send(aDesc,flags,tempStatus,len),Complete(tempStatus,KErrBadHandle))
+ sendflg = ETrue;
}
else
{
@@ -205,7 +207,7 @@
Complete(aStatus,KErrNotSupported); // can't sendto a stream
else
{
- iSocket.SendTo(aDesc,to,flags,tempStatus,len);
+ ATOMICSOCKETOP(iSocket.SendTo(aDesc,to,flags,tempStatus,len),Complete(tempStatus,KErrBadHandle))
sendflg = ETrue;
}
}
@@ -242,21 +244,23 @@
TInt CSockDescBase::Poll(TUint aEvents)
{
TInt status = 0;
- TInt err = 0;
TInt readyEvents = 0;
- err = iSocket.GetOpt(KSOSelectPoll, KSOLSocket, status);
+ TInt err = KErrNone;
+ ATOMICSOCKETOP(err = iSocket.GetOpt(KSOSelectPoll, KSOLSocket, status),err = KErrBadHandle)
if (err != KErrNone)
{
// Poll should return any of the requested events.
// In case of any error, the error will be set, and can be later checked by the descriptor.
-
- iPollErr = err;
+
+
// For non-blocking socket, ensure to reset "iConnectInProgress" flag for a non-connected
// socket on which a connection is pending.
if(GetConnectionProgress())
{
- SetConnectionProgress(EFalse);
+ iPollErr = err;
+
+ SetConnectionProgress(EFalse);
}
// set all the events that has been requested for
@@ -292,8 +296,14 @@
if (status & KSockSelectExcept)
{
- if(GetConnectionProgress())
- {
+
+ if (GetConnectionProgress())
+ {
+ TInt val = -1;
+ TInt ret = KErrNone;
+ ATOMICSOCKETOP(ret = iSocket.GetOpt(KSOSelectLastError, KSOLSocket, val),ret = KErrBadHandle)
+
+ (iPollErr = ret) || (iPollErr = val);
TBool setExceptFd = ETrue;
// Some special checks for non-blocking sockets.
if(aEvents & EReadyForWriting)
@@ -360,8 +370,7 @@
{
iSelectEvents() |= KSockSelectExcept;
}
-
- iSocket.Ioctl(KIOctlSelect, aRequest, &iSelectEvents, KSOLSocket);
+ ATOMICSOCKETOP(iSocket.Ioctl(KIOctlSelect, aRequest, &iSelectEvents, KSOLSocket),Complete(aRequest,KErrBadHandle))
return KErrNone;
}
@@ -392,6 +401,7 @@
//
TInt CSockDescBase::TweakReadyEvents(TInt errval)
{
+
TInt returnEvents = 0;
if( errval >= KErrNone )
{
@@ -414,8 +424,16 @@
// waitforNrequest only after a event
if(GetConnectionProgress())
{
+
+ TInt val = -1;
+ TInt ret = KErrNone;
+ ATOMICSOCKETOP(ret = iSocket.GetOpt(KSOSelectLastError, KSOLSocket, val),ret = KErrBadHandle)
+ (iPollErr = ret) || (iPollErr = val);
+
+
returnEvents |= EReadyForReading;
- returnEvents |= EReadyForWriting;
+ returnEvents |= EReadyForWriting;
+ returnEvents |= EAnyException;
}
else
{
@@ -428,7 +446,12 @@
if( GetConnectionProgress() )
{
// Dummy call to retrieve select events also unlocks the socket
- const TUint events = GetSelectEvents();
+ const TUint events = GetSelectEvents();
+
+ TInt val = -1;
+ TInt ret = KErrNone;
+ ATOMICSOCKETOP(ret = iSocket.GetOpt(KSOSelectLastError, KSOLSocket, val),ret = KErrBadHandle)
+ (iPollErr = ret) || (iPollErr = val);
// set all the events that has been requested for
// This handles a scenario where connect fails( in loopback )
// here all the events requested should be ready ready
@@ -448,18 +471,20 @@
void CSockDescBase::CancelNotify()
{
- iSocket.CancelIoctl();
+ ATOMICSOCKETOP(iSocket.CancelIoctl(),NOP)
iIoctlLock.Signal();
}
TInt CSockDescBase::Listen(TUint qSize)
- {
- return iSocket.Listen(qSize);
+ {
+ TInt ret = KErrNone;
+ ATOMICSOCKETOP(ret = iSocket.Listen(qSize), return KErrBadHandle)
+ return ret;
}
void CSockDescBase::ReadCancel()
{
- iSocket.CancelRecv();
+ ATOMICSOCKETOP(iSocket.CancelRecv(),NOP)
}
TInt CSockDescBase::ReadCompletion(TDes8& /*aBuf*/, TInt aStatus)
@@ -473,17 +498,17 @@
void CSockDescBase::RecvFromCancel()
{
- iSocket.CancelRecv();
+ ATOMICSOCKETOP(iSocket.CancelRecv(),NOP)
}
void CSockDescBase::SendToCancel()
{
- iSocket.CancelSend();
+ ATOMICSOCKETOP(iSocket.CancelSend(),NOP)
}
void CSockDescBase::WriteCancel()
{
- iSocket.CancelWrite();
+ ATOMICSOCKETOP(iSocket.CancelWrite(),NOP)
}
TInt CSockDescBase::SockName(int anEnd, TSockAddr& anAddr)
@@ -500,9 +525,9 @@
anAddr.SetFamily(KBadFamily);
if (anEnd==0)
- iSocket.LocalName(anAddr);
+ ATOMICSOCKETOP(iSocket.LocalName(anAddr),NOP)
else
- iSocket.RemoteName(anAddr);
+ ATOMICSOCKETOP(iSocket.RemoteName(anAddr),NOP)
if (anAddr.Family()==KBadFamily)
return ENOTCONN; // assume that the call failed, but there is no way to find out why
return KErrNone;
@@ -527,6 +552,6 @@
Complete(aStatus,KErrArgument); // Invalid argument
return;
}
- iSocket.Shutdown(how,aStatus);
+ ATOMICSOCKETOP(iSocket.Shutdown(how,aStatus),Complete(aStatus,KErrBadHandle))
return;
}
--- a/genericopenlibs/openenvcore/backend/src/syscall/handlenms.cpp Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/backend/src/syscall/handlenms.cpp Fri Sep 17 08:38:54 2010 +0300
@@ -143,9 +143,7 @@
}
RHostResolver hr;
- /* Get the default RConnection instance and use it if configured.
- NOTE: This RConnection, if configured, would be created using the
- socket server on backend. The same server has to be used here */
+ /* Get the default RConnection instance and use it */
RConnection& defConnection = Backend()->GetDefaultConnection();
if(defConnection.SubSessionHandle() != 0)
{
@@ -153,7 +151,7 @@
}
else
{
- err = hr.Open(ss, AF_INET, IPPROTO_UDP);
+ err = ECONNABORTED;
}
if (err == KErrNone)
@@ -173,8 +171,9 @@
}
}
+
+ hr.Close();
}
- hr.Close();
return MapError(err, *aErrno);
}
@@ -321,9 +320,7 @@
if (err == KErrNone)
{
RHostResolver r;
- /* Get the default RConnection instance and use it if configured.
- NOTE: This RConnection, if configured, would be created using the
- socket server on backend. The same server has to be used here */
+ /* Get the default RConnection instance and use it */
RConnection& defConnection = Backend()->GetDefaultConnection();
if(defConnection.SubSessionHandle() != 0)
{
@@ -331,7 +328,7 @@
}
else
{
- err=r.Open(ss, format, IPPROTO_UDP);
+ err = -ECONNABORTED; // needs to be negative for logic below to return NO_RECOVERY to caller
}
if (err == KErrNone)
@@ -375,6 +372,11 @@
}
err = r.Next(entry);
}
+
+ if (err == -5121) // KErrDndAddrNotFound, equivalent to a KErrNotFound?
+ {
+ err = HOST_NOT_FOUND;
+ }
}
if (err == KErrNone)
{
@@ -415,9 +417,7 @@
}
RHostResolver r;
- /* Get the default RConnection instance and use it if configured.
- NOTE: This RConnection, if configured, would be created using the
- socket server on backend. The same server has to be used here */
+ /* Get the default RConnection instance and use it */
RConnection& defConnection = Backend()->GetDefaultConnection();
if (defConnection.SubSessionHandle() != 0)
{
@@ -425,7 +425,7 @@
}
else
{
- err = r.Open(ss, AF_INET, IPPROTO_UDP);
+ err = -ECONNABORTED; // needs to be negative for logic below to return NO_RECOVERY to caller
}
if (err == KErrNone)
@@ -457,7 +457,7 @@
break;
}
- if (addr.Family() == KAfInet6 && (addr.IsV4Compat() || addr.IsV4Mapped()))
+ if (addr.Family() == KAfInet6 && addr.IsV4Mapped())
{
addr.ConvertToV4();
entry().iAddr = addr;
@@ -466,6 +466,11 @@
}
err = r.Next(entry);
}
+
+ if (err == -5120) // KErrDndNameNotFound, equivalent to a KErrNotFound
+ {
+ err = HOST_NOT_FOUND;
+ }
}
if (err == KErrNone)
@@ -520,6 +525,11 @@
return 0;
}
+EXPORT_C int _unsetdefaultif_r(int* /*aErrno*/)
+ {
+ return Backend()->unsetdefaultif(EFalse);
+ }
+
/*
* Helper function to create an addrinfo node and fill it.
* @param aRec The name details to be used to fill the addrinfo node
@@ -634,14 +644,16 @@
//Open the host resolver
RHostResolver resolver;
- /* Get the default RConnection instance and use it if configured.
- NOTE: This RConnection, if configured, would be created using the
- socket server on backend. The same server has to be used here */
+ /* Get the default RConnection instance and use it */
RConnection& defConnection = Backend()->GetDefaultConnection();
- if(defConnection.SubSessionHandle() != 0)
+ if (defConnection.SubSessionHandle() != 0)
+ {
err = resolver.Open(sockServ, KAfInet, KProtocolInetUdp, defConnection);
+ }
else
- err = resolver.Open(sockServ, KAfInet, KProtocolInetUdp);
+ {
+ err = ECONNABORTED;
+ }
if (err != KErrNone)
{
@@ -663,48 +675,70 @@
//Create a list of addrinfo nodes from the result
*aRes = NULL;
struct addrinfo** curr = aRes;
- do
- {
- nameRec = nameEntry();
- TInetAddr inetAddr(nameRec.iAddr);
- //Create the node if the address is valid, and the family matches that of hints
- if(!inetAddr.IsUnspecified())
- {
- if (inetAddr.Family() == KAfInet)
- {
- err = CreateAddrInfoNode(nameRec, aHints, curr);
- }
- else if (inetAddr.Family() == KAfInet6)
- {
- err = CreateAddrInfoNode(nameRec, aHints, curr);
- if (err != 0)
- break;
-
- curr = &((*curr)->ai_next);
- if (inetAddr.IsV4Mapped())
- {
- inetAddr.ConvertToV4();
- nameRec.iAddr = inetAddr;
- err = CreateAddrInfoNode(nameRec, aHints, curr);
-
- if(err != 0)
- break;
-
- if (err == 0)
- {
- (*curr)->ai_flags |= AI_V4MAPPED;
- curr = &((*curr)->ai_next);
- }
- }
- }
- }
- err = resolver.Next(nameEntry); //Get the next record
- if(err != KErrNone)
- {//No more records. Not an error, just stop iterating
- err = KErrNone;
- break;
- }
- } while(err == KErrNone);
+ do
+ {
+ nameRec = nameEntry();
+ TInetAddr inetAddr(nameRec.iAddr);
+
+
+ //Create the node if the address is valid, and the family matches that of hints
+ if (!inetAddr.IsUnspecified())
+ {
+ if (inetAddr.Family() == KAfInet)
+ {
+ err = CreateAddrInfoNode(nameRec, aHints, curr);
+ if (err != 0)
+ {
+ break;
+ }
+
+ curr = &((*curr)->ai_next);
+
+ inetAddr.ConvertToV4Mapped();
+ nameRec.iAddr = inetAddr;
+
+ err = CreateAddrInfoNode(nameRec, aHints, curr);
+ if (err != 0)
+ {
+ break;
+ }
+
+ (*curr)->ai_flags |= AI_V4MAPPED;
+ curr = &((*curr)->ai_next);
+ }
+ else if (inetAddr.Family() == KAfInet6)
+ {
+ err = CreateAddrInfoNode(nameRec, aHints, curr);
+ if (err != 0)
+ {
+ break;
+ }
+
+ curr = &((*curr)->ai_next);
+ if (inetAddr.IsV4Mapped())
+ {
+ inetAddr.ConvertToV4();
+ nameRec.iAddr = inetAddr;
+
+ err = CreateAddrInfoNode(nameRec, aHints, curr);
+ if (err != 0)
+ {
+ break;
+ }
+
+ (*curr)->ai_flags |= AI_V4CONVERTED;
+ curr = &((*curr)->ai_next);
+ }
+ }
+ }
+
+ err = resolver.Next(nameEntry); //Get the next record
+ if (err != KErrNone)
+ {//No more records. Not an error, just stop iterating
+ err = KErrNone;
+ break;
+ }
+ } while(err == KErrNone);
//If no nodes are created even when the operation is succes, it's an error
@@ -719,6 +753,7 @@
if(err != 0 && err != EAI_MEMORY)
err = EAI_FAIL;
resolver.Close();
+
return err;
}
--- a/genericopenlibs/openenvcore/include/net/if.h Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/include/net/if.h Fri Sep 17 08:38:54 2010 +0300
@@ -404,7 +404,8 @@
* Symbian specific APIs
*/
#ifdef __SYMBIAN32__
-IMPORT_C int setdefaultif( const struct ifreq* );
+IMPORT_C int setdefaultif(const struct ifreq*);
+IMPORT_C int unsetdefaultif();
#endif
#ifdef __SYMBIAN32__
--- a/genericopenlibs/openenvcore/include/netdb.h Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/include/netdb.h Fri Sep 17 08:38:54 2010 +0300
@@ -211,6 +211,9 @@
#define AI_V4MAPPED_CFG 0x00000200 /* accept IPv4-mapped if kernel supports */
#define AI_ADDRCONFIG 0x00000400 /* only if any address is assigned */
#define AI_V4MAPPED 0x00000800 /* accept IPv4-mapped IPv6 address */
+#ifdef __SYMBIAN32__
+#define AI_V4CONVERTED 0x00001000
+#endif
/* special recommended flags for getipnodebyname */
#define AI_DEFAULT (AI_V4MAPPED_CFG | AI_ADDRCONFIG)
--- a/genericopenlibs/openenvcore/libc/bwins/libcu.def Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/libc/bwins/libcu.def Fri Sep 17 08:38:54 2010 +0300
@@ -595,4 +595,4 @@
set_fmode @ 594 NONAME
get_fmode @ 595 NONAME
sigenable @ 596 NONAME
-
+ unsetdefaultif @ 597 NONAME
--- a/genericopenlibs/openenvcore/libc/bwins/old_libcu.def Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/libc/bwins/old_libcu.def Fri Sep 17 08:38:54 2010 +0300
@@ -595,4 +595,4 @@
set_fmode @ 594 NONAME
get_fmode @ 595 NONAME
sigenable @ 596 NONAME
-
+ unsetdefaultif @ 597 NONAME
--- a/genericopenlibs/openenvcore/libc/eabi/libcu.def Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/libc/eabi/libcu.def Fri Sep 17 08:38:54 2010 +0300
@@ -595,4 +595,4 @@
set_fmode @ 594 NONAME
get_fmode @ 595 NONAME
sigenable @ 596 NONAME
-
+ unsetdefaultif @ 597 NONAME
--- a/genericopenlibs/openenvcore/libc/eabi/old_libcu.def Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/libc/eabi/old_libcu.def Fri Sep 17 08:38:54 2010 +0300
@@ -595,4 +595,4 @@
set_fmode @ 594 NONAME
get_fmode @ 595 NONAME
sigenable @ 596 NONAME
-
+ unsetdefaultif @ 597 NONAME
--- a/genericopenlibs/openenvcore/libc/src/Nmscalls.cpp Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/libc/src/Nmscalls.cpp Fri Sep 17 08:38:54 2010 +0300
@@ -296,5 +296,10 @@
{
return _setdefaultif_r(&errno,ifReq);
}
+
+EXPORT_C int unsetdefaultif()
+ {
+ return _unsetdefaultif_r(&errno);
+ }
} // extern "C"
--- a/genericopenlibs/openenvcore/libc/src/net/getaddrinfo.c Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/libc/src/net/getaddrinfo.c Fri Sep 17 08:38:54 2010 +0300
@@ -1117,7 +1117,7 @@
if (IN6_IS_ADDR_SITELOCAL(&sa6->sin6_addr))
return(5); /* site-local scope */
return(14); /* global scope */
- break;
+
#endif
case AF_INET:
/*
@@ -1139,7 +1139,6 @@
if (((u_char *)&sa4->sin_addr)[0] == 127)
return(2);
return(14);
- break;
default:
errno = EAFNOSUPPORT; /* is this a good error? */
return(-1);
@@ -1682,6 +1681,208 @@
}
#endif
+#ifdef __SYMBIAN32__
+static long int
+explore_hostname(pai, hostname, servname, res, hints)
+ struct addrinfo *pai;
+ const char *hostname;
+ const char *servname;
+ struct addrinfo **res;
+ const struct addrinfo *hints;
+ {
+ const struct afd *afd;
+ struct addrinfo *cur;
+ struct addrinfo sentinel;
+ int error;
+ int family_flag=0;
+ *res = NULL;
+
+ sentinel.ai_next = NULL;
+ cur = &sentinel;
+
+ /*
+ * if the servname does not match socktype/protocol, ignore it.
+ */
+
+ if (get_portmatch(pai, servname) != 0)
+ return 0;
+ if (pai->ai_family == PF_UNSPEC)
+ {
+#ifdef PF_INET6
+#ifdef __SYMBIAN32__
+ // XXX: Fix this
+ pai->ai_family = PF_INET;
+#else
+ pai->ai_family = PF_INET6;
+#endif // __SYMBIAN32__
+#else
+ pai->ai_family = PF_INET;
+#endif
+ family_flag=1;
+ }
+
+ afd = find_afd(pai->ai_family);
+ if (afd == NULL && family_flag)
+ {
+ if (pai->ai_family == PF_INET6)
+ {
+ pai->ai_family = PF_INET;
+ }
+ else
+ {
+ pai->ai_family = PF_INET6;
+ }
+ afd = find_afd(pai->ai_family);
+ }
+
+ if (afd == NULL)
+ {
+ return 0;
+ }
+
+ if (pai->ai_family == PF_UNSPEC || pai->ai_family == afd->a_af)
+ {
+ struct addrinfo *resNative;
+ struct addrinfo *currNative;
+ int haveV6asV4 = 0;
+ int haveV4asV6 = 0;
+ int haverealv4 = 0;
+ /* Get the list of addresses using the native api */
+ int ret = getaddrinfo_private(hostname, pai, &resNative);
+ if (ret != 0)
+ {
+ ERR(ret);
+ }
+
+ /* copy the addresses to the local list */
+ currNative = resNative;
+ while (currNative)
+ {
+ if (currNative->ai_family == PF_INET && (hints->ai_family == PF_INET || hints->ai_family == PF_UNSPEC))
+ {
+ if (currNative->ai_flags & AI_V4CONVERTED)
+ {
+ haveV6asV4 = 1;
+ }
+ else
+ {
+ struct sockaddr_in* sAddrTmp = (struct sockaddr_in*) (currNative->ai_addr);
+ GET_AI(cur->ai_next, afd, (char*)&(sAddrTmp->sin_addr));
+ cur->ai_next->ai_addr->sa_family = cur->ai_next->ai_family = PF_INET;
+ GET_PORT(cur->ai_next, servname);
+
+ if (pai->ai_flags & AI_CANONNAME)
+ {
+ GET_CANONNAME(cur->ai_next, currNative->ai_canonname);
+ }
+
+ cur = cur->ai_next;
+ haverealv4 = 1;
+ }
+ }
+
+ if (currNative->ai_family == PF_INET6 && (hints->ai_family == PF_INET6 || hints->ai_family == PF_UNSPEC))
+ {
+ if (currNative->ai_flags & AI_V4MAPPED)
+ {
+ haveV4asV6 = 1;
+ }
+ else
+ {
+ struct sockaddr_in6* sAddrTmp = (struct sockaddr_in6*) (currNative->ai_addr);
+ GET_AI(cur->ai_next, afd, (char*)&(sAddrTmp->sin6_addr));
+ cur->ai_next->ai_addr->sa_family = cur->ai_next->ai_family = PF_INET6;
+ GET_PORT(cur->ai_next, servname);
+
+ if (pai->ai_flags & AI_CANONNAME)
+ {
+ GET_CANONNAME(cur->ai_next, currNative->ai_canonname);
+ }
+
+ cur = cur->ai_next;
+ }
+ }
+
+ currNative = currNative->ai_next;
+ }
+
+ if (hints->ai_family == PF_INET6 && hints->ai_flags & AI_V4MAPPED && !sentinel.ai_next && haveV4asV6)
+ {
+ currNative = resNative;
+ while (currNative)
+ {
+ // check for addresses converted from v4 to v6
+ if (currNative->ai_flags & AI_V4MAPPED)
+ {
+ struct sockaddr_in6* sAddrTmp = (struct sockaddr_in6*) (currNative->ai_addr);
+ GET_AI(cur->ai_next, afd, (char*)&(sAddrTmp->sin6_addr));
+ cur->ai_next->ai_addr->sa_family = cur->ai_next->ai_family = PF_INET6;
+ GET_PORT(cur->ai_next, servname);
+ currNative->ai_flags &= ~AI_V4MAPPED;
+
+ if (pai->ai_flags & AI_CANONNAME)
+ {
+ GET_CANONNAME(cur->ai_next, currNative->ai_canonname);
+ }
+
+ cur = cur->ai_next;
+ }
+
+ currNative = currNative->ai_next;
+ }
+ }
+
+ if (haveV6asV4)
+ {
+ if ((hints->ai_family == PF_INET && !sentinel.ai_next) || (hints->ai_family == PF_UNSPEC && !haverealv4) || (hints->ai_flags & (AI_V4MAPPED|AI_ALL)))
+ {
+ currNative = resNative;
+ while (currNative)
+ {
+ // check for addresses converted from v6 to v4
+ if (currNative->ai_flags & AI_V4CONVERTED)
+ {
+ struct sockaddr_in* sAddrTmp = (struct sockaddr_in*) (currNative->ai_addr);
+ GET_AI(cur->ai_next, afd, (char*)&(sAddrTmp->sin_addr));
+ cur->ai_next->ai_addr->sa_family = cur->ai_next->ai_family = PF_INET;
+ GET_PORT(cur->ai_next, servname);
+ currNative->ai_flags &= ~AI_V4CONVERTED;
+
+ if (pai->ai_flags & AI_CANONNAME)
+ {
+ GET_CANONNAME(cur->ai_next, currNative->ai_canonname);
+ }
+
+ cur = cur->ai_next;
+ }
+
+ currNative = currNative->ai_next;
+ }
+ }
+ }
+
+ /* free the address list returned by native api */
+ freeaddrinfo_private(resNative);
+ }
+ else
+ {
+ ERR(EAI_FAMILY);
+ }
+
+ *res = sentinel.ai_next;
+ return 0;
+
+free:
+bad:
+ if (sentinel.ai_next)
+ {
+ freeaddrinfo(sentinel.ai_next);
+ }
+ return error;
+ }
+
+#endif//__SYMBIAN32__
+
/*
* FQDN hostname, DNS lookup
*/
@@ -1741,12 +1942,13 @@
return error;
}
#endif
+
+#ifndef __SYMBIAN32__
#ifdef DEBUG
static const char AskedForGot[] =
"gethostby*.getanswer: asked for \"%s\", got \"%s\"";
#endif
-#ifndef __SYMBIAN32__
static struct addrinfo *
getanswer(answer, anslen, qname, qtype, pai)
const querybuf *answer;
@@ -2730,150 +2932,3 @@
}
#endif /*__SYMBIAN32__*/
-#ifdef __SYMBIAN32__
-static long int
-explore_hostname(pai, hostname, servname, res, hints)
- struct addrinfo *pai;
- const char *hostname;
- const char *servname;
- struct addrinfo **res;
- const struct addrinfo *hints;
-{
- const struct afd *afd;
- struct addrinfo *cur;
- struct addrinfo sentinel;
- int error;
- int family_flag=0;
- *res = NULL;
-
- sentinel.ai_next = NULL;
- cur = &sentinel;
-
- /*
- * if the servname does not match socktype/protocol, ignore it.
- */
-
- if (get_portmatch(pai, servname) != 0)
- return 0;
- if (pai->ai_family == PF_UNSPEC) {
-#ifdef PF_INET6
-#ifdef __SYMBIAN32__
-// XXX: Fix this
- pai->ai_family = PF_INET;
-#else
- pai->ai_family = PF_INET6;
-#endif // __SYMBIAN32__
-#else
- pai->ai_family = PF_INET;
-#endif
- family_flag=1;
- }
-
- afd = find_afd(pai->ai_family);
- if( afd==NULL && family_flag )
- {
- if(pai->ai_family==PF_INET6)
- {
- pai->ai_family=PF_INET;
- }
- else
- {
- pai->ai_family=PF_INET6;
- }
- afd=find_afd(pai->ai_family);
- }
-
- if (afd == NULL)
- {
- return 0;
- }
-
- if ( pai->ai_family == PF_UNSPEC ||pai->ai_family == afd->a_af)
- {
- struct addrinfo *resNative;
- struct addrinfo *currNative;
- int haveV4Mapped = 0;
- /* Get the list of addresses using the native api */
- int ret = getaddrinfo_private(hostname, pai, &resNative);
- if(ret != 0)
- ERR(ret);
-
- /* copy the addresses to the local list */
- currNative = resNative;
- while(currNative)
- {
- if(currNative->ai_family == PF_INET && (hints->ai_family == PF_INET || hints->ai_family == PF_UNSPEC))
- {
- if(currNative->ai_flags & AI_V4MAPPED)
- {
- haveV4Mapped = 1;
- }
- else
- {
- struct sockaddr_in* sAddrTmp = (struct sockaddr_in*) (currNative->ai_addr);
- GET_AI(cur->ai_next, afd, (char*)&(sAddrTmp->sin_addr));
- cur->ai_next->ai_addr->sa_family = cur->ai_next->ai_family = PF_INET;
- GET_PORT(cur->ai_next, servname);
-
- if((pai->ai_flags & AI_CANONNAME))
- GET_CANONNAME(cur->ai_next, currNative->ai_canonname);
-
- cur = cur->ai_next;
- }
- }
-
- if(currNative->ai_family == PF_INET6 && (hints->ai_family == PF_INET6 || hints->ai_family == PF_UNSPEC))
- {
- struct sockaddr_in6* sAddrTmp = (struct sockaddr_in6*) (currNative->ai_addr);
- GET_AI(cur->ai_next, afd, (char*)&(sAddrTmp->sin6_addr));
- cur->ai_next->ai_addr->sa_family = cur->ai_next->ai_family = PF_INET6;
- GET_PORT(cur->ai_next, servname);
-
- if((pai->ai_flags & AI_CANONNAME))
- GET_CANONNAME(cur->ai_next, currNative->ai_canonname);
-
- cur = cur->ai_next;
- }
-
- currNative = currNative->ai_next;
- }
-
- if(hints->ai_family == PF_INET && !sentinel.ai_next && haveV4Mapped)
- {
- currNative = resNative;
- while(currNative)
- {
- //This is the set of Mapped Addresses.
- if(currNative->ai_flags & AI_V4MAPPED)
- {
- struct sockaddr_in* sAddrTmp = (struct sockaddr_in*) (currNative->ai_addr);
- currNative->ai_flags &= ~AI_V4MAPPED;
- GET_AI(cur->ai_next, afd, (char*)&(sAddrTmp->sin_addr));
- cur->ai_next->ai_addr->sa_family = cur->ai_next->ai_family = PF_INET;
- GET_PORT(cur->ai_next, servname);
-
- if((pai->ai_flags & AI_CANONNAME))
- GET_CANONNAME(cur->ai_next, currNative->ai_canonname);
- cur = cur->ai_next;
- }
-
- currNative = currNative->ai_next;
- }
- }
- /* free the address list returned by native api */
- freeaddrinfo_private(resNative);
- }
- else
- ERR(EAI_FAMILY);
-
- *res = sentinel.ai_next;
- return 0;
-
-free:
-bad:
- if (sentinel.ai_next)
- freeaddrinfo(sentinel.ai_next);
- return error;
-}
-
-#endif//__SYMBIAN32__
--- a/genericopenlibs/openenvcore/libc/test/testsocket/inc/tsocket.h Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/libc/test/testsocket/inc/tsocket.h Fri Sep 17 08:38:54 2010 +0300
@@ -135,6 +135,7 @@
_LIT(KTestSockIoctl, "TestSockIoctl");
_LIT(KSockErrnoTest, "SockErrnoTest");
_LIT(KSockSendOnClosedConn,"SockSendOnClosedConn");
+_LIT(KSockWriteOnClosedConn,"SockWriteOnClosedConn");
class CTestSocket : public CTestStep
{
public:
@@ -232,5 +233,6 @@
TInt close_socket(int fd);
TInt SockErrnoTest();
TInt SockSendOnClosedConn();
+ TInt SockWriteOnClosedConn();
};
#endif
--- a/genericopenlibs/openenvcore/libc/test/testsocket/scripts/tsocket.script Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/libc/test/testsocket/scripts/tsocket.script Fri Sep 17 08:38:54 2010 +0300
@@ -617,3 +617,11 @@
//commeneted because of network test
RUN_TEST_STEP !Result=0 30 tsocket SockSendOnClosedConn
END_TESTCASE OPENENV-LIBC-CIT-TESTSOCKET-00100
+
+
+START_TESTCASE OPENENV-LIBC-CIT-TESTSOCKET-00101
+//! @SYMTestCaseID OPENENV-LIBC-CIT-TESTSOCKET-00101
+//! @SYMTestStatus 3.Released
+//commeneted because of network test
+RUN_TEST_STEP !Result=0 50 tsocket SockWriteOnClosedConn
+END_TESTCASE OPENENV-LIBC-CIT-TESTSOCKET-00101
--- a/genericopenlibs/openenvcore/libc/test/testsocket/scripts/tsocket_hw.script Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/libc/test/testsocket/scripts/tsocket_hw.script Fri Sep 17 08:38:54 2010 +0300
@@ -620,3 +620,8 @@
START_TESTCASE OPENENV-LIBC-CIT-TESTSOCKET-00101
RUN_TEST_STEP !Result=0 30 tsocket SockSendOnClosedConn
END_TESTCASE OPENENV-LIBC-CIT-TESTSOCKET-00101
+
+START_TESTCASE OPENENV-LIBC-CIT-TESTSOCKET-00102
+RUN_TEST_STEP !Result=0 50 tsocket SockWriteOnClosedConn
+END_TESTCASE OPENENV-LIBC-CIT-TESTSOCKET-00101
+
--- a/genericopenlibs/openenvcore/libc/test/testsocket/src/tsocket.cpp Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/libc/test/testsocket/src/tsocket.cpp Fri Sep 17 08:38:54 2010 +0300
@@ -637,6 +637,12 @@
err = SockSendOnClosedConn();
SetTestStepResult(err ? static_cast<TVerdict>(err) : EPass);
}
+ if(TestStepName() == KSockWriteOnClosedConn )
+ {
+ INFO_PRINTF1(_L("SockWriteOnClosedConn():"));
+ err = SockWriteOnClosedConn();
+ SetTestStepResult(err ? static_cast<TVerdict>(err) : EPass);
+ }
return TestStepResult();
--- a/genericopenlibs/openenvcore/libc/test/testsocket/src/tsocketblocks.cpp Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/libc/test/testsocket/src/tsocketblocks.cpp Fri Sep 17 08:38:54 2010 +0300
@@ -5213,6 +5213,100 @@
return ret;
}
+
+void* createNwrite_socket(TAny* aParam)
+ {
+ sockaddr_in serv_addr;
+ int err1;
+ int ret = 0;
+ char *msg ="testing socket send";
+ int sock_fd;
+ serv_addr.sin_family = AF_INET;
+ serv_addr.sin_addr.s_addr = inet_addr("127.0.0.1");
+ serv_addr.sin_port = (int)aParam;
+ sock_fd = socket(AF_INET,SOCK_STREAM,0);
+ if (sock_fd < 0)
+ {
+ ret = -1;
+ goto close;
+ }
+ if (connect(sock_fd,(sockaddr*)&serv_addr,sizeof(serv_addr)) < 0)
+ {
+ ret = -1;
+ goto close;
+ }
+ sleep(5);
+ err1 = write(sock_fd, msg, strlen(msg)+1);
+ if(err1 < 0)
+ {
+ ret = -1;
+ goto close;
+ }
+ sleep(5);
+ err1 = write(sock_fd, msg,strlen(msg)+1);
+ if(err1 == -1 )
+ {
+ printf("write() failed returned errno = %d", errno);
+ }
+ else
+ {
+ ret = -1;
+ }
+ close:
+ close(sock_fd);
+ return (void*)ret;
+
+ }
+TInt CTestSocket::SockWriteOnClosedConn()
+ {
+
+ int sock_fd,newsock_fd;
+ unsigned int addr_len;
+ sockaddr_in serv_addr,new_socket;
+ TInt ret = KErrNone;
+ int threadRetVal = 0;
+ void *threadRetValPtr = (void*)&threadRetVal;
+ sock_fd = socket(AF_INET,SOCK_STREAM,0);
+ if (sock_fd < 0)
+ {
+ return KErrSocket;
+ }
+ serv_addr.sin_family = AF_INET;
+ serv_addr.sin_addr.s_addr = inet_addr("127.0.0.1");
+ serv_addr.sin_port = htons(12350);
+ pthread_t clientThread;
+ if (bind(sock_fd,(sockaddr*)&serv_addr,sizeof(serv_addr)) < 0)
+ {
+ INFO_PRINTF2(_L("bind return with errno = %d"), errno);
+ return KErrBind;
+ }
+ if(-1 == listen(sock_fd, 1))
+ {
+ printf("error listen failed");
+ close(sock_fd);
+ return -1;
+ }
+ pthread_create(&clientThread, NULL, &createNwrite_socket, (void*)(serv_addr.sin_port));
+ addr_len = sizeof(new_socket);
+ newsock_fd = accept(sock_fd,(sockaddr*)&new_socket,&addr_len);
+ if (errno != 0 )
+ {
+ INFO_PRINTF2(_L("Accept return with errno = %d"), errno);
+ ret = -1;
+ }
+
+ close(newsock_fd);
+ close(sock_fd);
+ pthread_join(clientThread, &threadRetValPtr );
+ if (threadRetVal < 0)
+ {
+ INFO_PRINTF1(_L("SockWriteOnClosedConn failed"));
+ ret = threadRetVal;
+ }
+ return ret;
+ }
+
+
// ========================== OTHER EXPORTED FUNCTIONS =========================
// None
--- a/genericopenlibs/openenvcore/libc/test/testsocket/src/tsocketserver.cpp Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/libc/test/testsocket/src/tsocketserver.cpp Fri Sep 17 08:38:54 2010 +0300
@@ -455,6 +455,10 @@
{
testStep = new CTestSocket(aStepName);
}
+ if(aStepName == KSockWriteOnClosedConn )
+ {
+ testStep = new CTestSocket(aStepName);
+ }
return testStep;
}
--- a/genericservices/s60compatibilityheaders/groupsymtb101sf/bld.inf Thu Sep 02 22:16:05 2010 +0300
+++ b/genericservices/s60compatibilityheaders/groupsymtb101sf/bld.inf Fri Sep 17 08:38:54 2010 +0300
@@ -24,6 +24,5 @@
#include "../commonengineresources/group/bld.inf"
#include "../commontsy/bld.inf"
#include "../lbs/bld.inf"
-#include "../xmlengine/bld.inf"
#include "../multipartparser/bld.inf"
#include "../starter/bld.inf"
--- a/genericservices/s60compatibilityheaders/xmlengine/bld.inf Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,111 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-#include "../group/common.inf"
-
-PRJ_PLATFORMS
-
-DEFAULT
-
-PRJ_EXPORTS
-
-./xmlengdom.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengdom.h)
-./xmlengattr.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengattr.h)
-./xmlengnodelist_impl.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengnodelist_impl.h)
-./xmlengnode.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengnode.h)
-./xmlengbinarycontainer.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengbinarycontainer.h)
-./xmlenguserdata.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlenguserdata.h)
-./xmlengdomimplementation.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengdomimplementation.h)
-./xmlengdatacontainer.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengdatacontainer.h)
-./xmlengdataserializer.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengdataserializer.h)
-./xmlengnodelist.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengnodelist.h)
-./xmlengnamespace.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengnamespace.h)
-./xmlengdomutils.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengdomutils.h)
-./xmlengcharacterdata.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengcharacterdata.h)
-./xmlengserializationoptions.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengserializationoptions.h)
-./xmlengchunkcontainer.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengchunkcontainer.h)
-./xmlengerrors.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengerrors.h)
-./xmlengdocument.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengdocument.h)
-./xmlengcomment.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengcomment.h)
-./xmlengentityreference.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengentityreference.h)
-./xmlengdocumentfragment.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengdocumentfragment.h)
-./xmlengcdatasection.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengcdatasection.h)
-./xmlengdomparser.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengdomparser.h)
-./xmlengnodefilter.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengnodefilter.h)
-./xmlengprocessinginstruction.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengprocessinginstruction.h)
-./xmlengtext.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengtext.h)
-./xmlengoutputstream.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengoutputstream.h)
-./xmlengfilecontainer.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengfilecontainer.h)
-./xmlengelement.h OS_LAYER_PUBLIC_EXPORT_PATH(xmlengelement.h)
-./libxml2_c14n.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_c14n.h)
-./libxml2_valid.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_valid.h)
-./libxml2_parser.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_parser.h)
-./libxml2_sax.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_sax.h)
-./libxml2_tree.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_tree.h)
-./libxml2_entities.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_entities.h)
-./libxml2_sax2.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_sax2.h)
-./libxml2_parserinternals.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_parserinternals.h)
-./xmlengxeconfig.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengxeconfig.h)
-./xmlengtriodef.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengtriodef.h)
-./xmlengconfig.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengconfig.h)
-./libxml2_xmlstring.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_xmlstring.h)
-./libxml2_list.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_list.h)
-./libxml2_xmlio.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_xmlio.h)
-./libxml2_xmlversion.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_xmlversion.h)
-./libxml2_encoding.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_encoding.h)
-./libxml2_xmlmemory.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_xmlmemory.h)
-./libxml2_globals.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_globals.h)
-./libxml2_xmlexports.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_xmlexports.h)
-./xmlengtrionan.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengtrionan.h)
-./libxml2_xmlerror.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_xmlerror.h)
-./libxml2_chvalid.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_chvalid.h)
-./libxml2_modules.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_modules.h)
-./libxml2_dict.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_dict.h)
-./libxml2_threads.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_threads.h)
-./libxml2_hash.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_hash.h)
-./libxml2_uri.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_uri.h)
-./libxml2_xlink.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_xlink.h)
-./libxml2_xpointer.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_xpointer.h)
-./libxml2_schemasinternals.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_schemasinternals.h)
-./libxml2_xmlschemasglobals.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_xmlschemasglobals.h)
-./libxml2_xpathinternals.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_xpathinternals.h)
-./libxml2_xpath.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_xpath.h)
-./xmlengdeserializer.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengdeserializer.h)
-./xmlengextendedcontenthandler.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengextendedcontenthandler.h)
-./xmlengdeserializerdom.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengdeserializerdom.h)
-./xmlengparsingoptions.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengparsingoptions.h)
-./xmlengserializer.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengserializer.h)
-./xmlengserializeerrors.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengserializeerrors.h)
-./xmlengxesys.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengxesys.h)
-./xmlengxestd.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengxestd.h)
-./xmlengxestrings.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengxestrings.h)
-./xmlengmem.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengmem.h)
-./xmlengutils.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengutils.h)
-./xmlengxpath.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengxpath.h)
-./xmlengxformsinstancemap.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengxformsinstancemap.h)
-./xmlengxpathevaluator.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengxpathevaluator.h)
-./xmlengxpathevaluationcontext.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengxpathevaluationcontext.h)
-./xmlengxpathextensionfunction.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengxpathextensionfunction.h)
-./xmlengnodeset.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengnodeset.h)
-./xmlengxpathexpression.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengxpathexpression.h)
-./xmlengxpathconfiguration.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengxpathconfiguration.h)
-./xmlengnamespaceresolver.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengnamespaceresolver.h)
-./xmlengxpathresult.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengxpathresult.h)
-./xmlengxpathobject.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengxpathobject.h)
-./xmlengxpathutils.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengxpathutils.h)
-./xmlengxpatherrors.h OS_LAYER_PLATFORM_EXPORT_PATH(xmlengxpatherrors.h)
-./libxml2_xinclude.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_xinclude.h)
-./libxml2_xmlreader.h OS_LAYER_PLATFORM_EXPORT_PATH(libxml2_xmlreader.h)
-
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_c14n.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_c14n.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_chvalid.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_chvalid.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_dict.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_dict.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_encoding.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_encoding.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_entities.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_entities.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_globals.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_globals.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_hash.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_hash.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_list.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_list.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_modules.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_modules.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_parser.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_parser.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_parserinternals.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_parserinternals.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_sax.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_sax.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_sax2.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_sax2.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_schemasinternals.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_schemasinternals.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_threads.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_threads.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_tree.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_tree.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_uri.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_uri.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_valid.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_valid.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_xinclude.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_xinclude.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_xlink.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_xlink.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_xmlerror.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_xmlerror.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_xmlexports.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_xmlexports.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_xmlio.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_xmlio.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_xmlmemory.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_xmlmemory.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_xmlreader.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_xmlreader.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_xmlschemasglobals.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_xmlschemasglobals.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_xmlstring.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_xmlstring.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_xmlversion.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_xmlversion.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_xpath.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_xpath.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_xpathinternals.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_xpathinternals.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/libxml2_xpointer.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/libxml2_xpointer.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengattr.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengattr.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengbinarycontainer.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengbinarycontainer.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengcdatasection.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengcdatasection.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengcharacterdata.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengcharacterdata.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengchunkcontainer.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengchunkcontainer.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengcomment.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengcomment.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengconfig.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/xmlengconfig.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengdatacontainer.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengdatacontainer.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengdataserializer.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengdataserializer.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengdeserializer.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengdeserializer.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengdeserializerdom.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengdeserializerdom.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengdocument.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengdocument.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengdocumentfragment.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengdocumentfragment.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengdom.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengdom.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengdomimplementation.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengdomimplementation.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengdomparser.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengdomparser.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengdomutils.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengdomutils.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengelement.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengelement.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengentityreference.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengentityreference.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengerrors.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengerrors.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengextendedcontenthandler.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengextendedcontenthandler.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengfilecontainer.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengfilecontainer.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengmem.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/utils/xmlengmem.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengnamespace.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengnamespace.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengnamespaceresolver.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengnamespaceresolver.h>
-
-// End of File
\ No newline at end of file
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengnode.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengnode.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengnodefilter.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengnodefilter.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengnodelist.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengnodelist.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengnodelist_impl.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengnodelist_impl.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengnodeset.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengnodeset.h>
-
-// End of File
\ No newline at end of file
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengoutputstream.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengoutputstream.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengparsingoptions.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengparsingoptions.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengprocessinginstruction.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengprocessinginstruction.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengserializationoptions.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengserializationoptions.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengserializeerrors.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengserializeerrors.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengserializer.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengserializer.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengtext.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengtext.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengtriodef.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/xmlengtriodef.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengtrionan.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/xmlengtrionan.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlenguserdata.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlenguserdata.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengutils.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/utils/xmlengutils.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengxeconfig.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <stdapis/libxml2/xmlengxeconfig.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengxestd.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/utils/xmlengxestd.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengxestrings.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/utils/xmlengxestrings.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengxesys.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/utils/xmlengmem.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengxformsinstancemap.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengxformsinstancemap.h>
-
-// End of File
\ No newline at end of file
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengxpath.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengxpath.h>
-
-// End of File
\ No newline at end of file
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengxpathconfiguration.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengxpathconfiguration.h>
-
-// End of File
\ No newline at end of file
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengxpatherrors.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengxpatherrors.h>
-
-// End of File
\ No newline at end of file
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengxpathevaluationcontext.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengxpathevaluationcontext.h>
-
-// End of File
\ No newline at end of file
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengxpathevaluator.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengxpathevaluator.h>
-
-// End of File
\ No newline at end of file
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengxpathexpression.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengxpathexpression.h>
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengxpathextensionfunction.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengxpathextensionfunction.h>
-
-// End of File
\ No newline at end of file
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengxpathobject.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,21 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengxpathutils.h>
-
-typedef XmlEngXPathUtils TXmlEngXPathObject;
-
-// End of File
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengxpathresult.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengxpathresult.h>
-
-// End of File
\ No newline at end of file
--- a/genericservices/s60compatibilityheaders/xmlengine/xmlengxpathutils.h Thu Sep 02 22:16:05 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,19 +0,0 @@
-// Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
-// All rights reserved.
-// This component and the accompanying materials are made available
-// under the terms of "Eclipse Public License v1.0"
-// which accompanies this distribution, and is available
-// at the URL "http://www.eclipse.org/legal/epl-v10.html".
-//
-// Initial Contributors:
-// Nokia Corporation - initial contribution.
-//
-// Contributors:
-//
-// Description:
-//
-
-// stub header file - use Symbian supplied version instead
-#include <xml/dom/xmlengxpathutils.h>
-
-// End of File
--- a/lowlevellibsandfws/pluginfw/Framework/frame/RegistryData.cpp Thu Sep 02 22:16:05 2010 +0300
+++ b/lowlevellibsandfws/pluginfw/Framework/frame/RegistryData.cpp Fri Sep 17 08:38:54 2010 +0300
@@ -684,6 +684,7 @@
return EFalse;
}
err = loader.CheckLibraryHash(dllFullName, ETrue);
+ loader.Close();
if(err != KErrNone)
{
#ifdef __ECOM_TRACE
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/ofdbus/rom/bld.inf Fri Sep 17 08:38:54 2010 +0300
@@ -0,0 +1,30 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+*
+*/
+
+
+
+#include <platform_paths.hrh>
+
+
+
+PRJ_EXPORTS
+
+dbus.iby CORE_OS_LAYER_IBY_EXPORT_PATH(dbus.iby)
+
+
+// End of File
+
--- a/package_definition.xml Thu Sep 02 22:16:05 2010 +0300
+++ b/package_definition.xml Fri Sep 17 08:38:54 2010 +0300
@@ -1,178 +1,269 @@
<?xml version="1.0" encoding="UTF-8"?>
<SystemDefinition schema="3.0.0">
- <package id="ossrv" name="Generic OS Services" levels="physical-abstraction app-libs encoding translation data-services utilities">
- <collection id="utilitylibraries" name="Utility Libraries" level="encoding">
- <component id="libutils" filter="s60" name="Utility Library">
- <!-- this can only have one unit. Should include secondary from the main bld.inf -->
- <unit bldFile="utilitylibraries/libutils/group"/>
- <unit bldFile="utilitylibraries/libutils/tsrc/group"/>
- <!-- <unit bldFile="utilitylibraries/libutils/tsrc/nft/group"/> -->
- </component>
- </collection>
- <collection id="ofdbus" name="Open Foundation D-Bus" level="utilities">
- <component id="dbus" filter="s60" name="D-Bus">
- <unit bldFile="ofdbus/dbus/group"/>
- <!-- this can only have one unit. Should include test from the main bld.inf -->
- <unit bldFile="ofdbus/dbus/tsrc/group"/>
- </component>
- <component id="dbus-glib" filter="s60" name="D-Bus GLib">
- <unit bldFile="ofdbus/dbus-glib/group"/>
- <!-- this can only have one unit. Should include test from the main bld.inf -->
- <unit bldFile="ofdbus/dbus-glib/tsrc/group"/>
- </component>
- <component id="ofdbus_rom" filter="s60" name="D-Bus ROM">
- <!-- Contains IBY for for dbus. should remove #includes to above components. Consider moving IBY file to one of the above as well and removing this component entirely -->
- <unit bldFile="ofdbus/group"/>
- </component>
- <component id="ofdbus_test" filter="s60" purpose="development" name="OF Dbus Test">
- <!-- can these be put into ofdbus component? -->
- <!-- <unit bldFile="ofdbus/tsrc/nft/idle_daemon_run/group"/> -->
- <!-- <unit bldFile="ofdbus/tsrc/nft/g_n_messages/group"/> -->
- <!-- <unit bldFile="ofdbus/tsrc/nft/g_file_send/group"/> -->
- <!-- <unit bldFile="ofdbus/tsrc/nft/send_messages1/group"/> -->
- <!-- <unit bldFile="ofdbus/tsrc/nft/stif_glib_1_simple_message/group"/> -->
- <!-- <unit bldFile="ofdbus/tsrc/nft/file_transfer_time/group"/> -->
- <!-- <unit bldFile="ofdbus/tsrc/nft/g_n_messages1/group"/> -->
- <!-- <unit bldFile="ofdbus/tsrc/nft/send_messages/group"/> -->
- </component>
- </collection>
- <collection id="glib" name="GLib" level="utilities">
- <component id="glibbackend" filter="s60" name="GLib Backend">
- <unit bldFile="glib/build/symbian/glibbackend/group"/>
- </component>
- <component id="libglib" filter="s60" name="GLib Library">
- <unit bldFile="glib/build/symbian/glib/group"/>
- </component>
- <component id="libgthread" filter="s60" name="Libg Thread">
- <unit bldFile="glib/build/symbian/gthread/group"/>
- </component>
- <component id="libgmodule" filter="s60" name="Libg Module">
- <unit bldFile="glib/build/symbian/gmodule/group"/>
- </component>
- <component id="libgobject" filter="s60" name="Libg Object">
- <unit bldFile="glib/build/symbian/gobject/group"/>
- </component>
- <component id="glib_test" filter="s60" purpose="development" name="GLib Test">
- <unit bldFile="glib/tsrc/group"/>
- <!-- should #include the next unit in the above bld.inf if it's needed -->
- <!-- <unit bldFile="glib/tsrc/bc/group"/> -->
- </component>
- </collection>
- <collection id="ssl" name="SSL" level="data-services">
- <component id="libcrypto" filter="s60" name="Crypto Library">
- <unit bldFile="ssl/libcrypto/group"/>
- </component>
- <component id="ssl_test" filter="s60" purpose="development" name="SSL Test">
- <unit bldFile="ssl/tsrc/group"/>
- <!-- should #include the next unit in the above bld.inf if it's needed -->
- <!-- <unit bldFile="ssl/tsrc/bc/group"/> -->
- </component>
- </collection>
- <collection id="stdcpp" name="C++ Standard Library" level="translation">
- <component id="stdcpp_build" filter="s60" name="Stdcpp">
- <unit bldFile="stdcpp/group"/>
- </component>
- <component id="stdcpp_test" filter="s60" purpose="development" name="Stdcpp Test">
- <unit bldFile="stdcpp/tsrc/group"/>
- <!-- these should be #included in the above bld.inf if they're needed -->
- <!-- <unit bldFile="stdcpp/tsrc/stdcpp_test/tstdcpp/twsd_manual/group"/> -->
- <!-- <unit bldFile="stdcpp/tsrc/stdcpp_test/tstdcpp/ood_manual/group"/> -->
- <!-- <unit bldFile="stdcpp/tsrc/stdcpp_test/stlport/manual/group"/> -->
- <!-- <unit bldFile="stdcpp/tsrc/boost_test/multi_array/manual/group"/> -->
- <!-- <unit bldFile="stdcpp/tsrc/stdcpp_test/tstdcpp/io_manual/group"/> -->
- <!-- <unit bldFile="stdcpp/tsrc/bc/group"/> -->
- <!-- <unit bldFile="stdcpp/tsrc/boost_test/graph/manual/group"/> -->
- <!-- <unit bldFile="stdcpp/tsrc/stdcpp_test/tstdcpp/multithread/manual/group"/> -->
- </component>
- </collection>
- <collection id="stdlibs" name="Standard Libraries" level="translation">
- <component id="libcrypt" filter="s60" name="Crypt Library">
- <unit bldFile="stdlibs/libcrypt/group"/>
- </component>
- </collection>
- <collection id="genericservices" name="Generic Services" level="utilities">
- <component id="s60compatibilityheaders" name="S60 Compatibility Headers" filter="gt" purpose="optional">
- <unit version="tb101sf" bldFile="genericservices/s60compatibilityheaders/groupsymtb101sf" mrp="genericservices/s60compatibilityheaders/groupsymtb101sf/tools_s60_header_compatsymtb101sf.mrp"/>
- </component>
- <component id="mimerecognitionfw" name="MIME Recognition Framework" purpose="mandatory">
- <unit bldFile="genericservices/mimerecognitionfw/group" mrp="genericservices/mimerecognitionfw/group/app-framework_emime.mrp"/>
- </component>
- <component id="systemagent" name="System Agent" introduced="9.0" purpose="mandatory">
- <unit bldFile="genericservices/systemagent/group" mrp="genericservices/systemagent/group/syslibs_sysagent2.mrp"/>
- </component>
- <component id="taskscheduler" name="Task Scheduler" introduced="6.0" purpose="optional">
- <unit bldFile="genericservices/taskscheduler/group" mrp="genericservices/taskscheduler/group/syslibs_schsvr.mrp"/>
- </component>
- <component id="activebackupclient" name="Active Backup Client" purpose="optional">
- <unit bldFile="genericservices/activebackupclient/group" mrp="genericservices/activebackupclient/group/connectivity_abclient.mrp"/>
- </component>
- <component id="syslibsdocs" name="Syslibs Documentation" purpose="development" class="doc">
- <unit mrp="genericservices/syslibsdocs/syslibs_documentation.mrp"/>
- </component>
- <component id="httputils" name="HTTP Utilities Library" introduced="6.2" purpose="optional">
- <unit bldFile="genericservices/httputils/group" mrp="genericservices/httputils/group/application-protocols_inetprotutil.mrp"/>
- </component>
- </collection>
- <collection id="syslibsapitest" name="SysLibs API Tests" level="utilities">
- <component id="syslibssvs" name="Syslibs Verfication Suite" introduced="^2" purpose="development" filter="test">
- <unit mrp="syslibsapitest/syslibssvs/group/syslibssvs.mrp" bldFile="syslibsapitest/syslibssvs/group"/>
- </component>
- </collection>
- <collection id="compressionlibs" name="Compression Libraries" level="data-services">
- <component id="ziplib" name="Zip Compression Library" introduced="6.0" purpose="mandatory">
- <unit bldFile="compressionlibs/ziplib/group" mrp="compressionlibs/ziplib/group/syslibs_ezlib2.mrp"/>
- </component>
- </collection>
- <collection id="genericopenlibs" name="Generic Open Libraries" level="translation">
- <component id="cstdlib" name="C Standard Library" introduced="ER5" purpose="optional">
- <unit bldFile="genericopenlibs/cstdlib/group" mrp="genericopenlibs/cstdlib/group/syslibs_stdlib.mrp"/>
- </component>
- <component id="cppstdlib" name="C++ Standard Library" introduced="^3" purpose="mandatory">
- <unit bldFile="genericopenlibs/cppstdlib/group" mrp="genericopenlibs/cppstdlib/group/openenv_libstdcpp.mrp"/>
- </component>
- <component id="openenvcore" name="Open Environment Core" introduced="^2" purpose="mandatory">
- <unit bldFile="genericopenlibs/openenvcore/group" mrp="genericopenlibs/openenvcore/group/openenv.mrp"/>
- </component>
- <component id="posixrealtimeextensions" name="POSIX Realtime Extensions" introduced="^3" purpose="optional">
- <unit bldFile="genericopenlibs/posixrealtimeextensions/group" mrp="genericopenlibs/posixrealtimeextensions/group/oeaddons_librt.mrp"/>
- </component>
- <component id="liboil" name="Liboil" introduced="^4" purpose="optional">
- <unit bldFile="genericopenlibs/liboil/group" mrp="genericopenlibs/liboil/group/oeaddons_liboil.mrp"/>
- </component>
- </collection>
- <collection id="lowlevellibsandfws" name="Low Level Libraries and Frameworks" level="app-libs">
- <component id="pluginfw" name="Plugin Framework" introduced="6.2" purpose="mandatory">
- <unit version="3" bldFile="lowlevellibsandfws/pluginfw/Group" mrp="lowlevellibsandfws/pluginfw/Group/syslibs_ecom3.mrp"/>
- </component>
- <component id="apputils" name="Application Utilities" introduced="ER5" purpose="mandatory">
- <unit bldFile="lowlevellibsandfws/apputils/group" mrp="lowlevellibsandfws/apputils/group/syslibs_bafl.mrp"/>
- </component>
- <component id="genericusabilitylib" name="Generic Usability Library" introduced="^3" purpose="mandatory">
- <unit bldFile="lowlevellibsandfws/genericusabilitylib/group" mrp="lowlevellibsandfws/genericusabilitylib/group/syslibs_euserhl.mrp"/>
- </component>
- </collection>
- <collection id="ossrv_info" name="Generic OS Services Info" level="utilities">
- <component id="ossrv_test" filter="s60" purpose="development" name="Generic OS Services Test">
- <!-- is this needed? Can it be split up into tests for the individual packages? -->
- <!-- <unit bldFile="tsrc/group"/> -->
- </component>
- <component id="ossrv_build" filter="s60" name="Generic OS Services Build">
- <!-- exports should be moved to individual components -->
- <unit bldFile="group"/>
- </component>
- <component id="ossrv_plat" filter="s60" name="Generic OS Services Platform Interfaces" class="api">
- <unit bldFile="ossrv_plat/libutils/group"/>
- </component>
- <component id="ossrv_pub" filter="s60" name="Generic OS Services Public Interfaces" class="api">
- <unit bldFile="ossrv_pub/group"/>
- <!-- <unit bldFile="ossrv_pub/boost_apis/tsrc/group"/> -->
- <!-- <unit bldFile="ossrv_pub/glib_arrays/tsrc/group"/> -->
- <!-- <unit bldFile="ossrv_pub/ssl_general_api/tsrc/group"/> -->
- <!-- <unit bldFile="ossrv_pub/stl/tsrc/group"/> -->
- </component>
- <component id="ossrv_metadata" name="Generic OS Services Metadata" class="config" introduced="^2" purpose="development" target="desktop">
- <unit mrp="ossrv_info/ossrv_metadata/ossrv_metadata.mrp"/>
- </component>
- </collection>
- </package>
+ <package id="ossrv" name="Generic OS Services" levels="physical-abstraction app-libs encoding translation data-services utilities">
+ <collection id="ossrv_pub" name="Generic OS Services Public Interfaces" level="utilities">
+ <component id="boost_apis" name="Boost APIs" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/boost_apis/boost_apis.metaxml"/>
+ <unit bldFile="ossrv_pub/boost_apis/group"/>
+ </component>
+ <component id="cpp_wrappers" name="Cpp wrappers" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/cpp_wrappers/cpp_wrappers.metaxml"/>
+ <unit bldFile="ossrv_pub/cpp_wrappers/group"/>
+ </component>
+ <component id="character_type_apis" name="Character Type APIs" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/character_type_apis/character_type_apis.metaxml"/>
+ <unit bldFile="ossrv_pub/character_type_apis/group"/>
+ </component>
+ <component id="compiler_specific_runtime_support" name="Compiler Specific Runtime Support" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/compiler_specific_runtime_support/compiler_specific_runtime_support.metaxml"/>
+ <unit bldFile="ossrv_pub/compiler_specific_runtime_support/group"/>
+ </component>
+ <component id="ossrv_configuration_api" name="Generic OS Services Configuration API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/configuration/configuration.metaxml"/>
+ <unit bldFile="ossrv_pub/configuration/group"/>
+ </component>
+ <component id="crypto_authentication_codes_and_hash_functions_api" name="Crypto Authentication Codes and Hash Functions API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/crypto_authentication_codes_and_hash_functions_api/crypto_authentication_codes_and_hash_functions_api.metaxml"/>
+ <unit bldFile="ossrv_pub/crypto_authentication_codes_and_hash_functions_api/group"/>
+ </component>
+ <component id="crypto_auxillary_functions_api" name="Crypto Auxillary Functions API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/crypto_auxillary_functions_api/crypto_auxillary_functions_api.metaxml"/>
+ <unit bldFile="ossrv_pub/crypto_auxillary_functions_api/group"/>
+ </component>
+ <component id="crypto_certificates_api" name="Crypto Certificates API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/crypto_certificates_api/crypto_certificates_api.metaxml"/>
+ <unit bldFile="ossrv_pub/crypto_certificates_api/group"/>
+ </component>
+ <component id="crypto_inputoutput_and_data_encoding_api" name="Crypto Input/Output and Data Encoding API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/crypto_inputoutput_and_data_encoding_api/crypto_inputoutput_and_data_encoding_api.metaxml"/>
+ <unit bldFile="ossrv_pub/crypto_inputoutput_and_data_encoding_api/group"/>
+ </component>
+ <component id="crypto_public_key_cryptography_and_key_agreement_api" name="Crypto Public Key Cryptography and Key Agreement API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/crypto_public_key_cryptography_and_key_agreement_api/crypto_public_key_cryptography_and_key_agreement_api.metaxml"/>
+ <unit bldFile="ossrv_pub/crypto_public_key_cryptography_and_key_agreement_api/group"/>
+ </component>
+ <component id="crypto_symmetric_ciphers_api" name="Crypto Symmetric Ciphers API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/crypto_symmetric_ciphers_api/crypto_symmetric_ciphers_api.metaxml"/>
+ <unit bldFile="ossrv_pub/crypto_symmetric_ciphers_api/group"/>
+ </component>
+ <component id="crypto_utility_functions_api" name="Crypto Utility Functions API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/crypto_utility_functions_api/crypto_utility_functions_api.metaxml"/>
+ <unit bldFile="ossrv_pub/crypto_utility_functions_api/group"/>
+ </component>
+ <component id="cryptogaphy_related_api" name="Cryptogaphy Related API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/cryptogaphy_related_api/cryptogaphy_related_api.metaxml"/>
+ <unit bldFile="ossrv_pub/cryptogaphy_related_api/group"/>
+ </component>
+ <component id="ossrv_debug_api" name="Generic OS Services Debug API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/debug/debug.metaxml"/>
+ <unit bldFile="ossrv_pub/debug/group"/>
+ </component>
+ <component id="ossrv_exceptions_api" name="Generic OS Services Exceptions API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/exceptions/exceptions.metaxml"/>
+ <unit bldFile="ossrv_pub/exceptions/group"/>
+ </component>
+ <component id="io_stream_api" name="I/O stream API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/io_stream_api/io_stream_api.metaxml"/>
+ <unit bldFile="ossrv_pub/io_stream_api/group"/>
+ </component>
+ <component id="localization_function_api" name="Localization Function API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/localization_function_api/localization_function_api.metaxml"/>
+ <unit bldFile="ossrv_pub/localization_function_api/group"/>
+ </component>
+ <component id="math_operations_api" name="Math Operations API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/math_operations_api/math_operations_api.metaxml"/>
+ <unit bldFile="ossrv_pub/math_operations_api/group"/>
+ </component>
+ <component id="ossrv_memory_api" name="Generic OS Services Memory API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/memory/memory.metaxml"/>
+ <unit bldFile="ossrv_pub/memory/group"/>
+ </component>
+ <component id="no_namespace_headers" name="No Namespace Headers" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/no_namespace_headers/no_namespace_headers.metaxml"/>
+ <unit bldFile="ossrv_pub/no_namespace_headers/group"/>
+ </component>
+ <component id="openc_headers" name="OpenC headers" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/openc_headers/openc_headers.metaxml"/>
+ <unit bldFile="ossrv_pub/openc_headers/group"/>
+ </component>
+ <component id="openc_wrappers" name="OpenC wrappers" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/openc_wrappers/openc_wrappers.metaxml"/>
+ <unit bldFile="ossrv_pub/openc_wrappers/group"/>
+ </component>
+ <component id="ssl_general_api" name="SSL General API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/ssl_general_api/ssl_general_api.metaxml"/>
+ <unit bldFile="ossrv_pub/ssl_general_api/group"/>
+ </component>
+ <component id="ssl_protocol_methods_api" name="SSL Protocol Methods API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/ssl_protocol_methods_api/ssl_protocol_methods_api.metaxml"/>
+ <unit bldFile="ossrv_pub/ssl_protocol_methods_api/group"/>
+ </component>
+ <component id="standard_compressiondecompression_api" name="Standard Compression/Decompression API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/standard_compressiondecompression_api/standard_compressiondecompression_api.metaxml"/>
+ <unit bldFile="ossrv_pub/standard_compressiondecompression_api/group"/>
+ </component>
+ <component id="stl" name="STL API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/stl/stl.metaxml"/>
+ <unit bldFile="ossrv_pub/stl/group"/>
+ </component>
+ <component id="thread_api" name="Thread API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/thread_api/thread_api.metaxml"/>
+ <unit bldFile="ossrv_pub/thread_api/group"/>
+ </component>
+ <component id="type_attributes" name="Type Attributes API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/type_attributes/type_attributes.metaxml"/>
+ <unit bldFile="ossrv_pub/type_attributes/group"/>
+ </component>
+ <component id="typeinfo" name="Type Info API" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/typeinfo/typeinfo.metaxml"/>
+ <unit bldFile="ossrv_pub/typeinfo/group"/>
+ </component>
+ <component id="utility_apis" name="Utility APIs" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/utility_apis/utility_apis.metaxml"/>
+ <unit bldFile="ossrv_pub/utility_apis/group"/>
+ </component>
+ <component id="wide_character_classapis" name="Wide character class/apis" class="api" filter="s60">
+ <meta rel="Api" href="ossrv_pub/wide_character_classapis/wide_character_classapis.metaxml"/>
+ <unit bldFile="ossrv_pub/wide_character_classapis/group"/>
+ </component>
+ <component id="dbus_api" name="Dbus API" class="api" filter="s60">
+ <unit bldFile="ossrv_pub/dbus/group"/>
+ </component>
+ <component id="dbus-glib_api" name="D-Bus GLib API" class="api" filter="s60">
+ <unit bldFile="ossrv_pub/dbus-glib/group"/>
+ </component>
+ </collection>
+ <collection id="ossrv_plat" name="Generic OS Services Platform Interfaces" level="utilities">
+ <component id="libutils_apis" name="Utility Library APIs" class="api" filter="s60">
+ <unit bldFile="ossrv_plat/libutils/group"/>
+ </component>
+ </collection>
+ <collection id="stdlibs" name="Standard Libraries" level="translation">
+ <component id="libcrypt" filter="s60" name="Crypt Library">
+ <unit bldFile="stdlibs/libcrypt/group"/>
+ </component>
+ </collection>
+ <collection id="ssl" name="SSL" level="data-services">
+ <component id="libcrypto" filter="s60" name="Crypto Library">
+ <unit bldFile="ssl/libcrypto/group"/>
+ </component>
+ <component id="libssl" filter="s60" purpose="development" name="SSL Library">
+ <unit bldFile="ssl/libssl/group"/>
+ </component>
+ </collection>
+ <collection id="glib" name="GLib" level="utilities">
+ <component id="glibbackend" filter="s60" name="GLib Backend">
+ <unit bldFile="glib/build/symbian/glibbackend/group"/>
+ <!-- Move to here: <unit bldFile="glib/glibbackend/group"/> -->
+ </component>
+ <component id="libglib" filter="s60" name="GLib Library">
+ <unit bldFile="glib/build/symbian/glib/group"/>
+ <!-- Move to here: <unit bldFile="glib/libglib/group"/> -->
+ </component>
+ <component id="libgthread" filter="s60" name="Libg Thread">
+ <unit bldFile="glib/build/symbian/gthread/group"/>
+ <!-- Move to here: <unit bldFile="glib/libgthread/group"/> -->
+ </component>
+ <component id="libgmodule" filter="s60" name="Libg Module">
+ <unit bldFile="glib/build/symbian/gmodule/group"/>
+ <!-- Move to here: <unit bldFile="glib/libgmodule/group"/> -->
+ </component>
+ <component id="libgobject" filter="s60" name="Libg Object">
+ <unit bldFile="glib/build/symbian/gobject/group"/>
+ <!-- Move to here: <unit bldFile="glib/libgobject/group"/> -->
+ </component>
+ </collection>
+ <collection id="stdcpp" name="C++ Standard Library" level="translation">
+ <!-- collection is really a component. Needs to be moved down a directory -->
+ <component id="stdcpp_build" filter="s60" name="Stdcpp">
+ <unit bldFile="stdcpp/group"/>
+ </component>
+ </collection>
+ <collection id="ofdbus" name="Open Foundation D-Bus" level="utilities">
+ <component id="dbus" filter="s60" name="D-Bus">
+ <unit bldFile="ofdbus/dbus/group"/>
+ </component>
+ <component id="dbus-glib" filter="s60" name="D-Bus GLib">
+ <unit bldFile="ofdbus/dbus-glib/group"/>
+ </component>
+ <component id="ofdbus_rom" filter="s60" name="D-Bus ROM">
+ <unit bldFile="ofdbus/rom"/>
+ </component>
+ </collection>
+ <collection id="utilitylibraries" name="Utility Libraries" level="encoding">
+ <component id="libutils" filter="s60" name="Utility Library">
+ <unit bldFile="utilitylibraries/libutils/group"/>
+ </component>
+ </collection>
+ <collection id="genericservices" name="Generic Services" level="utilities">
+ <component id="s60compatibilityheaders" name="S60 Compatibility Headers" filter="gt" purpose="optional">
+ <unit version="tb101sf" bldFile="genericservices/s60compatibilityheaders/groupsymtb101sf" mrp="genericservices/s60compatibilityheaders/groupsymtb101sf/tools_s60_header_compatsymtb101sf.mrp"/>
+ </component>
+ <component id="mimerecognitionfw" name="MIME Recognition Framework" purpose="mandatory">
+ <unit bldFile="genericservices/mimerecognitionfw/group" mrp="genericservices/mimerecognitionfw/group/app-framework_emime.mrp"/>
+ </component>
+ <component id="systemagent" name="System Agent" introduced="9.0" purpose="mandatory">
+ <unit bldFile="genericservices/systemagent/group" mrp="genericservices/systemagent/group/syslibs_sysagent2.mrp"/>
+ </component>
+ <component id="taskscheduler" name="Task Scheduler" introduced="6.0" purpose="optional">
+ <unit bldFile="genericservices/taskscheduler/group" mrp="genericservices/taskscheduler/group/syslibs_schsvr.mrp"/>
+ </component>
+ <component id="activebackupclient" name="Active Backup Client" purpose="optional">
+ <unit bldFile="genericservices/activebackupclient/group" mrp="genericservices/activebackupclient/group/connectivity_abclient.mrp"/>
+ </component>
+ <component id="syslibsdocs" name="Syslibs Documentation" purpose="development" class="doc">
+ <unit mrp="genericservices/syslibsdocs/syslibs_documentation.mrp"/>
+ </component>
+ <component id="httputils" name="HTTP Utilities Library" introduced="6.2" purpose="optional">
+ <unit bldFile="genericservices/httputils/group" mrp="genericservices/httputils/group/application-protocols_inetprotutil.mrp"/>
+ </component>
+ </collection>
+ <collection id="syslibsapitest" name="SysLibs API Tests" level="utilities">
+ <component id="syslibssvs" name="Syslibs Verfication Suite" introduced="^2" purpose="development" filter="test">
+ <unit mrp="syslibsapitest/syslibssvs/group/syslibssvs.mrp" bldFile="syslibsapitest/syslibssvs/group"/>
+ </component>
+ </collection>
+ <collection id="compressionlibs" name="Compression Libraries" level="data-services">
+ <component id="ziplib" name="Zip Compression Library" introduced="6.0" purpose="mandatory">
+ <unit bldFile="compressionlibs/ziplib/group" mrp="compressionlibs/ziplib/group/syslibs_ezlib2.mrp"/>
+ </component>
+ </collection>
+ <collection id="genericopenlibs" name="Generic Open Libraries" level="translation">
+ <component id="cstdlib" name="C Standard Library" introduced="ER5" purpose="optional">
+ <unit bldFile="genericopenlibs/cstdlib/group" mrp="genericopenlibs/cstdlib/group/syslibs_stdlib.mrp"/>
+ </component>
+ <component id="cppstdlib" name="C++ Standard Library" introduced="^3" purpose="mandatory">
+ <unit bldFile="genericopenlibs/cppstdlib/group" mrp="genericopenlibs/cppstdlib/group/openenv_libstdcpp.mrp"/>
+ </component>
+ <component id="openenvcore" name="Open Environment Core" introduced="^2" purpose="mandatory">
+ <unit bldFile="genericopenlibs/openenvcore/group" mrp="genericopenlibs/openenvcore/group/openenv.mrp"/>
+ </component>
+ <component id="posixrealtimeextensions" name="POSIX Realtime Extensions" introduced="^3" purpose="optional">
+ <unit bldFile="genericopenlibs/posixrealtimeextensions/group" mrp="genericopenlibs/posixrealtimeextensions/group/oeaddons_librt.mrp"/>
+ </component>
+ <component id="liboil" name="Liboil" introduced="^4" purpose="optional">
+ <unit bldFile="genericopenlibs/liboil/group" mrp="genericopenlibs/liboil/group/oeaddons_liboil.mrp"/>
+ </component>
+ </collection>
+ <collection id="lowlevellibsandfws" name="Low Level Libraries and Frameworks" level="app-libs">
+ <component id="pluginfw" name="Plugin Framework" introduced="6.2" purpose="mandatory">
+ <unit version="3" bldFile="lowlevellibsandfws/pluginfw/Group" mrp="lowlevellibsandfws/pluginfw/Group/syslibs_ecom3.mrp"/>
+ </component>
+ <component id="apputils" name="Application Utilities" introduced="ER5" purpose="mandatory">
+ <unit bldFile="lowlevellibsandfws/apputils/group" mrp="lowlevellibsandfws/apputils/group/syslibs_bafl.mrp"/>
+ </component>
+ <component id="genericusabilitylib" name="Generic Usability Library" introduced="^3" purpose="mandatory">
+ <unit bldFile="lowlevellibsandfws/genericusabilitylib/group" mrp="lowlevellibsandfws/genericusabilitylib/group/syslibs_euserhl.mrp"/>
+ </component>
+ </collection>
+ <collection id="ossrv_info" name="Generic OS Services Info" level="utilities">
+ <component id="ossrv_rom" filter="s60" name="Generic OS Services ROM">
+ <!-- exports should be moved to individual components -->
+ <unit bldFile="rom"/>
+ </component>
+ <component id="ossrv_metadata" name="Generic OS Services Metadata" class="config" introduced="^2" purpose="development" target="desktop">
+ <unit mrp="ossrv_info/ossrv_metadata/ossrv_metadata.mrp"/>
+ </component>
+ </collection>
+ </package>
</SystemDefinition>
--- a/package_map.xml Thu Sep 02 22:16:05 2010 +0300
+++ b/package_map.xml Fri Sep 17 08:38:54 2010 +0300
@@ -1,2 +1,1 @@
-<?xml version="1.0"?>
-<PackageMap root="sf" layer="os" />
\ No newline at end of file
+<PackageMap root="sf" layer="os"/>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/rom/bld.inf Fri Sep 17 08:38:54 2010 +0300
@@ -0,0 +1,59 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+*
+*/
+
+
+
+PRJ_EXPORTS
+//Exporting glib iby file
+glib.iby CORE_OS_LAYER_IBY_EXPORT_PATH(glib.iby)
+
+//Exporting ssl iby file
+ssl.iby CORE_OS_LAYER_IBY_EXPORT_PATH(ssl.iby)
+
+//Exporting stdcpp iby file
+stdcpp4.iby CORE_OS_LAYER_IBY_EXPORT_PATH(stdcpp4.iby)
+
+//Exporting stdlibs iby file
+stdlibs.iby CORE_OS_LAYER_IBY_EXPORT_PATH(stdlibs.iby)
+
+
+
+
+
+//exporting openc_stdlibs stub sis
+../stdlibs/install/openc_stdlibs_stub.sis /epoc32/data/z/system/install/openc_stdlibs_stub.sis
+//exporting openc_ssl stub sis
+../ssl/install/openc_ssl_stub.sis /epoc32/data/z/system/install/openc_ssl_stub.sis
+//exporting openc_libzcore_stub.sis
+../ssl/install/openc_libzcore_stub.sis /epoc32/data/z/system/install/openc_libzcore_stub.sis
+//exporting openc_glib stub sis
+../glib/install/openc_glib_stub.sis /epoc32/data/z/system/install/openc_glib_stub.sis
+//exporting stdcpp stub sis
+../stdcpp/install/stdcpp_stub.SIS /epoc32/data/z/system/install/stdcpp_stub.sis
+
+//exporting rpipe stub sis
+../stdlibs/install/rpipe_stub.SIS /epoc32/data/z/system/install/rpipe_stub.sis
+
+// exporting openc_liblogger stub sis
+../stdlibs/install/openc_liblogger_stub.sis /epoc32/data/z/system/install/openc_liblogger_stub.sis
+
+// exporting openc_signalserver_stub sis
+../stdlibs/install/openc_signalserver_stub.sis /epoc32/data/z/system/install/openc_signalserver_stub.sis
+
+
+// End of File
+