Revision: 201037
authorDremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Fri, 17 Sep 2010 08:38:54 +0300
changeset 63 a117ad66e027
parent 59 09fa7c3c5079
child 68 ff3fc7722556
Revision: 201037 Kit: 201037
genericopenlibs/liboil/tsrc/testsuite/dct/src/dct.c
genericopenlibs/liboil/tsrc/testsuite/mas/src/mas.c
genericopenlibs/liboil/tsrc/testsuite/trans8x8/src/trans8x8.c
genericopenlibs/openenvcore/backend/bwins/backendu.def
genericopenlibs/openenvcore/backend/bwins/backendwolibrtu.def
genericopenlibs/openenvcore/backend/bwins/old_backendu.def
genericopenlibs/openenvcore/backend/eabi/backendu.def
genericopenlibs/openenvcore/backend/eabi/backendwolibrtu.def
genericopenlibs/openenvcore/backend/eabi/old_backendu.def
genericopenlibs/openenvcore/backend/inc/fdesc.h
genericopenlibs/openenvcore/backend/inc/sysif.h
genericopenlibs/openenvcore/backend/inc/sysreent.h
genericopenlibs/openenvcore/backend/src/corebackend/fdesc.cpp
genericopenlibs/openenvcore/backend/src/corebackend/localif.cpp
genericopenlibs/openenvcore/backend/src/corebackend/usocket.cpp
genericopenlibs/openenvcore/backend/src/corebackend/usocketbase.cpp
genericopenlibs/openenvcore/backend/src/syscall/handlenms.cpp
genericopenlibs/openenvcore/include/net/if.h
genericopenlibs/openenvcore/include/netdb.h
genericopenlibs/openenvcore/libc/bwins/libcu.def
genericopenlibs/openenvcore/libc/bwins/old_libcu.def
genericopenlibs/openenvcore/libc/eabi/libcu.def
genericopenlibs/openenvcore/libc/eabi/old_libcu.def
genericopenlibs/openenvcore/libc/src/Nmscalls.cpp
genericopenlibs/openenvcore/libc/src/net/getaddrinfo.c
genericopenlibs/openenvcore/libc/test/testsocket/inc/tsocket.h
genericopenlibs/openenvcore/libc/test/testsocket/scripts/tsocket.script
genericopenlibs/openenvcore/libc/test/testsocket/scripts/tsocket_hw.script
genericopenlibs/openenvcore/libc/test/testsocket/src/tsocket.cpp
genericopenlibs/openenvcore/libc/test/testsocket/src/tsocketblocks.cpp
genericopenlibs/openenvcore/libc/test/testsocket/src/tsocketserver.cpp
genericservices/s60compatibilityheaders/groupsymtb101sf/bld.inf
genericservices/s60compatibilityheaders/xmlengine/bld.inf
genericservices/s60compatibilityheaders/xmlengine/libxml2_c14n.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_chvalid.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_dict.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_encoding.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_entities.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_globals.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_hash.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_list.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_modules.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_parser.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_parserinternals.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_sax.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_sax2.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_schemasinternals.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_threads.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_tree.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_uri.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_valid.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_xinclude.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_xlink.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_xmlerror.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_xmlexports.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_xmlio.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_xmlmemory.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_xmlreader.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_xmlschemasglobals.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_xmlstring.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_xmlversion.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_xpath.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_xpathinternals.h
genericservices/s60compatibilityheaders/xmlengine/libxml2_xpointer.h
genericservices/s60compatibilityheaders/xmlengine/xmlengattr.h
genericservices/s60compatibilityheaders/xmlengine/xmlengbinarycontainer.h
genericservices/s60compatibilityheaders/xmlengine/xmlengcdatasection.h
genericservices/s60compatibilityheaders/xmlengine/xmlengcharacterdata.h
genericservices/s60compatibilityheaders/xmlengine/xmlengchunkcontainer.h
genericservices/s60compatibilityheaders/xmlengine/xmlengcomment.h
genericservices/s60compatibilityheaders/xmlengine/xmlengconfig.h
genericservices/s60compatibilityheaders/xmlengine/xmlengdatacontainer.h
genericservices/s60compatibilityheaders/xmlengine/xmlengdataserializer.h
genericservices/s60compatibilityheaders/xmlengine/xmlengdeserializer.h
genericservices/s60compatibilityheaders/xmlengine/xmlengdeserializerdom.h
genericservices/s60compatibilityheaders/xmlengine/xmlengdocument.h
genericservices/s60compatibilityheaders/xmlengine/xmlengdocumentfragment.h
genericservices/s60compatibilityheaders/xmlengine/xmlengdom.h
genericservices/s60compatibilityheaders/xmlengine/xmlengdomimplementation.h
genericservices/s60compatibilityheaders/xmlengine/xmlengdomparser.h
genericservices/s60compatibilityheaders/xmlengine/xmlengdomutils.h
genericservices/s60compatibilityheaders/xmlengine/xmlengelement.h
genericservices/s60compatibilityheaders/xmlengine/xmlengentityreference.h
genericservices/s60compatibilityheaders/xmlengine/xmlengerrors.h
genericservices/s60compatibilityheaders/xmlengine/xmlengextendedcontenthandler.h
genericservices/s60compatibilityheaders/xmlengine/xmlengfilecontainer.h
genericservices/s60compatibilityheaders/xmlengine/xmlengmem.h
genericservices/s60compatibilityheaders/xmlengine/xmlengnamespace.h
genericservices/s60compatibilityheaders/xmlengine/xmlengnamespaceresolver.h
genericservices/s60compatibilityheaders/xmlengine/xmlengnode.h
genericservices/s60compatibilityheaders/xmlengine/xmlengnodefilter.h
genericservices/s60compatibilityheaders/xmlengine/xmlengnodelist.h
genericservices/s60compatibilityheaders/xmlengine/xmlengnodelist_impl.h
genericservices/s60compatibilityheaders/xmlengine/xmlengnodeset.h
genericservices/s60compatibilityheaders/xmlengine/xmlengoutputstream.h
genericservices/s60compatibilityheaders/xmlengine/xmlengparsingoptions.h
genericservices/s60compatibilityheaders/xmlengine/xmlengprocessinginstruction.h
genericservices/s60compatibilityheaders/xmlengine/xmlengserializationoptions.h
genericservices/s60compatibilityheaders/xmlengine/xmlengserializeerrors.h
genericservices/s60compatibilityheaders/xmlengine/xmlengserializer.h
genericservices/s60compatibilityheaders/xmlengine/xmlengtext.h
genericservices/s60compatibilityheaders/xmlengine/xmlengtriodef.h
genericservices/s60compatibilityheaders/xmlengine/xmlengtrionan.h
genericservices/s60compatibilityheaders/xmlengine/xmlenguserdata.h
genericservices/s60compatibilityheaders/xmlengine/xmlengutils.h
genericservices/s60compatibilityheaders/xmlengine/xmlengxeconfig.h
genericservices/s60compatibilityheaders/xmlengine/xmlengxestd.h
genericservices/s60compatibilityheaders/xmlengine/xmlengxestrings.h
genericservices/s60compatibilityheaders/xmlengine/xmlengxesys.h
genericservices/s60compatibilityheaders/xmlengine/xmlengxformsinstancemap.h
genericservices/s60compatibilityheaders/xmlengine/xmlengxpath.h
genericservices/s60compatibilityheaders/xmlengine/xmlengxpathconfiguration.h
genericservices/s60compatibilityheaders/xmlengine/xmlengxpatherrors.h
genericservices/s60compatibilityheaders/xmlengine/xmlengxpathevaluationcontext.h
genericservices/s60compatibilityheaders/xmlengine/xmlengxpathevaluator.h
genericservices/s60compatibilityheaders/xmlengine/xmlengxpathexpression.h
genericservices/s60compatibilityheaders/xmlengine/xmlengxpathextensionfunction.h
genericservices/s60compatibilityheaders/xmlengine/xmlengxpathobject.h
genericservices/s60compatibilityheaders/xmlengine/xmlengxpathresult.h
genericservices/s60compatibilityheaders/xmlengine/xmlengxpathutils.h
lowlevellibsandfws/pluginfw/Framework/frame/RegistryData.cpp
ofdbus/rom/bld.inf
package_definition.xml
package_map.xml
rom/bld.inf
--- 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
+