Version 2.00.2057
=================
(Made by vfebvre 07/05/2010)

1.	famustaf
	1.	ou1cimx1#372053 CFileMan malfunctioning in copying

2.	dlyokhin
	1.	ou1cimx1#372172 File server may request more free space on the volume than necessary


Version 2.00.2056
=================
(Made by vfebvre 05/05/2010)

1.	niccox
	1.	ou1cimx1#371021 shostmassstorage capabilities are too high


Version 2.00.2055
=================
(Made by vfebvre 30/04/2010)

1.	frhofman
	1.	ou1cimx1#360143 BC Drivers: Os/KernelHwSrv: 2 failures in Base API on Vasco


Version 2.00.2054
=================
(Made by vfebvre 23/04/2010)

1.	michcox
	1.	ou1cimx1#357507 TB92 Maps 3.04: File mode EFileWrite (defined in f32file.h) corrupts memory of other processes under certain conditions on 5.0 devices


Version 2.00.2053
=================
(Made by vfebvre 22/04/2010)

1.	niccox
	1.	ou1cimx1#356808 Disconnecting memory card reader/writer from phone causes phone crash


Version 2.00.2052
=================
(Made by vfebvre 14/04/2010)

1.	famustaf
	1.	PDEF145305 F32TEST T_FSYS test failure investigation


Version 2.00.2051
=================
(Made by vfebvre 09/04/2010)

1.	niccox
	1.	DEF145248 Error in mass storage note when connecting SanDisk 16GB stick to phone


Version 2.00.2050
=================
(Made by vfebvre 24/03/2010)

1.	fagortz
	1.	DEF145067: TTPA-83EAYU: Partition handling for USB drives with 4K block size is incorrect


Version 2.00.2049
=================
(Made by vfebvre 22/03/2010)

1.	michcox
	1.	DEF145080 SMAD-83NJMP: File server does not check return result of some User::ReAlloc()'s


Version 2.00.2048
=================
(Made by vfebvre 15/03/2010)

1.	niccox
	1.	DEF144933 Improper Mass Storage Error Code for Empty Drive case


Version 2.00.2047
=================
(Made by vfebvre 12/03/2010)

1.	famustaf
	1.	MINOR_CHANGE Updated RFs::ScanDrive and RFs::CheckDisk Documentation


Version 2.00.2046
=================
(Made by vfebvre 10/03/2010)

1.	frhofman
	1.	PDEF144910: Revert IsFileOpen() behaviour to perform file existance check
	2.	DEF144911: SALM-82WCVK: efile.exe crashes in dynamic dir cache code when out-of-memory


Version 2.00.2045
=================
(Made by vfebvre 08/03/2010)

1.	shamaden
	1.	DEF144753 Crash when usb memory is dismounted during copy

2.	dlyokhin
	1.	DEF144750 FAT: unable to mount volume larger than 1TB  


Version 2.00.2044
=================
(Made by vfebvre 05/03/2010)

1.	niccox
	1.	DEF144749 Transcend flash drive not recognised 


Version 2.00.2043
=================
(Made by vfebvre 04/03/2010)

1.	dlyokhin
	1.	DEF144779 exFAT: T_chkUID test failure  


Version 2.00.2042
=================
(Made by vfebvre 03/03/2010)

1.	niccox
	1.	DEF144548 Initialisation of MaxLun if USB device stalls request


Version 2.00.2041
=================
(Made by vfebvre 02/03/2010)

1.	dlyokhin
	1.	DEF144598 FAT leaf directory cache should be enabled by default  


Version 2.00.2040
=================
(Made by vfebvre 26/02/2010)

1.	famustaf
	1.	DEF144608 Missing Trap in a non-leaving function.

2.	dlyokhin
	1.	PDEF144630 Better checks in CFat16FixedCache code 


Version 2.00.2039
=================
(Made by vfebvre 23/02/2010)

1.	niccox
	1.	DEF144323 remove redundant bootsector code from smassstorage


Version 2.00.2038
=================
(Made by vfebvre 18/02/2010)

1.	famustaf
	1.	PDEF144438 Optimise TParseBase::AddDir() to not use TFileName

2.	migubarr
	1.	DEF144407: File Server request cache is not big enough for S60


Version 2.00.2037
=================
(Made by vfebvre 11/02/2010)

1.	dlyokhin
	1.	DEF144356 VFAT interoperability: LFN entries padding is wrong


Version 2.00.2036
=================
(Made by vfebvre 09/02/2010)

1.	kaduan
	1.	PDEF144352:  Unwanted directory cache change caused performance regression 

2.	dlyokhin
	1.	DEF144134 potential memory leak in TFindFile::FindWildByDir()  


Version 2.00.2035
=================
(Made by vfebvre 05/02/2010)

1.	niccox
	1.	DEF144268 Add ModeSense10 support to USB MS Client


Version 2.00.2034
=================
(Made by vfebvre 03/02/2010)

1.	migubarr
	1.	DEF144172: Small FAT32 partitions on large media can sometimes be formatted incorrectly 


Version 2.00.2033
=================
(Made by vfebvre 01/02/2010)

1.	jsucksmi
	1.	DEF144003 Emulated removable drive X is not present in tb10.1(MSF00326) and tb9.2(1014) 


Version 2.00.2032
=================
(Made by vfebvre 28/01/2010)

1.	famustaf
	1.	PDEF144033 Change tests in t_fman to use __E32TEST_EXTENSION__

2.	hengrant
	1.	PDEF144090 New Memory & File Server Coverity Defects
		3 Coverity Fixes


Version 2.00.2031
=================
(Made by vfebvre 26/01/2010)

1.	famustaf
	1.	MINOR_CHANGE Add documentation to 'Copy' in Text Shell (TB9.2)
		Added documentation to state that ShellFunction::Copy will overwrite existing file(s)


Version 2.00.2030
=================
(Made by vfebvre 21/01/2010)

1.	dlyokhin
	1.	PDEF143791 FAT: renaming many files in a directory corrupts short file names


Version 2.00.2029
=================
(Made by vfebvre 19/01/2010)

1.	necliffo
	1.	PDEF143913 WDP: T_locate fails on VASCO 


Version 2.00.2028
=================
(Made by vfebvre 15/01/2010)

1.	niccox
	1.	PDEF143832 t_falsespace should not be run on drive if media type is EMediaRAM


Version 2.00.2027
=================
(Made by vfebvre 15/01/2010)

1.	niccox
	1.	PDEF143508 Host USB ModeSense10 command does not decode ModeDataLength
	2.	MINOR_CHANGE usbtestclient corrections
	3.	MINOR_CHANGE hostusbmsapp support for different screen sizes
	4.	DEF143785 USB Host MS does not handle non-mass-storage drive correctly

2.	kaduan
	1.	DEF143211 File system caching should be turned off on the S60 emulator
	2.	DEF136627:  T_HANDSHARE failed on NE1_TB_ARMV5.UDEB.SMPPAGE image 

3.	migubarr
	1.	DEF143592: t_ms_mountstart fails on H4 and VASCO 

4.	dlyokhin
	1.	PDEF143794  FAT: deleting VFAT entryset is not optimal


Version 2.00.2026
=================
(Made by vfebvre 17/12/2009)

1.	patrickconway
	1.	DEFECT FIX: DEF143273: Mass Storage still using an obsoleted API to allocate endpoint resources
		In cases where support for new API is detected in device capabilities, use that API to allocate endpoint resources


Version 2.00.2025
=================
(Made by vfebvre 16/12/2009)

1.	MichaelCox
	1.	MINOR_CHANGE: Improve documentation for class CFsNotify concerning how big the buffer should be

2.	HaoJ
	1.	DEFECT FIX: DEF143253 [Coverity]:DEADCODE and CHECKED_RETURN error in MSF00264 vtb101sf
	2.	MINOR_CHANGE: Remove a build warning in arm4 and wins introduced by fix for DEF143253

3.	hengrant
	1.	DEFECT FIX: DEF143386: t_notify_perf failure of edge use cases on gekko79 

4.	DmitryL
	1.	DEFECT FIX: DEF143263 FAT CheckDisk() is too slow comparing to ScanDrive() 

5.	FadhliMustaffa
	1.	DEFECT FIX: DEF142711: RFsPlugin needs to expose a Volume() API


Version 2.00.2024
=================
(Made by vfebvre 15/12/2009)

1.	cnotton
	1.	MINOR_CHANGE Added two missing public headers for case when SYMBIAN_ENABLE_PUBLIC_PLATFORM_HEADER_SPLIT is used.


Version 2.00.2023
=================
(Made by VincentF 14/12/2009)

1.	cnotton
	1.	DEF143346: Stop including platform headers in f32file.h


Version 2.00.2022
=================
(Made by VincentF 10/12/2009)

1.	DmitryL
	1.	DEFECT FIX: DEF143214 t_automounter.cpp depends on exfat which is not contributed to the foundation  

2.	KaiD
	1.	DEFECT FIX: DEF143215: 	File server requesting a large chunk


Version 2.00.2021
=================
(Made by VincentF 03/12/2009)

1.	DmitryL
	1.	DEFECT FIX: DEF142313 excessive usage of Entry() in the file server  
	2. 	MINOR_CHANGE: placing RBitVector into common utilities file

2.	HaoJ
	1.	DEFECT FIX: DEF143222 t_notify_perf failure


Version 2.00.2020
=================
(Made by VincentF 27/11/2009)

1.	NicholasC
	1.	DEFECT FIX: DEF143079: E32USER-CBASE 46 with Host Ms Thread3 in mass storage file system

2.	DmitryL
	1.	DEFECT FIX: DEF143009 T_scn32rd2 test fails on 1MB FAT volume and no call to DoRummageDirCacheL()

3.	ChrisNotton
	1.	DEFECT FIX: DEF142863: Public header files must not include platform or internal headers


Version 2.00.2019
=================
(Made by Vino Jose 25/11/2009)

1.	NicholasC
	1.	DEFECT FIX: DEF142837: Enable File Server client to determine if logical drive is attached to USB bus	
	2.	DEFECT FIX: DEF142899: t_ext1 fails on NaviEngine UREL with USB MS drive
	3.	DEFECT FIX: DEF142900: t_dspace failing with USB Mass Storage drive

2.	DmitryL
	1.	DEFECT FIX: DEF142322 FAT: CFatMountCB::IsEndOfClusterCh() implementation is not optimal  
	2. 	DEFECT FIX: DEF142991 Automounter FS shall comply with changes introduced in DEF142837  
	3.	DEFECT FIX: DEF143023 FAT, exFAT: CDynamicDirCache::ReadL() can't handle bulk reads  

3.	MichaelCox
	1.	DEFECT FIX: DEF142995: F32 Plugins cannot get the filename when intercepting EFsSetEntry 


Version 2.00.2018
=================
(Made by Vino Jose 05/11/2009)

1.	KaiDuan
	1.	DEF140485: ASSERT triggered in CCacheMemoryClient::Reset()

Version 2.00.2017
=================
(Made by Vino Jose 04/11/2009)

1.	DmitryL
	1.	DEFECT FIX:  DEF142796: exFAT: CExFatMountCB::SetVolumeClean() sometimes corrupts original boot code.  

2.	NicholasC
	1.	DEFECT FIX: DEF142538: b_fat32 hangs when using large Mass Storage devices
	2.	DEFECT FIX: DEF141812: F32TEST T_NOTIFY_MFS on Unicore SMP (Naviengine) Image
	3.	DEFECT FIX: DEF142590: Test hanging in usb host mass storage file system 

3.	SophieY
	1.	DEFECT FIX: DEF141402: File server trace LDD causes zombie thread to remain in existence forever 

4.	FadhliMustaffa
	1.	DEFECT FIX: DEF142406: T_FMAN and T_FSYS failing on X86 (T_fman.cpp:105 & T_fsys.cpp:570)
	2.	MINOR_CHANGE: Correctly labelled tests in T_FMAN


Version 2.00.2016
=================
(Made by Vino Jose 29/10/2009)

1.	DmitryL
	1.	DEFECT FIX:  DEF142713  RFs::NotifyDismount() has behaviour which is not documented  
	
2.	HaoJiang
	1.	DEFECT FIX:  PDEF142695: unwanted disk space check when RFile::Att or RFile::Modified is called 

3.	NicholasC
	1.	MINOR CHANGE: /smassstorage/inc/cusbmassstoragescheduler.h is test file so moved to /f32test/smassstorage/inc/ 
	2.	DEFECT FIX: DEF142701: suspend not entered with large USB mass storage device after formatting
	3.	DEFECT FIX: DEF142703: Improve use of buffers in TBlockTransfer


Version 2.00.2015
=================
(Made by Vino Jose 22/10/2009)

1.	MichaelCox
	1.	DEFECT FIX: DEF142065: F32 Plugins can be removed whilst still being in use 

2.	DmitryL
	1.	MINOR_UPDATE: Separating source code for 'sfat' and 'sfat32' components


Version 2.00.2014
=================
(Made by  Vino Jose 21/10/2009)

1.	SophieY
	1.	DEFECT FIX: DEF142394: File server uses excessively sized heap

Version 2.00.2013
=================
(Made by  Vino Jose 13/10/2009)


1.	NicholasC
	1.	MINOR CHANGE: Remove TCB from t_fsysbm
	2.	DEFECT FIX: DEF141910: Usbmsapp does not correctly support OTG environments
	3.	DEFECT FIX: DEF142293: [OTG] Host Ms Thread1 crashes when connecting large capacity USB stick to phone
	4.	DEFECT FIX: DEF142428: Buffer allocation can be improved in CUsbHostMsLogicalUnit 

2.	DmitryL
	1.	DEFECT FIX:  DEF142328: make use efat32.fsy by default  

Version 2.00.2012
=================
(Made by  Vino Jose 07/10/2009)

1.	NicholasC
	1.	DEFECT FIX: DEF142383: USB connection does not work after an OTG device is connected
2.	MiguelB
	1.	DEFECT FIX: DEF142169: File Server crash observed on the NE1_TB.ARMV5.UREL.SMPDATAPAGE configuration 



Version 2.00.2011
=================
(Made by  Vino Jose 06/10/2009)

1.	SophieY
	FinalDS: SymTB9.2, GT0419, MS3.35, DS.1759 CR1993 Improve Performance of PREQ2083 NGFS
	Change Requests:
	CR1993 Improve Performance of PREQ2083 NGFS

Version 2.00.2010
=================
(Made by  Vino Jose 01/10/2009)

1.	IndrajeetSingh
	1.	DEFECT FIX: DEF141687: F32TEST T_COMPAT32 on all platforms

2.	DmitryL
	1.	FinalDS: SymTB9.2, GT0419, MS3.39, DS.1823 CR2075 " Auto-mount exFAT storage media"
		Change Requests: CR2075 Auto-mount exFAT storage media
		Other: New COMPONENT: 169 Automounter

Version 2.00.2009
=================
(Made by  Vino Jose 24/09/2009

1.	RichardCo
	1.	DEFECT FIX: PDEF142179: Qt applications take 15 seconds to load if libraries are installed on E:
		Improve performance of the loader when loading already-loaded binaries from removable media.

2.	VincentF
	1.	MINOR_CHANGE: Break down T_PAGELDRTST into smaller test units to prevent timeouts



Version 2.00.2008
=================
(Made by Vino Jose   21/09/2009)

1.	MiguelB
	1.	DEFECT FIX: DEF141409: File Server crashes when disconnecting Host USB 

2.	MichaelCox
	1.	DEFECT FIX: DEF141517: ONB - F32TEST Plugin_Framework_Version_2_Test Hanging on navi smp WDP
		Original problem was locking the semaphore twice which caused it to hang.
		Fixing this revealed a further problem of transferring requests	when the session was being closed.
3.	FadhliMustaffa
	1.	DEFECT FIX: DEF141874: [Coverity]:UNINIT,SYMBIAN.CLEANUP_STACK,REVERSE_INULL,ORDER_REVERSAL

4.	NicholasC
	1.	DEFECT FIX: DEF141046: File Server Coverity
		Part IV



Version 2.00.2007
=================
(Made by Vino Jose   16/09/2009)

1.	NicholasC
	1.	DEFECT FIX: DEF141046: File Server Coverity
		Part III


Version 2.00.2006
=================
(Made by Vino Jose   04/09/2009)

1.	NicholasC
	1.	DEFECT FIX: DEF141046: File Server Coverity
		Part II
	2.	DEFECT FIX: DEF141650: Host USB Mass Storage is SMPSAFE

2.	DmitryL
	1.	DEFECT FIX: DEF141785 extra data copying in FAT LeafDir cache methods calls  
	2.	MINOR_CHANGE: Added the ability to dump names of opened objects on media formatting


Version 2.00.2005
=================
(Made by Vino Jose   02/09/2009)

1.	DmitryL
	1.	DEFECT FIX: DEF141591 RFormat shall allow forced media formatting even if volume has files opened.  


Version 2.00.2004
=================
(Made by Vino Jose   27/08/2009)

1.	KaiD
	1.	MINOR_CHANGE:  Missing distribution.polocy.s60 files

2.	FadhliMustaffa
	1.	DEFECT FIX: DEF141520: t_fman: test of CFileMan::Move() with long filenames is incorrect
		Enabled SetupDirectoryForMove() to return an error code

Version 2.00.2003
=================
(Made by Vino Jose   21/08/2009)

1.	DmitryL
	1.	DEFECT FIX: DEF126357: NAND User Data FAT drves should be scanned on mounting
	2.	DEFECT FIX: DEF141595: exFAT CExFatDirCB::ReadL() processes iPending incorrectly.

4.	ChrisNotton
	1.	MINOR_CHANGE: Test code compile fixes in preparation for when spilt headers are enabled.


Version 2.00.2002
=================
(Made by Vino Jose   18/08/2009)

1.	NicholasC
	1.	DEFECT FIX: DEF141046: File Server Coverity
		Part I		

2.	FadhliMustaffa
	1.	DEFECT FIX: DEF140473: T_LDRTST fails on 34xx in both paged and non-paged configs (t_ldrtst.cpp:636)
		Replaced hard-coded system drives in test with RFs::GetSystemDriveChar()

3.	FabianGortz
	1.	DEFECT FIX: DEF141239: T_RDSECT intermittently fails to read correct number of bytes(t_rdsect.cpp:831)




Version 2.00.2001
=================
(Made by Vino Jose   18/08/2009)

1	NicholasC
	1.	DEFECT FIX: DEF141474: USB Host write access to MMC cards doesn't work properly
	2.	DEFECT FIX: DEF141499: Host USB Mass Storage fails to mount corrupted MMC card 
	3.	MINOR_CHANGE: Add trace to USB disconnection notification 

Version 2.00.2000
=================
(Made by Vino Jose   14/08/2009)

1.	IndrajeetSingh
	1.	FileServer to support surrogate pairs outside BMP
		PartialDS: SymTB10.1, DS.1489 PREQ2471 TI18N enhance EUser library to support Unicode 5.0 
		Requirements: PREQ2471 UTF-16 compliant text handling

	
Version 2.00.1999
=================
(Made by VincentF   11/08/2009)

1.	MiguelB
	1.	DEFECT FIX: DEF141341: CFileCache::IsDirty() requires more locking


Version 2.00.1998
=================
(Made by Vino Jose   07/08/2009)

1.	SophieY
	1.	DEFECT FIX: DEF141166: [FSrvPerf] Optimizations on RFs::Connect() 

2.	ChrisNotton
	1.	DEFECT FIX: DEF141421: File Relocation Changes may break components using kern_ext.mmh


Version 2.00.1997
=================
(Made by Vino Jose   04/08/2009)

1.	MiguelB
	1.	DEFECT FIX: PDEF141350: Security Issue in File Server


Version 2.00.1996
=================
(Made by Vino Jose   03/08/2009)


1.	MiguelB
	1.	DEFECT FIX: DEF140772: File server is not suspending MS device properly 

2.	NicholasC
	1.	MINOR_CHANGE: Fix t_notifydismount for Host USB Mass Storage

3.	ChrisNotton
	1.	MINOR_CHANGE: Changed OS_LAYER_SYSTEMINCLUDE to OS_LAYER_SYSTEMINCLUDE_SYMBIAN.

4.	MichaelCox
	1.	DEFECT FIX: DEF135837: ONB failures of T_ENCPLUGIN on NaviEngine
		The encryption_plugin / xorencryptionplugin was trying to save a list
		of encrypted files to the system drive. When the system drive was a ram disk
		this was failing as plugins cannot write to drives which do not support local buffers.
  

Version 2.00.1995
=================
(Made by Vino Jose   28/07/2009)


1.	MiguelB
	1.	DEFECT FIX: DEF139855: Dismountiing a file system with clamped files & dirty data behaves unexpectedly 

Version 2.00.1994
=================
(Made by Vino Jose   21/07/2009)

1.	NicholasC
	1.	DEF140849: RFs::GetMediaSerialNumber() panics with USB Ms drive  
	2.	INC141147: Improper Mass Storage Error Code for Empty Drive

2.	indrajeetsingh
	1.	DevCR: SLEH-7RDDHP Peripherals, GT0419 Base Duranduran, F32 to use FATCharsetConv plug-ins
		The new file server plug-in framework enables variant creators to choose any load 
		code page dll to be explicitly without the need of any locale dll. A test code is 
		provided to create and load test cp932.dll explicitly.
Version 2.00.1993
=================
(Made by Vino Jose   20/07/2009)

1.	DmitryL
	1.	FinalDS: SymTB9.2, GT0419, MS3.31, DS.1749 exFAT MasterSF release
		Requirements: PREQ2083 Next generation file system
		Other: Impacted Components 168 exFAT File System


Version 2.00.1992
=================
(Made by Vino Jose   14/07/2009)

1.  	SophieY
	1.  	DEFECT FIX: PDEF140507: Fileserver misses intercepts for EFsFormatSubClose message
	2.  	DEFECT FIX: DEF140718: Example code error in CFileMan document 
	3.  	DEFECT FIX: DEF140656: CFileMan::Copy and CFileMan::Move use wrong trace attributes.
        4.	DEFECT FIX: PDEF140677: ASSERT triggered in the FAT Directory cache  Version 

2.	DmitryL
	1.	DEF140928 File server functionality is broken as a result of DEF138883  

	


Version 2.00.1991
=================
(Made by Vino Jose   10/07/2009)

1.	ChrisN
	1.	MILESTONE: SymTB9.2, GT0419, MS3.36, DS.1815 PREQ2621 System Architecture Relocating header files - K&HS support


Version 2.00.1990
=================
(Made by Vino Jose   08/07/2009)

1.	FadhliMustaffa
	1.	DEFECT FIX: DEF140666: T_Notifier failure on sfdev intermittantly
		Checked for no cache or write-through in CFsMessageRequest::DoNotify() for EFsFileWrite

	

Version 2.00.1989
=================
(Made by Vino Jose   02/07/2009)

1.	MichaelCox
	1.	DEFECT FIX: DEF140552: No notification when moving file from non-monitored folder to monitored folder 
			With rename notifications, the destination was not being checked against the notification filter.
	2.	DEFECT FIX: DEF140566: F32 Notification framework panics when copying a file btn drives using CFileMan
			From time to time CFsRequest.Message().Function returns the wrong thing. Changed to uise the preferred FsFunction.
	3.	MINOR_CHANGE: Fix for directory notifications whereby MkDirAll is used with a filename at the end of the path, which can match against filters unexpectedly.
			Whole path is sent to file server, so notification framework was looking at that rather than 'ignoring any filenames specified' as RFs::MkDirAll suggests.
			

Version 2.00.1988
=================
(Made by VincentF 26/06/2009)

1.	DmitryL
	1.	DEFECT FIX: DEF138883: API RFile::Lock() fails for greater offset than 2^32  
	2.	INTERFACE CHANGE: BR2806.1 SFileShareLock structure shall not be publishedPartner

2.	FadhliMustaffa
	1.	DEFECT FIX: PDEF140556: Phone does not start up - Estart regression caused by DEF139400
		Set pointer to EOF if line does not have '\n'
		Also able to handle DOS/Unix estart.txt files with empty lines at the beginning

3.	HenryGrant
	1.	DEFECT FIX: DEF139730: Coverity - UNINIT,REVERSE_INULL,OVERRUN_STATIC,FORWARD_NULL,DEADCODE
		Fixed CIDS: 33678, 33674, 33698, 33749. Rest are rejected as False Positives

4.	junwookkwak
	1.	DEFECT FIX: PDEF140510: Autodetection in estart ignore a drive insertted corrupt media
		Propagated fixes from 9.4 branch.

5.	NicholasC
	1.	MINOR CHANGE: Extend husbconsapp user interface to support multiple USB MS devices.


Version 2.00.1987
=================
(Made by Vino Jose 22/06/2009)
   
1.	MichaelCox
	1.	DEFECT FIX: DEF140387: Clients of CFsNotify can receive two sucesssive overflow notifications
		When re-issueing a request after overflow, the counters were not being updated correctly resulting in
		a potential for successive overflow notifications.

2.	KaiD
	1.	DEFECT FIX: DEF135563: 	File creations should avoid unnecessary DoRummageDirCacheL() operation 

Version 2.00.1986
=================
(Made by Vino Jose 19/06/2009)

1.	MiguelB
	1.	DEFECT FIX: DEF140435: File Server plugins intercepting EFsFileSubClose can cause a KERN-EXEC 44 

Version 2.00.1985
=================
(Made by Vino Jose 19/06/2009)

1.	NicholasC
	1.	MINOR CHANGE: Change to use quick format in t_scn32dr1.cpp (f32test)
	2.	MINOR CHANGE: Remove unused Format() from t_sess.cpp (f32test)
	
2.	MiguelB
	1.	DEFECT FIX: PDEF140320: PPIA-7SF8Z5 Claendar content disappear when using MfE 
	2.	DEFECT FIX: DEF139855: Dismountiing a file system with clamped files & dirty data behaves unexpectedly 
	3.	INTERFACE CHANGE: BR2820.1 Prevent three internal TDrive methods from being exported unnecessarily
	

3.	NeilClifford
	1.	MILESTONE: SymTB10.1, GT0472, MS3.6, DS.1737: PREQ1967 Embedded MMC v4.3

4.	JessieZh
	1.	DEFECT FIX: PDEF140211: estart log does not give enough information   
 
Version 2.00.1984
=================
(Made by Vino Jose 12/06/2009)

 1.	OliverStuart
	1.	MINOR CHANGE: CR1970: Adding missing S60 distribution files and correcting IDs.
	2.	MINOR CHANGE: CR1994: Updating incorrect copyright headers.
	3.	MINOR CHANGE: CR1970: Removing orphaned S60 distribution files copied from symtb91.

Version 2.00.1983
=================
(Made by Vino Jose 11/06/2009)

1.	MiguelB		
   	1.	DEFECT FIX: DEF139382: File Server memory leak 
2.	KaiD		
   	1.	DEFECT FIX: PDEF139239: CFileMan async functions not clear what happens on error

3.	NicholasC
	1.	MINOR_CHANGE: Remove unused file - /f32test/server/t_std.h
	2.	MINOR_CHANGE: Move FsBarrier definition to /f32test/fileutils/src/fs_utils.cpp

4.	GayathriR
	1.	MILESTONE: SymTB10.1, GT0472, MS3.8, DS.1751 EI0038: USB Mass Storage Client Shared Memory Chunks
		Engineering Changes: EI0038 USB Mass Storage Client Shared Memory Chunks


Version 2.00.1982
=================	
(Made by Vino Jose 08/06/2009)

1.	FadhliMustaffa
	1.	DEFECT FIX: PDEF139900: ESTART.TXT parsing does not cope with linux-style line endings
		Checked for DOS line ending to support both DOS and Unix formats
		Note that variants need to be rebuilt if Unix-style estart.txt files are to be used
  
		


Version 2.00.1981
=================
(Made by Vino Jose 02/06/2009)
1.	SivashankarN
	1.	DEFECT FIX: DEF139176: Remove unused API defined for EFsRawDiskCaps 
2.	FrankHofmann
	1.	DEFECT FIX: DEF135405: FS Tests assume presence of media devices
		Modify f32 test framework code to give human-readable errors as well as numerical error codes
		for situations where previous tests have hung / corrupted media and/or where
		corrupted/defective media have been detected.
	2.	MINOR_CHANGE: Add RUNEXEC command to text shell.
		For manual testing, to reproduce intermittend failures.
		Invokes a command repeatedly. See "RUNEXEC /?" for instructions.

3.	NicholasC
	1.	MINOR_CHANGE: f32test re-org. Move FAT tests to /f32test/filesystem/fat
4.	KaiD
	1.	DEFECT FIX: DEF139837:	t_ms_mountstart fails



Version 2.00.1980
=================
(Made by Vino Jose 01/06/2009)
1.	DmitryL
	1. 	DEFECT FIX: PDEF139441 File Server heap corruption caused by CDirCache
2.	MiguelB
	1.	DEFECT FIX: PDEF139326: Ejecting memory card can cause deadlock
3.	JohnS 	
	1.	MILESTONE: SYMTB9.2, Base Duranduran, GT0419, MS3.26, PREQ2540: Kernel & HWS: Prepare "LFFS" NOR Flash File System TPIP for Symbian Foundation 		
	2.	INTERFACE CHANGE: BR2729.2 Removal of lffs file system and lffs specific tests


Version 2.00.1979
=================
(Made by Sergei Trofimov 28/05/2009)

1.  sergeitrofimov
	1.	PREQ2621, DS.1698: relocating header files.
1.  AndreiMironenko 
	1.	DEFECT FIX: DEF137804: T_FSYS fails on 34XX_SDP.ARMV5
		

Version 2.00.1978
=================
(Made by Vino Jose 20/05/2009)
   
1.	SamiraA
	1.	MILESTONE: SymTB10.1, GT0472, MS3.3, DS.1579 PREQ1847: Enhanced File Server change notification 
	
	Requirements:
	PREQ1847 Enhanced File Server change notification

2.	indrajeetsingh
   	1.	DEFECT FIX: PDEF137716 : TTG:<On moving a FOLDER, FOLDER will be disappeared>
   	2.	DEFECT FIX: PDEF137719 : TTG:<wrong error code on moving folder> 


Version 2.00.1977
=================
(Made by GeorgeSin 19/05/2009)
   
1.	MiguelB
   	1.	DEFECT FIX: DEF139010: File Server faults if trace LDD missing
   	2.	DEFECT FIX: DEF139382: File Server memory leak 
   	
   	
Version 2.00.1976
=================
(Made by George Sin 12/05/2009)
   
1.	MiguelB
   	1.	DEFECT FIX: DEF138141: RFs::Entry flushes the file cache unnecessarily 
   	2.	DEFECT FIX: DEF138853: Asynchronous read request handling is not multi-thread safe 
   
2.	ChrisNotton
   	1.	DEFECT FIX: DEF136928: T_FSCHED fails on UDEB versions of 34XX_SDP in BTB
   
   
Version 2.00.1975
=================
(Made by George Sin 07/05/2009)
   
1.	ChrisNotton
   	1.	DEF138336: SMP + Data Paging T_REAPER I fails: failed check at line number 256
   	
Version 2.00.1974
=================
(Made by George Sin 29/04/2009)

1.	NicholasC
	1.	DEFECT FIX: DEF137917: usbhostmssrv.exe panic sometimes plug in and pull out USB flash disk
	2.	DEFECT FIX: PDEF134548: Host mass storage test on locking/unlocking media test fails

2.	OliverStuart
	1.	DEF138332: SMP + Datapaging T_FSCHED I fails:T_FSCHED failed check 21 in \os\kernelhwsrv...
		TestClientDies does not wait for all I/O operations initiated by the threads it
		kills to finish before calling CheckDisk so the the disk is locked. We now use
		CLOSE_AND_WAIT with a destruction notifier to ensure completion.
	
Version 2.00.1973
=================
(Made by George Sin 28/04/2009)

1.	MichaelCox
	1.	MINOR_CHANGE: Change description in sl_std.h from f32 to fileserver
	

Version 2.00.1972
=================
(Made by George Sin 21/04/2009)

1.	FrankHofmann
	1.	DEFECT FIX: DEF135638 T_FALSESPACE fails on NE1_TB.ARMV5

2.	NicholasC
	1.	DEFECT FIX: DEF138395: husbconsapp test app doe not support discconnect of multiple LUNs or devices

3.	ChrisN
	1.	MILESTONE: GT0419,Base Duranduran,MS3.22 PREQ2498 Splitting mixed header files
		PREQ2498 Splitting "mixed" header files - Kernel & Hardware Services
		CR1944 PREQ2498 "Splitting "mixed" header files - Kernel & Hardware Services" to scope of SymTB	
		Interface Changes:
		BR2748.10 Splitting "mixed" header files - Kernel & Hardware Services (F32)  

Version 2.00.1971
=================
(Made by GeorgeSin 17/04/2009)

1.	NicholasC
	1.	DEV CR: SLEH-7NCEGZ: Kernel, GT0419 Base Duranduran, Create new USB testclient and Host test suite

Version 2.00.1970
=================
(Made by GeorgeSin 14/04/2009)

1.	DmitryL
	1. 	MINOR_CHANGE: pulling restricted\exfat branch from the old dev1 into sfdev
	
2.	MiguelB
	1.	DEFECT FIX: PDEF137626: Connectivity: Phone reboots automatically when connecting to PC via USB after pl


Version 2.00.1969
=================
(Made by GeorgeSin 09/04/2009)

1.	DmitryL
	1.	DEFECT FIX: DEF136692  ScanDrive shall finalise the drive after successul run.  
	2.	DEFECT FIX: DEF137590  emulator elocal.fsy shall detect windows file system used as emulator drive C:  



Version 2.00.1968
=================
(Made by GeorgeSin 08/04/2009)

1.	FadhliMustaffa
	1.	DEFECT FIX: DEF137105: Duplication of header files in sf_svr.cpp.


Version 2.00.1967
=================
(Made by GeorgeSin 23/03/2009)

1.	DmitryL
	1.	DEFECT FIX: DEF136511 CDataCache64 and CLruCache code in FAT implementation is redundant.  

2	NicholasC
	1.	DEFECT FIX: DEF136708: Host USB Mass Storage panics t_notifydismount 
	2.	DEFECT FIX: DEF136710: Host USB Mass Storage Size of partitioned drive is incorrect 

3.  	AndreiMironenko
 	1.	DEFECT FIX: DEF135299 t_fsys fails on lubbock, integrator and some other platforms


Version 2.00.1966
=================
(Made by George Sin 18/03/2009)

1. 	AndreiMironenko
	1. 	DEFECT FIX: PDEF136759: t_ramstress should not be included in f32test.auto.bat	

Version 2.00.1965
=================
(Made by George Sin 13/03/2009)


1.	JessieZhang
	1.	DEFECT FIX: PDEF136339: Incorrect length parameter checking in File Server 

2.  	AndreiMironenko
	1.  Milestone: Base Meteora, GT0339, MS3.21, DS.1449 PREQ1235 Remove "SSR" Flash Translation Layer
    
3.	OliverStuart
	1.	DEFECT FIX: DEF133800: T_LDRTST times out
		The kernel heap leak reported is that of a misc notifier (runtests makes a call to NotifyDestruction)
		that is only deleted after EFile has already called HeapMarkEnd.  The memory is not really leaked.
		Runtests now allocates the destruction notifier early so that it will not affect the kernel heap's
		memory leak checking because it will be allocated before any HeapMarkStart.

4.	NicholasC
	1.	DEFECT FIX: DEF136360: Host USB Mass Storage: CUsbHostMsProxyDrive::Initialise() should check for media 
	2.	DEFECT FIX: DEF135931: Host Mass Storage USB fails USB client tests 

5.	DmitryL
	1.	DEFECT FIX: DEF136225: void CFatMountCB::InitializeL() shall check the amount of cluster on the volume
	2.	MINOR_CHANGE: Updated F32 performance tests scripts

6.	HenryGrant
	1.	DEFECT FIX: PDEF136028: USB mass storage system wide deadlock

Version 2.00.1964
=================
(Made by GeorgeSin 10/03/2009)

1.	NeilClifford
	1.	DEFECT FIX: PDEF134733: ONB F32 test failures on onenand platform (on MMC drive accesses)

2.	KaiD
	1.	DEFECT FIX: DEF134135: Changing the settings for the directory cache in estart.txt doesn't work 
	2.	MINOR_CHANGE: Updated test code t_fman.cpp to aviod intermittent failures on emulator platform.

3.	TomCosgrove
	1.	DEFECT FIX: PDEF134764: "Fuzzing by truncation" test is not executed for an internal drive
		Add line to set target drive to the internal drive before the appropriate test.
		
4.	MichaelCox
	1.	DEFECT FIX: DEF135502: SMP unsafe calls in LFFS 
		Was trying to use a stack variable between two threads. Wasn't waiting for the client-side thread
		handle to be cleared before trying to recreate threads with the same name.


Version 2.00.1963
=================
(Made by GeorgeSin 27/02/2009)

1.	KaiD
	1.	MINOR_CHANGE: Updated documentation of CFileMan for 'low memory' conditions.
		"Note: 
		To support wildcard, CFileMan uses heap memory to store all directory entries 
		from a single directory. Therefore, in a extreme condition, if a directory contains 
		a huge number of files (e.g. more than 15000 files with 10 characters' long file 
		names), user may encounter KErrNoMemory errors. Developers who have a need to handle 
		this very rare case should increase the heap size limitation of their applications. 
		For more information about heap size configuration, please refer following 
		section in Symbian Developer Library:
		Symbian OS build guide >> Build Tools Reference >> MMP file syntax >> epocheapsize"   

	2.	MINOR_CHANGE: Updated Base_Functional_Specification.doc for PREQ1885 delivery.

2.	DmitryL
	1.	DEFECT FIX: DEF133904: Loader vunerability


Version 2.00.1962
=================
(Made by JohnS 10/02/2009)

1.	KaiD
	1.	DEFECT FIX: PDEF134667: TTG:<Wild card characters cannot be handled in the short file names> 

2.	NicholasC
	1.	DEFECT FIX: PDEF134640: t_rcache fails with Host USB MS drive 

Version 2.00.1961
=================
(Made by NicholasC 04/02/2009)

1.	indrajeetsingh
	1.	DEF133041: t_fatcharsetconv.exe fails with inter-op testing
	2.	DEF133076: Inconsistent test pattern in t_fatcharsetconv


Version 2.00.1960
=================
(Made by Kai Duan 29/01/2009)

1.	MahantappaPatil
	1. 	MINOR_CHANGE: Removed "interop_test" from EXFAT tests due to some restrictions.

2.	FrankH
	1.	DEFECT FIX: DEF130206: t_format fails on lubbock k drive

3.	RajivM
	1.	DEFECT FIX: PDEF133084:File Server: IsValidName returns wrong result 

	2.	DEV CR:KNOI-7F3FU9: An existing API: "TBool IsValidName(const TDesC &anEntryName)" implicitly takes into
		account the default session path when it verifies the given filename. The existing 
		"TBool IsValidName(const TDesC &anEntryName)" API shall be re-implemented on the basis of a new API 
		TBool RFs::IsValidName(const TDesC& aName, TNameValidParam& aParam )

4.	JessieZhang
	1.	DEFECT FIX: DEF131667: Incorrect length parameter checking in File Server 

5.	MiguelB
	1. 	MILESTONE: Sphinx, GT0339, MS3.25, DS.1494 PREQ1617: Instrument file server

6.	DmitryL
	1.	MINOR_CHANGE: Eshell extended by adding 'mount' command, which allows mounting and dismounting 
		file sytems from the command prompt.
	2.	DEFECT FIX: PDEF133607 t_mount skips TestFinaliseFS() test in UREL build  
	3.	DEFECT FIX: PDEF133608 setting volume finalisation flag in FAT[1] shall be configurable for FAT16  

7.	MariamSood
	1.	DEFECT FIX: DEF133456: Typo in the parameter of __ASSERT_ALWAYS 

8.	GavinCochrane
	1.	DEFECT FIX: DEF132082: Panic "CSessionFs" is missing in documentation 


Version 2.00.1959
=================
(Made by DeleOgunjumelo 15/01/2009)

1.	DmitryL
	1.	DEFECT FIX: DEF132841 The returned value of the RFile64::Write from WINSCW is not same as ARMV5  
	
2.	NicholasC
	1.	DEFECT FIX: DEF131893: t_ext1 hangs with USB Host MS drive 

3.	MahantappaPatil
	1.	MINOR_CHANGE: Fixed issue related to f32_perf_tests not running as PREQ1885 tests scripts were also 
		required for H2 platform. Existing script file names are modified with suffix _H4 and similar scritps 
		are added for H2. The documentation FS Performance Test Suite Description.doc is also updated with this.

Version 2.00.1958
=================
(Made by fabiangortz 07/01/2009)

1.	indrajeetsingh
	1.	DEFECT FIX: DEF131967: F32TEST T_FMAN.EXE fails on WINS/WINSCW FAT drives


Version 2.00.1957
=================
(Made by Tom Cosgrove 02/01/2009)

1.	DmitryL
	1.	DEFECT FIX: DEF131949 coverity issue in FAT code delivered by PREQ 1885

2.	TomCosgrove
	1.	DEFECT FIX: DEF132210: [System Build]: Case issues in bld.inf causing build failures on linux, F32test
		Change name of directory plugins/version_2/CryptoEncryption to plugins/version_2/crypto_encryption.


Version 2.00.1956
=================
(Made by LukaszForynski 19/12/2008)

1.	RichardCo
	1.	MINOR_CHANGE: Mark more binaries as SMPSAFE

2.	DmitryL
	1.	DEFECT FIX: DEF131092 One of Writing functions of RFile64 returns wrong value  
	2.	Milestone: Diran, GT0419, MS3.7, DS.1199 Next Generation File System
		Requirements: PREQ2083 Next Generation File System

3.	RichardCo
	1.	MILESTONE: Diran GT0364 - SMP MS3.1.3 DS.1454 PREQ1945 Basic SMP Compatibility Mode
		NaviEngine roms can be built with -d SMPCOMPATMODE to enable compatibility mode.
		In compatibility mode, any usermode binary which lacks the SMPSAFE flag will force
		the process it is loaded into to execute only on core 0.


Version 2.00.1955
=================
(Made by DmitryL 11/12/2008)

1.	SamiraA
	1.	DEFECT FIX: PDEF130334: Cannot create a file with "\u3005" name correctly 

2.	indrajeetsingh
	1.	DEFECT FIX: DEF130678: CFileMan is leaking memory

3.	VincentF
	1.	DEFECT FIX: DEF130916: [Coverity]-SYMBIAN.CLEANUP_STACK -base/f32/sfile

4.	ArunachalamR
	1.	DEFECT FIX: DEF130917: TFsFileWrite::CommonEnd() should treat file size as unsigned long long 
		Function signature and implementation is modified to treat file size as unsigned long long
		Union implementation in CFileCache is removed. 

5.	KaiD
	1.	Milestone: Diran, GT0419, MS3.3, DS.1325 Kernel: Improved FAT performance for large numbers of files
		Requirements:
		PREQ1885 Improved FAT performance for large numbers of files 
		Symbian Variability:
		#define SYMBIAN_ENABLE_FAT_DIRECTORY_OPT
		(DS1325.1. Implemented a Cache Memory Manager/Client framework on File Server level that links to Demand Paging Subsystem for dynamic allocation of memories for virous caches.
		(DS1325.2. Implemented new directory caches for FAT volumes, the new cache adopts the Memory Manager/Client framework for dynamic cache size allocation.)
		(DS1325.3. Optimised current usage of FAT directory caches. )

6.	DmitryL
	1.	DEFECT FIX: PDEF131470 Attributes, date, time of copied files are changed because of file cache flush 

7.	NicholasC
	1.	DEFECT FIX: DEF131311: [Coverity] Errors reported in Host Mass Storage 
	2.	DEF131305: Block reads can fail with SanDisk Card reader b_fat32

8.	ReubenH
	1.	MINOR_CHANGE: Added SMPSAFE to a carefully-selected, MarkH-approved subset of Base projects.

9.	JessieZhang
	1. 	DEFECT FIX: DEF130390: [Coverity] Issues CID 1048 and 1049 to be reinvestigated...
	
10.	MiguelB
	1.	DEFECT FIX: DEF131384: ROFS Directory Cache not robust against changes to heap allocation algorithm 


Version 2.00.1954
=================
(Made by AnatolyP 04/12/2008)

1.	AnatolyP	
	1.	MILESTONE: Diran GT0364 - SMP MS3.1.1 DS.1410	PREQ1945: SMP kernel prototype support for Cortex A9 processor
	2.	MILESTONE: Diran GT0364 - SMP MS3.1.2 DS.1439	PREQ1945: Prototype Run Mode Debug
	3.	MILESTONE: Diran GT0364 - SMP MS3.2.5 (DS1419)	PREQ1994: ARM11 MPCore SMP BSP: NAND 
	4.	INTERFACE CHANGE: BR2572.1 New virtual method DLogicalChannel::SendMsg


Version 2.00.1953
=================
(Made by AnatolyP 02/12/2008)

1.	DmitryL
	1.	DEFECT FIX: DEF130178: ReserveDriveSpace function in RFs Class can't get result to be expected 

2	NicholasC
	1.	DEFECT FIX: DEF131057: Hang when accessing memory beyond media's address size using SanDisk

Version 2.00.1952
=================
(Made by indrajeetsingh 27/11/2008)

1.	NicholasC
	1.	DEFECT FIX: DEF127908: F32Tests fail with Host USB Mass Storage 

2.	MiguelB
	1.	DEFECT FIX: PDEF130659: More issues with MMC card removal 
	
3.	SivashankarN
	1.	DEFECT FIX: DEF130905: which category does \base\f32\shostmassstorage\ belong to?	
	
4.	NicholasC
	1.	DEFECT FIX: PDEF130023: RFs::Drive returns valid data when a drive is mounted for USB mass storage 

5.	DmitryL
	1.	DEFECT FIX: PDEF130213 TTG:<wrong description in Developer's library as to folder depth>  

6.	indrajeetsingh
	1.	DEFECT FIX: DEF130404: asynch move behaves differently when src path doenst exist
	2.	DEFECT FIX: DEF128965: T_FMAN fails when run with other f32tests on 4GB SD Card

7.	NeilClifford
	1.	DEFECT FIX: DEF130396: SMP: Efile panic when run crypto SMP multicore test

8.	JessieZhang
	1.	DEFECT FIX: PDEF129836: Fail to create a file with "IDEOGRAPHIC SPACE(\u3000)"  name
	2.	DEFECT FIX: DEF130324: TFormatMode documentation is incorrect  
	
9.	MiguelB
	1.	DEFECT FIX: PDEF130503: SMP: File server request completion isn't SMP safe 

10.	SivashankarN
	1.	INC130429: [OTG] Wrong IPC Argument in RUsbHostMsDevice 

Version 2.00.1951
=================
(Made by SivashankarN 14/11/2008)
1.	TomCosgrove
	1.	MINOR_CHANGE: Fix punctuation error in doc comments on RFile*::AdoptFromServer()
		Comma at end of sentence should be full stop.
	2.	MINOR_CHANGE: Print out failure reason within GetLFFSControlModeSize() in T_CHLFFS
		to help determine cause of DEF130206 t_format fails on lubbock k drive.

Version 2.00.1950
=================
(Made by DaveGordon 12/11/2008)

1.	MiguelB
	1.	DEFECT FIX: PDEF129507: SPPR_REL: Phone freezes when memory card removed during recording

2.	TomCosgrove
	1.	MINOR_CHANGE: Fix incorrect non-doxygen comment on LocaleUtils::IsLegalShortNameCharacter()
		Original comment describing the method had been copied from LocaleUtils::ConvertFromUnicodeL()


Version 2.00.1949
=================
(Made by Vino Jose 31/10/2008)

1. ArunachalamR
	1. 	MileStone: Diran, GT0419, MS3.6, DS.1176, PREQ1725 64 Bit File Server
		Symbian Variability: SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
		BR2477.1 Affected clients of RFile should explicitly enable 64-bit file 
		support to allow access to files beyond the 2GBytes boundary, and migrate to 
		using TInt64 offsets and the new RFile::Seek64/RFile::Size64 API's where appropriate. 
		Clients who have not migrated need to ensure they handle the error KErrTooBig

2. KaiD
	1. 	Milestone: Sphinx, GT0339, MS3.18, DS.1254 CR1271: Kernel & HW: Improve File Server test coverage for non-european languages
		Change Requests: CR1271 Improve File Server test coverage for non-european languages


Version 2.00.1948
=================
(Made by ReubenH 27/10/2008)

1.	DmitryL
	1.	DEFECT FIX: PDEF129419 F32 file name checksum calculation is not optimal

2.	MichaelCox
	1.	DEFECT FIX: DEF129320: TF32ArgType should be publishPartner and Released. 
		Fix for INC128291: TF32ArgType is in the global namespace and clashes with existing enums, moved TF32ArgType
		to f32plugin.h, which is declared as @file internalTechnology, whereas before TF32ArgType was publishPartner.
		Also, TFsPluginRequest::Function and DriveNumber have been made publishPartner as they are needed by plugin authors.


Version 2.00.1947
=================
(Made by NeilClifford 	17/10/2008)

1.	KaiD
	1.	Development CRs: MZAI-7JRKFL New CFileMan Test Framework

2.	patrickconway
	1.	DEFECT FIX: DEF128392: T_FSYS fails when querying block-size information of large-block NAND devices 

3.	JessieZhang
	1.	DEFECT FIX: PDEF128029: Panic code documentation for RFs::ReadFileSection() is not correct 

4.	MichaelCox
	1.	DEFECT FIX: DEF128682: Base not building with RVCT 3.1

5.	DmitryL
	1.	DEFECT FIX: PDEF128860 TTG:< the file becomes deleted when a file would be renamed >  


	
Version 2.00.1946
=================
(Made by NicholasC 	14/10/2008)

1.	KaiD
	1.	DEFECT FIX: PDEF128576: Unicode name file deleted after Scandrive 

2.	dharmeshgandhi
	1.	DevCR: Peripherals, GT0339 Base Meteora, Reference file server plug-in,
  		The new file server plug-in framework enables third party suppliers to write their own file modifier plug-ins .
		The DEVCR shall deliver a test/reference plug-in that shall suitably demonstrate how to write such a plug-in. The DEVCR would deliver the entire solution.
		A management application shall be delivered and shall basically load/unload plug-ins, etc


Version 2.00.1945
=================
(Made by KaiD	13/10/2008)

1.	KaiD
	1.	Milestone: Diran, GT0419, MS3.13, DS.1130 Improved FAT performance for large numbers of files 
		Requirements: 
			PREQ1885 Improved FAT performance for large numbers of files
		Symbian Variability:	
			#define SYMBIAN_ENABLE_FAT_DIRECTORY_OPT


Version 2.00.1944
=================
(Made by SivashankarN  08/10/2008)

1.	DmitryL
	1.	DEFECT FIX: PDEF128466: TTG:<two files with the exactly same short file name erroneously exist> 

2.	SivashankarN
	1.	DEFECT FIX: DEF127652:  [MS] Host can't recover gracefully from USB device removal during data transfer

Version 2.00.1943
=================
1.	MichaelCox
	1.	DEFECT FIX: INC128291: TF32ArgType is in the global namespace and clashes with existing enums 

2.	RichardCo
	1.	DEFECT FIX: PDEF128520: SWI-installed KDLL (statically linked to LDD) does not get loaded 
		Loading a kernel-side library which is linked to another kernel side library
		was not possible if the dependent had static data.




Version 2.00.1942
=================
(Made by MichaelMo  02/10/2008)

1.	SivashankarN
	1.	DEFECT FIX: DEF128289: Template roms cant be built

2.	AnatolyP
	1.	DEFECT FIX: PDEF127937: TTG:<a invalid character can be set on the volume label>


Version 2.00.1941
=================
(Made by SebOlney  24/09/2008)

1.	patrickconway
	1.	DEFECT FIX: DEF114282: Multiple intermittent F32TEST failures on Integrator


Version 2.00.1940
=================
(Made by georgiosdementis 22/09/2008)

1.	MichaelCox
	1.	DEFECT FIX: DEF127677: TFsPluginRequest::FileName( ) does not work in some scenarios 

2.	JessieZhang
	1.	DEFECT FIX: DEF127010: eshell 'copy' command not working correctly for single files

3.	SivashankarN
	1.	GT0399 MS3.15 DS1031 PREQ1577: USB Host Mass Storage



Version 2.00.1939
=================
(Made by georgiosdementis 12/09/2008)

1.	MichaelCox
	1.	DEFECT FIX: DEF126881: TFsPluginRequest::Src() faults in EFsDirReadOne and EFsDirReadPacked intercept 
	2.	DEFECT FIX: DEF126581: Enchanced file server plugin test failures relating to LFFS and readfilesection 
	3.	DEFECT FIX: DEF127407: CFsObject::Name returns NULL when TName is expected. 

2.	DmitryL
	1.	DEFECT FIX: PDEF127147 RFile::SetModified does not take effect by RFile::Flush()	
	2.	DEFECT FIX: PDEF126981 TTG:<CheckDisk error is raised after having Renamed a file or folder>
	3.	MINOR_CHANGE: F32 tests tidy up 

3.	AnatolyP
	1.	DEFECT FIX: PDEF127162 SPPR_REL: DUT is shut down automatically when tapping continuously 'Retry'
	2.	DEFECT FIX: PDEF127207 Video sharing:Phone reboot when unpluging memory card in Video sharing state.

4.	ArchanaH	
	1.	DEFECT FIX: DEF124775: If (lockposition+locklength)> 2GB -1, then RFile::Lock() returns KErrNone.

5.	MiguelB
	1.	DEFECT FIX: PDEF127286: Inc9 POD: The phone reboots or hangs up after plugging USB while downloading an 

6.	GeorgeS
	1.	DEFECT FIX: DEF127529 eshell gives -21 instead -11, while md folder name is same as file name

7.	KaiD
	1.	DEFECT FIX: PDEF127641: FAT/FAT32: unable to open or delete file whose name contains illegal characters 

8.	indrajeetsingh
	1.	DEFECT FIX: DEF127074: t_FMAN fails on large cards


Version 2.00.1938
=================
(Made by georgiosdementis 05/09/2008)

1.	JessieZhang
	1.	DEFECT FIX: DEF125362: Emulator drive C reports media type as RAM 

2.	MichaelCox
	1.	DEFECT FIX: PDEF127294: t_ext1 has warnings and fails with PDEF122991 fix 
	2.	DEFECT FIX: DEF126584: Enhanced file server plugin test failures when calling AddPlugin

3.	GeorgeSin
	1.	DEFECT FIX: DEF126404: [coverity] - many different coverity issues found at /f32/sfile/


Version 2.00.1937
=================
(Made by georgiosdementis 29/08/2008)

1.	JessieZhang
	1.	DEFECT FIX: DEF126690: runtests doesn't warn users that it's going to panic on purpose

2.	AndreasP
	1.	DEFECT FIX: DEF126257: eshell copy file to same folder should return error message.

3.	AttilaV
	1.      MINOR CHANGE: Update Base Functional Specification with CR1258


Version 2.00.1936
=================
(Made by indrajeetsingh 26/08/2008)

1.	JessieZhang
	1.	DEFECT FIX: DEF126397: [Coverity]- DELETE_ARRAY - /f32/slffs/
	2.	DEFECT FIX: DEF126398: [Coverity]- OVERRUN_STATIC - /f32/smassstorage/
 
2.	GeorgeSin
	1.	DEFECT FIX: DEF126395 [Coverity]- SYMBIAN.CLEANUP_STACK - /f32/scomp/ 
	2.	DEFECT FIX: DEF126396 [Coverity]- EVALUATION_ORDER - \f32\sfat32


Version 2.00.1935
=================
(Made by MichaelCox, 20/08/2008)

1.	DmitryL
	1.	DEFECT FIX: DEF125490: Damaged MMC card causes ASSERT in FAT implementation 

2.	KaiD
	1.	DEFECT FIX: PDEF126260: Japanese name directory without VFAT entry fails to access

3.	MichaelCox
	1.	GT0399 MS3.16 DS1030 PREQ1111: Peripherals: Enhanced F32 plug-in framework


Version 2.00.1934
=================
(Made by patrickconway, 15/08/2008)

1.	MichaelCox
	1.	DEFECT FIX: DEF126548: Typo in comment for class THMem

2.	VincentF
	1.	DEFECT FIX: DEF126477: Is f32test/demandpaging test or production

3.	GayathriR
	1.	DEFECT FIX: PDEF126203: CMassStorageMountCB::MountL handles missing media in wrong way 

4.	AndreasP
	1.	DEFECT FIX: DEF126257: eshell copy file to same folder should return error message.

5.	patrickconway
	1.	DEFECT FIX: DEF126307: T_FILEMATCH doesn't check return codes


Version 2.00.1933
=================
(Made by JohnS, 15/08/2008)

1.	KaiD
	1.	MINOR CHANGE: Fixed X86GCC build errors in t_dirs.cpp

2.	MiguelB
	1.	DEFECT FIX: PDEF126145: T_DemandPaging failures cause t_filecache failure.
	2.	DEFECT FIX: DEF124458: Formating an SD card with an existing illegal partition table can fail

3.	NeilC
	1.	DEFECT_FIX: DEF125019: [coverity] - CHECKED_RETURN - base/f32/sfile

4.	indrajeetsingh
	1.	DEFECT_FIX: DEF125570: src dir is not deleted after Move if trg has the same src dir already existing


Version 2.00.1932
=================
(Made by ReubenH, 04/08/2008)

1.	MichaelCox
	1.	DEFECT FIX: DEF125673: Undocumented position parameter in RFs::MountPlugin 

2.	KaiD
	1.	DEFECT FIX: DEF125143: Inconsistency found in dir creations when containing trailing dots and spaces


Version 2.00.1931
=================
(Made by fabiangortz, 24/07/2008)

1.	GayathriR
	1.	DEFECT FIX: DEF125010: [coverity] - OVERRUN_STATIC - base/f32/sfile/sf_drv.cpp

2.	DmitryL
	1.	DEFECT FIX: DEF125009  [coverity] - OVERRUN_STATIC - base/f32/sfat32 

3.	KaiD
	1.	DEFECT FIX: DEF125015: [coverity] - REVERSE_INULL - base/f32/sfile 
	
4.	MiguelB
	1.	DEFECT FIX: PDEF124959: Phone freezes when memory card is removed during recording

5.	indrajeetsingh
	1.	DEFECT FIX: DEF124051: Can not compile f32test - t_readdist test
	
6.	MichaelCox
	1.	DEFECT FIX: DEF115913: File System Plugins ignore the Mounted Drive attribute 

7.	LaneR
	1.	MINOR_CHANGE: Changed ldrtst makefile to propagate bldmake bldfiles platform type to enable building for ARMv6

	
Version 2.00.1930
=================
(Made by fabiangortz, 21/07/2008)

1.	RichardCo
	1.	DEFECT FIX: DEF125008: [coverity] - FORWARD_NULL - base/f32/sfile 

2.	TomCosgrove
	1.	DEFECT FIX: DEF125011: [coverity] - OVERRUN_STATIC - base/f32/sfile/sf_local.cpp
		Replace "<= KMaxPBusSockets" with "< KMaxPBusSockets" to fix off-by-one.


Version 2.00.1929
=================
(Made by RichardCo, 17/07/2008)

1.	RajivM
	1.	DEFECT FIX: DEF123575: CFileMan::Move() returns KErrNone even with unsuccessful move operation.

2.	GayathriR
	1.	DEFECT FIX: PDEF124744: Return value is not checked in CUsbMsFileSystem::InitThreadL()

3.	RichardCo
	1.	DEFECT FIX: PDEF125108: BC error: BC problem with third party application PocketTODO
		Loader was not correctly handling uncompressed or bytepair compressed executables
		on removable media when paging is enabled.


Version 2.00.1928
=================
(Made by LukaszF, 15/07/2008)

1.	NicholasC
	1.	DEFECT FIX: PDEF124150: USB - Lumiere fails USBCV MSC Mass Storage test in both FS and HS modes 

2.	VincentF
	1.	DEFECT FIX: PDEF124805: TFindFile::DoFindByDir is inefficient

3.	TomCosgrove
	1.	DEFECT FIX: DEF121020: Typographical error in sf_request.cpp
		Changed "if (r |= KErrNone)" to "if (r != KErrNone)


Version 2.00.1927
=================
(Made by KaiD, 09/07/2008)

1.	ArchanaH
	1.	DEFECT FIX: DEF123645: etshell doesn't handle file sizes > 2GB 


Version 2.00.1926
=================
(Made by DmitryL, 07/07/2008)

1.	DmitryL
	1.	DEFECT FIX: DEF123582 FAT32 PREQ1721 enhancements require better support in FileServer 

2.	ArchanaH
	1.	DEFECT FIX: DEF123044: Request status value for negative scenarios are not handled properly in CFileMan 
	2.	DEFECT FIX: DEF123645: etshell doesn't handle file sizes > 2GB 

3.	KaiD
	1.	DEFECT FIX: PDEF124082: Directories/files with non-latin names are not listed in dialogs and file browse

	
Version 2.00.1925
=================
(Made by NicholasC, 23/06/2008)

1.	NicholasC
	1.	DEFECT FIX: PDEF123999: USB Mass Storage WHQL Test failure (Disk Stress) with double buffering 

Version 2.00.1924
=================
(Made by indrajeetsingh, 20/06/2008)

1.	MiguelB
	1.	DEFECT FIX:  PDEF123403: t_cfstest.exe for some larger SD Cards
		This defect was re-opened to cater for reported problems with Panasonic 8GB cards.
		A timeout in the test has been increased.

Version 2.00.1923
=================
(Made by patrickconway, 17/06/2008)

1.	VincentF
	1.	DEFECT FIX: PDEF123681: Calculation of transfer rate is not correct in f_sysbm 

2.	indrajeetsingh
	1.	DEFECT FIX: DEF121663: Moving a directory returns failure eventhough the directory is moved.


Version 2.00.1922
=================
(Made by deleogunjumelo, 11/06/2008)

1.	MiguelB
	1.	DEFECT FIX:  PDEF123403: t_cfstest.exe for some larger SD Cards
	2.	DEFECT FIX:  DEF123449: File Server memory leak

2.	DmitryL
	1.	DEFECT FIX: PDEF123410 File server panic due to error of DeleteNotify() even when platsec disabled 

3.	SharathK
	1.	MINOR_CHANGE: Reframed the documentation fix of DEF120050 to improve the quality
	

Version 2.00.1921
=================
(Made by JohnS, 05/06/2008)

1.	AndrewHi
	1.	DEFECT FIX: T_Format Test5 not properly supported for all LFFS media
	
2.	MichaelCox	
	1.	DEFECT FIX: DEF121566: t_ext1 test fails after several runs

3.	KaiD
	1.	DEFECT FIX: DEF122894: Defect in RFs GetDir() API


Version 2.00.1920
=================
(Made by RichardCo, 01/06/2008)

1.	RajivM
	1. 	DEFECT FIX: DEF119140: wrong file name had been created in case of including Japanese character

2.	ArchanaH
	1.	DEFECT FIX: DEF119141: long filename is not created in case of including Japanese character

3.	SharathK
	1.	DEFECT FIX: DEF120050: CFIleMan::Copy() returns "KErrNone" instead of "KErrDiskFull"

Version 2.00.1919
=================
(Made by ParameshwariB, 23/05/2008)

1.	MichaelCox
	1.	DEFECT FIX: PDEF121816: ESTART calls InitCompositeFileSystem() in wrong place

2.	SebOlney
	1.	DEFECT FIX: PDEF122770: Password Store Exceeded

3.	RichardCo
	1.	DEFECT FIX: PDEF122835: ONB: wstest_t_autotest.script crashes on H4 / times out on WinSCW
		Make loader safely fail when asked to load a binary whose name is the empty string.

4.	TomCosgrove
	1.	MINOR_CHANGE: Fix spelling in comments: it's "whether", and not "wether" (and rarely "weather")
		Corrections made in several files throughout base code.

5.	PhilipSturdy
	1.	Change Request: CR1266: Implemented Delete On Close extension to RFile file creation methods (#1240403)
	2.	Minor fix (#1244079) to t_file relating to a race on subset of test hardware due to CR1266 check in.



Version 2.00.1918
=================
(Made by SivashankarN, 19/05/2008)

1.	NicholasC
	1.	DEF118967: CBulkOnly transport does not connect to all LUNs. 

2.	MichaelCox
	1.	DEFECT FIX: DEF121566: t_ext1 test fails after several runs

3.	patrickconway
	1.	DEFECT FIX: PDEF122384: E32test and F32test issues (SD / F32) 

4.	DmitryL
	1.	DEF121859: ScanDrive badly handles large amount of lost clusters


Version 2.00.1917
=================
(Made by LukaszF, 09/05/2008)

1.	MichaelP
	1.	PDEF122074: USB Mass Storage driver crashes in certain situations
		Changed the USB Mass Storage driver such that function
		CBulkOnlyTransport::ReadAndDiscardData() doesn't use any longer the main Read
		buffer iReadBuf (the not-readiness of which caused the defect) but instead
		the new dedicated small buffer iDiscardBuf.
2.	JohnS
	1.	MINOR_CHANGE: Remove unnecessary code from t_nandmisc.cpp.

3.	DmitryL
	1.	DEFECT FIX: PDEF120775: FAT volume remonting does not notice FAT table changes.
	2.	DEFECT FIX: DEF119115 Unreliable code in FAT implementation 
	3.	DEFECT FIX: DEF122067 Fat32 bit cache populating thread work is not optimal 

4.	BhaskarR
	1.	DEFECT FIX: DEF121829 Duplicate test case in t_dcdiskadminallfiles.cpp 	

5.	RichardCo
	1.	DEFECT FIX: DEF115401: Incomplete validation of data in loader 


Version 2.00.1916
=================
(Made by DmitryL, 28/04/2008)

1.	MichaelMo
	1.	DEFECT FIX: DEF120597: Priority dependence in fileserver in T_CFSSIMPLE


Version 2.00.1915
=================
(Made by fabiangortz, 22/04/08)
1.	KaiDuan
	1.	DEFECT FIX: DEF117345: TTG:<Japanese character as short file name changes to different one on creating>
		Corrected leading "0xE5" character handling in FAT implementation.


Version 2.00.1914
=================
(Made by NicholasC, 18/04/08)

1.	AndreasP
	1.	DEFECT FIX: DEF120773: EShell format of MMC media - ReservedSector / Number of FATS
2.	NicholasC
	1.	DEFECT FIX: DEF121112: USB Mass Storage driver has bare RDebug::Printf(() 


Version 2.00.1913
=================
(Made by indrajeetsingh, 16/04/08)

1.	MichaelCox
	1.	DEFECT FIX: PDEF120295: BC break in CFsPlugin


Version 2.00.1912
=================
(Made by deleogunjumelo, 09/04/08)

1.	NeilC
	1.	MILESTONE: Sphinx, GT0339, MS3.7.2 DS766 PREQ1724: Enable the use of shared chunks within F32 and the media subsystem


Version 2.00.1911
=================
(Made by patrickconway, 03/04/2008)

1.	NicholasCox
	1.	PDEF119749: t_ms_publish hangs 	
	2.	PDEF120290: DriveStateChangedPublisher causes a behaviour break to the drive manager in msfs 
	
2.	RoopaR
	1.	DEFECT FIX: PDEF119847: TestExtendedChars of t_scn32dr1.exe failed in Japanese environment.
	
3.	MiguelB
	1.	DEFECT FIX: DEF120175: Issues with file server plugins & file caching

Version 2.00.1910
=================
(Made by DjordjeK, 26/03/2008)

1.	NicholasCox
	1.	DEF119965: Unguarded RDebug::Printf in mass storage production code (GetCheckDrive) 

Version 2.00.1909
=================
(Made by JohnS, 20/03/2008)

1.	MichaelCox
	1.	DEFECT FIX: DEF119472: Drive Info not fully updated immediately after media change	

2.	VincentF
	1.	MINOR_CHANGE: Enable CSV output in perf_filter.pl

3.	MichaelP
	1.	MINOR_CHANGE: Removed obsolete USB Mass Storage unit test t_13cases.
		Coverage for the '13 cases' is provided by the MSC test suite of the
		official USB test & compliance tool USBCV.

4.	LukaszF
	1. DEFECT FIX: DEF119418: Loading the locale DLL into process after setting locale fails on emulator.

Version 2.00.1908
=================
(Made by ParameshwariB, 17/03/2008)

1.	fabiangortz
	1.	DEFECT FIX: DEF116668: TTG:<Chkdsk command on PC detects an error after renamed folder on SDHC>

2.	MichaelCox
	1.	CHANGE REQUEST: CR1115:	Dual Slot Support


Version 2.00.1907
=================
(Made by RichardCo, 11/03/2008)

1.	JohnS
	1.	DEFECT FIX: PDEF114161: XSR garbage collection not updated for multiple FAT
		The Unistore-II / XSR driver now collects garbage for every FAT partition.
	2.	MINOR CHANGE: Filldrive() in t_xferbm no longer generates unnecessary test failures.

2.	DmitryL
	1.	DEFECT FIX: DEF119052 t_scn32dr2 test fails on volume of 8192 sectors and 4 spc. 

3.	markhambleton
	1.	DEFECT FIX: DEF119113: Test cases don't handle a lack of removable media on x86.

 
Version 2.00.1906
=================
(Made by OlegI, 04/03/2008)

1.	AndreasP
	1.	Milestone: Sphinx, MS3.11, Base Meteora GT0339, DS956, PREQ1871 Peripherals: Support code for System State Manager
	
		Configurability and compatibility:
		BR2271 Increase Domain Manager domain id and domain state variable sizes
		Not configurable, certain components need to be compiled with these changes in, such as domainpolicy2, testexecute, apparc and ecom3.



Version 2.00.1905
=================
(Made by ReubenH, 03/03/2008)

1.	NicholasC
	1.	DEFECT FIX: PDEF118828: I/O errors in mass storage mode with non-Windows terminals

2.	LukaszF 
	1.	DEFECT FIX: DEF111290: DP Default ROM Failures: apparctest_t_Locale & apparctest_t_Caption


Version 2.00.1904
=================
(Made by fabiangortz, 28/02/2008)

1.	patrickconway
	1.	DEFECT FIX: PDEF118165: Klocwork issues, NULL pointer can be used in release build base_f32

2.	DmitryL
	1.	DEFECT FIX: PDEF117851: RFs::Volume() incorrectly reports KErrNone after media removal 
	2.	MILESTONE: Sphinx, GT0339, MS3.5.2, PREQ1721 REQ7248 DS710 FAT32 background scan for free clusters.
	3.	MILESTONE: Sphinx, GT0339, MS3.5.4, PREQ1721 REQ7766 DS711 Compressed FAT representation.

3.	Yogesh Chauhan
	1.	DEFECT FIX: DEF118468: KCurrentPosition cannot be specified by user in RFile::Read and RFile::Write.


Version 2.00.1903
=================
(Made by ParameshwariB, 19/02/2008)

1.	MichaelMo
	1.	DEFECT FIX: PDEF118046: file server crashes because requests queued incorrectly on main thread


Version 2.00.1902
=================
(Made by SivashankarN, 14/02/2008)

1.	MiguelB
	1.	DEFECT FIX: PDEF117946: Back upping Phone with PC Suite via USB makes phone to crash

2.	DmitryL
	1.	DEFECT FIX: PDEF117478: Locale and time changes trigger time consuming fat operations 
	
	
Version 2.00.1901
=================
(Made by ReubenH, 11/02/2008)

1.	MiguelB
	1.	DEFECT FIX: PDEF117786: CheckDisk after FindEntryBounce of t_fsrvbm fails with KErrTooBig

2.	ReubenH
	1.	DEV CR: BBRE-77FLAL: Kernel, GT0364 SMP, SMP: Modifications to base code in support of the GCC compiler 
		and related tools for the x86 target (i.e. support for new X86GCC platform)

Version 2.00.1900
=================
(Made by NicholasC, 30/01/2008)


Version 2.00.1748
=================
(Made by RichardCo, 25/01/2008)

1.	indrajeetsingh
	1.	DEFECT FIX: PDEF112148: CFileMan->Move() behaves inconsistently

2.	MiguelB
	1.	DEFECT FIX: PDEF116573: Phone reboots when formatting memory card after recording high quality voice cli
	2.	DEFECT FIX: DEF116576: T_RAW can fail on large media

3.	MariamSood
	1.	DEFECT FIX: DEF116276: CLocDrvMountCB::CreateLocalDrive() doesn't handle error code of InitLocalDrive()

4.	DmitryL
	1.	DEFECT FIX: PDEF116531 FAT32 Free clusters counting is inefficient.

5.	SebO
	1.	CHANGE REQUEST: Development CR BBRE-788J8X, Peripherals GT0339 Base Meteora
		(Was CR1084) Removable media should be able to use Local time stamps.

6.	indrajeetsingh
	1.	DEFECT FIX: DEF113299: CFileMan::Rename() should fail for invalid file rename

Version 2.00.1747
=================
(Made by DmitryL 16/01/2008)

1.	patrickconway
	1.	MINOR_CHANGE: Modified TestReadAhead() in t_rcache.cpp to report on drive synchronicity
	
2.	fabiangortz
	1.	DEFECT FIX: DEF115095: IMPORT_C on BLKIFUNC()


Version 2.00.1746
=================
(Made by fabiangortz, 11/01/2008)

1.	NicholasC
	1.	DEFECT FIX: PDEF116158: Memory card not available in USB Mass Storage after password given

2.	DmitryL
	1.	DEFECT FIX: PDEF116219: t_ms_mountstart stalls


Version 2.00.1745
=================
(Made by patrickconway, 08/01/2008)

1.  	KaiD
	1.  DEFECT FIX: PDEF115574: FAT should create VFat entries for unicode character contained file
	
2.	MiguelB
	1.	DEFECT FIX: DEF115578: User::Invariant() panic in file system thread.
	2.	DEFECT FIX: DEF116041: Cannot specify the number of FAT tables when formatting a drive
		Added a flags field to TLDFormatInfo to allow the default number of FAT tables to be specified
		and added this functionality to the shell format command.
	3.	MINOR CHANGE: Changed t_med_writebm to fill buffer outside for loop to improve throughput timing calculation.

Version 2.00.1744
=================
(Made by NeilC, 25/12/2007)


1.  	RaghavendraB
	1.  DEFECT FIX: INC111038  F32_MMC T_FMAN failed.

2.	DmitryL
	1.  DEFECT FIX: DEF115494  RFs::IsValidName() API documentation is not complete.

Version 2.00.1743
=================
(Made by DeleO, 17/12/2007)

1.	RoopaR
	1.	DEFECT FIX : DEF115215: Missing description for DriveNumber() of CFsDispatchObject class 
	2.	DEFECT FIX : DEF115216: Missing description for Mount() of CProxyDrive class.
	3.	DEFECT FIX : DEF115217: Missing documentation for global function GetFileSystem().
	4.	DEFECT FIX : DEF115214: Missing description for member functions and data members of CFileShare class.
	5.	DEFECT FIX : DEF115218: Update in-source doc for data members of struct TDriveExtInfo in correct format 
	6.	DEFECT FIX : DEF115221: Update in-source doc for data members of TExtensionInfo in correct format 

2.	NicholasC
	1.	DEFECT FIX : DEF115318: MAC can not read large files from USB Mass storage

3.	JonathanM
	1.	DEFECT FIX : DEF115564: File Server session simulated failure should enclude File Clamp Close operation

4.	DmitryL
	1.	DEFECT FIX : PDEF114708  extra CFatMountCB mounting after format operation.

5.	KaiD
	1.	DEFECT FIX : DEF115314: TTG:<`(0x60) code cannot be used as valid Short File Name>

6.	ReubenH
	1.	DEFECT FIX: DEF114154: Secure clock does not persist HAL setting 

7.	RichardCo
	1.	DEFECT FIX: DEF109820: Loader issue


Version 2.00.1742
=================
(Made by LukaszF, 10/12/2007)

1.	SwetankaM
 	1.	DEFECT FIX:PDEF114641 :	SetModified()-Modifies even the creation time of a file on the emulator

2. 	PrashantHG
	1. 	DEFECT FIX : PDEF114979:CFileMan::Copy returns KErrNotFound if copy source folder is empty. Updated the 			insource documentation with the required error code. And also verified the same with test code


Version 2.00.1741
=================
(Made by DmitryL, 06/12/2007)

1.	RichardCo
	1.	DEFECT FIX: PDEF115243: Wrong loading order if two DLLs with the same name in Z: and C: have same versio
		Imported DLL loading now only searches the drives in the usual order rather than searching the
		directory containing the main EXE/DLL being loaded first.
	2.	BREAK REQUEST: BR2262.2: Change DLL path search rules to not prefer EXE directory
		Break for behavioural change in PDEF115243, above.

2.	AndreasP
	1.	DEFECT FIX: DEF114647: 'cd' command does not work for an absolute path in eshell


Version 2.00.1740
=================
(Made by DjordjeK 04/12/2007)
1.	MiguelB
	1.	DEFECT FIX: INC114627: Formatting E: crashes the shell with 16GB eMMC (Exit Type 2.10 USER)

2.	Rajiv Maskara
	1.	DEFECT FIX: DEF114667: RDir::Read returns KErrEof when attempting to read from non-existant directory 

3.	NeilC
	1.	DEFECT FIX: DEF114744: TTG:<number of folders that CheckDisk() can chase up is different with creation>


Version 2.00.1739
=================
(Made by RichardCo 30/11/2007)

1.	SharathK
	1.	DEFECT FIX: DEF114527 : Tech view : Remove directory (command) returns wrong error code.

2.	MiguelB
	1.	DEFECT FIX: DEF114421: Inconsistent File Server behaviour when enumerating dirctories

Version 2.00.1738
=================
(Made by OlegI 26/11/2007)

1.	JonCo
	1.	DEFECT FIX: INC113606: DP: Bytepair doesn't work if CODE ODP is enable with AknLayout2scalable.dll file
		Increased loader stack size to 32K.  This is a temporary solution until the upcoming loader
		rework is completed.

2.	indrajeetsingh
	1.	DEFECT FIX: PDEF114246: RFs::Rename() operation return -11 even if names of files are different

3.	Radhakrishnanramanat
	1.	DEFECT FIX: PDEF114712: ShellFunction::Md returns KErrAlreadyExists with long filename.
		Validate and return the error code corresponding to GetFullPath() in Md() function.
	
4.	AttilaV
	1.	Defect FIX: PDEF114732: Defects in loader exposed by new loader tests

	
Version 2.00.1737
=================
(Made by ReubenH 22/11/2007)

1.	JenniferH
	1.	MINOR CHANGE: Changed runtests timeout in autoexec.bat (h2 & H4) for base test images.
	
2.	MiguelB
	1.	DEFECT FIX: DEF110992: Test TSU_MMF_SRSSNK:MM-MMF-SRSSNK-U-0131 fails
	2.	DEFECT FIX: DEF114103: CFileMan should disable write caching
	3.	MINOR CHANGE: Added a debug-only class (TFileCacheConfig) to retrieve current file-cache 
		config for a particular drive.
	4.	DEFECT FIX: DEF114514 : Calling RFs::Close() with a slow MMC card can cause a USER 80 panic
	5.	DEFECT FIX: DEF114666 : Changed MmcLoader to call RFile::Flush() to trap write failures when write caching is enabled
		This only affects demand-paging-from-MMC ROMs.
	
3.	AttilaV
	1.	DEFECT FIX: DEF113333: Kernel crashes on loading an executable.

4.	georgiosdementis
	1.	MINOR CHANGE: Add entry BASE/F32/29 in Base_Functional_Specification.doc

5.	nicholasc
	1.	DEFECT FIX: PDEF114233: USB Mass Storage eject and reinsert is not working for udeb
	2.	MINOR CHANGE: Add entry BASE/F32/30 in Base_Functional_Specification.doc for PREQ1845


Version 2.00.1736
=================
(Made by NeilC	16/11/2007)

1.	SamiraA
	1.	DEFECT FIX: DEF114247: T_PWSTR: local drive number doesn't match file server number.

	
Version 2.00.1735
=================
(Made by NicholasC	14/11/2007)

1.	nicholasc
	1.	MILESTONE: Naiad, GT0326, MS3.14, PREQ1845 - USB Client Mass Storage Double Buffering.


Version 2.00.1734
=================
(Made by MariamSood	13/11/2007)

1.DmitryL
	1.	DEFECT FIX: PDEF114026: Code in CScanDrive class uses too much stack.

2.	Radhakrishnanramanat
	1.	DEFECT FIX: DEF112864: RFs.Entry() returns 'Access denied' error [error code -46] 	
	Modified TBool SIDCheck(CFsRequest* aRequest, const TDesC& aThePath) to check for SID without appending with \\	

3.	SwetankaM
	1.	DEFECT FIX: DEF112050: : Some F32tests use D: drive or drive derived from session path.
	Modified to use command line argument.

4.	MichaelCox
	1.	DEFECT FIX: DEF112757: Rfile::Set() attributes mask check is incorrect and doesn't correspond to desc. 
		Update : Tests t_npfail and t_clamp also updated


Version 2.00.1733
=================
(Made by ParameshwariB 09/11/2007)

1.	KaiD
	1.	DEFECT FIX: PDEF113482: "App closed: Voicerecorder" happened when inserting the third new sound clip to
	2.	DEFECT FIX: PDEF102531:	F32 should be able to be tested against Non-Latin (Unicode) characters

2.	dharmeshgandhi
	1.	DEFECT FIX: DEF112176: It is possible to change directory name to 257 characters (incl. drive letter)

3.	georgiosdementis
	1.	DEFECT FIX: DEF113117: call to GetDesLength() is not checked for an error return

4.	DmitryL
	1.	DEFECT FIX: DEF113832: FAT lookup for the first free cluster for MKdir is inefficient 



Version 2.00.1732
=================
(Made by SushmitaR 07/11/2007)

1.	DmitryL
	1.	DEFECT FIX: DEF113637 CFatMountCB::CheckDisk() incorrectly calculates number of clusters. 

2.	patrickconway
	1.	DEF112944: TFileText::Read() API reads more than 256 characters
	2.	DEF113584: TFileText::Read() reads wrong number of characters 
		
3.	fabiangortz
	1.	DEFECT FIX: DEF113225: Access permission denied for system folders with caching flags
	
4.	MiguelB
	1.	DEFECT FIX: DEF113338: 'Reserved For Boot Sector' data is not written at format.

5.	ArchanaH
	1.	DEFECT FIX: DEF112507: Issues with CompFS 
           Tested for return values.

6.	KaiD
	1.	DEFECT FIX: PDEF113483: CFileMan::RmDir can't delete path that has no long file name
Version 2.00.1731
=================
(Made by SivashanakarN 30/10/2007)

1.	DmitryL
	1.	DEFECT FIX: DEF112734  FAT32 FAT1 table and FAT2 table "head bytes" 

2.	JohnS
	2. DEFECT FIX:  PDEF112952: The T_NANDMISC NAND acceptance test fails
		This nand acceptance test includes a disk free space vs size test that was failing for FAT32 
		drives. FAT32 drives include one cluster for the root directory in the reported size, whereas 
		FAT12 & FAT16 drives don't. The test was failing to allow for this.

3.	SamiraA
	1.	DEFECT FIX: DEF112972: TDriveUnit::TDriveUnit(TInt aDrive) API takes -1 


Version 2.00.1730
=================
(Made by KaiD 26/10/2007)

1.	SamiraA
	1.	CHANGE REQUEST:  CR1086: Add new drive attribute to identify drives with physically removable media
		Added KDriveAttLogicallyRemovable


2.	SwetankaK
	1.	DEFECT Fix:  DEF112049: Wrong error code during opening a lot of files from ramdrive. 
		The error code is changed to KErrNoMemory.

4.	BhaskarR
	1.	Defect Fix: DEF113015: APIREG:TParsePtrC returns FSCLIENT 25 if the the specified name 
		fails to parse. Modified the in-source documentation to reflect the change of error code (FSClient 24).

5.	PatrickConway
  	1.	DEFECT FIX: PDEF112800: Defect in ESTART can lead to corrupt drive mapping info and file server panic 



Version 2.00.1729
=================
(Made by JohnS 23/10/2007)

1.	ParameshwariB
	1.	DEFECT FIX: DEF112229: Removing file system without dismounting causes file server crash 

2.	MiguelB
  	1.	DEFECT FIX: DEF112962: Minor improvements to File Server write caching


3.	MichaelCox
	1.	DEFECT FIX: DEF112757: Rfile::Set() attributes mask check is incorrect and doesn't correspond to desc. 
		Update : An attempt to set or clear the KEntryAttDir, KEntryAttVolume or KEntryAttRemote attributes have no effect.

4.	DmitryL
	1. 	DEFECT FIX: DEF111524  H2 board crashes (debug assert) as a result of MMC card removal (reopened).



Version 2.00.1728
=================
(Made by indrajeetsingh 10/10/2007)

1.	MiguelB
	1.	DEFECT FIX: DEF111700: Formatting a locked SD/MMC leaves it in a bad state (causes panics later)

2.	ArunachalamR
	1.	DEFECT FIX: DEF101639: RFs::SwapFileSystem is not tested by f32test
		Added t_swapfsys test application.

3.	ParameshwariB
	1.	DEFECT FIX: DEF074912: RFs::NotifyDiskSpaceCancel() should run on a separate drive thread 

4.	GayathriR
	1.	DEFECT FIX: DEF111477: Mass storage test t_msfs_scsi fails after fix for drive eject(PDEF110325).
	
5.	DmitryL
	1.	DEFECT FIX: PDEF112480  Restarting application happens on executing RFs::ChechDisk()
	2.	DEFECT FIX: DEF112466  CFatMountCB::DoFindL() code is inefficient	
	3.	MINOR_CHANGE: fixed multithreading issue with RTest in t_checkdisk

6.	MarkTa
 	1.	MINOR CHANGE: Update t_pageldrtst as the integration from the preq308a branch missed the latest changes
 		to test case that prevent it locking up.

	
Version 2.00.1727
=================
(Made by DeleOgunjumelo 04/10/2007)

1.	DmitryL
	1.	DEFECT FIX: DEF112264  Wrong error code during creating directory without trailing backslash.
   
2.	MichaelMo
	1.	DEFECT FIX: DEF112351: runtests.mmp contains invalid mmp syntax

3.	MiguelB
	1.	MILESTONE: Oghma, GT0302, MS3.13 DS733 : PREQ775: Base - Alignment of CBR and System Model components
		INTERFACE CHANGE: BR2160 Peripherals: Alignment of Base components against CBR package 
 		Separate out existing base_f32 component into the following components :
 			f32\group\base_f32.mrp
 			f32\estart\base_f32_estart.mrp
 			f32\etshell\base_f32_eshell.mrp
 			f32\iso9660\base_f32_siso9660.mrp
 			f32\ntfs\base_f32_sntfs.mrp
 			f32\scomp\base_f32_scomp.mrp
 			f32\sfat\base_f32_sfat.mrp
 			f32\sfat32\base_f32_sfat32.mrp
 			f32\sftl\base_f32_sftl.mrp
 			f32\slffs\base_f32_slffs.mrp
 			f32\smassstorage\base_f32_smassstorage.mrp
 			f32\srofs\base_f32_srofs.mrp
 			f32\srom\base_f32_srom.mrp
 		N.B. Most of the new components have their own BLD.INFs so build scripts may need changing (!)

Version 2.00.1726
=================
(Made by LukaszForynski 01/10/2007)

1.	DmitryL
	1. 	DEFECT FIX: DEF111658 FAT32 LRU cache doesn't flush dirty pages 

2.	indrajeetsingh
	1.	DEFECT FIX: PDEF111018: CFileMan->Move() moves items recursively in non-recursive mode

3.	jenniferh
	1.	DEFECT FIX: DEF111827: T_Nandpaging has a potential deadlock.

4.	MiguelB
	1.	DEFECT FIX: DEF111681: CheckDisk is returning bad error code when run on locked SD card
	2.	DEFECT FIX: PDEF111776: memory card write failure notification can deadlock the phone

5.	MarkTa
	1.	DEFECT FIX: DEF112344: runtests.exe should not be dependant on btracec.dll.
		Make the runtests '-a' option conditional on a macro being defined.


Version 2.00.1725
=================
(Made by MarkTa 26/09/2007)

1.	MiguelB
	1.	DEFECT FIX: DEF111567: ScanDrive reads directory entries though the wrong cache
	2.	DEFECT FIX: DEF111755: Can't enable write caching unless read caching is also enabled

2.	SamiraA
	1.	DEFECT FIX: DEF111000: Techview Eshell, prompt jumps up display screen when press up arrow. 
		Line number was not calculated correctly.

3.	DmitryL
	1.	DEFECT FIX: DEF111524 H2 board crashes (debug assert) as a result of MMC card removal.

4.	AndrewHi
	1.	DEFECT FIX: PDEF111701: Memory leak in CMountCB 


Version 2.00.1724
=================
(Made by DmitryL 11/09/2007)

1.	MiguelB
	1.	DEFECT FIX: PDEF110480: Large files: RFs::CheckDisk() fails if a 4GB file is present
	2.	DEFECT FIX: PDEF110482: Large files: RFs::ScanDisk() fails if a 4GB file is present
	3.	DEFECT FIX: PDEF110483: Large disks: formatting a FAT32 volume greater than 16GB causes an exception
	4.	DEFECT FIX: PDEF110484: Large files: Can't open an existing 4GB file for reading
	5.	DEFECT FIX: PDEF110485: Large files: can't create a file greater than 2GB in size with RFile::Write()
	6.	DEFECT FIX: PDEF110486: Large files: Can't copy a file greater than 2GB in size with CFileMan
	7.	DEFECT FIX: PDEF111239: Large files: RFs::GetDir() with ESortBySize fails if a >2GB file is present 	
	8.	MINOR_CHANGE: Changed EStart to output boot time to serial port if SYMBIAN_ESTART_OUTPUT_BOOT_TIME defined
	9.	DEFECT FIX: DEF111431: Kernel Fault when ejecting the in use media card.

2.	KaiD
	1.	DEFECT FIX: PDEF111123: Memory card: No errors/warnings shown when copying/moving too many files to the

Version 2.00.1723
=================
(Made by OlegI 04/09/2007)

1.	DmitryL
	1.	DEFECT FIX: PDEF109713: TEntry::iSize returns negative number for a file with 2GB or more size.
	2.	DEFECT FIX: PDEF110916: Unable to use RAM disk as C: drive.
	3.	INTERFACE CHANGE: BR2120.1 RFs API extension
	4.	MILESTONE: Sphinx, GT0339, MS3.5.1, PREQ1721 REQ7247 DS709 Correct Drives finalisation; using FSInfo sector and backup Boot Sector for FAT32.
		PREQ1721 Optimised FAT cluster handling
		REQ7247 Correct drives finalisation that allows using of FSInfo sector


Version 2.00.1722
==========================
(Made by ReubenH, 29/08/2007)

1.	fabiangortz
	1.	DEFECT FIX: PDEF110004: CFileMan RMDir cannot handle TParse path format when it is equal to 256 chars

2.	indrajeetsingh
	1.	DEFECT FIX: PDEF109443 : Symbian - Moving files with option ERecurse works incorrectly

3.	KaiD
	1.	DEFECT FIX: PDEF110478: Potential regression in CFileMan::Rename operation

4.	Yogesh Chauhan
	1.	DEFECT FIX: DEF110648: Test tags unique ID assigned twice.

5.	JohnS
	1.	DEFECT FIX: DEF107927: CFatMountCB::MountL bad conditional expressions for unlocking of RAM drive 
 		Change expressions to test media attributes in place of drive attributes.
	2. 	DEFECT FIX: DEF107945 - Windows emulator selects sizeable raw disk for local internal drives 
 		Test for media atributes KMediaAttVariableSize as well when selecting sizeable raw disk.



Version 2.00.1721
==========================
(Made by JonCo, 15/15/2007)

1.	MichaelP
	1.	DEFECT FIX: DEF110410: USB Mass Storage Stall Timeout Should Be Reduced
		Changed timeout in CBulkOnlyTransport::StallEndpointAndWaitForClear()
		from 10 to 5.5 seconds.

2.	NeilC
	1.	DEFECT FIX: DEF109797: F32test build depends on non-exported internal file sf_file_cache_defs.h
	2.	DEFECT FIX: PDEF110622: ScanDrive can corrupt the disk if an invalid directory entry is present

3.	NicholasC
	1.	DEFECT FIX: PDEF110325: Mass Storage volume spontaneously remounts on Mac OS X and ubuntu


Version 2.00.1720
==========================
(Made by MariamSood, 08/08/2007)

1.	markhambleton
	1.	CHANGE REQUEST: BBRE-74UH6R: Integrate multithreading bug fixes to e32 and f32 		test code discovered during the SMP prototype development phase


Version 2.00.1719
==========================
(Made by NeilC, 02/08/2007)

1.	DjordjeK
	1.	DEFECT FIX: PDEF109805: Loader security vulnerability 

2.	fabiangortz
	1.	DEFECT FIX: PDEF109858: T_MS_MOUNTSTART fails with Micro SD cards
	2.	DEFECT FIX: PDEF108235: t_soak1 not very good on large or slow drives

3.	SebO
	1.	DEFECT FIX: DEF107996: Warnings generated with checksource build
		Made paths in .mmp and bld.inf's consistant with file system.

4.	Yogesh Chauhan
	1.	DEFECT FIX: DEF109391: CProxyDrive missing in source documentation 

5.	dharmeshgandhi
	1.	DEFECT FIX:PDEF109212:  Changing password for emulated MMC does not work always 	
		Defect reopened - integrated fix for WINS too

6.	dharmeshgandhi
	1.	DEF110162:[System Build]:GT Warnings due to variable'env_Val' not intialized M04304v9.4 



Version 2.00.1718
==========================
(Made by ParameshwariB, 24/07/2007)

1.	Radhakrishnanramanat
	1.	DEFECT FIX: DEF108613:ESHELL carries out a carriage return and a backspace when you use backspace
		Modified CLineEdit::Recall() method to calulate the line number for displaying history buffer.


Version 2.00.1717
==========================
(Made by JohnS, 17/07/2007)

1.	DipakA
	1.	DEFECT FIX: DEF104756: APIREG: RFs::ReadFileSection allows negative length 
		Modified sf_nbs.cpp file and added new tests in t_rdsect.cpp to check for negative length argument in ReadFileSection API.
2.	dharmeshgandhi
	1.	DEFECT FIX:PDEF109212:  Changing password for emulated MMC does not work always 	

Version 2.00.1716
==========================
(Made by SushmitaR, 10/07/2007)

1.	JohnS
	1.	MINOR_CHANGE: If \epoc32\data\epoc.ini does not exist Wintest.bat now creates 
		the ini file and writes the build-and-test-system settings to it.

2.	michaelmoate2
	1.	DEFECT FIX: DEF107748 - class CFsPluginConnRequest is incorrectly specified in F32plugin.h
		Removed duplicate declaration of Message method.

Version 2.00.1715
==========================
(Made by AndreasP, 04/07/2007)

1.	ArunachalamR
	1.	DEFECT FIX: DEF107791: RFs::SwapFileSystem panics if the drive is asynchronous
		Modified code to return KErrNotSupported if the drive is asunchronous.
		Updated documentation accordingly. 

2.	RaghavendraB
	1.  DEFECT FIX: DEF107806: T_CFSTEST occasionally fails on paged ROMs.

3.	SamiraA
	1.	MILESTONE: Oghma, GT0302, MS3.11, PREQ912  - Support LFFS on Intel "Sibley" NOR flash.

Version 2.00.1714
==========================
(Made by AndrewHi, 28/06/2007)

1.	AndrewHaigh
	1.	MILESTONE: Nutmeg, GT0332, MS3.7.1 PREQ1426  - Finalise  run-mode debug driver including speculative Thumb2 debug support.
	2.	DEFECT FIX: DEF108191. PREQ1426 - Debug Security can be circumvented.

2.	MiguelB
	1.	DEFECT FIX: DEF108463: File caching submission increases boot time
		Removed inefficient code in FsFileOpenL()
	2.	DEFECT FIX: DEF108498: Opened file can be read from dismounted FS 
		Flush file cache when file system is dismounted.

Version 2.00.1713
==========================
(Made by JonCo, 26/06/2007)

1.	NicholasC
	1.	PDEF108112: Response to TEST UNIT READY doesn't meet USB MSCCV specification
	The problem is due to the USBCV compliance test suite corrupting the boot sector rather 
	than a problem with compliance of the stack. The check for a valid boot sector is removed
	which now allows a host to format the drive in the case that the drive is corrupted.

2.	DmitryL
	1.	DEFECT FIX: DEF108054  Cannot fill more than 4GB on an 8GB card.

3.	MiguelB
	1.	DEFECT FIX: DEF108189: Client thread death can cause a file server exception with file caching enabled 
	2.	DEFECT FIX: DEF108573: FAT12 size calculation is incorrect 


4.	FabianGortz
	1.	DEFECT FIX: DEF107860: t_dspace has ram drive hardcoded

5.	NeilC
	1.	DEFECT FIX: DEF108393: t_notify repeatedly tests the same status result



Version 2.00.1712
==========================
(Made by VincentF, 13/06/2007)

1.	OlegI
	1.	DEFECT FIX: PDEF107141: Loader tests need updating to include simulated error tests

2.	NicholasC
	1.	DEFECT FIX: DEF107327: Reduce KMaxBufSize to 64K in scsiprot.h
	2.	DEFECT FIX: DEF107330: When EMediaNotPresent is detected - abort and dismount immediately.
	3.	MINOR_CHANGE: Call SetActive() once all other functions have been called.
	4.	MINOR_CHANGE: Tidy whitespace in cbulkonlytransport.[ch]

Version 2.00.1711
==========================
(Made by MiguelB, 06/06/2007)

1.	NeilC
	1.	DEFECT FIX: PDEF106484:	T_FMAN step "Test stack usage" crashes on H2.ARM4 UDEB

2.	AndreasP
	1.	DEFECT FIX: PDEF100529: Mounting file system extension in estart not supported

3.  DmitryL
	1.	MINOR_CHANGE: Fixed t_fatcorrupt test that may fail on FAT32, some minor fixes for other tests.


Version 2.00.1710
==========================
(Made by SushmitaR, 30/05/2007)

1.  DmitryL
	1.	DEFECT FIX: DEF107347 A FAT32-enabled ROM incorrectly allows file caching on the RAM drive.

2.  MiguelB
	1.	DEFECT FIX: DEF105438: File server thread safety issues 
		Fixed three issues exposed by SMP testing.

3.	Yogeshchauhan
	1.	DEFECT FIX: PDEF106686: Single mapping in ESTART causes KErrArgument when setting mappings.

4.	JenniferH
	1.	DEFECT FIX: DEF106675: Redundant code in loader

5.	SivashankarN
	1.	Engineering Change: EC114: Core OS: Enhance File Server to solve 1085/1086 interoperability issue. 
		Enhanced the Rofs and Composite file system to list the feature  
		manager file with special attributes uniquely by their mount id.

Version 2.00.1709
==========================
(Made by JenniferH, 24/05/2007)

1.	AndreasP
	1.	DEFECT FIX: PDEF105959: Digitizer pen up and down discard filter works incorrectly.

2.	dharmeshgandhi
	1.	DEFECT FIX: PDEF106692:Klocwork errors: base_f32 (2156) 

3.	NicholasC
	1.	DEFECT FIX: DEF106895: The response to the SCSI INQUIRY command is not correct 
	2.	DEFECT FIX: DEF107277: Compilation warnings in scsiprot.cpp

4.    	georgiosdementis
	1.	DEFECT FIX:  PDEF096424:  Some F32tests fail on the protected area of an SD Card

5.  	RaghavendraB
	1.	DEFECT FIX:  PDEF106557  TTG:< DEF097495 again >.

6.  	DmitryL
	1.	DEFECT FIX: PDEF102739 Memory card content cannot be read.
	2.	DEFECT FIX: DEF106662 t_fatcorrupt randomly fails because of generation bad sectors in FAT12 root dir. 
	3. 	MINOR_CHANGE: introduced a set of test utilities to deal with FAT FS. Tests modified to use these utilites. T_COMPAT test has become "manual"
		because T_COMPAT32 does the same.

7.	ArunachalamR
	1.	DEFECT FIX: PDEF104287: RFormat::Open crashes file server.
		(Propagated from INC096975: RFormat::Open crashes file server and applied same fix from INC096975)
		CCompMountCB nulls the CCompFileSystem::iMount pointer to itself when it is destroyed.

Version 2.00.1708
==========================
(Made by MiguelB, 22/05/2007)
1.	MiguelB
	1. 	MILESTONE: Oghma, GT0302, MS3.1.2 DS479 & DS537 Preq914 - Improve filesystem performance with server-side caching 
		This is being delivered with read and write caching turned off by default.
		See Base_How_To_File_Caching.doc for more details on how to enable file caching.

Version 2.00.1707
==========================
(Made by SamiraA, 17/05/2007)


1.	sivashankarnagappan
	1.	DEF102024:  RFs::UnlockDrive fails with KErrAlreadyExists with wrong password
			Fixed the problem of unlocking the drive with wrong password not returning KErrAccessDenied. Note that unlocking
			an already unlocked drive will still always return KErrAlreadyExists as expected.
		Also fixed the following defects (for wins environment)
			i)  Clear password with wrong password was succeeding - instead of returning KErrAccessDenied
			ii) Setting new password with wrong password as current password was succeeding - instead of returning KErrAccessDenied
			iii) Locking with wrong password was succeeding - instead of returning KErrAccessDenied
			iv) Fixed - Password information and status were information retrieval while switching between cards using hot keys was fetching wrong data
		Also fixed the above said defects including DEF102024 for SD card

2.	MichaelP
	1.	DEFECT FIX: PDEF106584: MSC doesn't handle WRITE10 failure properly
		Reworked function CBulkOnlyTransport::ReadAndDiscardData() such that it now
		also caters for the case where there's more data to be read and discarded
		than fit in a single buffer.
		
3.	AndreasP
	1.	DEFECT FIX: PDEF102803: Emulator EStart does not handle starters that do not exit when startup is over
	


Version 2.00.1706
===============================
(Made by MichaelMo, 09/05/2007)

1.	georgiosdementis
	1.	DEFECT FIX: PDEF105189: MMC(SD) is not corrupted if remove it form phone when formatting is ongoing.
		Change the order of the CreateBootSector function call during the format operation. 

2.	MiguelB
	1.	DEFECT FIX: PDEF104639: Phone automatically reboots when inserting memory card with password. 
		Calling RFs::UnlockDrive() with notifier active can fault the file server.

3.	sivashankarnagappan
	1.	DEF102017:  RFs::CheckDisk accepts the string "test" as drive path. 
		Updated the parameter description document as the fix. Also did the same for the ScanDrive.

4.  ArunachalamR
	1.	DEFECT FIX: PDEF104758: TParsePool* TParsePool::Get() does not update iCountFree properly.
		Updated source code to update iCountFree properly.

5.  MadhuriP
	1.	Defect Fix: DEF104757: APIREG: RFs::Replace passes when a file with ReadOnly attribute is used.

6.	OlegI
	1.	DEFECT FIX: PDEF104272: CFileman RMdir still cannot remove longfile name directory 

7.	DmitryL
	1.	DEFECT FIX: PDEF105953: Format parameters. 
		Fixed problems with "ReservedSectors" format parameter. Eshell "format" command extended.

8.	NicholasC
	1.	DEFECT FIX: DEF105575: usb mass storage mode ejection with linux
	2.	DEFECT FIX: DEF104842: Remove CMediaChangeNotifier
	3.	Minor change: Cleanup whitespace in smassstorage
	4.	Minor change: Add const to constant vars in smassstorage
	5.	Minor change: Renaming of scsi command buffer and use of constants


Version 2.00.1705
==========================
(Made by JonCo, 24/04/2007)

1.	DmitryL
	1.	DEFECT FIX: PDEF105081: File Server can crash when opening a file under very low memory.

3.	yogeshchauhan
	1.	DEFECT FIX: DEF103162: Class TFSStartup is not exported but is used by partners 
		Documentation for TFsStartUp is added.

4.	RaghavenedraB
	1.	DEFECT FIX: PDEF105053: A folder including unknown file and folder can be deleted. 


Version 2.00.1704
==========================
(Made by AndrewHi, 16/04/2007)

1.	DmitryL
	1.	DEFECT FIX: PDEF104955 Fat 12 issue on protected area of SD media card.

2. 	SamiraA
	1.	DEFECT FIX: DEF096685 RFs::SetStartupConfiguration() should be publishedPartner 
		@publishedPartner and @release added to cl_cli.cpp for RFs::SetStartupConfiguration()


Version 2.00.1703
==========================
(Made by VincentF, 03/04/2007)

1.	DmitryL
	1.	DEFECT FIX: PDEF104147: RFile::Duplicate() leaves a handle open 

2.	OlegI
	1. 	DEFECT FIX: PDEF102776: CFileMan->Move does not remove all items from source directory when moving to it

3.	VincentF
	1.	MINOR_CHANGE: Demand Paging test additions.

4.	IgorM
	1.	DEFECT FIX: 	PDEF104017 RFs::Rename() method corrupts data when run on hardware
	2.	DEFECT FIX: 	PDEF104475 T_BLOCKMAP failing on h2.arm4

5.	ArunachalamR
 	1.	DEFECT FIX: PDEF102310  in template port KScanRate specified in microseconds, should be milliseconds.
 		Modified the constant value and updated comments.

6.	ParameshwariB
	1.	DEFECT FIX: DEF103041 T_FALSESPACE, B_OPEN and T_FATCORRUPT fail on 8GB SD card. 

7.	MiguelB
	1.	DEFECT FIX: PDEF104312: Memory Card ForcedErase in Text shell 
		Fixed problem running commands from a locked MMC/SD drive.


Version 2.00.1702
==========================
(Made by MiguelB,  22/03/2007)

1.	georgiosdementis
	1.	MILESTONE: Naiad, GT0326, MS3.3  DS585  CR 0909 - Change the behaviour of RFs::DriveList to exclude remote files and add new 
		overload that includes them.
		Change the behaviour of RFs::DriveList and class TFindFile, in order to be able to specify the
		attribute mask of drives to be searched. Tests t_locate,t_fsrv test the added functionality.
		INTERFACE CHANGE: BR1939.2: Modify behaviour of RFs::DriveList to exclude remote drives


Version 2.00.1701
==========================
(Made by SushmitaR, 19/03/2007)

1.	MichaelP
	1.	DEFECT FIX: PDEF103792: Usb synchronisation issue between stalling and clearing an endpoint.
		Changed and simplified the way Bulk endpoints are stalled (halted) and
		checked for un-stalling by the host in the USB Mass Storage transport
		component (cbulkonlytransport.cpp).


Version 2.00.1700
==========================
(Made by SamiraA, 08/03/2007)

1.	ArunachalamR
	1.		DEFECT FIX: PDEF095980  [Codebase] RRawDisk::Read RRawDisk::Write panics documentation.
			(Propagated from DEF092024)
			Updated insource documentation.
		 
2.	ReubenH
	1.		DEFECT FIX: PDEF102739 Memory card content cannot be read 
			(Propagated from INC102003)
			Updated FAT16 directory listing logic to tolerate spurious long filename entries 
			without marking entire volume as corrupt.
	
3.	DmitryL
	1.		DEFECT FIX: PDEF103139 Some general issues with mount file system APIs.
			Corrected the docummentation on RFs::MountFileSystem() API, removed KernelPanic reason for the critical notifiers
			on synchronous drives. Extended RFs::QueryVolumeInfoExt() API to check if the specisied drive is sync/async one.
	2.		MINOR_CHANGE: TFatBootSector, TFSInfo code refactoring.
	3.		MINOR_CHANGE: small CFatMountCB code rearragement.

4.	NicholasC
	1.		PDEF103095: Media removal fails on Windows Vista

Version 2.00.1513
==========================
(Made by MarkTa, 19/02/2007)

		
1.	MiguelB
	1.	DEFECT FIX: DEF101943: Problems with TParsePool 
		TParsePool was not thread-safe and had the potential of panicking the file server if
		a memory allocation failed.

2.	MarkHambleton
	1.	DEFECT FIX: DEF102020:  efile::Loader thread crashes
		E32ImageHeader::New was not checking the return from FileRead and continuing to create 
		and allocate an image. Added check and return of error if FileRead returns anything other 
		than KErrNone.
		Also from analysing test code found that reaper was faulting the system if it was unable to 
		do initial cleanup, this is erroneous so fixed this aswell.

Version 2.00.1512
==========================
(Made by JohnS, 14/02/2007)
		
1.	DmitryL
	1.	MINOR_CHANGE: some Eshell commands extended.
		eshell "gobble" command prints time taken to create the file
		eshell "chkdsk" command now allows to start ScanDrive on a specified drive
		eshell "drvinfo" command now prints FAT subtype (FAT12,16 or 32)

2.	ReubenH
	1.	DEFECT FIX: DEF096347:  NAND: Recogniser failed with KErrCOrrupt

3.	MiguelB
	1.	DEFECT FIX: PDEF101895: Device crash in efile.exe when plugging/unplugging USB cable using fast file ... 
		Fixed problem with RFs::NotifyDismount(): this cancels any outstanding requests on the drive thread but
		this can lead to memory leakage (and a panic in debug mode) when cancelling a KDispatchObjectClose object.

4.	NeilC
	1.	DEFECT FIX: DEF099619: Increase in boot time by 1%

Version 2.00.1511
==========================
(Made by IgorM, 08/02/2007)

1.	KaiD
	1. 	DEFECT FIX: PDEF101442  Memory Card: The default name is not correct after formatting the memory card.
		Default volume name is "" now.
	2. 	DEFECT FIX: INC100580: Folder default name can not be displayed completely. 		

2.	MarkHambleton
	1.	DEFECT FIX: DEF101470: DP: variantmediadef.h does not allow code paging from ROFS on Techview
		All NAND drives are now marked as pageable for h2 and h4. This change only affects code paging.

3.	IgorM
	1.	DEFECT FIX: INC100241 	CFileMan::Copy and CFileMan::Move methods do not call RFile::Flush method before
	2.	DEFECT FIX: PDEF095995 	Redefine ESystemDrive HAL attribute and ensure it is always set.

4.	RyanHarkin
	1.	MINOR_CHANGE: T_BLOCKMAP fails on non-NAND builds and boards.  I've updated it so that it only run if it
		finds a NAND drive, but it still never runs on a Lubbock because it doesn't have the correct APIs for the test.

5.	JonCo
	1.	DEFECT FIX: DEF101702: DP: Loader contains testing code
		Removed unreferenced code

6. 	JohnS
	1.	PDEF101070: T_Blockrep erases initial bad blocks
		When recovering simulated bad blocks genuine bad blocks may fail to erase.	



Version 2.00.1510
==========================
(Made by AttilaV, 29/01/2007)

1.	DmitryL
	1. 	DEFECT FIX: DEF100353  CFatMountCB::CheckDisk() implementation contains potentially dangerous code.

2.	MichaelP
	1.	DEFECT FIX: INC100541: Mass Storage Write operation performance optimization
		Introduced a new virtual method 'void ReportHighSpeedDevice()' with empty
		default implementation to class MProtocolBase. This new method gets called by
		the F32 Bulk-only Transport once it has opened the USB LDD and detected that
		it's running on a HS capable USB device. The SCSI Protocol implements the new
		function and changes its media write size from 4KB to 64KB.

3.	ArunachalamR
	1.	DEFECT FIX: PDEF100386: It's possible to subst /Resource to a new drive with only DriveAdmin capability. (Propagated from DEF099546)
		INTERFACE CHANGE: BR2027.3: Currently it's possible to subst /Resource to a new drive with only DiskAdmin capability.
		This is incorrect & is to be changed to TCB to match the /Sys and /Private.

		Modified code to verify that the application has TCB capability for /Resource path.h.


Version 2.00.1509
==========================
(Made by StefanW, 18/01/2007)

1.	StefanW
	1. 	MILESTONE: Argus, GT0286, MS3.14 DS565 CR0960 - Provide a mechanism so that it is possible 
		to access an entire media address space not just a given partition of an SD Card.

2.	KaiD
	1. 	MILESTONE: Argus GT0286, MS3.7 DS401 CR0882 - Provide additional attributes to TVolumeInfo to allow 
		efficient buffer usage for underlying media

Version 2.00.1508
==========================
(Made by DjordjeK, 17/01/2007)

1.	DjordjeK
	1.	DEFECT FIX: PDEF100042: Malformed reloc info can kill loader thread (MCL)
		The fix for stability issue where phone may crash if a faulty/corrupted executable image is loaded.

2.	StefanW
	1.	DEFECT FIX: DEF099820: Changes in CFileMan (DEF092084) have caused regressions of DevProv ONB tests
		Fixes a a regression caused by DEF092084 which caused CFileMan to no longer return KErrInUse when 
		attempting to remove a directory containing open files using CFileMan::RmDir.

3.	AndrewHi
	1.	DEFECT FIX: INC099941:   F32 test T_FNAME is set to fail incorrectly
		Changed path and file names to be lower case.

4.	NicholasC
	1.	DEFECT FIX: PDEF099927: Strange behaviour when connecting USB cable - sometimes not working at all


Version 2.00.1507
==========================
(Made by JonathanM, 09/01/2007)

1.	JonathanM
	1.	Milestone:
		Naiad,SM013,MS3.20.1,PREQ1110 - Base: Demand Paging Submission (ROM paging only enabled) 

2.	StefanW
	1.	DEFECT FIX: DEF099820: Changes in CFileMan (DEF092084) have caused regressions of DevProv ONB tests
		Fixes a a regression caused by DEF092084 which caused CFileMan to no longer return KErrInUse when 
		attempting to remove a directory containing open files using CFileMan::RmDir.

Version 2.00.1506
==========================
(Made by OlegI, 18/12/2006)

1.	dharmeshgandhi
	1.	DEFECT FIX:PDEF095997 [codebase]t_ms_mountdrive doesn't (quite) work on emulator 

2.	DmitryL
	1.	DEFECT FIX: PDEF098783  [NQP] Parameter definition is incorrect for RFs::DismountExtension().
	2.	DEFECT FIX: PDEF098866  [NQP] RFs::GetMediaSerialNumber() error codes differ from documentation 
	3.	DEFECT FIX: PDEF098865  Symbian provided RFs::NotifyChange does not work for root directories like e:\

3.	StefanW
	1.	DEFECT FIX: DEF099009: Rename doesn't trigger directory notifiers
		Modified change notification to notify clients when a watched directory appears due to a rename operation.
		(prior to this, clients would only be notified if a directory disappears and not when it re-appears).

4.	JohnS
	1.	DEFECT FIX: PDEF095959: Force Dismount of file systems may have some short comings
		Closing an open file handle after a force dismount was causing a file server fault. For non
		rugged FAT force dismount was failing to flush uncommitted file length changes.
	2.	DEFECT FIX:	DEF099210:	DP: nandtest_rel_autoexec.bat files are not exported as PRJ_EXPORTS
		Because the files were exported as PRJ_TESTEXPORTS they were not available to system build.

5.	NicholasC
	1.	DEFECT FIX: PDEF098658: Connected to PC Mass storage.Unable eject memory card My Computer 
	2.	DEFECT FIX: PDEF098663: USB MS ZLP is not sent when device sends less than expected data length
		

Version 2.00.1505
==========================
(Made by MichaelMo, 04/12/2006)

1.	MarkTa
	1.	DEFECT FIX: PDEF097862: Loader problems
		Make RImageFinder::Close immune to being called twice by ensuring it NULLs iHeader.  
		Extended t_loadfail to cover this fix
	2.	MILESTONE: Open Environment GT314, MS3.13: DS.381:PREQ1466:Base:Open Environment- entry-point lookup by name
		Modify loader to ensure that the import tables of non-XIP exe/dlls that link against stdexe/stdll(s) have 
		the 0th ordinal addresses of the stdexe/stdll(s) fixed up.

2.	MichaelP
	1.	MINOR_CHANGE: Made some changes to T_FSYSBM: Added read and write tests
		with 1MB block size; these show a further increase in performance when
		compared to the previous maximum block size of 64KB.

3.	RichardCo
	1.	DEFECT FIX: PDEF098218: Self-signed application causes Loader to crash by sending invalid IPC messages (
		Fix the loader so that when it panics the client for being in a bad
		state, it doesn't also crash itself. Extend t_ldrtst to cover this.

4.	samiraabbasnejad
	1.	DEFECT FIX: PDEF096027: Incorrect descriptions in TEntry::iModified 
	2.	DEFECT FIX: PDEF098199: Phone resets when phone is locked manually and remote device lock msg is receivd
	3. 	Minor Change: Remove armv5 compile warning with unreachable break

5.	AndrewHi
	1.	DEFECT FIX: DEF097083: File reading over the length of a buffer is inconsistent
		Added user-side check to compare the requested read length with the maximum size of the buffer,
		returning KErrOverflow if inappropriate. Also added test testReadBufferOverflow to t_file to exercise this change.

6.  RaghavendraB
	1.  DEFECT FIX:  PDEF098142 Illegal capability on DevLib.
 		Corrected insource documentation typo in cl_cli.cpp documentation.

7.	YingS
	1.	MILESTONE: Argus GT0286, MS3.12 DS343,
		CR0628 File system should cache normalised text and collation key and upper layer should use them

8.	IgorM
	1.	DEFECT FIX: PDEF095924 	[codebase] CFileMan::CreateTargetNameFromSource and non-trivial masks	
	2.	DEFECT FIX: PDEF096012 	[codebase] CFileMan::RenameInvalidEntryL does not handle special cases
	3.	DEFECT FIX: PDEF096923 	CFileMan::Move moves directories in wrong way in recursive mode	
	4.	DEFECT FIX: PDEF095956 	CFileMan not deleting long fullnames correctly
	5.	DEFECT FIX: DEF094435 	Test failures on LFFS drive overnight tests.



Version 2.00.1504
==========================
(Made by KaiD, 20/11/2006)

1.	DmitryL
	1.	DEFECT FIX: PDEF097586  CBaseExtProxyDrive::DeleteNotify is not implemented.
	2.	DEFECT FIX:	DEF097510  Memory leak when marking bad clusters in FAT.

2.	MichaelP
	1.	MINOR_CHANGE: Made some changes to T_FSYSBM: Benchmark figures are now
		more accurate and are also displayed in MB/s. Increased test file size
		from 64KB to 2MB. All test files are now deleted before program exit.


version 2.00.1503
==========================
(Made by JonCo, 10/11/2006)

1.	YingS
	1.	DEFECT FIX: PDEF096003 - Scandrive should not check DOS file names using local just for standard illegal
		Don't perform basic ASCII character check in LocaleUtils::IsLegalChar() when scanning drive
	2.	DEFECT FIX: PDEF097611: Use TRAP instead of TRAPD in CLffsMountCB::ControlIO()
	3.	MINOR_CHANGE: Remove f32 & f32test warnings

2.	KaiD
	1.	DEFECT FIX: PDEF095988: Volume label operation not consistent with what Windows does

3.	DmitryL
	1.	DEFECT FIX: PDEF096002: FAT/FAT32 cannot create 8.3 directory entries. 
	2.	DEFECT FIX: PDEF095934: F32 Plugin Architecture is vunerable to BC breaks.

4.	ReubenH
	1.	DEFECT FIX: PDEF096000: F32Test T_VIRUS puts hook in wrong place
	

version 2.00.1502
==========================
(Made by MiguelB, 31/10/2006)
1.	YingS
	1.	DEFECT FIX: PDEF096005 - iClusterBuffer should restrict its max length to just one cluster long
		Don't use MaxLength() for real length of buffer. Use concrete number 1 << ClusterSizeLog2()
	2.	DEFECT FIX: PDEF097059 - Wrong operator precedence in FsThreadManager functions
		- TBool b=(t.iIsAvailable && (t.iIsSync)||(!t.iIsSync&&t.iId==id));
		+ TBool b = t.iIsAvailable && (!t.iIsSync && t.iId==id || t.iIsSync);

2.	Radhakrishnan R
	1. 	DEFECT FIX: PDEF096022: (codebase) RFs::ReserveDriveSpace reporting wrong error code
 		Propagated from DEF091829.

3.	StefanW
	1. 	MINOR_CHANGE : Added command line auto-completion support to EShell.
	2.	DEFECT_FIX: DEF097434:  [System Build]: KSpaceChar already defined errors in M04059 v9.3 and v9.4
	
4.	ParameshwariB
	1.	DEFECT FIX: PDEF095998: Check for Unvisited clusters in checkdisk should start from Cluster 2 for FAT32.

5.	DipakA
	1. 	DEFECT FIX: PDEF096010: TDrive-Document is incomplete for many inline functions of this class
		Popagated from DEF092752. In source documentation added for TDrive functions.


version 2.00.1501
==========================
(Made by DmitryL, 18/10/2006)

1.	ParameshwariB
	1.	DEFECT FIX: PDEF095998: Check for Unvisited clusters in checkdisk should start from Cluster 2 for FAT32.
	2.	DEFECT FIX: PDEF096018: [Codebase] T_SCN32DR3 fails when run on a FAT12/16 drive.
	3.	DEFECT FIX: PDEF096019: Corrupt drives can cause knock-on F32TEST failures.

2.	KaiD
	1. Other Changes: MINOR_CHANGE Reverting fixes for PDEF095963 on MCL as there's no requirement for
		 disabling multiple ROFS support any more.


Version 2.00.1500
==========================
(Made by YingS, 11/10/2006)

1.	ArunachalamR
	1.	DEFECT FIX: PDEF096029: Techview eshell new line rendering/cursor errors

2.	DipakA
	1. 	PDEF096030: [Codebase] TFindFile makes no check on parameters passed
		Defect fixed in f32file.h and cl_find.cpp. Insource document updated also added KErrArgument return value
		for Empty file name.

3.	DmitryL
	1.	PDEF095932: RF Unable to determine if a pre-installed DLL on MMC has a hash file.
		Added new method to the RLoader API RLoader::CheckLibraryHash() that allows to check if the corresponding
		hash file exists for the gived dll and optionally validate it.

4.	NicholasC
	1.	DEFECT FIX: PDEF095970: Mass storage mode ejecting fails with XP

5.	KaiD
	1.	PDEF095963: 'Flexible ROM configuration' allows customers free rein to modify the OS
			- This defect fixing has been reverted on MCL.
         
Version 2.00.1146
==========================
(Made by IgorM, 21/09/2006)

1. 	NeilC
	1.	DEFECT FiX: DEF087940: [AQP] t_ms_password emualtor test fails

2.	YingS
	1.	DEFECT FiX: DEF093765 - [codebase] Scandrive can't detect bad single short entry
								when no long name entry
		Return IsDosEntry(aEntry) if first entry is short entry.

3.	StefanW
	1.	DEFECT FIX: DEF094062 : [Codebase]FAT32/SD: End of 2nd FAT should be at the end of a Boundary Unit
		SD FileSystem Specification V2.0 states that the start of the user data area of FAT should be
		aligned to a boundary unit. Modified the SD drivers to communicate the number of reserved sectors
		to the FAT file system to ensure that this constraint is met.

	2.	DEFECT FIX: DEF094452 : [codebase] FAT32 formatting will fail when we reach 16G capacity
		The current implementation of FAT32 was constrained to calculating SPC up to 16G.  Fixed
		by implementing additional SPC calculations as described in the FAT32 specification.

4.	ParameshwariB
	1.	DEFECT FIX: DEF091820: [CodeBase] BPB_RootClus field is not updated when cluster 2 is marked as bad.
		Also added code to copy the contents from bad cluster to new one allocated during write. 

	2.	DEFECT FIX: DEF094211: Documentation change of capability requirements for RFs methods.

5.  MarkHambleton
	1.	DEFECT FIX: DEF092271: [codebase]CDir::Compress() should be more imformative in dev lib

	2.	DEFECT FIX: INC092401: RFS::NotifyChange (with three parameters) using parameter ENotifyDir does not wo

6.  RaghavendraB
 	1.	MINOR CHANGE: Insource documentation updates for asynchronous RFile::Read().

7.	ArunachalamR
	1.	DEFECT FIX: DEF091675: [codebase] Some undocumented functions in RFs
		Insource documentation added to source file f32/sfsrv/cl_debug.cpp
	2.	DEFECT FIX: DEF088224: TFindFile::FindByDir returns incorrect error code for platsec violations
		Defect fix in source file f32/sfsrv/cl_find.cpp
		
		Two test applications are added: t_findcapall and t_findcapnone
		
		Following files are modified for testing
			f32test/group/bld.inf
			f32test/group/wintest.bat
			f32test/group/romstuff.mke
		Following files are added for testing
			f32test/server/t_findcaptestfile.txt
			f32test/group/t_findcapall.mmp
			f32test/group/t_findcapnone.mmp
			f32test/server/t_findcapall.cpp
			f32test/server/t_findcapnone.cpp
		
6.  RaghavendraB
 	1.	MINOR CHANGE: Insource documentation updates for asynchronous RFile::Read().

7.	ArunachalamR
	1.	DEFECT FIX: DEF091675: [codebase] Some undocumented functions in RFs
		Insource documentation added to source file f32/sfsrv/cl_debug.cpp
	
	2.	DEFECT FIX: DEF088224: TFindFile::FindByDir returns incorrect error code for platsec violations
		Defect fix in source file f32/sfsrv/cl_find.cpp
		
		Two test applications are added: t_findcapall and t_findcapnone
		
		Following files are modified for testing
			f32test/group/bld.inf
			f32test/group/wintest.bat
			f32test/group/romstuff.mke
		Following files are added for testing
			f32test/server/t_findcaptestfile.txt
			f32test/group/t_findcapall.mmp
			f32test/group/t_findcapnone.mmp
			f32test/server/t_findcapall.cpp
			f32test/server/t_findcapnone.cpp


Version 2.00.1145
==========================
(Made by RichardC, 14/09/2006)

1.	NeilC
	1.	DEF093656: RF DriveNumbertoLocalDriveNumber incorrectly declared.
	2.	DEF093418: Documentation incomplete for class CFsObject & CFsDispatchObject.
	3.	DEF093419: Documentation incomplete for class CProxyDrive.
	4.	DEF093420: Documentation incomplete for class CProxyDriveFactory.
	5.	DEF093421: Documentation incomplete for class CLocalProxyDrive.
	6.	DEF093422: Documentation incomplete for class CLocDrvMountCB in dev library.
	7.	DEF093424: Documentation incomplete for member data/functions for class CFileBase.
	8.	DEF093425: Documentation incomplete for struct TExtensionInfo and TDriveExtInfo.
	9.	DEF093426: Documentation incomplete for Class CFileShare and TParseBase in dev library.

2.  KaiD
	1.	DEFECT FIX: PDEF093691: RF Mount fails on FAT if volume label contains double byte characters
		Don't call TrimRight() but only trim trailing spaces ('0x20') and NULL chars ('0x00'). 

3.	GavinT
	1.	DEFECT FIX: DEF092546: [Codebase] KEntryAttXIP and KDebugNotifyMask have no descriptions

4.	ParameshwariB
	1.	DEFECT FIX: DEF090389: [Codebase] FAT entry corrupted after unexpected end of sync write

5.	YingS
	1.	DEFECT FIX: DEF093074  [Codebase] Potential problem with scandrive with the japanese character set
		Clarify RFs::ScanDrive()'s document with details of errors ScanDrive check

6.	IgorM
	1.	DEFECT FIX:	INC089638: CFileMan->Move() does not remove all items from source directory
	2.	DEFECT FIX:	DEF092086: [codebase] CFileMan::RunL does not handle ERetry from observer properly

7.	ReubenH
	1.	DEFECT FIX:     DEF093416: [codebase]RFS::LockDrive does not return KErrNotSupported (?)
	2.	DEFECT FIX:	DEF093417: [codebase]RFs::UnlockDrive returns KErrAlreadyExists on emulator

8.	JohnS
	1. 	DEF085847 [AQP] PREQ1085 was delivered without tests for REQ5268
		Extend the ROFS tests to NAND FAT composite file system partitions.
	2. 	DEF093402: codebase]t_rofsdir test tests for root directory Resource twice
		Test adjusted to test for root directory Resource once and to check for autoexec.bat file instead 
		of testing Resource twice.
	3.	 DEF093072: [codebase]MountFileSystemAndScan returns err -21 but ok flag
		Initialise aIsMountSuccess to EFalse in RFs::MountFileSystemAndScan() procedures.

9.	NicholasC
	1.	DEFECT FIX: INC090673: USB disconnection problems with MAC 
		Check LOEJ bit is set before load/unload of drive.

10.	ArunachalamR
 	1.  	DEF093083: [Codebase] RFile::SetSize panic undocumented
		Source file f32/sfsrv/cl_file.cpp updated with in-source documentation.

11.	DipakA
	1.	DEF092868 - Dismounting drive returns KErrNotReady
		Updated Source documentation for RFs::DismountFileSystem() as following
		KErrNotFound, if aFileSystemName is not found;
		KErrNotReady, if the drive does not have a file system mounted on it; 
		KErrPermissionDenied, if the client does not have the necessary capabilities to dismount the file system;

11.	ParameshwariB
	1.	DEFECT FIX: DEF091659: [Codebase] T_FATCORRUPT fails on some 1GB SD cards
	2.	DEFECT FIX: DEF091673: [CodeBase] Version number is not checked before mounting

12.	YingS
	1.	DEFECT FIX: INC087879 - Applications in memory card not opening after re-boot
		Not update directory cache in file server code when card is still locked.
	2.	DEFECT FIX: DEF090642 [CodeBase] - PCB: EikFileUtils::CopyFile API Shows Misleading errorcode
		Replace:
			if (FileNamesIdentical(srcName.FullName(),trgName))
				User::Leave(KErrAlreadyExists);
		with:
			if (FileNamesIdentical(srcName.FullName(),trgName))
				if (iSwitches&KOverWriteFlag)
					User::Leave(KErrNone);
				else
					// return an error if !KOverwrite
					User::Leave(KErrAlreadyExists);
	3.	DEFECT FIX: DEF092975 - [Codebase] Checkdisk does not report invalid values in an entry
		Make RFs::CheckDisk()'s in-source comment clearer.

13.	RichardCo
	1.	DEFECT FIX: DEF091818: [codebase] TFindFile finds directories
		Update documentation to reflect this behaviour; it's always been that
		way.

14.	StefanW
	1.	DEFECT FIX: DEF091265: [Codebase] Formatting in f32tests should use the ESpecialFormat mode.
		Modified FAT formatting code to always use special formatting options if supported
		by the media driver.  This ensures that media such as SD cards are formatted for
		optimal performance.
	2.	DEFECT FIX: DEF084005: File System threads should have useful names
		Drive threads are now named, containing the local drive number to assist debugging.

15.	AndrewHi
	1.	DEFECT FIX: DEF091187: [codebase]RFs::IsFileOpen accepts directories as file argument
		Modified the in-source comment to specify more precisely.


Version 2.00.1144
==========================
(Made by ParameshwariB, 29/08/2006)
1.	DmitryL
	1.	DEF091904:  [codebase]CDirScan behaves oddly if scan dir specified without \\
		Documentation updated.

2.  NeilC
	1.	DEF093321: [Codebase] Formatting for FAT32 when FAT32 isn't in the ROM causes panic.
		Fat16 files system will now report not support if requested to use FAT32 formatting

3.	YingS
	1.	PDEF092815: Scandrive should not check DOS file names using local just for standard illegal
		Don't perform basic ASCII character check in LocaleUtils::IsLegalShortNameCharacter() when
		scanning drive.

4.  RaghavendraB
	1.  DEF090863: [codebase] RFs::ReadFileSection reads directories ?
		ReadFileSection function updated for checking empty directories. Added new function to check 
		empty directories at server-side. t_rdsect tests updated for the same.

Version 2.00.1143
==========================
(Made by OlegI, 21/08/2006)

1.  DipakA
	1.	DEF090855: [codebase] RFs::ReadFileSection reads without any file being passed
		ReadFileSection function updated for zero length file checking. t_rdsect tests updated for the same.
	2.	DEF091545: [Codebase] RFile::Write(const TDesC8 &aDes, TInt aLength) is uninformative.
		RFile::Write functions updated for zero length file checking.t_file tests updated for the same.
	3.	DEF092368: [Codebase]RFs::CharToDrive accepts lower case
		Source documentation changed for RFs::CharToDrive , added "a to z".
	4.	DEF092147: [codebase] RFs::Rename accepts Zero Length File Name.
		Zero length checking condition added in RFs::Rename function. Tests b_gen updated for the same.
	5.	DEF090654: (Codebase) MFileManObserver::NotifyFileManStarted behaves strangely with ECancel
		Modified function EXPORT_C void CFileBase::RunL() and void CFileMan::CompleteOperationL()
		Also added addition test cases in t_fman.cpp
	6.	DEF091508: [codebase] RFile::Read(TDes8 &aDes, TInt aLength) accepts a negative length
		RFile::Read function source documentation updated. Read function checked for negative length input.
		Also test modified for the same.

2.	AndreasP
	1.	DEF092019: [Codebase] RRawDisk::Read RRawDisk::Write reporting KErrCorrupt wrongly
		TFsRawDiskWrite::DoRequestL and TFsRawDiskRead::DoRequestL now handle the case in which
		a negative positionhas been given as input RRawDisk::Write and ::Read respectively and
		return KErrArgument.
	2.	PDEF092580: EMediaNotPresentCritical state not supported please remove references to it
		All references to EMediaNotPresentCritical have been removed.

3.	Radhakrishnan
	1.	DEF091920: RFile::Read(): Document says return value for a void function Read() 
		Insource document is changed from description of return value to updates aStatus parameter with
		corresponding error code, since this is void function no return value description is applicable


4.	DmitryL
	1.	PDEF092432:  miniSD:Cannot boot up with 2GB miniSD which formatted FAT 16 by PC.
		Fixed ScanDrive to skip bad clusters.
	2.	DEF092047: [codebase] CDir::Sort() behaves strangely when invoked with EDirDescending 
		documentation updated.
	3.	MINOR CHANGE: Eshell "format" command extended to support "sectors per cluster" value for user FAT formatting
	4.	MINOR CHANGE: Eshell "gobble" command performance improved.
	5.	MINOR CHANGE: New parameters in epoc.ini file: "MultiMediaCardSlots" & "MultiMediaCardsNum" 
		that specify number of emulated MMC cards and slots
	6.	MILESTONE: Bravo,GT0236,MS3.25 PREQ1192 REQ6179 Dedicated cache for FAT metadata.
		Introduced dedicated cache for FAT directories.


Version 2.00.1142
==========================
(Made by NeilC, 16/08/2006)

1.	YingS
	1.	MINOR_CHANGE: CR PSCE-6Q5KKD Add support in F32 to enable/disable Rugged FAT on a per-drive basis
		NOTE TO LICENSEE: This feature gives ability to switch between rugged and non-rugged
		file system. By defualt, file system is rugged. The benefit of using non-rugged FAT is
		performance gain from file read/write operation, yet there is risk of loss of data integrity.
	2.	PDEF091955 Issues with estart
		Change arguments' order in function call.
	3.	DEF091858  Generic Estart defaults to SSR rather than XSR
		Use __NAND_SSR__ instead of __NAND_XSR__ and change default behavior to __NAND_XSR__.
		NOTE, licensee who wants to use __NAND_SSR__ can define macro __NAND_SSR__ in own
		version of estart.mmp.

2.	NeilC
	1.	DEF091461: Redefine ESystemDrive HAL attribute and ensure it is always set.
		Implementation of CR0896, sets EsystemDrive attribute in EStart through use of FS_SYSTEM_DRIVE keyword.



Version 2.00.1141
==========================
(Made by MiguelB, 08/08/2006)

1.	DmitryL
	1.	PDEF091960  LFFS Mount makes excessive accesses to media.

2.	AndrewHi
	1.	DEF091176: [codebase] Renaming to _L(""), seems fine to CFileMan
		Clarified the in-source comments and extended the tests in t_fman.cpp to demonstrate.
	2.	DEF091830: All EStart variants should gain PowerMgmt capability
		Added capability to all relevant MMP files (all except the  one that has
		specifically excludes Domain Management, omap_hrp\h4_mebootloader). Also
		implemented run-time test in generic estart initialisation code to check
		for the capability.

3.	MarkTa
	1.	DEFECT FIX: PDEF085986: Mass Storage Periodic data transfer timer is always active
		Make iTimer stop after afew seconds of inactivity or when USB disconnected


Version 2.00.1140
==========================
(Made by MichaelP, 03/08/2006)

1.	DmitryL
	1.	DEF091573 [codebase]NotifyFileManOperation() does not cancel a copy operation correctly.
		Changed CFMAn::NotifyFileManOperation description to correspond to the functionality.

2.	RobertJ
	1.	PDEF091940: RFs::RemountDrive description is wrong
		Added descriptions for flags:
                  0x00000001 - Used to simulate ejecting and re-inserting the media.
                  0x80000000 - used to force the media driver for the specified logical
                               drive to be closed and reopened.


	2.	DEFECT FIX: PDEF091959: File server fault occurs due to disconnect request completing with KErrNotReady
		When dismounting a file system, all outstanding requests for the drive are completed with KErrNotReady.
		Session disconnect would fault if completed with any error other than KErrCancel.
		

Version 2.00.1139
==========================
(Made by RobertJ, 19/07/2006)

1.	JohnS
	1.	PDEF090121: NAND thread crash when doing async writes to internal memory.
		TInt DMediaDriverNand::DoWrite() paniced for zero length source descriptors - this was crashing
		the Nand thread.

2.	Dipak Agrawal
	1.	DEF090699: [codebase] Returning ECancel to MFileManObserver::NotifyFileManEnded - no effect
		Added "MFileManObserver::ECancel will not cancel processing the current
		entry" comment in MFileManObserver::NotifyFileManEnded()function.

3.	AndrewHi
	1.	DEF090994: [codebase] RFS::ReadFileSection writes buffer length even if it fails
		Modified server-side code to reset the descriptor length to zero in the event of an error.
		Extended t_readsect to test this condition.
	2.	DEF091173: [codebase] Copy to a directory_L("") seems fine with CFileMan
		In-source documentation made more explicit.

	
Version 2.00.1138
==========================
(Made by StefanW, 11/07/2006)

1.	YingS
	1.	DEFECT FIX: DEF088863 - T_FSRVBM performance down by fix for DEF079957
	2.	DEFECT FIX: DEF090715  estart.exe for h4 does not have an explicit SID
		Added SID to estart.mmp of h4 and integrator as well.

2.	StefanW
	1.	CHANGE REQUEST: PCHY-6PALT2: Add asynchronous Flush() and define ranges for file attributes.
	2.	MILESTONE: Bravo GT0236, MS3.20.1 DS317 PREQ1389 CR0795,CR0618 Support for >2G SD part 1
		Added support for >2G SD Cards conforming to the SD2.0 version of the specification.
	3.	DEFECT FIX: DEF077215: T_SCN32DR1 fails when using 4GB CF card
		On the FAT32 file system, the root directory can grow which was not taken into account in this
		test.  This caused tests to fail when the root directory extended into a new cluster.  Modified
		the test code to ensure that when creating files, the root directory does not grow in size.
	4.	DEFECT FIX: INC090262: T_FSYS F32test fails on 1G MMC FAT32 Formatted 
		T_FSYS would attempt to auto-detect the type of file system by reading the boot sector, then
		explicitly mount the FAT or FAT32 file systems by name.  This fails, as both the FAT and FAT32 file
		systems share the same object name ("FAT").  Changed to only mount with the name "FAT". In order for
		this (or any) tests to operate correctly on large/FAT32 volumes, you must ensure that the FAT32 file
		system is present in ROM (using the WITH_FAT32 macro).

3.	NicholasC
	1.	DEFECT FIX: DEF082033: USB Mass Storage drivers do not report suspended host machines correctly
	2.	MINOR CHANGE: Remove ARM4 warnings introduced in DEF082033

4.	ParameshwariB
	1.	DEFECT FIX: PDEF087543: RFs::FileSystemName behavior is different from devlib


Version 2.00.1137
==========================
(Made by JohnS, 07/07/2006)

1.	DmitryL
	1.	DEFECT FIX: PDEF087113  Licensee would like up to change the way fat type is calculated.
 
2.	ParameshwariB	
	1.	DEFECT FIX: DEF081323: [AQP] T_SCN32DR3 fails on fat32 formatted 4GB CF card using Lubbock
	2.	DEFECT FIX: DEF076350: [AQP] T_FATCORRUPT fails on 4GB CF card	

3.	YingS
	1.	DEFECT FIX: INC088228 - No way to show the progress of a format operation in ESTART
		Added virtual function ShowFormatProgress() in estart.


Version 2.00.1136
==========================
(Made by GavinT, 23/06/2006)

1.	StefanW		
	1.	DEFECT FIX: DEF087791: CFileMan::Move leaves with KErrPathNotFound if destination path does not exist.

2.	GavinT
	1.	DEFECT FIX: PDEF087663: USB mass storage SCSI mode sense and request sense invalid responses
		Testing for the presence of a single bit in a bit field now uses '&' rather than '=='


Version 2.00.1135
==========================
(Made by JoR, 13/06/2006)

1.	Ranisuneela Motru
	1.	DEFECT FIX: DEF087350: RFs::ErasePassword documentation should indicate the media may need formatting
	Modified in-source documentation as necessary


Version 2.00.1134
==========================
(Made by RobertJ, 08/06/2006)

1.	YingS
	1.	DEFECT FIX: DEF083235 - HAL Attributes (eg screen calibration) lost if the battery 
		is pulled out (Base part)
		Changed TFSStartup::InitialiseHAL() to call halsettings.exe.

2.	GavinT
	1.	DEFECT FIX: INC078251: F32 is wasting RAM for TFileName class members
		Added new class, TParsePool, to manage a pool of TParse objects. As requests
		are made, objects are taken from the pool and returned when no longer needed. 


Version 2.00.1133
==========================
(Made by DjordjeK, 06/06/2006)

1.	AttilaV
	1.	DEFECT FIX: DEF081770: The Loader should verify compression type.


Patch to Version 2.00.1132
==========================
(Made by RobertJ, 02/06/2006)

1.	RobertJ
	1. 	INTERFACE CHANGE: BR1889.1 DEF087365: f32 not compatible bettwen 9.1 & MCL
	2.	DEFECT FIX: DEF087365: f32 not compatible between 9.1 & MCL
		Needed to change def files for BWINS, BX86 & EABI also

Version 2.00.1132
==========================
(Made by DavidM, 26/05/2006)

1.	YingS
	1.	DEFECT FIX: DEF086974 - The fix for DEF074824 is not valid if the local drive mapping file is missing
		Apply same fix code of DEF074824 to function TFSStartup::DetectAndMountFileSystems()

2.	JohnS
	1.	DEFECT FIX:   DEF085952: t_soak1 crash on exit.
		t_soak1 invariably faults and sometimes crashes when run on an LFFS drive. The fault and subsequent 
		crash follow on from detecting a difference in the sizes of the free, close and allocated queues just
		prior to starting the test and just after finishing it. The test has been modified to wait for the
		test threads to complete prior to checking for inbalance - this fixes the fault but masks the crash.
		The crash is fixed by applying a further modification to the file server code that stops the procedure 
		RequestAllocator::OpenSubFailed() from being called twice following on from a leave when opening 
		a file or directory. Such leaves may result from attempts to open files or directories from a thread 
		just as it is dying.

3.	DavidM
	1.	DEFECT FIX: DEF084675: Corrupted miniSD not detected as corrupted by phone 
		Propagated from INC083446. Changed TDrive::CheckMount() so that after three 
		failed attempts at mounting the drive we give up until a media change.

4.	RobertJ
	1. 	INTERFACE CHANGE: BR1889.1 DEF087365: f32 not compatible bettwen 9.1 & MCL
	2.	DEFECT FIX: DEF087365: f32 not compatible between 9.1 & MCL

5.	AttilaV
	1.	Milestone: Argus,GT0286,MS3.2
		Extended EFILE (loader) to recognise and load executable image compressed by Byte Pair algorithm. 


Version 2.00.1131
==========================
(Made by AndreasP, 22/05/2006)

1.	YingS
	1.	DEFECT FIX: DEF085923 - ESTART fails to mount a second filesystem if a primary extension is re-used
		-- if (r==KErrNone)
		++ if (r == KErrNone || r == KErrAlreadyExists)

2.	JohnS
	1.	DEFECT FIX:  DEF085298: RFile::Read crashes H2 board when supplied a negative length
		The negative length parameter on a file read was not being properly trapped for two media types 
		i.e RAM & emulator NAND. This has been fixed.
		
3.	MiguelB
	1.	DEFECT FIX: DEF086407: RFile::Create() does not create the private directory 
		Changed in-source documnetation to emphasise the fact that... "If the resulting path 
		does not exist, then the operation cannot proceed and the function returns an error code."

4.	StefanW		
	1.	DEFECT FIX: DEF073924: CFileMan::Move does not move an empty directory across drives
	2.	DEFECT FIX: INC074828: CFileMan::Move moves content of directory correctly but returns KErrPathNotFound
	3.	DEFECT FIX: INC078759: CFileMan::Move moves directories in wrong way in recursive mode
	4.	DEFECT FIX: INC078800: CFileMan::Move - directory itself moved with content when moving across drives

5.	ParameshwariB
	1.	DEFECT FIX: DEF085241: Mass Storage documentation update


Version 2.00.1130
==========================
(Made by AttilaV, 15/05/2006)

1.	DmitryL
	1.	DEFECT FIX: DEF085946  If Fat32 storage (MMC/SD/HDD) is formatted with a volume label, B_GEN test fails.
		Fixed a problem with FAT cache alignment.
	2.	MINOR_CHANGE: Eshell extended. "Format" command now can accept FAT type specifier(fat12, fat16, fat32) for FAT media; 
		new "DRVINFO" command added that shows information about drives in the system.
	3.	DEFECT FIX: DEF085356  LFFS crashes on manually corrupted image.
		Fixed a problem (only for release build) when LFSS couldn't cope with artificially corrupted image.
		For debug build ASSERT still works.
	4.	MINOR_CHANGE: Added epoc.ini "FlashForceImgMount" parameter support to allow force mounting of LFFS images.


Version 2.00.1129
==========================
(Made by NicholasC, 09/05/2006)

1.	JoR
	1.	DEFECT FIX: DEF083563: Unable to get post intercept for EFsDirReadPacked
		Propagated fix from INC82565
	2.	DEFECT FIX: DEF083523: base_f32: Not possible to get filename, pos and length in RFs::ReadFileSection
		Propagated fix from INC81842
	3. 	DEFECT FIX: DEF083999: Fileserver plugins should not cause completion of RFs::NotifyChange
		Propagated fix from INC82877
	4.	DEFECT FIX: DEF084204: Improve FAT mount performance by increasing FAT cache
		Propagated fix from INC80245

2.	GavinT
	1.	DEFECT FIX: DEF076507: Propagated: ContentAccess::CManager::GetDir sorts files in wrong order
		Changed TKeyDir::Compare() to search from the end rather than the beginning of the filename when
		looking for the extension separator

Version 2.00.1128
==========================
(Made by RichardCo, 04/05/2006)

1.	GavinT
	1.	DEFECT FIX: DEF083998: Envelope icon doesn't stop blinking until phone is rebooted
		Applied fix from INC074134 to TDiskSpaceQue::CheckDiskSpace(TInt64&)

Version 2.00.1127
==========================
(Made by RobertJ, 26/04/2006)

1.	JohnS
	1.	INTERFACE CHANGE: BR1783.2 Change to the error code returned by RFs::AddFileSystem when mass-storage 
		file system already exists. Current (erroneous) value returned is KErrNoMemory - this change is to 
		return KErrAlreadyExists instead.
	2.	DEFECT FIX: DEF079149: File server crash when re-adding MSFS.FSY
		The message completion code was trying to access drive information even when there was no drive. Now 
		the code only tries to access drive information when a drive is present.
	3.	DEFECT FIX: DEF080979: RFs::AddFileSystem, wrong error code when re-adding the mass storage file system
		Adjust the mass storage file system factory function so that if the server thread is running, a pointer 
		to the new file system object is returned in place of a null pointer. The calling code now cleans up 
		the new file system object. 	
	4.	DEFECT FIX: DEF083801: Isetta: "Windows was unable to complete the format" for 256MB MiniSD card
		It is now possible to format cards for FAT32 using the USB Mass Storage Feature and a USB XP Host. The
		fix was to modify CScsiProtocol::HandleReadCapacity() to write the Last Block Address instead of the 
		number of blocks. 
	5.	MINOR_CHANGE: Modify usb-mass-storage-low-level-driver-test-code to 
		write endpoint data correctly.
	6.	MINOR_CHANGE: Add trace information to Mass Storage FileSystem code.

2	NicholasC
	1.	DEFECT FIX: DEF083986: USB mass storage class doesn't detach from Apple MAC/Tiger
	2.	DEFECT FIX: DEF084421: Mass Storage File System manual regression test failures for emulator.

3.	Neilc
	1.	DEF081788: Chinese MMC card name is corrupted during bootup


Version 2.00.1126
==========================
(Made by RobertJ, 11/04/2006)

1.	DmitryL
	1.	DEFECT FIX: DEF071138:  Filesystem error in Thunder.
 	2.	MINOR_CHANGE: Fixed ARMV5 compiler warnings in LFFS code.


Version 2.00.1125
==========================
(Made by VamosA, 27/03/2006)

1.	MaximK
 	1.	DEFECT FIX: DEF082321: Installer - shows blank field if memory stick has no name
 		MountL() functions in both FAT and FAT32 modified to trim trailing whitespace
 		from volume label.
 	2.	DEFECT FIX: DEF082323: New volume label test code in T_FSRV is wrong
 		IsFileSystemFAT32() and IsFileSystemFAT() modified to read BPB.

2.	MiguelB
	1.	DEFECT FIX: DEF083227: FAT: Debug ASSERT is incorrect 		


Version 2.00.1124
==========================
(Made by MarkTa, 20/03/2006)

1.	NicholasC
	1.	DEFECT FIX: DEF082324: Install from memory card - sis file not recognised if stored in root folder o...	
		Pad volume name with spaces instead of NULLs.

2.	YingS
	1.	DEFECT FIX: DEF081515 - RFs::FinalizeDrives() call fails.
		- TInt nDrv = aRequest->DriveNumber(); //-- the number of the drive, requested to be finalised
		+ TInt nDrv = aRequest->Message().Int0(); //-- the number of the drive, requested to be finalised
		-     nRes = SendReceive(EFsFinaliseDrive,TIpcArgs());
		+     nRes = SendReceive(EFsFinaliseDrive,TIpcArgs(i));
	2.	DEFECT FIX: DEF083005 - Opening/closing keyboard when USB File Transfer is being established
		Comment out all iNotifier.Connect() calls.


Version 2.00.1123
==========================
(Made by MichaelP, 14/03/2006)

1.	SushmitaR
	1.	DEFECT FIX: DEF077207 - t_scndr1 test is failing for emulator (winscw). This is a manual f32 test.

2.	MiguelB
	1.	DEFECT FIX: DEF081620 File server crashes under load
		Made CServer2's iSessionQ thread-safe by implemented CServerFs::RunL() and aquiring 
		a mutex whenever (1) a RMessage2::EConnect is received or (2) the disconnect thread 
		deletes a session.
		
3.	AndreasP
	1.	DEFECT FIX: DEF080233 - Drive mapping files broken for H2/H4
		Nandloader now obtains information from all drives numbered within the range of 0 and KMaxDrives.
		The first drive that is of type KPartitionTypeRofs is the first usable ROFS drive which we are interested in.
		If such a drive is not found then Nandloader uses testgui::KDefaultDrive (7) as before. In both cases though
		that value gets overwritten if the -d option has been used to specify a drive number for the NAND area.
	2.	MINOR_CHANGE: Changes to the test framework prior to System Test (India) submission.

4.	JoR
	1.	DEFECT FIX:  DEF076344: B_OPEN fails when using 4GB CF card
		Comparison between disk size and file size now made using TInt64, so that 
		large disk sizes are not interpreted as negative.


Version 2.00.1122
(Made by MaximK, 07/03/2006)
==========================

1.	MichaelMo
	1.	DEFECT FIX: DEF080853 - SS31 File Transfer mode does not resume activity after PC is awakened from 
		sleep mode
		Function HWStart was modified to take a boolean argument to control whether or not 
		ReadAndDiscardData() is called. This was then used to prevent ReadAndDiscardData() after a reset.

	2.	DEFECT FIX: DEF082243 - Mass Storage failure. Bulk Transport handles case badly
		Call to ReadAndDiscardData() was relocated in CBulkOnlyTransport::RunL() to after the transfer is 			complete.

2.	MaximK
	1.	DEFECT FIX: DEF074909: Deadlock scenario possible in F32 plugin architecture.
		Various plugin operations could cause deadlock situations due to recursive I/O.
		Additionally, plugin initialisation occurred in main thread context making it
		impossible to perform file IO at this stage without again causing deadlock.

		   - Plugin initialisation/cleanup now occurs in plugin thread context.
		   - Internal plugin requests (Open/Dismount etc...) are handled in the correct thread.
		   - Synchronous operations (or requests to synchronous drives) that originate (or are
		     dispatched via a plugin thread are now handled in main thread context.
		   - Plugin helper functions (GetName etc..) updated to ensure correct operation.


Version 2.00.1121
(Made by RobertJ, 01/03/2006)
==========================

1.	JoR
	1.	DEFECT FIX: DEF080559: [BLOCKING] EFsFileReplace is not possible to postintercept
		Propagate changes from 9.1/  INC078459
	2.	DEFECT FIX: DEF076086: B_FAT32 fails on 4GB CF card using Lubbock
		Test included a constant value intended to be large enough to return KErrCorrupt
		when it was read from. This was invalid for the 4Gig card and has been altered to
		scale better with card size.

2.	YingS
	1.	DEFECT FIX: DEF079957 - FAT Inefficient name matching when opening files
		Moving these to a single test outside the loop reduced the time to open 500 file from 6.2 seconds to 3 seconds

3.	parameshwarib
	1.	DEFECT FIX: DEF079753 - FAT table cache is not flush before closing, resulting in EFile panic if
		data is
		Added code to flush the FAT table data for bad sector cluster in FAT and FAT32 filesystem.

4.	MichaelMo
	1.	DEFECT FIX: DEF081267 - CFatFileCB::SetSizeL returns KErrTooBig for size greater than 1GB
		Modified function CFatFileCB::CalcSeekIndexSize (used by SetSizeL) to use an unsigned instead of 
		signed integer for it's bit shifting so that sizes upto (2^31)-1 bytes (just under 2GB) are now
		supported.

5.	AttilaV
	1. 	DEFECT FIX: DEF080552 - Menu: System error (-1)' shown, when trying to open Web after phone has 		been communicating with PC using USB


Version 2.00.1120
(Made by CarlosF, 21/02/2006)
==========================

1.	RichardCo
	1.	DEFECT FIX: DEF080218: CrashRead coorupt media on disk full
		FAT implementation does not correctly handle the case where a currently
		zero-length file tries to be extended to more than the available space
		on the disk. Fixed and implemented a test case in B_FAT, and updated
		chkdsk to detect this condition.

2.	JohnS
	1.	DEFECT FIX: DEF078793: RFile::Open fails with KErrPermissionDenied 
		when opening a file in Z:\resource>. 
		The fix relaxes the capabilities rules for RFile::Open. \resource 
		files may now be opened in EFileShareReadersOrWriters|EFileRead access 
		and share mode, without the user having TCB capabilities. 	

 	2.	MINOR_CHANGE: Correct system file access tests in test programs 
 		t_dcdiskadmin, t_dcdiskadminallfiles and t_dcnone.2.	

3.	DavidM
	1.	DEFECT FIX: DEF078946: Time limit for lazy dll unloading should be configurable. 
		Propagate changes from v9.1.

Version 2.00.1119
(Made by NicholasC, 14/02/2006)
==========================

1.	NicholasC
	1.	DEFECT FIX: DEF076092: EFileShareReadersOrWriters handling in TFsFileWrite::DoRequestL() is wrong.
	
2.	YingS
	1.	DEFECT FIX: DEF078788 - Platform Security data caging error in estart.cpp (Base part of fix)
	
3.	MiguelB
	1.	DEFECT FIX: DEF073538: Creation of directories on FAT systems is sub-optimal 
	2.	DEFECT FIX: DEF075820: T_FALSESPACE fails on large drives 

4. 	JoR
	1.	DEFECT FIX: DEF074548: Greater than 2GB storage not supported. - N91
		Propagated from 9.1/ 8.1b.
	2. 	MINOR CHANGE: Add note to comments for RFs::MkDirAll and RFs::MkDir


Version 2.00.1118
(Made by AndreasP, 06/02/2006)
==========================

1.	RobertJ
	1.	DEFECT FIX: DEF079276 - comments for RFile::Write() are incorrect. In-source documentation corrected

2.	AndreasP
	1.	MILESTONE: Intulo GT262, MS3.8 PREQ1085 Flexible device ROM configuration
		BR1725: Change DMedia class to support more than four (>4) partitions on a media device
	
		This adds support to the composite file system for multiple (more then rom and one rofs)
		partitions, and the ability to hide files accross seprate rofs.
	
	2.	DEFECT FIX: DEF068715 - Base overnight test should test Composite FS

3.	MichaelMo
	1.	DEFECT FIX: DEF079645: Write to file fails on WINSCW if file aleady opened for reading.
		In the emulator files are now always opened with Windows for Read and Write (unless not
		possible, i.e. read only files) as the file server will arbitrate access appropriately.

4.	YingS
	1.	DEFECT FIX: INC074894 - MMC app does not refresh its view, when card is unlocked
		Add EFsLockDrive & EFsUnlockDrive in TOperation::NotifyType() so that ENotifyDisk notification can be sent out.


Version 2.00.1117
(Made by RichardCo, 01/02/2006)
==========================

1.	MichaelMo
	1.	DEFECT FIX: DEF078302: ReserveDriveSpace() returns no errors although memory runs out
		ReservDriveSpace() now check to see if the total amount of reserved space requested for 
		a drive exceeds the available free space. If it does then KErrDiskFull is returned.
		F32 test T_FALSESPACE is updated to reflect this change in behaviour.

Version 2.00.1116
(Made by JonCo, 23/01/2006)
==========================

1.	AttilaV
	1.	DEFECT FIX: DEF070648: ESTART.TXT parsing doesn't work with >2 drive flags


Version 2.00.1115
(Made by NeilC, 16/01/2006)
==========================

1.	MiguelB
	1.	MINOR CHANGE: Tidy up f32test\group\wintest.bat 

2.	SushmitaR
	1.	DEFECT FIX: DEF066623 T_CFSSOAK fails

3.	RichardCo
	1.	DEFECT FIX: INC077362: Vulnerabilities in the Loader
		Fix the loader's handling of executables which have an uncompressed size >2GB, or
		a larger dllRefTableCount than there are entries in the file for. Both these cases
		caused the loader to crash, taking down the OS. No security vulnerabilities were
		identified.

4.	NicholasC	
	1.	DEFECT FIX: DEF075112: Locale is loaded after MMC is mounted which causes MMC name corruption

5.	MaximK
	1.	DEFECT FIX: DEF077497 - Wrong memorycard label
		Added code to reload volume label from a volume label file when the volume is being mounted.
		Also created a test case.

6.	DavidM
	1.	DEFECT FIX: DEF077913: FAT driver is not compliant with FAT
		specification for starting with 0xE5 char. 
		Propagate changes from INC073747

Version 2.00.1114
(Made by JenniferH, 12/01/2006)
==========================

1.	MiguelB
	1.	DEFECT FIX: DEF074713 ASSERT not inserted into CFileCB::DemoteShare() as this would crash b_open 
		Ensure CFileShare calls CFileCB::PromoteShare() immediately after it's constructed to prevent
		hitting an ASSERT caused by the CFileShare destructor calling CFileCB::DemoteShare()


Version 2.00.1113
(Made by JonathanM, 04/01/2006)
==========================

1.	MiguelB
	1.	DEFECT FIX: DEF075737: T_FATCORRUPT fails for FAT16 media > 128MB 
		Added code to t_fatcorrupt, in method DoTestUserFormatL() to calculate the sectors per 
		cluster depending on the volume size.
		Changed CFatFormatCB::BadSectorToCluster() so that the code is the same as for FAT16 - 
		Before this the code didn't correctly handle a bad sector occuring in the FAT / root directory.
		
	2.	DEFECT FIX: DEF075841: Danger of heap corruption in the file server request allocator.
		Fixed possibility of heap corruption introduced by fix for DEF073693.

2.	NicholasC	
	1.	DEFECT FIX: DEF070027: TFileMode doc is wrong & ChangeMode operation
	
3.	AndreasP
	1.	DEFECT FIX: DEF065087: Created Time/Date field missing when file/dir is created on the FAT filesystem.
		Two new member variables have been added to struct SFatDirEntry to hold the creation date (iDateC) and time (iTimeC).
		These variables are being updated everytime a directory or file is being created and when a file is being replaced.

Version 2.00.1112
(Made by AttilaV, 12/12/2005)
==========================

1.	YingS
	1.	DEFECT FIX: DEF074291 - Scandrive deletes file if named with Japanese characters
		Seperate ScanDrive from MountDrive; this allows drives to be mounted followed by
		locale loading. Scanning drives after locale is set thus can recognise non-ascii filename.

2.	VincentF
	1.	DEFECT FIX: DEF066537 - T_SCNDR3 and T_SCN32DR3 fail
		Increase stack size to 16k.
		Update tests to cope with data caging.
		Update tests to take into account existence of the f32-tst directory.

3.	DavidM
	1.	DEFECT FIX: DEF073795: DMA is not used in USB file transfer mode
		Propagate changes from INC072172 (v9.1)
	2.	DEFECT FIX: DEF073800: USB data throughput rate in mass storage class mode is too low
		Propagate changes from INC069059 (v9.1)

4.	NicholasC
	1.	DEFECT FIX: DEF073111: Documentation of TFindFile (f32file.h) omits any references to Capabilities

5.	GavinT
	1.	DEFECT FIX: DEF074815: File Server disk space notification doesn't take reserved space into account
		TDiskSpaceQue::CheckDiskSpace() was modified to adjust the amount of free space reported
		by the drive. It now only includes the reserved space on the drive if the session has 
		reserved access. 
		
6.	MiguelB
	1.	DEFECT FIX: DEF075119: FAT32 Scan drive : cluster range incorrect for non-standard root cluster volumes
		For FAT32 volumes with a root directory cluster of something other than 2, the cluster range 
		checking was incorrect.

Version 2.00.1111
(Made by JohnS, 30/11/2005)
=========================

1.	GemaG
	1.	MINOR CHANGE: Test tags added in T_NOTIFY for MS3.8 (Bravo)

2.	MichaelMo
	1.	DEFECT FIX: DEF074429 - RFormat::Open returns KErrNone, even if card is locked.
		Modify FsFormatOpen to check if drive is locked and if so return KErrLocked (previously
		this didn't happen until RFormat::Next was called).
		Modify test t_pwstr to reflect this change and to check for regressions in the future 
		(N.B. this is a manual test as it requires user interaction)


Version 2.00.1110
(Made by YingS, 21/11/2005)
=========================

1.	YingS
	1.	DEFECT FIX: DEF069977 - f32test cannot be built at SEMC
		Reengineered t_fatext and t_fatcorrupt.
		Reorganised code of handling bad blocks on disk in slocal & sfat32.

	2.	DEFECT FIX: DEF073693 - File server incorrectly treats ROM drive as substituted
		Using User::AllocZ() to pre-allocate space for array to guarantee that the whole
		space is cleared and set to zero. By doing this we can promise that no unwanted
		content left.

	3.	MINOR_CHANGE: Fix file server panic
		Add ValidateDriveDoSubst() check in TFsFinaliseDrive::Initialise().

2.	GavinT
	1.	MINOR_CHANGE: Fixed T_OPEN failure
		Test harness modified to only consider the results of TFileOpenScan::NextL()
		for the threads it is interested in.
	2.	DEFECT FIX: DEF072397 - CFileMan::Copy synchronous operation is not synchronous
		Updated API documentation for the TTime parameter to CFileMan::Attribs() as this
		was incorrect. Changed CLocalMount::SetEntryL() to close the handle if the attempt
		to set a file's or directory's timestamps failed.
	3.	DEFECT FIX: DEF062875 - TOpenFileScan::ThreadId() always returns the id of the calling thread
		TThreadId now stored in the CSessionFs when the file is opened.
		T_OPEN modified to incorporate a new test for this defect.


Version 2.00.1109
(Made by MichaelP, 15/11/2005)
=========================

1.	MiguelB
	1.	DEFECT FIX: DEF067976: MR1: Force Erase of MMC lock UI until complete 
		Added a new value (EForceErase=0x400) to enum TFormatMode so that the RFormat
		API can now be used to force erase a locked card. The RFormat::Next() method has
		an asynchronous overload so that now a client can regain control while a forced
		erase is in progress, rather than using the synchronous method RFs::ErasePassword().
		
	2.	DEFECT FIX: DEF072881: Storing MMC password to C drive doesn't work no directory c:\\Sys\\data

2.	JohnS
	1.	DEFECT FIX: DEF067960 - Cannot connect the Mass Storage file system more than once! This
		fix allows the USB Manager to connect the Mass storage file system more than once. It is 
		supposed to be applied together with the solution to DEF066399 a Shortlink defect.	

	2.	DEFECT FIX: DEF068041 - RUsbMassStorage::Connect() isn't very secure. This method now
		checks the server id as well as the server name for the Usb mass storage server.  	

	3. 	MINOR CHANGE: Modify usbmsapp.exe (e32utils/usbmsapp/usbmsapp.cpp) so that the logical 
		device USBC (EUSBC.LDD) gets 'freed' when the application terminates.


3.	YingS
	1.	DEFECT FIX: DEF073107 - Safe remove on PC side does not affect phone
		Add Connect Drive code in CBulkOnlyTransport::HwStart();
		Add Disconnect Drive code in CBulkOnlyTransport::HwStop().

4.	MichaelMo
	1.	DEFECT FIX: DEF072541: Class CRawDiskCB stores bit fields in a TBool
		Declare iFlags as TUint32 instead of TBool

	2.	DEFECT FIX: DEF072539: Identifier 'CMountCB::Locked()' redeclared from TBool to TInt
		Changed declaration in f32fsys.inl to match that in f32fsys.h, return type is now 
		TBool in both files.

	3.	DEFECT FIX: INC071913: RFile.Temp() "mangles" path given to capitals
		Removed call to aName.Uppercase in TDrive::FileTemp.
	
5.	DavidM
	1.	DEFECT FIX: DEF072746 - CFileMan.Move() moves files in wrong way in recursive mode
		Changed so that if the recursive flag is set and the source path is a subset of
		the target path then the directory scan direction should be upward.

6.	VamosA
	1.	DEF070648: ESTART.TXT parsing doesn't work with >2 drive flags


Version 2.00.1108
(Made by MichaelMo, 08/11/2005)
============================

1.	MiguelB
	1.	DEFECT FIX: DEF071735: Scan drive for fat32 should check cluster range
		Renamed CScanDrive::AlreadyUsed() to CScanDrive::AlreadyUsedL()
		Renamed CScanDrive::SetUsed() to CScanDrive::SetUsedL()
		Changed both functions to leave with KErrCorrupt if cluster out of range.

	2.	DEFECT FIX: DEF072510: Dotdot cluster number of directory below root should be null
		Changed code to ensure that the "dotdot" cluster number is zero when the parent
		is the root directory (before the cluster number was 2 for FAT32).

2.	GavinT
	1.	DEFECT FIX: DEF068791: RFs::GetDir(..), Sorting filenames works wrong
		Changed sorting algorithm to use different collation method that considers punctuation

	2.	DEFECT FIX: INC070455: RFile.ChangeMode() panics
		Removed magic number from string length


Version 2.00.1107
============================
(Made by DmitryL, 31/10/2005)

1.	JoR
	1.	DEFECT FIX: DEF068789: Operator new crash in elffs
		Heap allocation in TVolumeMetrics::SetVars has been replaced with stack allocation.


Version 2.00.1106
============================
(Made by MaximK, 25/10/2005)

1.	JoR
	1.	DEFECT FIX: DEF070658: LFFS: CorrectStatusBitPairs does not check CRC before using address from LEP
		Fix propagated from DEF064943. In slffs_log.cpp:
		Change code in ReadEntry to check that SegmentFromLEP returns a value within bounds before using it to index iL2PTable.
		Change code in ReadEntry to check whether a CRC failure is due only to incomplete write and if so, correct it and repeat the check.

	2.	DEFECT FIX: DEF070659: LFFS "FIXME" hit during soak testing
		Fix propagated from DEF065216. 
		
2.	MiguelB
	1.	MINOR_CHANGE: Changed T_DSPACE to work with large cluster sizes
	2.	DEFECT FIX: DEF071696: KErrCorrupt on Scan Drive
		Problem was that full drives were regarded as corrupt by Scan Drive dur to an invalid ASSERT.
	3.	DEFECT FIX: DEF071326: B_FAT & B_FAT32 Panic Target with FAT32 enabled 
		Removed incorrect ASSERT.
	
3.	MaximK
	1.	DEFECT FIX: DEF071517 - It's hard (impossible?) to diagnose data caging problems in hardware.
		Added a function to append the filename to the message.

4.	MichaelMo
	1.	DEFECT FIX: DEF067962: CFileMan::Move completes with KErrNone and deletes the source file in error
		Fixes issues where CFileMan::Move could cause data loss and where CFileMan::Move behaviour was not 
		consistent with documentation. See defects linked to by INC066181 (propogated from) for more info.

Version 2.00.1105
============================
(Made by RobertJ, 13/10/2005)

1.	AndrewHi
	1.	DEF070637: CCompMountCB::IsFileInRom implemented inconsistently with CCompMountCB::EntryL
		Modified method CCompMountCB::IsFileInRom to return immediately if IsFileInRom returns a NULL value
		for the primary file system, rather than then invoking the function of the same name for the secondary
		file system as a check.
		
2.	MiguelB
	1.	DEF068763 - Hotswap, FileManager: Phone freezes with "Put the disk back or data will be lost 
		In order to avoid potential deadlock conditions (such as when SysApp responds to a media change 
		while the 'Put disk back' dialog is active etc...) the file server has been modified to:
		(a) - Defer issuing media change notifiers while the dialog is active (this prevents clients 
		from responding to the media change and issuing excessive requests to a blocked drive).
		(b) - Reject any requests immediately with KErrNotReady while the notifier is active.
	2.	DEF070935 - B_FAT test fails on 2 GB SD cards 
		Test failed because of heap overflow and taking too long.

3.	JonathanM
	1.	MINOR_CHANGE: Fixed race-condition in unit test T_HANDSHARE. (Added Sync() command to test server.)

Version 2.00.1104
============================
(Made by JenniferH, 11/10/2005)

1.	YingS
	1.	DEFECT FIX: DEF067961 - USB CF - Mass Storage Class interface (Reported by USB CF)
		Change code of handling GetMaxLun and Reset commands to be compliant with specification.
		Change code of checking invalid CBW and handling this event to be compliant with specification.
		Change code of processing standard cases 11 & 13 to be compliant with specification.
		Change code of processing scsi commands (Inquiry & RequestSense) to be compliant with specification.
		Modify USB test Ldd code in \e32utils and mass storage tests in \f32test to reflect changes in USB mass storage.


Version 2.00.1103
============================
(Made by GavinT, 05/10/2005)
		
1.	MiguelB
	1.	DEFECT FIX: DEF065773: Use macros defined in RemovableFeatures.iby to exclude MMC & USB from ROM 
		Defect re-opened to exclude USB mass storage file system (msfs.fsy) from ROMs 
		if SYMBIAN_EXCLUDE_USB defined.
	2.	DEFECT FIX: DEF068047: Ejecting SD Card while deleting files causes crash 
		Removed all calls to TDrive::Dismount() from the TDriver class to remove a circular
		dependency : CFatMountCB calls TDriver which calls TDrive which can delete CFatMountCB.
	3.	DEFECT FIX: DEF068235: Formatting SD card with MBR can result in a bad format. 
		Formatting an MMC card may result in an MBR (Master Boot Record) being written
		which is different from the one originally on the card. This means that the
		partition may change size or position. We now force a remount of the drive before
		writing the boot sector.


Version 2.00.1102
============================
(Made by AnatolyP, 26/09/2005)
		
1.	MiguelB
	1.	DEFECT FIX: DEF068833 : Fat32 uses both Hi and Low 16 bit sections of a dir entry on fat16 volumes 
		Created a StartCluster() function in the CFatMount Class that takes a dir entry, 
		this then detects if the volume is fat32 or not and masks out the top 16bits of 
		the start cluster number.
	

2.	YingS
	1.	MINOR CHANGE: Correctify RFS::SetSubst() in-source document, modifying capability description:
		  @capability DiskAdmin
		  @capability Dependent If aPath is /Sys then Tcb capability is required.
		  @capability Dependent If aPath begins with /Private and does not match this process' SID then AllFiles capability is required.

3.	DmitryL
	1.	Fix for INC067968: RFs.MkDir() returns KErrAlreadyExists.
		File server now checks the client's descriptor length on MkDir operation. t_fnames test extended to test this particular case.
		Fixed several Armv5 warnings in file server.


Version 2.00.1101
===========================
(Made by RichardCo, 21/09/2005)

1.  DmitryL
    1.  DEFECT FIX: DEF068026 FAT drives not scanned when file system is mounted even if they were not finalised.
        DEFECT FIX: DEF068024  FAT32 drives are not scanned even if they were finalised.

        Introduced support for FAT16 and FAT32 "volume clean shutdown" flag, ScanDrive now will scan dirty volumes on mount.
        FinaliseDrives() now works correctly, finaly putting them into ReadOnly mode and setting "volume clean shutdown" flag if it is possible.
        This feature is now turned OFF, because turning it ON is a behaviour break, see BR.1649

    2.  MINOR_CHANGE: Introduced new f32.mmh file, which is now included into all *.mmp files for F32 component.
        Macro SCANNING_UNFINALISED_FAT_DRIVES_ENABLED in this file controls drives finalisation and ScanDrive running on startup.

    3.  MINOR_CHANGE: Fixed unsafe code in tests: t_dcallfiles, t_dcnone, t_dctcb, t_dctcballfiles

2.	MaximK
	1.	DEFECT FIX: DEF067980: TFileText corrupts the stack if it has to swap bytes.
		Modified parameters in the call to SwapWords() from TFileText::FillBuffer().


Version 2.00.1100
===========================
(Made by AndreasP, 14/09/2005)

1.	GavinT
	1.	DEFECT FIX: DEF068060: Memory card's password store is located in old insecure location
		Changed KMediaPWrd to place the password file in C:\sys\data.
		Test harness T_PWSTR modified accordingly to verify that the mmcstore file does indeed
		get written to this new location.

2.	YingS
	1.	DEFECT FIX: DEF068040 - USBCommandVerifier's [Stress] Enumeration test fails on mass storage mode
		Have to response MSC reset command after reset behaviour. Send back zero-length status packet to
		confirm reset completion. Correct code of checking MSC packet format which not compliant with
		standard.
	2.	DEFECT FIX: DEF063789 - Make T_FATEXT more generic
	3.	DEFECT FIX: DEF068054 - Usb mass storage: criticle section enter and leave don't match
		Add 'iCritSec.Wait();' in CMassStorageDrive::SetMountConnected() in drivemanager.inl 
	4.	MINOR CHANGE: Fix T_FATCORRUPT test failure in emulator

3.	DmitryL
	1.	DEFECT FIX: DEF067965: [PSAudit] Unallocated data initialization vulnerability in RFile.
		RamDrive memory gets zero-filled on shinking and expanding cluster chain.  CRamFatTable::AllocateSingleClusterL(),
		CRamFatTable::ExtendClusterListL() and  CRamFatTable::FreeClusterListL() now clean memory by zero-filling it.
		Also ERamDrive type of memory chunk gets cleaned on memory commit for multiple and moving memory models.


Version 2.00.1023
===========================
(Made by YingS, 05/09/2005)

1.	MaximK
	1.	DEFECT FIX: DEF061458: LFFS allows file entries to be accessed as directory entries.
		Added a number of extra checks, also created a test case.


Version 2.00.1022
===========================
(Made by MichaelMo, 31/08/2005)

1.	AndreasP
	1.	DEFECT FIX: DEF066454 T_RESIZE test does not run on H2/H4 boards.
		T_RESIZE was made platform independant and automated (uses t_main.cpp).

2.	RichardCo
	1.	MILESTONE: Intulo GT262, MS3.3.1 PREQ1032 VFP detection support for Software Install use
		Provide HAL attribute indicating whether VFP is supported by the current platform, and
		extend RLibrary::GetInfoFromHeader to return VFP-ness of a binary.

3.	MiguelB
	1.	DEFECT FIX: DEF067360: Running ScanDrive on a Full64MB SD Card causes crash
 		An array created in CScanDrive::ConstructL() was out by one due to a
 		rounding error.


Version 2.00.1021
===========================
(Made by MichaelP, 17/08/2005)

1.	DmitryL
	1.	DEFECT FIX: DEF065286 Can not build scandrive debug binaries.
		CScanDrive::ReadFatL() method has been made constant, this has fixed the problem.

	2.	DEFECT FIX: INC062399: NTT - Long directory name crashs a program in the RDir::Open() operation.
		Fixed the elocal.fsy to correctly handle the situation with zero-terminating filenames of 256
        	symbol length.
    		Added a test step to the T_FNames to check this particular case.

2.	MiguelB
	1.	DEFECT FIX: DEF066252: Mounting a file system extension over a failed media driver causes a fault
		If a media driver fails to load, any attempt to mount a file system extension triggers an ASSERT.
		Fixed by checking the media driver before mounting the extension.

3.	MaximK
	1.	CHANGE REQUEST: AHIN-6D4M3C - SSR Nand driver: deprecation in Mike (9.1)
		Parts of SSR Nand driver marked as deprecated.

4.	RichardCo
	1.	DEFECT FIX: DEF066544: First file in ROFS is always corrupt
		ROFS images with few files in can return invalid data for files whose contents start in the first
		1024 bytes of the image. Fixed the ROFS block cache to not mistakenly return uninitialised cache
		entries when data is requested.
	2.	DEFECT FIX: DEF066626: ESTART executable not configurable on emulator
		Add a new optional epoc.ini setting, "EStart", to choose which executable
		the fileserver will launch (defaulting to the current e32strt.exe).

5.	YingS
	1.	DEFECT FIX: DEF065961 - ESTART panic catgories are too long
	2.	DEFECT FIX: DEF066216 - Formatting from the command line with the /S option causes a panic


Version 2.00.1020
===========================
(Made by MaximK 05/08/2005)

1.	MiguelB	
	1.	DEFECT FIX: DEF060393 - RFs::MountFileSystemAndScan() passes garbage IPC arg to DoMountFsInitialise() 
		RFs::MountFileSystemAndScan() now defaults to mount the drive as concurrent (asynchronous).
		RFs::SwapFileSystem() now gets the concurrent status from the old mount and copies it to the new.

2.	CarlosF
	1.	DEFECT FIX: DEF063795: T_SCN32DR1 and T_FATCORRUPT fail on NAND/SSR FAT drives
		RFs::MountFileSystemAndScan now has the option of also mounting an extension.

3.	YingS
	1)	DEFECT FIX: DEF063771 - RFs::CheckDisk incorrectly reports disks with clusters marked bad as corrupt
		Modify code of CFatMountCB::CheckUnvisitedClustersL() to exclude bad cluster marker value from
		EFatChkDskBadCluster report.
	2)	DEFECT FIX: INC065877 - TFindFile could be more stack efficient?
		Two TFileName objects in TFindFile::DoFindNextInDriveList() are replaced
		with TPtrC objects thus save near 1k bytes stack space.
	3)	DEFECT FIX: Fix according to DEF047896 - Replace non-Ascii characters with hex equivalents
	4)	DEFECT FIX: INC065890 - CFileMan uses too much stack
		Reengineer code, replace TFileName object with TPtrC.
	5)	DEFECT FIX: DEF066406 - f32 test t_scn32dr1 fails when built on machines with japanese windows.

4.	StefanW
	1)	MINOR_CHANGE: Update T_PWSTR to obtain the CID from the TBusLocalDriveCapsV5 serial number
		Running this test is somewhat difficult, as the CID of each card being tested must be obtained
		and the test rebuilt. CR-APOS-65YC4H introduced serial numbers into local drive caps, 
		which the test now uses to obtain the CID. Also added simple attempt to locate the first MMC drive.

5.	RichardCo
	1)	DEFECT FIX: DEF062293: RFs::Entry and RFile::Open return wrong error code on NAND
		Make composite FS return the correct error code in all cases when
		file/path is not found.

Version 2.00.1019
===========================
(Made by JohnS, 21/07/2005)

1.	StefanW
	1)	DEFECT FIX: DEF064100 - RRawDisk capability documentation error
		RRawDisk::Open, RRawDisk::Read and RRawDisk::Write were incorrectly documented as requiring
		DiskAdmin capabilities, where in fact TCB is required.

	2)	DEFECT FIX: DEF057519 - RFs::ForceRemount does not return an error code
		Modified TBusLocalDrive::ForceRemount to return any error returned by the corresponding
		call to RLocalDrive::ForceRemount. Additionally, a call to ::CheckMount is made to determine 
		if a the forced remount was successful.

	3)	DEFECT FIX: INC063197 - EKA2: MMC & SD: Errors in lock unlock functionality.
		 - Modified TBusLocalDrive functionality to ensure that the mount status is retained correctly.
		 - Modified MMC media driver to allow a locked partition to be mounted.
		 - Updated T_PWSTR tests to include all test cases supported by the EKA1 version.
		 - Fixed problem in emulator which prevented the emulated MMC card from being removed.
		   (F5+F4 key combination now cycles between Card1, Card2 and No Card as it does in EKA1)

	4)	DEFECT FIX: INC063392 - File sharing in the file server is critically deficient.
		The existing file share modes (EFileShareExclusive, EFileShareReadersOnly and EFileShareAny)
		do not provide enough flexibility for clients that simply read from a file and do not care if 
		the file has been (or will be) opened for writing.  Currently, if a client fails to open	
		with the EFileShareAny share mode, then they must subsequently attempt to open a second time with 
		EFileShareReadersOnly to gain access.  Failure to do so	(particularly since the introduction of file 
		handle sharing) may lead to problems that are not uncovered until late in the testing cycle.

		To resolve this issue, a new file share mode has been added: EFileShareReadersOrWriters.  This
		share mode is compatible with both EFileShareReadersOnly and EFileShareExclusive.  A client
		opening a file in this share mode can make no assumptions as to 'real' share mode of the file
		as a second client may subsequently open in either compatible mode - after which point the
		share mode of the file is effectively promoted to the new mode.

	5)	DEFECT FIX: INC064062 - F32 heap is occupies too much ram.
		Recent changes to the file server request allocator caused all request types to hold a source and
		destination path - this includes the default disconnect request which forms part of each session.
		Reworking the layout of the internal request classes reduces the default size of a session by 1K.
		Additionally, saved an additional 176 bytes by replacing the infrequently used 'reserved access'
		arrays (CSessionFs::iReserved, CSessionFs::iReservedAccess) with a simple RArray.

	6)	CHANGE REQUEST: APOS-6CKBXL - Differentiation between reaching EOF or overrunning writer needed for progressive download use case. 
		The current implementation of the asynchronous RFile::Read API's would complete immediately even
		if all the requested data is not available. The progressive download use case requires a new mode
		of operation where the request is not completed until a writer process has written enough data to
		the file to complete the request. 

		This new functionality is enabled by opening the file using the EFileReadAsyncAll access mode.
		(Without specifying this mode, the original behaviour of the API is maintained)

		This new file mode is incompatible with the EFileShareExclusive and EFileShareReadersOnly share
		modes, as a file opened in either of these two share modes prevents a writing process from writing 
		to the file and completing the request.  Hence, any client expecting to perform an asynchronous read 
		using the new access mode must open the file with EFileShareAny or EFileShareReadersOrWriters.

		Two additional RFile API's have been added to allow the outstanding asynchronous request to be cancelled:
			void RFile::ReadCancel(TRequestStatus& aStatus) const;	(cancels the specified async read)
			void RFile::ReadCancel() const;				(cancels all outstanding async reads)

	7)	DEFECT FIX: DEF065220 - File Server Panics when MMC Card removed during scandrive boot.
		Removing an MMC card while scandrive is running causes a double deletion FAT mount objects.
		Corrected by modifying CFatMountCB::ScanDrive() to increment the FAT mount resource count while
		scandrive is active to ensure that the media change handler doesn't destroy the mount.

	8)	DEFECT FIX: DEF065367 - B_OPEN crashes Lubbock.
		Reworked CFileCB::InitL to ensure that a failure to allocate memory for the folded file name
		or body class doesn't result in the mount being closed prematurely.
		
2.	MiguelB
	1.	DEFECT FIX: DEF063081 - Add documentation on  RFile ::AdoptFromClient & other similar api's.
		Updated in source documentation and "Base_How_To_Share_File_Handles.doc" to emphasize the need 
		to call RFs::ShareProtected() before transferring a file handle. 

Version 2.00.1018
===========================
(Made by JonathanM, 13/07/2005)

1.	JonathanM
	1.	DEFECT FIX: DEF063060 - Mass Storage P&S uses insecure depreciated API's
		INTERFACE CHANGE: BR1569.1 Change P&S Category to be the SID of the file server process.
		This changes the value of KUsbMsDriveState_Category to be equal to the File Servers Secure ID.
		This is the property category used by USB Mass Storage to publish state changes.

Version 2.00.1017
=================
(Made by OlegI, 11/07/2005)

1.	RichardCo
	1.	DEFECT FIX: DEF063872: RProcess::Create does not support being passed "z:MyProg.exe"
		Fix emulator's path parsing to be able to deal with the case where no
		path is given, only the drive letter and filename. It will now load
		the executable from \sys\bin on that drive.


Version 2.00.1016
=================
(Made by DjordjeK 05/07/2005)

1.	MaximK
	1)	DEFECT FIX: DEF057864 - T_NandDrv acceptance test assumes that the nand user area is drive 6.
		Added a function to search for the drive.
	2)	DEFECT FIX: DEF062867 - T_NandDrv acceptance test fails due to incorrect DriveCaps.iMediaAtt.
		Test condition corrected.
	3)	DEF054953 - Locking when using RAM drive
		All locks removed.

2.	AnatolyP
	1)	DEFECT FIX: DEF063887: Chkdeps command of EShell application doesn't work with compressed files.
		Decompression possibilities are added to the EShell application by including 
		f32\sfile\sf_inflate.cpp and f32\sfile\sf_decomp.cpp files into project. Function 
		GetImportDataL was modified to consider possible file compression. Also this function 
		was splitted into 2 parts to facilitate code understanding. To parse file name of dependencies, 
		I've included TFileName class from efile project into Eshell project (by copy&paste). 

3.	MichaelMo
	1)	DEFECT FIX: DEF060782 - USB Mass Storage is not immediately recognised by Win2K
		Fix is to ensure that media is set to changed when mass storage filesystem is mounted.
	
	2)	DEFECT FIX: DEF061453 - MAC OS doesn't recognize Symbian USB Mass Storage device
		Windows and OS X differ in their interpretation of the 'Prevent Media Removal' command, specifically 
		OS X interprets acceptance of this command as meaning a device is not removable and therefore stops 
		polling for it. The fix is therefore to remove support for this command, which forces OS X to treat 
		the media as removable and has no adverse affect under windows. A commented out #define is provided 
		in scsiprot.cpp should this need to be re-enabled for any reason.
	
	3)	MINOR CHANGE: Enable ControlIO support in CMassStorageMountCB (debug builds only)
	
	4)	MINOR CHANGE: Add commented out #define for enabling mass storage debugging in massstoragedebug.h
	
	5)	MINOR CHANGE: Changes to F32 Mass Storage Tests to reflect changes in behaviour caused by fixes for the following defects:
			DEF060782 - USB Mass Storage is not immediately recognised by Win2K.
			DEF061453 - MAC OS doesn't recognize Symbian USB Mass Storage device.


Version 2.00.1015
=================
(Made by RobertJ 27/06/2005)

1,	YingS
	1)	DEFECT FIX: BR1559.1 DEF059968: Potential exploit using RFs::Subst()
		Added DiskAdmin capability requirement when calling RFs::SetSubst()

2.	RichardCo
	1)	DEFECT FIX: DEF063639: No def file exported from basedomain
		Export domainpolicyu.def so that it can be used by implementors of
		domain policies to ensure the correct DLL ordinals.


Version 2.00.1014
=================
(Made by AndrewHi 23/06/2005)

1.	Jeremys
	1)	DEFECT FIX: DEF061544: T_scndr1 appears to fail on 9.1
		Fix test code so it copes with the memory for the fat buffer not being aligned on a 32-bit
		boundary.

2.	YingS
	1)	DEFECT FIX: DEF062026: GetStartupMode() needs access to the file server
		Add another function GetStartupModeFromFile(). Estart calls this function after FS initialisation
		when access FS to get startup mode is needed. Default base version returns KErrNotSupported.
		Licensees should derive this function to provide their own method of getting startup mode from
		FS and make it return KErrNone when succeed. New startup mode value will update the property.

	2)	DEFECT FIX: DEF062411  SS Lowering the priority of the loader thread == a large performance improvement
		  Added new API RFs::SetStartupConfiguration(TInt aCommand,TAny* aParam1,TAny* aParam2=0). This function
		  can be called from estart only. To change loader priority, licensee should put similar code in their
		  estart as below:

		    r = rfs.SetStartupConfiguration(ELoaderPriority, (TAny*)EPriorityAbsoluteBackground);
		    if (r != KErrNone)
		        User::Panic(_L("SetStartupConfiguration error"), r);

		  NOTE ALSO: Licensee should add following two lines in their estart.mmp file to build:
		    LIBRARY EFSRV.LIB
		    UID    0 0x10272C04

	3)	DEFECT FIX: DEF063539 - Eshell panics if keypad is stuck
		Correctify command length check.

3.	AnatolyP
	1) 	DEFECT FIX: DEF063557: Xrepro and debug commands of EShell application refer to absent executables
		This defect is a part of DEF049934: Some text shell built in functions broken.
		In EShell application Xrepro command is not supported anymore because it was used to run a reflashing program for the series 5, so now it is obsolet.
		Debug command of EShell runs gdbstub for on-target debugging, and this is not present by default. 
		Now superfluous commands deleted from EShell. 
	
	2)	DEFECT FIX: DEF063558: Filenames of <3 characters are considered as invalid by EShell application	
		This defect is a part of DEF049934: Some text shell built in functions broken.
		Some commands of EShell application(SetSize, Gobble and VNAME) consider short filenames (1 or 2 characters) to be invalid and do not process files with such names. 
		Now superfluous filename limitation removed

4.	Dennis
	1)	Minor change:	Rename TLoaderHeapFunction to TLoaderDebugFunction and remove redundant entries.
						Move EFsCancelLazyDllUnloading to TLoaderDebugFunction and rename it to ELoaderDebug_CancelLazyUnload.


Version 2.00.1013
=================
(Made by JenniferH 14/06/2005)

1.	StefanW
	1)	DEFECT FIX: DEF062095 - File server perfomance of syncronous drives improved by avoiding lock.
		Modified CFsMessageRequest::Dispatch() to prevent locking if the drive is synchronous.  Locking
		was unnecessary, as the synch drive flag is never modified within a drive thread.

	2)	DEFECT FIX: INC061006  NTT Applications are not closed when MMC card is hotswapped.
		The peripheral bus controller returned the incorrect error code when the media is not present.
		This has been corrected to return EMediaNotPresent.  Additionally, the state machine has been 
		optimised to prevent the card from being continuously powered up if no card is present - this 
		should reduce boot time on systems that provide no card detect mechanism.

	3)	MINOR CHANGE: Added MMC media change test T_MEDCH.EXE and associated driver D_MEDCH.LDD

	4)	DEFECT FIX: DEF062805 - Malicious client can fault f32.  Passing an invalid mode argument
		to the RFs::NotifyDismount could fault the file server - Now returns KErrArgument.

	5)	DEFECT FIX: DEF062987 - USB Mass Storage does not fully support the SCSI VERIFY(10) command.
		The VERIFY(10) packet contains a BYTCHK bit that specifies wether the verify operation should
		only read from the media (BYTCHK==0) or compare with the data supplied by the host (BYTCHK==1).
		Mass Storage ignores the BYTCHK==0 case, which prevents disk utility tools such as ScanDisk 
		from being able to identify and mark bad blocks on the media. This is now supported correctly.

2.	RichardCo
	1)	DEFECT FIX: DEF057037: No way to protect against bad session handles being passed
		RFile::AdoptXxx methods use the new secure version of RSessionBase::Open to ensure that the
		session they are adopting is really a file server session.

3.	Jeremys
	1)	DEFECT FIX: DEF061544: T_scndr1 appears to fail on 9.1

		Fix test code so it copes with the memory for the fat buffer not being aligned on a 32-bit
		boundary.

Version 2.00.1012
=================
(Made by Carlosf 06/06/2005)

1.	MaximK
	1)	DEFECT FIX: DEF059964 - file server ChangeMode() should be policed server-side.
		Server-side code modified (sf_file.cpp: TFsFileChangeMode::DoRequestL()) and 
		a test case added (t_file.cpp: testMiscellaneousReportedBugs()).

2.	YingS
	1)	DEFECT FIX: DEF062545 - Potential risk of corrupt file system in T_FATCORRUPT


Version 2.00.1011
=================
(Made by MichaelMo 01/06/2005)

1.	YingS
	1)	CHANGE REQUEST: JHAS-68YPX7 System, GT0223 Mike Base, Implement PREQ1163 "Limited support for hard disks as secondary storage" in Mike.
		Interface Change: BR1543.1 - Peripherals: Add GetLastErrorInfo API to CProxyDrive

		Extends FAT and FAT32 filesystems to support bad cluster marking (where possible) when reading, writing and formatting. Adds new API 				GetLastErrorInfo to extract information about bad sectors encountered during reads/writes from the media driver (needs support from any 			future hard disk media driver). Extends formatting API's to allow for user specified parameters (FAT type and cluster size).

		
Version 2.00.1010
=================
(Made by RichardCo 26/05/2005)

1.	JonatanM
	1)	MINOR_CHANGE: Modified T_FALSESPACE test so that it doesn't run on drive K: if 'TESTFAST' mode
		is set. (This is to speed up automated testing.)
2.	StefanW
	1)	DEFECT FIX: DEF061457 - LFFS - LffsDir::readEntry can access deleted directory entries causing panic. 
		Deleting the current directory would result in a panic due to LFFS accessing an inode now marked as
		unused.  TLffsDir::ReadEntry corrected to catch this case and search for the next valid entry.

	2)	DEFECT FIX: DEF059352 - Mass Storage P&S does not operate as stated in the design doc when ejecting MMC
		Unrelated to card ejection, when stopping the Mass Storage device from the host the controller would
		immediately enter the Disconnected state without passing the Disconnecting state.

	3)	DEFECT FIX: DEF060781 - USB Mass Storage - Synchronous notification in the file server
		It is not possible to mount the Mass Storage FSY while applications/servers have files open on the
		drive.  In order to facilitate a safe and clean dismount of the file system, a notification mechanism
		is required to inform clients that the file system is about to be dismounted.  This is acheived using 
		the following new File Server API's:

		IMPORT_C void NotifyDismount(TInt aDrive, TRequestStatus& aStat, TNotifyDismountMode aMode) const;
		IMPORT_C void NotifyDismountCancel(TRequestStatus& aStat) const;
		IMPORT_C void NotifyDismountCancel() const;
		IMPORT_C TInt AllowDismount(TInt aDrive) const;

	4)	DEFECT FIX: DEF061078 - Inefficiency in LFFS file system.
		The LFFS logical to physical sector lookup was very inefficient, involving a search through the
		segment list.  This has been optimised by modifying the lookup table to contain segment pointers.

	5)	DEFECT FIX: DEF061757 - Missing in-source comment for two new constants in F32.
		Added in source documentation for KPluginAutoAttach and KPluginAutoLocate.

	6)	DEFECT FIX: DEF061243 - Closing RRawDisk session doesn't remount filesystem.
		Modified RRawDisk to ensure that the mount is remounted if the contents of the drive has changed.

3.	YingS
	1)	DEFECT FIX: DEF061834 - RFile Seek performance Improvement
		In ESeekStart case, directly return after pos set instead of copying pos back to parameter which is only
		waste time.

	2)	DEFECT FIX: DEF059965: Loader & FS policing of add FS / add extension ineffective
		  Add DiskAdmin permission check in ELoadFileSystem and ELoadExtension cases of file loader ServiceL() function.
		  Add SID=f32 check in TFsAddExtension & TFsAddFileSystem, remove old check in TFsAddFileSystem.
		  Add DiskAdmin permission check in TFsRemoveExtension & TFsDismountExtension. 

4.	RobertJ
	1)	PREQ563 MS3.4.2 Lazy dll unloading

5.	AnatolyP
	1)	DEF061344: In text shell pagination for help screens/ dir etc. is broken(part of DEF049934)
		The problem occured when some text had to be wrapped to fit the screen. In this case eshell automatically scrolled the text even when pagination was requested, and user couldn't see scrolled part of text. To resolve the problem, a new function is added which considers the line wrapping. The list of functions is modified to use this function instead of Console::Printf. Affected commands are:
		   - Help
		   - Dir
		   - Attrib
		   - Hexdump
		   - Tree	
		   - Type	
		   - Ps ( with all subcommands ) 
 		Dir function is also modified to support proper alignment of text into columns when called with /w switch.


Version 2.00.1009
=================
(Made by StefanW 17/05/2005)

1.	AnatolyP
	1)	Defect Fix: DEF061239: Help for the Trace command of text shell is not complete (part of DEF049934).
	
2.	MiguelB
	1)	Defect Fix: DEF058337 - Rugged file system not rugged enough when growing FAT directories

3.	MichaelMo
	1)	Defect Fix: DEF057360: Add new EKA2 emulator property to disable the System Starter

Version 2.00.1008
=================
(Made by Kamran 12/05/2005)

1.	Kamran
	1)	MILESTONE: Yankee,GT0223,MS3.4.1 PREQ473 Generic fileserver hooks
		Note: this included addition of t_virus test to f32tests	

Version 2.00.1007
=================
(Made by MiguelB, 03/05/2005)

1.	JoR
	1)	Defect Fix: DEF058458: LFFS: defects building logical->physical mapping on mounting
2.	JohnS
	1)	Milestone: GT0236, MS3.7 - Engineering Change Macro Removal


Version 2.00.1006
=================
(Made by JonathanM, 26/04/2005)

1.	JonathanM
	1)	MINOR CHANGE: Removed obsolete F32TESTs (those checking DLL linkage in different directories)
		
Version 2.00.1005
=================
(Made by JasmineS, 19/04/2005)

1.	RichardCo
	1) Defect Fix: DEF059487 - EStart doesn't restore the timezone settings correctly after a system restart

2.	PeterS
	1) Defect Fix: DEF059050 - F32 client and FSY APIs are not future proofed.

	Added reserved member data to the following 'publishedAll' classes: TEntry, TDriveInfo, TVolumeInfo, TFindFile.
	
	Added the new virtual function GetInterface() which returns an interface extension to the following
	'publishedPartner' classes: CMountCB, CFileCB, CDirCB, CFormatCB, CFileSystem, CProxyDrive, CBaseExtProxyDrive.
	Added a new machine word of reserved member data to the following 'publishedPartner' classes: CFileCB, CDirCB,
	CFormatCB, CFileSystem, CProxyDrive.
	Added a new leaving function in the creation path of CMountCB - CMountCB::InitL().
	Added a destructor to CProxyDrive.
	
	2) INTERFACE CHANGE: BR1375 "Changes to make FSY API more future proof". (as part of fix for DEF059050).
	This will affect all FSY components - which need to be rebuilt after this change. 
	
	3) INTERFACE CHANGE: BR1468 "Changes to make F32 client APIs more future proof". (as part of fix for DEF059050).
	ALL COMPONENTS USING TEntry, TDriveInfo, TVolumeInfo OR TFindFile NEED TO BE REBUILT AFTER THIS CHANGE.

3.	JeremyS
	1) CR PHAR-6B8GSS - Add RFile::FullName API (Development CR)

4.	RobertJ
	1)	PREQ563 MS3.4.1 MatchF Removal

Version 2.00.1004
================
(Made by Jeremy Smithers, 12/04/2005)

1.	JonathanM
	MINOR CHANGE: Added new option to RUNTESTS.
		Specifying -st will cause the time taken for each test to be shown (if the test passes).
		Example output: "RUNTESTS: Test MY_TEST.EXE OK - Seconds Taken: 234"
	MINOR CHANGE: Made RUNTESTS output a linefeed before any TIMEOUT message (to help log parsing)

2.	MiguelB
	1)	Defect Fix: DEF058817 - File server panics if the NAND media driver fails to load.
	2)	Defect Fix: DEF058681 - Mass Storage reports VolumeName incorrectly

3.	MichaelMo
	1)	DEFECT FIX: DEF058075 - Inefficient stack usage in FAT filesystem can result in stack overflow

4.	StefanW
	1)	DEFECT FIX: DEF059046 - LFFS tests fail with RVCT2.2
					Code reworked to avoid an RVCT2.2 bug causing problems within LFFS Entry code.

Version 2.00.1003
================
(Made by Kamran, 01/04/2005)

1.  JoR
	1)	Minor Change: Backing out changes in etshell/ts_com.cpp and wins/specific/mmc.cpp which were made for test purposes only
	2)	Minor Change: Fixing f23/smassstorage/drivemanager.cpp to check return values of RProperty::Attach correctly

2.  MaximK
	1)	Defect Fix: DEF056007 - ~RUsbMassStorage()
	
3.  MiguelB
	1)	Defect Fix: INC055996 - Add overloads of CFileMan functions that take a source RFile parameter 
	2)	Defect Fix: DEF058234 - RFile::Adopt() should not panic if given an invalid file handle 

Version 2.00.1002
=================
(Made by MichaelP, 22/03/2005)

1.	YingS
	1)	Defect Fix: DEF056488 - Fat caching scheme on EKA2 is not safe
	2)	Defect Fix: INC054580 - NTT Renaming sys folder on C: on H2 allows user to access sys files
	3)	Defect Fix: DEF057668 - ESHELL.EXE panics (USER PANINC 11) when "Copy " is used without arguments

2.	MaximK
	1)	Defect Fix: DEF055797 - Pointless drive letter checking in TDrive::LocateFile

3.	JoR
	1)	Defect Fix: DEF057517 	FAT causes drive unmounting and remounting after running scanDrive


Version 2.00.1001
================
(Made by JS, 14/03/2005)

1.	YingS
	1)	Defect Fix: DEF056249 - GMT offset is not propery updated after loading elocl.dll

2.	KamranN
	1)	Defect Fix: DEF056344 - Cedar Fat has issue with small write flushing

3.	JeremyS
	1)	Defect Fix: DEF056327 - t_falsespace takes too long to run 
	2)	Defect Fix: DEF056330 - Missing RProcess::Close in Runtest 

4.	Dennis
	1)	Defect Fix: DEF056999 - Loader performs unnecessary file system accesses

7.	RichardCo
	1.	MILESTONE: Bravo,GT0236,MS3.2.2 PREQ234 UTC and Auto DST Support(Peripherals)
	2.	INTERFACE CHANGE: BR-1316.1 Peripherals: File system to use UTC.


Version 2.00.1000
================
(Made by MichaelMo, 04/03/2005)

1.	MichaelMo
	1)	Defect Fix: DEF055667 - CFatMountCB VolumeLabelFile methods always use cluster 0 and shouldn't on FAT32
	2)	Defect Fix: DEF055320 - Fat32 is used in MMC cards which are bigger than 32MB
	3)	MINOR CHANGE: Stop warnings on release builds for FAT and FAT32

2.	JeremyS
	1)	Defect Fix: INC055113 - NTT Program closed error occurs when exiting from Eshell in Techview emulator

3.	MiguelB
	1)	Defect Fix: DEF056111 - RFile::Duplicate() does not correctly increment the file session resource count 

4.	MaximK
	1)	Defect Fix: DEF055669 - TFindFile SD error


Version 2.00.548
================
(Made by DjordjeK, 21/02/2005)

1.	JonathanM
	1)	DEFECT FIX: DEF055621 - Locale DLL not loaded on EKA2

2.	YingS
	1)	DEFECT FIX: INC054269 - Language swapping not supported in current Hermione baselines

3.	KamranN
	1) Minor Change: changing the cache request block size


Version 2.00.547
================
(Made by CarlosF, 15/02/2005)

1.	DjordjeK
	1)	DEFECT FIX: DEF054369 - RFs doesn't specify in documentation if time is UTC or local

2. 	KamranN
	1)	DEFECT fix: DEF055202 - RFile::Replace gives NULL pointer and craches emulator
	2)	Minor Change: Increasing reserved memory for b_open test 


Version 2.00.546
================
(Made by RichardCo, 08/02/2005)

1)	YingS
	1)	CR: RFID-5YNJAW System, GT0177 Kernal and Peripherals, 
		Add a method to acquire the serial number of removable media

1)	MiguelB
	1)	DEF052982 - Generic EStart fails to mount composite file system 
	2)	DEF053956 - TFatDirEntry::IsLongNameStart is logically incorrect 
	3)	DEF054111 - FAT32 bug with large discs
	
Version 2.00.545
================
(Made by RichardCo, 01/02/2005)

1)	YingS
	1)	Minor Change: adjust calling condition in estart::StartSystem()


Version 2.00.544
================
(Made by MichaelMo, 21/01/2005)

1)	JoR
	1)	DEFECT FIX: DEF053763  No documentation for RFs::ReserveDriveSpace and related functions 

2)	KamranN
	1) CR PGEN-66RLDR System, GT0182 Sierra, Improve small read performance in EKA2 File System


Version 2.00.543
================
(Made by JonathanM, 18/01/2005)

1)	MiguelB
	1)	DEF052298 - 0 length files on dev boards (h2 / lubbock) for 8.1b
	2)	DEF053475 - Problem with FAT/FAT32 with large disc (20GB)
	3)	DEF053851 - Searching for hidden dir in a ROFS file system  will cause an endless loop

2)	YingS
	1)	DEF053467 - T_TLINK failure in EKA2 when platsec switch off


Version 2.00.542
================
(Made by StefanW, 10/01/2005)

1)	RandyL
	1)	Defect Fix: DEF053262 - Test cases Notification_1 and Notification_2 aren't implemented (propagated from DEF052683)

2)	KamranN
	1)	DEFECT FIX: DEF053244 -	Running out of battery during formatting MMC

3)	YingS
	1)	DEFECT FIX: DEF053671 - emulator version estart haven't been modified


Version 2.00.541
================
(Made by YingS, 04/01/2005)

1)	MiguelB
	1)	DEFECT FIX: DEF052973 - File server panics booting a NandLoader ROM with WITH_EXTENSION macro defined

2)	YingS
	1)	DEFECT FIX: DEF052345 - ESHELL "chkdeps" command is confused by the composite filesystem
	2)	DEF053431 - T_ESTART failure when platsec switch off
	3)	CR WPAR-66JF9U System Libraries, GT0219 Mike System Libraries, Define System Properties at startup

3)	TrevorC
	1)	DEFECT FIX: DEF053260 - USB Mass Storage Filesystem states, error handling, and thread safety issues.

4)	MichaelMo
	1)	DEFECT FIX: DEF052145 - Fat32 over writes all 32bits of a fat table entry, only 28 bits should be changed
	2)	Minor Change: Extended B_FAT32 test to ensure only 28 bits of fat table entries are changed.

5) 	KamranN
	1)	DEFECT FIX: DEF052483  MMC formatting not compatible to Epson printers 


Version 2.00.540
================
(Made by MichaelP, 16/12/2004)

1)	MiguelB
	1)	DEF052379 - RFile::Adopt panics when handle is null
	2)	DEF051122 - Browsing V:\Attrib directory on TechView emulator causes it to hang 

2)	RobertJ
	2)	DEF052290 - Improvement to the file server startup mechanism


Patch release
================
1)	AndrewJ
	1) CR MBUN-63SMAQ Change the IPR catagory of Fat32


Version 2.00.539
================
(Made by KamranN, 6/12/2004)

1)	KamranN
	1) 	Minor changes: Adding two tests to t_fman to test long file names and paths

2)	AndrewJ
	1)	Fixed DEF052243 Excesive parsing in the EKA2 file server. 

3)	YingS
	1)	Fixed DEF052211 Potential memory leak in eshell

4)	StefanW
	1)	DEF048418 - LFFS mount time too long.  LFFS Mount has been updated to (a) detect
		empty segments to eliminate scanning at boot, and (b) to make use of the read ahead cache.
	2) 	DEF052265 - LFFS corrupts itself sometimes after format.
	3) 	DEF052266 - LFFS outdated and erased log entries affecting mounting process.
	4)	DEF052280 - LFFS corruption. LFFS would mistake a segment full of zero's due to an interrupted 
					erase for an invalid segment, which could lead to data corruption.  Mount now checks
		        	for this case and performs recovery if possible, otherwise enters read only mode.
	5)	DEF052282 - Modified T_SOAK1 fails. Fixed a race condition in the LFFS filesystem that resulted 
					in the background thread deleting the Inode while accessed by foreground thread, 
					and a problem with reclaiming Null Log Entries that are part of an open transaction.
	6)	DEF052286 - Creating many files in a short period causes LFFS corruption. Fixed by checking for 
					zero length writes before writing to the media.

5)	YingS
	1)	DEF052346 - ESHELL debugport command does not accept argument -2

6)	AlexS
	1)	Fix for DEF051862 - Mass storage FS works very slow with Windows ME	
	2)	Fix for DEF051810 - The unit tests  t_ms_drive and  t_msfs cannot be run on EKA2
	3)	Fix for DEF052156 - Mistakes in API Classification 

7)	TrevorC
	1)	Fix for DEF052306 - CMassStorageDrive decrements Mount Lock inappropriately.
	2)	Fix for DEF052303 - USB MS drive list is incorrect


Version 2.00.538
================
(Made by JonathanM, 29/11/2004)

1)	AndrewJ
	1) 	DEF052117  Remove defpath from 9.0 onwards, Added a new file (/f32/sfsrv/cl_insecure.cpp) 
		containing the insecure default path APIs and there stubs. 


Patch to Version 2.00.537
================
(Made by KamranN, 29/11/2004)

1)	KamranN
	1) fix for DEF051428 	PlatSec: Incorrect errors returned by f32


Version 2.00.537
================
(Made by StefanW, 19/11/2004)

1)	RobertJ
	1)	DEF051746 System file Recoverablility test support trace output incomplete.
	2)	DEF051577 - SS Formatting of Generic MMC fails and leaves MMC card corrupted

2)	MichaelMo
	1)	DEF050272 - T_LDRCHECK.EXE (of F32Test) failing in cedar Development branch

3)	KamranN
	1) 	Minor changes to add a test step in t_rename to test long path names

4)	StefanW
	1)	Milestone: Sierra,GT0224,MS3.2 USB Mass Storage
		Requirements: PREQ:544 USB Mass Storage


Version 2.00.536
================
(Made by DjordjeK, 16/11/2004)

1)	KamranN
	1)	Fix for defect DEF047684  Trailing dots on SD card folder name upset windows 2000 
	
2)	MichaelMo
	1)	Fix for Defect DEF050650 - FAT filesystem accesses cache object after it is deleted

3)	YingS
	1)	Fix for DEF051362  estart doesn't "Resume" sysstart.exe

4)	RichardCo
	1)	Fix DEF051473 - Wrong file sources & paths in t_scn32dr3.mmp

5)	AndrewJ
	1)	Marked default path APIs as deprecated as part of BR 1206.1


Patch to Version 2.00.535
=========================
(Made by RobertJ, 08/11/2004)

1)	RobertJ	
	1)	DEF051349 - [system build] E32_EKA2 warning (GT summary) in build 03411


Version 2.00.535
================
(Made by AndrewHi, 05/11/2004)

1)	MichaelMo
	1)	Minor changes to the following f32 rofs tests to make them accept a drive letter from the 
		command line: t_rofsattrib, t_rofsdir, t_rofsfile, t_rofssoak, t_rofstime
	2)	Fixed Defect DEF049243 - ROFS Cache
	3)	Fixed DEF050910 - PlatSec: RRawDisk requires wrong capability

2)	RichardCo
	1)	Fixed DEF048278 - F32tests B_FAT and B_FAT32 both fail when run on a lubbock's nand drive

3)	MiguelB
	1)	DEF050516 - Read on duplicate file handle alters position of original file handle 

4)	YingS
	1)	MILESTONE: Mike,GT0223,MS3.2.1 PREQ808 - Seperate base starter from system starter.
	2)	Test case for above milestone.

5)	RobertJ
	1) 	MS 3.1.1 System File Corruption Recoverability (REQ 3831).
		Added \f32test\server\t_corruptlog.cpp + support data files

Version 2.00.534
================
(Made by CarlosF, 25/10/2004)

1)	AndrewJ
	1)	For defect DEF050391 [platsec] many components raising allfile warning due to RFs::Entry, 
		Although there is no issue with the checks made in the file server the in-source documentation 
		was incorrect so have put this right and inserted additional platsec diagnostic output for udeb 
		builds, it now displays the Full name being accessed when a platsec diagnostic output is triggered.

2)	YingS
	1)	DEF050164 Search in Fileserver. TDrive::LocateFile() costs much boot time.
		Change TParsePtrC to TParsePtr and move one TParsePtr construction out of the loop.

3)	MichaelMo
	1)	Fixed Defect INC049197 - NTT f32test t_sess panics at RTest check

4)	MiguelB
	1)	DEF050772 - CFatFileCB::FlushAllL() should re-enable notifiers before leaving 
	2).	DEF050431 - ineffecient code in f32 path name checking 



Patches to version 2.00.533

1)	JonathanM
	1.	DEFECT FIX: DEF050624 - SS PlatSec: ESTART accessing file restricted by AllFiles

Version 2.00.533
================
(Made by GongjunC, 18/10/2004)

1)	AndrewJ	
	1)	BC break BR1203 where each subsession object now has it's own Close function, This is 
		part of PREQ 473

	2)	fixed DEF050099 [PlatSec] PlatSec checks on file open should be invariant to text/binary mode 

2)	MichaelMo
	1)	Fix for Defect DEF047398 - T_DSPACE fails on emulator

3)	GongjunC
	1)	Fix for Defect DEF048753 - t_fsys test assumes nand drive is on EDriveI

4)	YingS
	1)	Fix for Defect DEF050161 - Scandrive bug

Version 2.00.532
================
(Made by Kamran, 08/10/2004)

1)	RobertJ
	1)	Defect Fix:DEF049245 - Mismatch in NAND driver and deflate read window size
		Increase the inflate window size

2)	YingS
	1)	Fix for Defect DEF047896 - Replace non-Ascii characters with hex equivalents

3)	MichaelMo
	1)	Fix for Defect INC049224 - NTT b_osfil missing RTest.End()

Version 2.00.531
================
(Made by YingS, 22/09/2004)

1)	AndrewJ
	1)	fix for DEF047409  Multi-threaded File Server uses non-shared notifier this includes a 
		BC, approved as BR1180


Version 2.00.530
================
(Made by JasmineS, 09/09/2004)

1)	AndrewJ
	1)	fix for DEF047636 ROFS: RFS::IsFileInRom - documentation and usage - change in source comment for
		API RFs::IsFileInRom() to indicate that this should not be used to ascertain whether a file is on
		Z: or not. Simply whether it is ROM file sytem.

2)	MiguelB
	1)	fix for DEF048660 - NTT - Problem inside File Server - F32 component.
		After failing to find a unique short filename four times, the code now uses a random number 
		to generate the filename which greatly increases the likelihood of the filename being unique and
		thus speeds things up.
	2)	fix for DEF045924 - T_SCN32DR1.EXE crashes on ARMV5

3)	AndrewR
	1)	Fix for DEF048511 - EXE files could not be executed from LFFS drive (C:)

4)	MiguelB
	1)	fix for DEF048144 - The FileServer crashes occationally when running B_OPEN.


Version 2.00.529
================
(Made by MichaelP, 27/08/2004)

1)	AndrewH
	1) 	MS 3.1.3 Platform security Hashing removable media (REQ 3573)

2)	MiguelB
	1)	fix for DEF047438 - NTT - STABILITY: F32 has a potential memory leak in InstallRomFileSystemL() 


Version 2.00.528
================
(Made by DjordjeK, 18/08/2004)

1)	AndrewR
	1)	Fixed DEF047011 - Problem loading Exes from C: or Flash

2)	KamranN
	1)	Fix for DEF046643  RFile::Read(TDes8&, TInt aLen,TRequestStatus&) doesn't properly 
		handle zero aLen 

3)	MiguelB
	1)	MS3.1.7 Platform security file handle sharing
		
4)	RobertJ
	1) 	Fixed DEF047896 - Replace non-Ascii characters with hex equivalents

Version 2.00.527
================
(Made by KamranN, 04/08/2004)

1)	AndrewJ
	1)	Fixed DEF047103  Checks on Private path by the file server always assume lower case 

2)	KamranN
	1)	PREQ133: Out of disk space handling by the file server
	
3) 	PeterS
	1) 	Implemented REQ3489: Dividing ESTART into separate generic and customisable parts.
		Also implemented REQ3489.1: Extending ESTART to provide customisable support for 
		dealing	with a corrupt filesystem on system start. This obviously involved changes 
		to ESTART. It also involved a change to	RFs::SetLocalDriveMapping() to allow mappings 
		to be swapped before the mapping is committed.
	
		Base Port Impact: See \documentation\Base_How_To_Estart.doc

Version 2.00.526
================
(Made by JonathanM, 26/07/2004)

1)	AndrewJ	
	1)	Fixed INC046058  Cedar file server makes priority assumption? 

Version 2.00.525
================
(Made by AndrewH, 06/07/2004)

1)	AndrewJ
	1)	Fixed DEF046379 - VFat short file names are not necessarily in caps
	2)	

2)	AndrewHi
	1)	MS3.7.2 Sierra Nevada PREQ 729 (part 2 of 2) and PREQ 537 (part 2 of 2)
		Security policy (capability) checking performed in APIs that require it.

Version 2.00.524
================
(Made by MichaelP, 17/06/2004)

1)	AndrewJ
	1)	Fixed DEF045229  ELOCAL.FSY cannot be disabled in F32.IBY file 

2)	StefanW
	1)	Implemented REQ3383: Formatting locked MMC Card - Allows an MMC card to be formatted if the user forgets 
		the password.  This is performed by using the new fileserver API "TInt RFs::ErasePassword(TInt aDrv)" to 
		issue the FORCE_ERASE command to the media via CMD42.  If successful, this should be follows by a standard
		'quick format' operation to create a fresh filesystem on the disk.

		This change has Break Request confirmation numbers BR1056.1 and BR1056.2


Version 2.00.523
================
(Made by JonathanM, 26/05/2004)

1)	Dennis
	1)	Fixed defect DEF044780 "Data Abort in loader thread when starting c:\eshell"

2) 	KamranN
	1)	Implemented the following CRs
		(1) RFID-5RRAWL System, GT0177 Kernal and Peripherals, Support FAT volume-label file
		(2) RFID-5PYCJR System, GT0177 Kernal and Peripherals, Use ruggedised FAT by default
		(3) RFID-5PYCGQ System, GT0177 Kernal and Peripherals, Use one FAT for non-removable rugged FAT drives

Version 2.00.522
================
(Made by CarlosF, 14/04/2004)

1)	AndrewJ
	1)	Fixed defect DEF041930 "Incorrect Distribution.Policy file"

Version 2.00.521
================
(Made by JonathanM, 31/03/2004)

1)	ChrisM
	1)	Fix defect DEF041645 RFs::Volume returns the wrong infomation for emulated drives

Version 2.00.520
===========================
(Made by JonathanM, 19/03/2004)

1)	JonathanM
	1)	Implemented the requirements:
		REQ2632 - Configurability of the enforcement of capabilities
		REQ2633 - Security violation diagnostic
		REQ3142 - Associate Platform Security information with an executable.
		See /cedar/generic/base/documentation/Base_How_To_Configure_Platform_Security_Settings.doc

Version 2.00.519
===========================
(Made by JonathanM, 26/02/2004)

1)	JonathanM
	1)	Code changes resulting from:
		Change Request JDOD-5VUJ7F - Change in executable format of EKA2 binaries.
	2)	Modified Loader to assign to all binaries those capabilities disabled during ROMBUILD.
	
Version 2.00.518
================
(Made by AndrewJ, 13/02/2004)

1)	StefanW
    	1)  	Implemented CR INC030294:
        	Make it possible to Move a directory structure across drives using CFileMan.
2)	AndrewJ
	1)	Fixed DEF023894	F32 leaks address space in the emulator by memory mapping files 
		repeatedly.
 	2) 	Fixed DEF039729  TParsePtrC creates a temporary TParse object on the stack.

3)	StephanGu
	1)	Implemented CLCT-5VEK4P - "Binary search in ROFS 
		together with 'expanding ROFS entries with UIDs'".
		Changed Rofsbuild to provide a sorted array of offsets
		in order to allow the file system to perform binary search
		through the image.  Also expended the TRofsEntry structure
		to include a copy of the file UID data.

Version 2.00.517
================
(Made by StefanW, 09/01/2004)

1)	AndrewJ	
    1)  Fixed DEF040165 Fat32 to move to class D


Version 2.00.516
================
(Made by StefanW, 19/12/2003)

1)	AndrewJ	
	1)	Fixed DEF039733  Bug in CFatMountCB::DoRenameOrReplaceL() 
	2) 	Fixed DEF039729  TParsePtrC creates a temporary TParse object on the stack,
		this object no longer creates a tempory.
	3)	Fixed defect DEF038169  ScanDrive deletes Japanese named file 

2)	ChrisCr
	1)	DEF037406 - "bad relocation" error from PETRAN.  Changed loop in ESTART.CPP
		to avoid 'using' an address off the end of an array.

3)  	StephanGu
	1)  DEF040849 - "T_FSYS fails on drive F and K". Changed error code returned
		when an attempt is made to dismount Z:

Version 2.00.515
================
(Made by JonathanM, 05/12/2003)
1)	ChrisCr
	1)	DEF001193 - (Propagated) Files with scandic letters in the name might
		be deleted during boot.
	2)	DEF015608 - CDirScan::NextL leaves when trying to scan \private and
		\system directory.

Version 2.00.514
================
(Made by StephanGu, 13/11/03)
1)	StephanGu
	1)	Added A3.4.2"PREQ12(REQ1752) - Support for NAND flash" increment. 
		Changed rugged FAT to be used by default, as this is needed by NAND flash.
		Techview does not yet boot from NAND flash.
	2)	Fixed defect DEF037399 CProxyDrive::ControlIO not virtual
	3)      Fixed defect DEF037401  Filesystems ControlIo() doesn't call CProxyDrive::ControlIO()

2)     	AndrewJ 	
	1)      Added Support in the file server for the composite file server to enable the 
		loader cache to reinitialise after the Composite file system has been mounted.
		Added swap file system API to allow the and atomic dismount and mount of a file 
		system. For NAND flash as per A3.4.2 PREQ12 (REQ1752) NandFlash on EKA2
	
	2)	For NAND flash as per A3.4.2 PREQ12 (REQ1752) NandFlash on EKA2 changed Estart to handle
		Composite file system using the new RFs::SwapFileSystem() API


Version 2.00.513
================
(Made by JonathanM, 31/10/2003)

1)	JonathanM
	1)	Fix for DEF038863 - Integration Test Harness (ScheduleTest) no longer works on EKA2
		Assabet

2)	Dennis
	1)	Fix problem loading RVCT binaries (svElfDerivedFixupImportAddresses always
		returned KErrNotSupported.

Version 2.00.512
================
(Made by AndrewJ, 06/10/2003)


1)	AndrewJ

	1)	Released Fat32 file system

	2)	Added support for TInt64 interface to disks. Only File system that supports 
		volumes large enough to test this at present is Fat32. implmented RRawDisk::Read()
		and RRawDisk::Write functions with 64bit interface with corresponding server side
		handling.

	3)	Added RFs::FinilaseDrives() API that along with server side handling. This searches 
		for the internal drive and calls finalise on the File system mount, The result is that
		any final actions required on the drive before power down maybe carried out. 



Version 2.00.511
================
(Made by JonathanM, 24/09/2003)

1) 	AndrewJ
	1)	Fixed defect DEF012073  (Propagated) Running F32test T_NMBS twice in a row, 
		LFFS gets st... 	

	2)	Removed incorrect code in the fileserver that used a pointer to look up the message
		slot number to read or write. Now uses harded coded numbers.

2)	Dennis
	1)	Use binary search in ROM file system.
	2)	Implemented CR ATHE-5PZEAU (Add Version Numbers to Symbian OS Executables).


3)	ChrisCr
	1)	Added documentation tags to /f32/inc.

4)	MichaelP
	1)	Fixed defect DEF038210 - "Missing error check in ESTART":
		An RFile::Read() in function E32Main() is now properly assigning its return
		code to the error code variable 'r' (file /f32/estart/estart.cpp).

5)	JonathanM
	1)	Removed old and unused files. (F32.FTC and F32.MRP)	


Version 2.00.510
================
(Made by JonathanM, 05/08/2003)

1) 	StefanW

	1)	Modified CFatFormatCB::DoFormatStepL to allow 'Special Format' and 'Quick Format'
		to be performed together (ie - format /s /q).

	2)	Modified the LFFS filesystem to use logical addressing to prevent
		runaway reclaims and disk corruption.
		
		****************************************************************************
		*** This version of the filesystem is incompatable with previous formats ***
		*** so requires that the device is reformatted.  make sure your data is  ***
		*** backed up before applying this version of the filesystem		 ***
		****************************************************************************

		The LFFS filesystem has been modified to use logical based addressing rather than
		the original physical addressing scheme.  This enables the reclaim process to 
		operate without incurring a loss of disk space, and prevents the filesystem from
		entering the 'infinite reclaim' scenario where the device reclaims forever, 
		significantly improving battery life and performance under low disk space conditions

		For a detailed description of the problem that this version addresses, refer to 
		CR PSCE-5GSNPF and the corresponding impact analysis.

		1.  Filesystem version incremented to V2.00.
		2.  The format of the segment header has been modified to include a logical segment number.
		3.  The format of the general Log Entry has been modified to include a pointer to the previous 
		    log entry, and an extra 'Reclaimed' status bit.
		4.  Two new constants CRITICAL_LOG_ENTER/CRITICAL_LOG_GAIN added to allow read-only mode to 
		    be entered should the remaining log space enter the critical threshold.
		5.  Constant SPACE_FOR_RECLAIM has been reduced from 500% to 200%.
		7.  The system enters Read-Only mode when the filesystem is unable to recover disk space.
		    In this mode, all user operations that write to the disk (apart from delete operations) 
		    are not permitted.
		8.  The reclaim process has been modified such that log entries are moved directly into the 
		    new segment without changing their logical address.  Under non-critical conditions, 
		    some entries will be moved to the end of the log to avoid excessive fragmentation.
		9.  The Segment class has been modified to store a bitmap of used/free log entry locations 
		    within the segment.
		10. Calculations of remaining user and log space have been modified to take into account 
		    fragmentation of the log and the addressable data range to provide a more realistic 
		    measure of remaining disk space.

		This version of the filesystem also addresses the following issues

		1. CLffsMountCB::EntryL doesn't check return code for readCurrentDirAttributes
		2. The LFFS Can run out of disk space under extreme usage circumstances
		3. LFFS should report zero free space if in read only mode
		4. LFFS forced reclaim threshold too low
		5. LFFS leaks resources if Create/Replace File fails due to read-only mode.
		6. LFFS reports incorrect usable free space if filesystem is full with directories.

2)	Dennis
	1)	Modified the loader so that passing an empty filename to LoadLocale will
		restore the default locale settings.
	2)	Treat locale DLLs as loading into the file server rather than the kernel.
		Their ABI should match that of the file server.
		This works fortuitously at the moment, although there may soon be enum
		problems. Longer term locale DLLs should be restructured so that the kernel
		never needs to call them.

3)	Markdo
	1)	Introduced the multithreaded fileserver. A file system can either be mounted
		synchronously or asynchronously on a particular drive. Operations on a
		asynchronous  file system drive are handled in a separate drive thread. There
		is also a thread to handle session disconnection.
		Thread-safe reference counting objects and their containers have been added.
		Notifiers have been modified so that a media change results in notification
		completion only on the relevant socket.

4)	ChrisCr
	1)	DEF022431 - (Propagated) The filesystem is corrupted and the device
		won't boot at all anymore.

Version 2.00.509
================
(Made by JonathanM, 19/05/2003)

0.	MarkDo, JonathanM and ChrisM
	1.	Changes resulting from making E32 compatible with with
		Symbian OS version 7.0

1)	Dennis
	1)	Fixed problem mounting CDROMs in ESTART.
	2)	Increase F32 heap size to 512K in direct memory model.
	3)	Fix from StefanW for LFFS failure to mount if a previous format was
		interrupted before writing the Ifile.

2)	Markdo
	1)	Fixed defect DEF000073  "FAT FS: checkdisk computes wrong cluster
		count". 

3)	JonathanM
	1)	Fixed use of __DATA_CAGING__ in F32.
		NOTE: F32TEST are not Dataging Complient as most use Default Path functions

4)	ChrisCr
	1)	DEF015967 - Cannot format disk with DiskAdmin capability (add DiskAdmin
		capability to Format and FormatNext)

Version 2.00.508
================
(Made by ChrisM, 17/03/2003)

1)	AndrewJ
	1)	Added read only file system, ROFS to F32. This is a suplimentary file 
		system aimed at ROM over spill and similar that uses media sub-system
		and can therefore be used for on a variaty of media, including non XIP 
		for binary files.
	2)	Added support for mounting Rofs on J: for platforms and V: for WINS
		in estart.

2)	Dennis
	1)	Extend RUNTESTS.EXE to check for leftover processes and to detect
		spurious background activity.

	2)	The ELF-derived and JFormat flags have been	generalised into header
		format, import format and ABI fields. An entry point type field has
		been added to distinguish EKA1 and EKA2 entry points.

	3)	F32IMAGE.H is now exported and is used in building E32TOOLS instead
		of having a separate copy in E32TOOLS.

	4)	Removed code which opens handles in order to check if a client has data
		caging enabled and replaced it with calls to the new RMessagePtr API.

	5)	Change loader and ROMBUILD to recognise earlier Jetstream binaries
		which had the J flag in bit 3. If the new header format (bits 24-27)
		is zero, bits 3 and 4 are checked for J and ELF respectively.

3)	PeteS
	1)	Changed InitializeLocalDriveMappingL() in \SFILE\SF_MAIN.CPP to use 
		RLocalDrive::IsRemovable() rather than RLocalDrive::MediaDevice() to
		determine socket number.

Version 2.00.507
================
(Made by JonathanM, 14/01/2003)

1)	Nicolas
	1)	Fix for DEF002189 - eshell.exe should not have Root: Eshell now has Root
		and DiskAdmin instead of All.
	2)	Fixed defect DEF012182 - Eshell.exe fails: Removed Root capability from
		eshell.mmp.  Eshell still has Root capability in base ROMs to ease 
		debugging.

2)	AndrewT
	1)	Revamped Win32 local filesystem's use of MapEmulatedFilename() to pass
		the entire path in to this function and removed defective double mapping
		from some functions.
	2)	Discontinued support for relabelling Win32 volumes using
		RFs::SetVolumeLabel(). Win32 wolumes are always reported as unnamed and
		attempting to relabel them will return KErrNotSupported.

3)	ChrisCr
	1)	'Symbianised' LFFS to the coding standards (names of classes, member
		functions and variables; comments to generate Doxygen documentation;
		etc.).  Note that this means that every file in LFFS has changed, and
		most of the lines within each file.
	2)	DEF006380 - TFindFile::FindWildByDir(...) return incorrect error code.
		Fix is to detect and return KErrPermissionDenied in
		TFindFile::DoFindInDir().  Data caging tests modified to test this.

4)	JonathanM
	1)	Modified the Loader so that it can handle 'ElfDerived' images.

5)	AndrewJ
	1) 	Fixed defect DEF012072 LFFS: String class inefficient, removed the 
		base class and changed name of the derived version + typedef.
	2)	Fixed defect DEF012074 LFFS: unnecessary buffer fill when creating a 
		directory entry 
	3)	DEF012075 LFFS: Unnecessary buffer fills while searching directories 

6)	Stephangu
	1)	Submitted fix for "DEF015911 (Propagated) Camera: 
		Could snap more than 255 images but only 255 
		images were saved to MMC".


Version 2.00.506
================
(Made by AndrewT, 29/10/2002)

1)	AndrewT
	1)	Fix for DEF002418 - ESTART has all capabilities
	2)	Relaxed meaning of 'EDataCagingOn' to merely indicate whether the data
		cage should be enforced. So all new APIs are available with data caging off
		and security violations are still traced when data caging is on.
	2)	Improved Data caging trace information to include the path name where
		appropriate.

1)	JonathanM
	1)	Changed all binaries which link to EFILE to get their capabilities from
		include file "F32CAPS.MMH"
	2)	Changed loader to require KCapabilityAll for Device Drivers and Locales.
	3)	Removed all usage of RProcess::SecureApi and User::RemoveCapabilities.

Version 2.00.505
================
(Made by JonathanM, 21/10/2002)

1)	StefanW
	1)	Fix for DEF000070 - Ambiguous error message in LFFS 
	2)	Fix for DEF000109 - LFFS: bgThread pointer can be accessed before it has been set 
	3)	Fix for DEF000160 - LFFS: reclaim thread infinite loop if it can't calc valid data.
	4)	Fix for DEF000185 - LFFS can miss the last log entry when reclaiming - updated 
	5)	Fix for DEF000247 - LFFS inefficient code in reclaim finding last log entry in segment 
	6)	Fix for DEF000370 - LFFS: calculateValidSize can exit without unlocking mutex 
	7)	Fix for DEF000395 - LFFS: deadlock because rollfwd too far behind.
	8)	Fix for DEF000411 - LFFS does not protect against bit errors in StrataFlash 
	9)   	Fix for DEF000041 - Function doesn't do what it says.
	10)	Modified ControlIO to enforce use of TDes8 as required by the secure kernel
		(modified in CL_DEBUG.CPP, and updated affected tests)
2)	AndrewJ
	1)	Fixed pre load list 
	2) 	Inserted hashing code from security and hash checking code but not used yet 
3)	CiprianM
	1)	Fixed DEF001331  The behaviour of CCaptureKeys is that "the last one wins" 
		given equal priorities 
	2)	Fixed defect EXT-5AKDAM "RFs: Folders with trailing dots cause big
		problems in the Flash File system and applications that use the file
		system". Lffs modified to handle trailing dot in the same way as the
		fat file system.
	3)	Fixed defect FID-5C3LZ3 "Bad directory entry can panic FAT filesystem".
	4)	Fixed defect FID-5CDLEF "FAT FSY checkdisk doesn't allocate enough memory for
		bit list".
	5)	Fixed defect OLD-5C7MAB "F32 Loader Cache does not update to see ROLF Drive on
		bootup".
	6)	Fixed defect EXT-5BBB45 "RFs::NotifyChange() with 0length file name kills file
		server".
	7)	Fixed defect EXT-5BMC53 "CFileMan::Copy() reports wrong for error for non-existent
		matching names".
	8)	Fixed EXT-5AJ8DJ(DEF000541) "RFile method Write never completes"
	9)	Fixed FID-5DVK66(DEF001380) "LFFS: should check the flag validity for every log entry"
	10)	Fixed DEF001631 - eshell previous command recollection doesn't work with single 
		letter commands
4)	ChrisCr
	1)	Fix for DEF000064: (Propagated) Bug in comparison with "ELOCAL" in
		AddFileSystem::DoRequestL.  Modified f32/sfile/sf_sys.cpp to match the
		original defect fix.

5)	RobertJ
	1)	Fixed DEF000848 - "Loader cache will not set up any notifiers if no valid drives on boot"


2)	AndrewJ	
	1) 	Introduced file sharing between client and server processes 



Version 2.00.504
================
(Made by JonathanM, 20/09/2002)

1.	JonathanM
	1.	Changed RUNTESTS so that it lets the Loader find 'missing' test files.
		This enables it to run tests which have been moved to \system\bin due
		to data caging.
2.	CiprianM
	1.	Fixed defect DEF001173 - Eshell.exe drive change command causes a 
		panic

Version 2.00.503
================
(Made by Nicolas, 16/09/2002)

1.	RobertJ
	1.	Added support for compressed executables. Uses a deflate algorithm
		Huffman+LZ77. Huffman code is in EUSER the LZ77 code is local. The 
		iFlags field has JFormat added (for non-xip) and the iFormat field
		will either flag 0-uncompressed or be KUidCompressionDeflate which
		as the label says means compressed with deflate. The deflate code
		is virtually identical to that in Tools and should be kept that way.
2.	Nicolas
	1.	Set ESHELL's 3rd UID to nul to work-around bug in UIKON preventing
		from starting non nul 3rd UID executables from graphical shell.	

Version 2.00.502
================
(Made by Dennis, 16/08/2002)

1.	Dennis
	1.	iCheckSumCode and iCheckSumData in E32ImageHeader have been replaced by
		iCapability and iFormat.
		iCapability is passed into the kernel and used to set the capabilities
		for that executable module and for any process instantiated from it.

2.	Markdo
	1.	Ported defect fixes from Hurricane.
	2.	Introduced support for file server extensions at the plugin file system/
		media subsystem interface. Primary extensions are mounted on a drive at the
		same time as the file system whilst secondary extensions are mounted after
		the file system has been mounted.
	3.	Modified file server startup so that the local file system has to be
		explicitly loaded in estart on the necessary drives.
	4.	Modified drive letter to local drive mapping so any file system can be
		mounted on any drive. This involved the following changes:
		- RFs::SetLocalDriveMapping() introduced. To be called from estart.
		- Removed CFileSystem::DriveList().
		- Drive attributes only set if file system mounted on the drive.
		- Local file system versions of DriveNumberToLocalDrive() no longer used.
	5.	Removed copyf32.bat and copyrel.bat from \f32\group.

Version 2.00.501
================
(Made by Dennis, 11/07/2002)

Memory model and loader changes.
Two mode secure kernel.

1.	Dennis
	1.	Rewrote loader to support per-process writeable static data in DLLs
		and to work with new kernel code management.

	2.	Loading of device drivers, file systems and locale DLLs is now done
		entirely by the loader rather than partially on the client side.

	3.	Added generic automounting of file systems to ESTART, based on the values
		returned by the media driver for media type and partition type.
		FAT is only mounted on drives which return a FAT partition type or which
		are removable, not ready and don't return a media type of FLASH or CDROM.

	4.	Remove masking of file attributes in file server to allow the new ROM XIP
		attribute to be reported.

	5.	Added ISO9660 and NTFS (read only) file systems.

	6.	Integrated platform security changes (data caging).

	7.	Changed "z:\system\data\Dll Preload List" to "z:\system\data\preload.lst"
		to avoid moronic spaces in filenames which knacker tools.

	8.	Changes resulting from TInt64 now being a built-in type instead of a class.

	9.	In ESTART for the emulator, disable preemption before calling ExitProcess()
		when the initial EXE has terminated.


Version 2.00.500
================
(Made by AndrewT, 21/05/2002)

First release of EKA2 into Symbian OS mainline.


Version 0.01.279
================
(Made by Dennis, 04/04/2002)

1)	Markdo
	1)	Fixed defect BRY-58DQ8A "RDebug::Prints in F32".
	2)	Fixed defect BRY-58DPTJ "RDebug::Print in cl_parse.cpp".

Version 0.01.278
================
(Made by CarlosF, 12/03/2002)

1)	Markdo
	1)	Fixed defect DON-57ZNSZ "Mounting a file system with a locked media can
		panic the file server". Migrated from 6.1.
	2)	Fixed defect DON-582CPM "GetLongName() doesn't give KErrNotFound on deleted
		file". Migrated from 6.1.
	3)	Fixed defect DON-582CS7 "Invalid cast between incompatible enums in
		TDrive::DriveInfo". Migrated from 6.1.
	4)	Fixed defect DON-582CY5 "FAT FS: free cluster search doesn't search entire
		FAT". Migrated from 6.1.
	5)	Fixed defect DON-57ZLSH "& vs && in TFindFile".
	6)	Fixed defect DON-582FQW "Secure MMC: TFindFile should not scan locked
		drives. Migrated from 6.0.
	7)	Fixed defect DON-57ZLVM "Incompatibility of FAT between EPOC and MSDOS".
		Unused fat entries are no longer 0xff filled after formatting.
	8)	Fixed defect DON-585JBS "Memory card password file shown in dialogs".
		Password file is now stored as c:\system\mmcstore.
	9)	Fixed defect DON-586FXT "ESHELL start command doesn't report errors".
	
2)	Pete
	1) 	Changes associated with implementing CR PHAR-54RJMT 'We should be able to simulate
		password protected disks on the emulator'.	

3)	AndrewJ
	1)	Submitted a fix for FID-544KQJ where the LFFS is limited to 256 segments. Now uses
		a dynamic number of segments based on the physical media


Version 0.01.277
================
(Made by ChrisM, 06/03/2002)
1)	Markdo
	1)	Removed unnecessary call to TBusLocalDrive::Caps() in
		CLffsFileSystem::DriveNumberToLocalDrive().
	2)	Modified CFatMountCB::MaxClusterNumber() to use right shift.
	3)	Fixed defect PRX-57D69V "executive call overhead in rom fs".
		Rom address header is now stored in CRom.
	4)	Implemented CR MDON-57HLDW "RFs::LockDrive() should not allow
		user to not store password". Both LockDrive() and UnlockDrive()
		now return KErrNotSupported if the password is not stored.

2)	AndrewJ
	1)	Submitted RichardF's read ahead cache to optimise log reads in the log flash 
		file system
	2) 	Submitted fix from RichardF for defect FID-54YDZT where a forced reclaim can use 
		all erased space and cannot be recovered, for the LFFS system.
	3)	Submitted Code from RichardF to fix FID-568L6X where lffs leaves orphaned entries on the 
		list when a write fails.


Version 0.01.276
================
(Made by RobertJ, 11/02/2002)

1)	Markdo
	1) 	Fixed defect PRX-573BNC "Preload() (little perf improvement)". The function
		now returns immediately if the preload list is not found.
	2)	Fixed defect FID-573GWT "LFFS stack size should take account of
		_DEBUG_RELEASE".

2) 	Peter
	1) 	Extended the class CFatFormatCB in the FAT file system by adding the
		following new members:-
			TInt iNumberOfHeads;
			TInt iSectorsPerTrack;
		When formatting a FAT disk, these new members are set as part of 
		the function CFatFormatCB::InitializeFormatDataL() when formatting first
		commences. They are used to initialise the corresponding fields in the boot
		sector once the physical formatting of the disk has completed.
	2) 	Changes to FAT file system special formatting mode.
		The 'number of heads' and 'sectors per track'
		info. is read from the local drive caps. and written two the above
		two data members of CFatFormatCB.

Version 0.01.275
================
(Made by PeterS, 04/02/2002)

1)	MarkCa
	1)	Fixed FID-562G4V (App can kill F32 by attempting to mount filesystem on
		unsupported drive.)  Changed CFatMountCB::MountL() and
		CFatFileSystem::DriveInfo() to check if running on supported local drive.
	2)	Added file system adding and mounting error checking to E32Main()
		for ESHELL.
	3)	Fixed FID-566G8P (Bug in comparison with "ELOCAL" in AddFileSystem) by
		changing CompareF() in TFsAddFileSystem::DoRequestL() to check for
		"ELOCAL.FSY" filename and extension.

2)	Nicolas
    	1)	Added new debugport command to eshell.	See E32 367
		release notes for details.
	2)	Fixed bug in gobble and setsize eshell commands which
		wrongly reported errors when using hexadecimal sizes.

3)	Markdo	
	1)	Fixed defect BEN-4YRGKV "Ecom not recognising plugins once unplugged and
		replugged". RFs::Rename(), RFs::Replace(), and RFile::Rename() now have
		source and destination entries checked by extended notification mechanism.

Version 0.01.274
================
(Made by MarkCa, 15/01/2002)

1) 	Peter
	1) 	Changes to FAT file system to add support for a
		special formatting mode. This
		formatting mode is selected using the TFormatMode: ESpecialFormat.
		Corresponding changes to the 'Format' command in
		ESHELL so that drives can be formatted in this mode from the shell by
		using the switch /s (e.g. 'FORMAT D: /S').
	2)	Migrated FAT file system optimizations implemented in
		the 6.0 release. This include2 the following changes:
		- 6.0 defect EDNMDON-537CZA "Directory creation in FAT causes unnecessary
		disk writes".
		- 6.0 defect EDNGLAY-53UCDG "Unnecessary flushing of the fat when writing
		to a file for the first time".
		- 6.0 defect EDNGLAY-53UCLA "Unnecessary metadata writes when creating entry
		in fat file system".
		- The #defines  _ABSOLUTE_LRU_SIZE _ and USE_TRUE_LRU_CACHE uncommented in
		SFAT\SL_CACHE.CPP so that a true lru cache of 32KB is used for metadata.
		- Modification to CFatMountCB::AddDirEntryL() so that end of directory
		marker only written if not already zero.

Version 0.01.273
================
(Made by AndrewJ, 12/12/2001)

1)	Markdo
	1)	Fixed defect DON-4ZKD9H "File server does not fully support write
		protected media".
	2)	Fixed defect DON-53ZDXF "Build error in file server when _LOCKABLE_MEDIA
		not defined".

2)	AndrewJ
	1)	Fixed JON-53BMJZ (RRawDisk de-references a null pointer when used on a 
		corrupt drive (due to forced a mount)) changed the behaviour of 
		RRawDisk objects so that they be prevented on a corrupt disk or one 
		that is being formatted. Only one RRawDisk object should be able to 
		access a mount at once. Similar behaviour has been implemented for 
		RFormat objects as well, they will obviously have access to corrupt 
		drives.

3)	MarkCa
	1)	Fixed DON-4V7BUZ (KErrNoMemory cannot be returned on c:)
	2)	Fixed CFileCB::~CFileCB, which called iLock->Close() without checking
		if was successfully allocated.

3)	PeterH
	1)	Integrated changes to DEF files from the mainline.
		Frozen exports are now marked with the R3UNUSED flag where appropriate.
		This is to support the thumb stub optimisation where the R3 register is
		use to generate a smaller import stub for a function if it isn't used to
		receive parameters.

Version 0.01.272
================
(Made by MichaelP, 20/11/2001)

1)	MarkCa
	1)	Fixed PEN-52ZM5A (Function doesn't do what it says.)  Changed comment
		for IsSpace() in sfile\sf_utl.cpp.
	2)	Fixed FID-4W5BYE (Ambiguous error message in LFFS.)  Changed
		Inode::readBlock() to distinguish between CRC and media driver errors
		when reading a block.
	3)	Simplified media driver loading in F32 startup thread.

2)	AndrewJ	
	1)	Fixed defect MAY-4ULHBH (B_OPEN crashes the file server on LFFS) by increaseing 
		the Log size in the lffs file system, note the size of the lffs dive on assabet
		has been reduced to 8Mb.
	2)	Fixed defect FID-537HQA (LFFS: increase reclaim thread stack size) by doubling 
		current stack allocation as suggested in the defect report.

3)	Markdo
	1)	Fixed defect DON-4WXDHK "RFs::RemoveFileSystem does not return correct
		error value". KErrNone is now returned when a file system has been
		successfully removed.
	2)	Fixed defect THY-4WKD5P "gobble (in eshell) can delete existing files". If
		the file already exists then gobble fails but does not delete the file.

Version 0.01.271
================
(Made by Dennis, 26/10/2001)

1)	MarkCa
	1)	Fixed 6.1 defect DON-52SC7L (Disk space notification does unnecessary
		checking for RFile::Write.)  Added TBool iFreeChanged instance variable
		to CMountCB.  TFsFileWrite::DoRequestL() sets this iff the file size
		has changed.  CSessionFs::Complete() uses the value stored in
		DiskSpaceInfo[iTheDrive.iDriveNumber].iFreeDiskSpace if the file
		size has not changed.

Version 0.01.270
================
(Made by ChrisM, 05/10/2001)

1)	MarkCa
	1)	Fixed DON-4ZKDKK (Moving a directory leads to incorrect parent directory
		cluster number.)  Parent Directory Pointer FAT entry is updated at end
		of CFatMountCB::DoRenameOrReplaceL().
2)	Markdo
	1)	Fixed defect DON-4ZSLL9 "CMountCB::ControlIO cannot be called when
		RRawDisk subsession open". ControlIO can now be called when a RRawDisk
		or RFormat subsession is open.
	2) 	Fixed defect DON-52FJDQ "RFs::ReadFileSection() does not alway return
		correct data".


Version 0.01.269
================
(Made by AndrewT, 31/08/2001)

1)	RobertJ
	1)	Implemented a loader file names cache to speed up loading dlls & executables.
		Added sf_cache.cpp,sf_cfind.cpp & sf_cache.h. Extensively modified sf_ldr.cpp.
	2)	Implemented change request PGEN-4VXMEM "Load and run ROM executables from RAM"

2)	Pete
	1)	Changed /F32/INC from IPR category A to category E (SC change request EJAN-4Z5GEA).

Version 0.01.268
================
(Made by Peter, 06/08/2001)

1)	Markdo
	1)	Fixed defect DON-4YTBWB "Removing cf-card whilst formatting can crash the
		file server". 
	2)	Fixed defect HOH-4RGFJN "Scandisk doesn't like the way that we make
		directories". Each directory is now zeroed on creation.

2) 	Pete
	1) 	Removed \f32\group\mnt.bat which was redundant.
	2) 	Addition of the function RFs::RemountDrive(TInt aDrive,const TDesC8* aMountInfo=NULL,TUint aFlags)
		
Version 0.01.267
================
(Made by JonathanM, 17/07/2001)

1) Andrew
	1) 	Migrating fix from 6.1/6.0 in fileserver where cancelling a move operation
		results in the wrong file being deleted and the corrupt/half copied version 
		left. (JON-4WAH8L.)

Version 0.01.266
================
(Made by Michael, 21/06/2001)

1) MarkDo
	1)	Fixed defect OEL-4V2H8V "Disk notifications do not come in for devices
		with ramdrive".
	2)	Modified file server to allow requests to be handled when the
		non-critical password notifier is up. Changes to CServerTask,
		CAsynNotifier and the parsing functions. Introduction of 
		CNonCriticalNotifier and TFileServerHung classes. Modified
		TDriver::HandleCriticalError() in fat file system so that password
		notifier is only brought up if user notification set. See defect
		DON-4XNK65 (File server requests are not handled when a password
		notifier is up).
	3)	Introduced additional commands to CFatMountCB::ControlIO and
		TFsControlIo::DoRequestL to allow testing of 2).
	4)	Modified RUNTESTS. This can now take two additional arguments 
		with the new syntax:

		runtests <script> <dir> <timeout> <args>

		<timeout> is the timeout period in minutes. <args> is passed into
		all the test processes created. Also introduced #defines to allow
		no timeout to be used, runtests to exit on the first error and for
		the batch file to be repeatedly read. Introduced to test 2).

2)	MarkCa
	1)	Modified \sfat\sl_fsy.cpp to or in KMediaAttHasPassword when a
		media is locked.  This is part of e32 fixes EDNHLJT-4WZGTD and
		EDNHAAO-4WZFYR.
	2)	Fixed EDNDBEY-4W5EM6 (Secure MMC password not remembered) by
		using absolute filename for password file in f32fsys.h.
	3)	Implemented CR PSCE-4VMP3K to set hard limit for RAM drive.
		CFatMountCB::Enlarge() checks against limit, and CFatMountCB::VolumeL()
		caps size.

Version 0.01.265
================
(Made by Carlos, 31/05/2001)

1)	Nicolas
	1)	Changed runtests.exe so it displays the duration of
	  	the tests in seconds.

2)	Markdo
	1)	Fixed defect DON-4VWCWG "Windows does not like the way we make some dos
		entry names".
	2)	Enabled LFFS tracing to be turned on via RFs::SetDebugRegister().
		Use /t switch with trace command for text shell.

3)	Tim Band
	1)	Deprecated CompareFilenames function and changed the function that used
		it back to CompareC
Version 0.01.264
================
(Made by Pete, 10/05/2001)

1)	MarkCa
	1)	Added base support for store LFFS optimization.  New function Drive()
		added to RFile.

Version 0.01.263
================
(Made by Nicolas, 04/05/2001)

1)	Nicolas
	1)	Merged 6.1 release branch back into the mainline.

Version 0.01.262
================
(Made by Dennis, 20/04/2001)

1)	RobertJ
	1)	Fixed defect EDNMHEY-4FEKYU Searching for "Dll Preload List" takes
		too long.

2)	AndrewJ
	1)	Changed F32.iby so it only includes the default e32strt.exe if 
		CUSTOM_ROM is not defined.
	2)	Removed refrences to the BASE_ROM definition as an include option as 
		it is now obsolete.

3)	Pete
	1) 	Fixed SCE-4VJJ32 "F32\SLFFS should be IPR category A, not category E"

Version 0.01.261
================
(Made by RobertJ, 26/03/2001)

1)	MarkCa
	1)	Fixed EDNJHAS-4KFR5G (File handle mis-management crashes the kernel)
	2)	Removed spurious debug in ShellCommand::(Lock|Unlock|Clear)().

2)	Markdo
	1)	Fixed bug EDNMDON-4KUCTK "Locked multimedia card can panic file server".
		Return value of KErrBadHandle from password notifier is now handled
		correctly.

3)  	Andrew
	1)	Fixed JON-4URH39 Format problem for segments count greater than 100
		on LFFS
	2)	Fixed TOD-4RWEHL KErrNoMemory problem in FindWildByDir()

4)	MarkCa
	1)	Modified StartupThread() in sf_main.cpp to scan for media drivers
		instead of explicitly loading them by name.

Version 0.01.260
================
(Made by Morgan, 08/01/2001)

1)	Morgan
	1)	Made the loader cope with DLLs with no imports

2)	Markdo
	1) 	Fixed defect DON-4TXKUB "TEntry needs copy c'tor and =operator".
	2) 	Fixed defect THE-4UBE55 "Corrupted FAT and cross-contaminated
		files after file truncation". Seek index is now cleared in the
		correct way.

Version 0.01.238
================
(Made by Morgan, 09/04/2001)

1) 	Nicolas
	1)	Fixed bug in ESHELL/HEXDUMP introduced when switching to Unicode
		(the right part of the ASCII dump is now correct).

2)	Andrew
	1) 	Fixed defect FID-4UZLMW Enable controlio in UREL builds
	2)	Fixed defect CHM-4TSNF3 file server can not cope with invalid file names
	3)	Fixed defect CHM-4URFMZ	server panics when scanning max length files

3)	RobertJ
	1)	Fixed defect EDNMHEY-4FEKYU Searching for "Dll Preload List" takes
		too long.

4)	Pete
	1) 	Fixed SCE-4VJJ32 "F32\SLFFS should be IPR category A, not category E"


Version 0.01.237
================
(Made by Will Ramsay, 03/04/2001)

1)	Backported change from Morgan to 6.2
	1)	Made the loader cope with DLLs with no imports

Version 0.01.236
================
(Made by MarkCa, 20-03-2001)

1) 	Markdo
	1)	Fixed bug EDNMDON-4KUCTK "Locked multimedia card can panic file server".
		Return value of KErrBadHandle from password notifier is now handled
		correctly.

2)  	Andrew
	1)	Fixed JON-4URH39 Format problem for segments count greater than 100
		on LFFS
	2)	Fixed TOD-4RWEHL KErrNoMemory problem in FindWildByDir()


Version 0.01.235
================
(Made by Nicolas, 27-02-2001)

1)	Markdo
	1) 	Fixed defect DON-4TXKUB "TEntry needs copy c'tor and =operator".
	2) 	Fixed defect THE-4UBE55 "Corrupted FAT and cross-contaminated
		files after file truncation". Seek index is now cleared in the
		correct way.
	3)	Fixed defect HAR-4UDN92 "Calling RFs::NotifyChangeCancel without
		first calling RFs::NotifyChange crashes the file server".
	
2)	MarkCa
	1)	Fixed EDNJHAS-4KFR5G (File handle mis-management crashes the kernel)
	2)	Removed spurious debug in ShellCommand::(Lock|Unlock|Clear)().


Version 0.01.234
================
(Made by Pete, 19-01-2001)

1) Pete
	1)	Merged in version R1.3 of Log Flash File System (LFFS) - released
		by ENEA. Release notes for additional features this provides:-

		New features:
		-	Retry of failed erase operations. (Compensates for faulty hardware)

		Corrected problems:
		-	Unable to mount in an unusual situation when power down during
			write caused write failure of two specific bits. The two
			"outdated" or "transaction start" bits were required to match for
			mount to succeed.
        	-	Bad behaviour related to allocation of media space.
        	-   	Several minor bugs.
		This fixes defect FID-4RZGU4 "Power loss can corrupt LFFS filesystem".
	2)	Fixed defect FID-4R9MPF "LFFS doesn't obey the rules for RFormat".
	3)	Fixed defect FID-4QVF5C "Reduce heap & stack size for LFFS reclaim thread".
	4)	Fixed defect FID-4STGGU "LFFS CRC function can be optimized".
	5) 	Fixed defect FID-4RTE6Q "Make F32 auto-mount LFFS under WINS".
	6) 	Fixed defect FID-4RDE2S "Source code change required for mounting non-FAT filesystem as local"

Version 0.01.233
================
(Made by RobertJ, 13-12-2000)

1) Morgan
	1)	Loader speed improvements.  Dll's that are already loaded in the
		system are loaded using information available from the kernel,
		rather than going to disk.

2) Markdo
	1)	Fixed defect EDNRFID-4KZGXR "ESHELL Gobble command should put
		real data in the file". Gobble now fills file with 0xef. New
		eshell command SETSIZE introduced which sets size of file but
		does not fill. The file is created if it does not exist.
	2)	Fixed defect HOH-4RDLVN "RFs::GetDir reports KErrCorrupt if only
		one file is corrupt". This fix only applies to the fat file
		system. 
	3)	Fixed defect HOH-4RGEXH "Corrupt on CF card when OOM/Low on Mem".
		Free cluster count in fat file system is now calculated from
		clusters available.
	4)	Fixed defect HOH-4RGF97 "RFs::NotifyChangeCancel(TRquestStatus&)
		can fail in Debug builds".
	5)	Fixed defect HOH-4RGFCJ "Renaming long filenames causes a Kernel
		Panic".
	6)	Fixed defect EDNRFID-4NGJCT "Bad cast in LFFS loses significant
		bits on >16Mb flash".
	7)	Fixed defect EDNRFID-4PYF2E "Change priority of LFFS background
		thread".
	8)	Modified fat table caching so that dirty array is used when cache
		is written to. When flushing only sectors marked as dirty are
		written to disk. These changes required additional pure virtual
		functions to be added to CDataCache class. This feature can be 
		enabled/disabled using #define _USE_DIRTY_FIXED_CACHE.
	9)	Introduced two new #defines in \F32\SFAT\SL_CACHE.CPP:
		_ABSOLUTE_LRU_SIZE
			allows absolute lru cache size to be set in CLruCache
			class.
		_USE_TRUE_LRU_CACHE
			allows true lru caching to be used in CLruCache class. At
			present fifo caching used.
		Both #defines are commented out awaiting further benchmarking.
	10)	Introduced disk space notification. Client can now be notified when
		the free space for a drive crosses a threshold specified by the
		client.
	11)	Modified initialisation when file server passed a handle to an
		existing subsession object. The data member iTheDrive is now set
		for the session. This is necessary for disk space notification.
		
3) RichardF
	1)	Added disk space notification to LFFS filesystem. This adds a
		notification from the background thread after completing a
		reclaim or roll-forward operation.

	2)	Added a new ControlIo function to LFFS for testing disk
		space notification. CIO_BACKGROUND_NOTIFY_DISK_SIZE allows
		test code to force a value into the reclaim thread. The next
		notification from the reclaim thread will use this value instead
		of the real disk space. This is one-shot so subsequent
		notifications will report real disk space.


Version 0.01.232
================
(Made by Nicolas, 19-10-2000)

1) Pete
	1)	Modified the file server so that it now attempts to
		load MMC Media driver (MEDMMC.PDD) rather than Compact Rom Media
		driver (MEDCRM.PDD) on startup.

1) Nicolas
	1)	Modified ESHELL "DEBUG" command so it can launch the new GDBSTUB.


Version 0.01.231
================
(Made by MarkCa, 29/09/2000)

1)	Markdo
	1)	Fixed bug EDNDKNT-4NVNBN "Behaviour of RFormat::Next() has changed
		since ER5". Extended change notification request when drive is locked
		is now handled in same way as when path is not found.


Version 0.01.230
================
(Made by Dennis, 13-09-2000)

1) William
	1)	In SF_LDR.CPP, use User::Free(anIdle) instead of delete anIdle since
		anIdle is a TAny* and there is no destructor which could be called.
	2)	Replace the non-debugging uses of _L() with _LIT() in SF_LDR.CPP

2) Dennis
	1)	Added code to ESTART to restore the modifiable HAL attributes from file
		\System\Data\HAL.DAT. This is loaded from any drive in the usual search
		order.
	    
Version 0.01.213
================
(Made by RobertJ, 20-07-2000)

1) Markdo
	1)	Added patch from ENEA to stop LFFS entering read-only mode
		incorrectly.
	2)	Added patch from ENEA to fix LFFS failure to delete file from root
		when disk is full.

Version 0.01.212
================
(Made by RobertJ, 29-06-2000)

1 Markdo
	1)	Fixed defect EDNDBAR-4KDK8H (TKeyDir::Compare should use
		TDesC::CompareC, not TDesC::CompareF). A new exported function 
		CompareFilenames(const TDesC& aFileName1,const TDesC& aFileName2)
		has been added to the file server. This function is only used in
		TKeyDir::Compare.

Version 0.01.211
================
(Made by Dennis, 22-06-2000)

1) Morgan
	1)	Fixed EDNABAN-4AEECH.  Made the Loader notice the KNoCallEntryPoint
		flag when loading executables from Ram.

2) Dennis
	1)	Made ESTART call HAL to ensure that HAL's memory is allocated.

Version 0.01.210
================
(Made by Markdo, 07.06.2000)

1)	Markdo
	1)	Merged in changes made to \F32\SLFFS\ on lffs acceptance branch.
	2)	Fixed defect EDNMDON-4KGM6E (Hung file server does not correctly deal
		with session that has been killed).
	3)	Fixed defect EDNMDON-4LSEXD (File server panics if scandrive called
		at startup).Changes to ensure scandrive called correctly in startup
		thread.

2)	MarkCa
	1)	Implemented bug fix EDNMDON-4J2EWK in \f32\sfat\sl_file.cpp.

Version 0.01.209
================
(Made by Alastair 23.5.2000)


1)	Alastair
	1)	Removed changes made in version 207 to enter and leave the kernel
		critical section around calls to Win32's LoadLibrary() function, now
		that E32 is calling Dll entry points rather than leaving this up to
		the Windows operating system to do.


Version 0.01.208
================
(Made by MarkCa, 16/05/00)

1)	Markdo
	1)	Removed compiler warnings.

Version 0.01.207
================
(Made by Morgan, 7/4/2000)

1)	MarkCa
	1)	Minor changes to ETSHELL\TS_COM.CPP in lock, unlock and clear commands
		to print command information.

2)	Markdo
	1)	Mmc security features disabled. To enable define _LOCKABLE_MEDIA
		in \E32\INC\E32SVR.H.
	2)	Changes to remove (some) compiler warnings.
	3)	Added reserved virtual function in CMountCB.

3)	Alastair
	1)	Added code to enter the kernel critical section before the Win32 call
		to LoadLibrary() in \f32\sfile\sf_ldr.cpp and leave it afterwards.  This
		is in order to avoid deadlock with NT Service Pack 5 where the LoadLibrary()
		call is deadlocked with some other thread, probably one which has the 
		Kernel critical section and is waiting on an internal NT lock for the
		library to finish loading.  This change that under WINS/WINC libraries 
		can't make any calls which will require the kernel critical section, such
		as kernel executive calls, in their entrypoints when EDllProcessAttach and
		EDllThreadAttach is passed as the aReason parameter.
	2)	Added RDebug::Print statement so that the name of a library which fails
		to load is reported to the Output window in the Debugger.

4)	Pete
	1)	Modified file server and FAT file system to use
		UseHal::DriveInfo() to determine whether to implement a rugged file
		system.
	2)	Added latest version of Log Flash File System (LFFS) - released with 4th
		candidate version (R1.2) of LFFS.
	3)	Added #define _DEBUG_RELEASE to F32\INC\F32DBG.H to allow debugging
		in release builds.
	4) 	Added the debug functions RFs::DebugNotify() required for LFFS testing.


Version 0.01.206
================
(Made by Dennis, 23.03.2000)

1)	MarkDo
	1) 	Implemented RFs member functions LockDrive,UnlockDrive and ClearPasword.
		Added corresponding virtual functions to CMountCB class which return
		KErrNotSupported. Overrode these functions in CFatMountCB class.
	2)	Changes to TDrive functions dealing with the mounting of a device. If
		disk access returns KErrLocked then asynchronous notifier brought up
		requesting password.
	3)	Added exported WriteToDisk(const TDesC& aFileName,const TDesC8& aBuf)
		function in file server. Used to write buffer to root of default drive.
	4)	Modified file server startup code so that file KMediaPWrdFile is used to
		initialise mmc controller password store.
	5)	Appended L to RestartActiveScheduler(CSessionFS*) function name. This is
		no longer exported from the file server. Removed RestartActiveScheduler()
		function.
	6)	Modified CAsyncNotifier class. Function added to call extended notifier.
		RestartActiveScheduler now called from within member functions.
	7)	Modified TDriver class. If CFatMountCB::Remount returns KErrLocked then
		attempt made to unlock card.
	8)	Fixed bugs EDNGASR-4GUL9U and EDNGASR-4GSES9. TFileText now checks for 
		Unicode byte order mark and paragrah separator. TFileText::Seek is longer
		const and clears it read buffer.
		

2)	MarkCa
        1)	\F32\ETSHELL\TS_COM.CPP
	        Changed lock, unlock and clear commands to use actual RFs functions.
		\F32\SFILE\SF_STD.H
		Defined datatypes for delayed writer thread.
		Added EMainStartupWriteToDiskSemaphore to TFsFault.
		\F32\SFILE\SF_DISK.CPP
		Implemented async thread for so file server can write data to file.
		\F32\SFILE\SF_MAIN.CPP
		Created global semaphore for queuing delayed writes in startup thread.

3)	Pete
	1) 	Added the debug function RFs::DebugNotify() required for LFFS acceptance testing.
		
Version 0.01.205
================
(Made by RobertJ 20-03-00)

1)	MarkCa
        \F32\ETSHELL\TS_COM.CPP
        Added ShellFunction::(Lock|Unlock|Clear) functions.
        Included functions in CShell::iCommand[] array.
	
        \F32\ETSHELL\TS_STD.H
        Added ShellFunction::(Lock|Unlock|Clear) prototypes.
        Increased ENoShellCommands from 24 to 27.

Version 0.01.204
================
(Made by MarkCa 03-03-00)

1)	MarkCa
	\F32\INC\F32FILE.H	Additional RFs prototypes
	\F32\INC\MESSAGE.H	EFs((Lock|Unlock)Drive|ClearPassword)
	\F32\SFSRV\CL_CLI.CPP	RFs::((Lock|Unlock)Drive|ClearPassword)
	\F32\SFILE\SF_FUNC.H	TFsLockDrive, TFsUnlockDrive, TFsClearPassword
	\F32\SFILE\SF_MAIN.CPP	CSessionFs::ServiceL dispatch cases
	\F32\SFILE\SF_SES.CPP	TFs((Lock|Unlock)Drive|ClearPassword)(DoRequestL|Initialise) stubs

Version 0.01.203
================
(Made by Dennis, 14-02-2000)

1)	Dennis
	1)	Replaced most UserHal:: calls with corresponding HAL:: calls (if they
		exist).
2)	Mark
	1)	Added debug function RFs::ControlIo(TInt aDrive,TInt aCommand,
		TAny* aParam1,TAny* aParam2). Originally added for LFFS
		acceptance testing. Can be used as debugging tool for file
		system by overriding virtual CMountCB::ControlIO().
	2)	Added debug tool to fail writes to disk in TDriver class. Write
		failure info is stored in CFatMountCB and set via RFs::ControlIo().
 		On write failure a specified error value can be returned or the
		machine reset.
	3)	Added scandrive utility for fat file system. Checks drive for
		specific errors and corrects them. Does not run on internal ram
		drive. Called at file server startup on Linda platforms.
	4)	Ruggedised fat file system. If iIsRugged flag in CFatFileSystem
		set then in the event of power failure fat/metadata will be in
		a valid state if the scandrive utility is run immediately after.
		iIsRugged flag set for Linda platforms and can also be set/unset
		using RFs::ControlIo().
	5)	Changed CRamFatTable::MemCopy to ensure ram drive is locked before
		returning from this function.


Version 0.01.202
================
(Made by Dennis, 19th January 2000)

0)	Use with E32(255)

1)	Dennis
	1) 	Removed calls to EUSER functions which no longer exist.

2)	Alastair
	1)	Removed MARM, SARM, ARM3 and SARM3 configurations from BLD.INF.

3)	Pete
	1)	Change to FAT file system raw disk read/write. Required due to E32
		change where TBusLocalDrive Read(), Write() Format() functions
		use a TInt64 rather than a TInt to specify position within the drive.


Version 0.01.201
================
(Made by Morgan, 3/12/99)

0)	Use with E32(253)

1)	Mark
	1)	Changes to CRomMountCB::RawReadL(),CRomMountCB::ReadSectionL()
		and CFatMountCB::ReadSectionL(). RThread object is now set to
		handle of client. Fixes er5u bugs EDNPSCE-4C6JBG and
		EDNMDON-4C7CHN.

2)	Morgan
	1)	Removed 256 character limit on command lines
		Changed CSessionLoader::LoadProcess to understand new RLoader
		RMessage with extra command line parameter.  See E32(253).


Version 0.01.200
================
(Made by Simon)

1)	Mark
	1)	Merged in changes from ER5v134 that fixed bug MDON-484D9G
		'32Mb Ram results in corrupt Ram Drive'.
	2)	Merged in changes from ER5v134 that fixed bug MDON-484CRH
		'64Mb Ram drive cannot be used'.
	3)	Modified CFatFileSystem::DriveInfo so that TDriveInfo::iDriveAtt
		is set here.


Version 0.01.158
================
(Made by Anonymous)

1)	Pete
	1)	Added Log Flash File System (ELFFS.FSY) - 1st alpha.


2)  Malcolm
	1)	Added estart to the build.  This is a placeholder for the
	  	variant specific estart.exe that will run the product specific
	  	startup.  If BASE_ROM is specified when building roms then
	  	f32.iby selects e32strt.exe rather than estart.exe for placing
	  	in the rom as estart.exe, as e32strt is the dummy
	  	implementation for base text roms.
		
		EStart is now started by the FS rather than ewsrv.exe, and
		only from z:


Version 0.01.157
================
(Made by Mark, 16/09/99)

1)	Mark
	1)	Fixed bug EDNMHAN-4AFMWT (The internal drive is called "Inte").
	2)	Fixed bug EDNMDON-4BPC5M (F32 tracing can reset machine).
	3) 	Fixed bug EDNMMIR-4BBNVD (RFs::ReadFileSection fails on Unicode ROMS).

Version 0.01.156
================
(Made by Morgan, 28/8/99)

1)	Pete
	1)	Changes to allow proper media change notification on platforms with
		more than one PC Card socket. The file server now requests media change
		notfication on each socket, rather than just socket 0. (This requires an
		associated change to e32 introduced in E32 release ???).

2)	Dennis
	1)	Modified F32.IBY to allow ROMs to be built with ARM4/ARMI/THUMB code.

3)	Alastair
	1)	Removed narrow frozen .DEF files.
	2)	Re-frozen all .DEF files in new format so that the C++ name
		appears with the mangled name for all exports and windiff can be
		used to compare frozen .DEF files with generated .DEF files.



Version 0.01.155
================
(Made by Alastair, 2.8.99)

SOURCE-ONLY RELEASE
Built with MSVC6

CHANGES TO RELEASABLE
1)	Alastair
	1)	F32 now releases zip files for ARMI, ARM4 and THUMB in the same style as
		it's other releasables, and no longer produces a MARM zip file.  To use
		these releasables it's necessary to use E32TOOLP version 120 and the new
		GCC compiler.
		This change is academic since the release is source-only and has been
		built with the old gcc compiler.

2)	Alastair
	1)	Updated BLD.INF to work with the new GCC compiler and changes to
		E32TOOLP version 120.

	2)	Changed ESHELL attrib command to use slightly less stack so that it
		compiles under MSVC6.

Version 0.01.148
================
(Made by Kal Patel 22 July 1999)

	Rebuilt with latest E32.


Version 0.01.147
================
(Made by Dennis 13.7.1999)

1)	Alastair
	1)	Added dopcvs.pl and lock.pl to GROUP directory for use with MNT.BAT.
	2)	Added fetcher definition file, F32.FTC, to the group directory.

2)	Mark
	1)	Fixed ER5 bug EDNWROS-45WGVY(Can't execute 8.3 program from CF card
		under Unicode).
	2) 	Fixed ER5 bug EDN028229(Unicode shell doesn't display disk name
		correctly). Volume name is limited to ascii characters with a max
		length of 11, both for narrow and unicode builds.
	3)	Replaced relevent Win32 function calls with calls to euser.dll
		exported functions that return a pointer either to 'W' Win32
		function or euniw.dll wrapper function.

3)	Dennis
	1)	Increased stack size of ESHELL from 8K to 16K. This is because it
		blows an 8K stack in the unicode build.
	2)	Modified code to remove some compiler warnings with the new GCC
		compiler. Some warnings still remain ("taking address of temporary")
		which seem nontrivial to fix.
	3)	Modified code in SFAT\SL_MNT.CPP (CFatMountCB::CountFreeClustersL)
		which crashes when built with the new compiler due to attempting a
		16-bit data access at an odd address. The code now explicitly does two
		separate byte accesses.
	4)	Modified ESHELL to print the full exit code if a process terminates
		with any other code than KILL 0.
	5)	Added test launcher program RUNTESTS.EXE. Syntax is

		runtests <script> <dir>

		where <script> is the name of the test script (eg e32auto.bat) and <dir>
		is the directory in which the test executables reside. If <dir> is
		omitted it defaults to Z:\TEST. The test script is assumed to reside in
		the same directory as the test EXEs unless a full path is specified for
		<script>.


Version 0.01.146
================
(Made by Alastair, 9.6.99)

1)	Alastair
	1)	Building this version of F32 requires E32TOOLP version 108+.  It's
		advisable to build your component with E32TOOLP version 108+ if you're
		using this version of F32 since import libraries are only released in
		the MARM release and WINS debug directories.
	2)	Changed zips of releasables put onto the network. There is now one zip
		file for each platform.  There is also a zip file for exported header
		files.  Hence, The contents of S:\f32\zip includes
			export.<ver>, wins.<ver>, marm.<ver> and winc.<ver>.
		The files within these zip files now also have full pathnames so ensure
		you unzip them into the root of your EPOC drive with any flags required
		to recreate the directory structure.
	3)	Added new command, MNT CHECKREL, to check that all releasables are
		present before doing an MNT PUTREL.
		Before doing MNT CHECKREL or MNT PUTREL call BLDMAKE -v RELFILES to
		create the lists of releasables.
	4)	Split EFSRV.DLL under WINC into EFSRV.DLL and EFILE.DLL as under WINS.
		Removed hacks in the build system associated with munging EFSRV.DLL and
		EFILE.DLL together under WINC.  EFSRV.DLL loads EFILE.DLL when required,
		as under WINS.
	5)	Specified second uids in ELOCAL.MMP and EFAT.MMP as 0 so that these FSY-
		specific uids are set by makmake instead.
	6)	Replaced all B[plat].PRJ files for use with BLDMAKE with BLD.INF in
		accordance with ER5u bldmake changes.
	7)	Removed all E*.REL files from GROUP directory and changed MNT.BAT so that
		MNT PUTREL looks for .REL files generated by BLDMAKE instead.  Updated
		BLD.INF accordingly.
	8)	Removed EVALID.PL and EVALID.BAT from GROUP dir now that this version
		of EVALID is being released as part of E32TOOLP.
	9)	Updated MNT GETBLD to fetch the SDMODELS component which replaces the
		SWINS component that E32 used to release.
	10)	Remove XFILE.MMP - it's no longer required now that libraries can be
		built separately.  Note that libraries must be build before other
		releasables because of mutual exporting between some F32 DLLs.



Version 1.02.145
================
(Made by Malcolm, 14th May 1999)

Malcolm	 
		 1)  Changed usage of KRomHeaderLinAddr to
		     UserSvr::RomHeaderAddress().  This requires a recent E32
		     > 181 to work.

Version 1.02.140
================
(Made by Mark, 5th May 1999)

1)	Pete
	1)	Enabled a file system to be mounted on EDriveW for WINS.

2)	Mark
	1) 	Added DismountFileSystem(..) and FileSystemName(..) functions to class RFs.
	2)	Moved public member data in CMountCB, CFileCB, CDirCB, and CFormatCB to
		protected and provided relevant inline functions.

Version 1.02.133
================
(Made by Mark, 31th March 1999)

1)	Mark
	Implemented fix to defect EDNGDAE-46FPNU in CServerFs::TheSessionHasDied(..).
	

Version 1.02.132
================
(Made by Jonathan, 23rd February 1999)

1)	Jonathan, Simon
	1)	Boilerplated source.

2)	Alastair
	1)	Fixed bug EDN874266 
		"I think Epoc COnnect is trying to access my A drive on Win 98"
		by not looking for a dll preload list on all drives under __WINC__.
	2)	Changed MNT PUTSRC to use T:\Tools\Zip.exe rather than
		T:\Tools\PKZip.exe.
	3)	Changed MNT GETREL to get the WINC debugging releaseables for DEB and
		UDEB builds.
	4)	Moved \F32\INC\INCC.PRJ to \E32\GROUP\INCC.REL and changed MNT.BAT so
		this .REL file is treated in the same way as all the other .REL files.
	5)	Updated validation process to use William's new EVALID.BAT (added to
		F32\Group pro tem.).


Version 1.02.131
================
(Made by Mark, 10th February 1999)

1)	Mark
	1)	Removed extra debug diagnostic checking added in v129. CFatMountCb::
		CheckIndirectionTableL(..) left in although not called.
	2)	Fixed defect EDN760586 so that TDrive::IsFileOpen(..) checks that a
		matching file name is on same drive.
	3)	Fixed defect EDN781415 by adding check in CFatMountCb::DoFindL(..) that
		aDosEntryPos is not past end of root directory.
	4)	Fixed defect EDN621729 so that RFs::NotifyChange(..) cannot fail.
		The return type of these functions is now void instead of int.


Version 1.02.130
================
(Made by Pete, 3rd February 1999)

THIS RELEASE OF F32 REQUIRES E32 163 OR LATER

1)	Pete
	1)	Changed over to use the TBusLocalDrive class rather than TLocalDrive
		for local drive access. This in turn required converting calls to
		TBusLocalDrive::Caps() to take a TLocalDriveCapsBuf parameter rather
		than a TLocalDriveCaps.

2)	Mark
	1)	Removable FAT formatted drives (ie CF cards) larger than or equal to
		16Mb in size are now formatted with a 16bit FAT rather than a 12bit
		FAT.


Version 1.02.129
================
(Made by Jo, 29th January 1999)

1) Morgan
	1)	Fixed an OOM bug in the loader (FindAndLoadDll(...))

2) Jo
	1)	Added extra debug diagnostic checking to detect RAM drive inconsistencies
	2)	Changed the order of operations in CRamFatTable::FreeClusterListL() so the
		RAM drive is not shrunk until the clusters referencing it have been 		deallocated.

	3)	Modified CRamFatTable::FreeClusterListL() so it uses the true RAM drive size when shrinking the RAM drive, rather than attempting to calculate it from its stored value of iFreeclusters.

	4)	Modified the DoRequest() function of TFsRequest so any fileserver operations that leave are caught and dealt with appropriately.

	5)	Various concomitant modifications to CSessionFs Process() and CServerTask functions to deal with the change in 4)


Version 1.02.128
================
(Made by Morgan, 27th January 1999)

1) Jo	
	1)	Added debug diagnostic checking to attempt to track down a bug which causes F32 to attempt to write off the end of RAM drive.  Before allocation or deallocation of clusters, debug builds will now check the contents of the File Indirection Table and compare the entry pointing to the end of the RAM drive with the actual size of the drive.  Should the indirection table point beyond the real end of the RAM drive, an access violation at a recognisable memory location will occur.  This is intended as a temporary addition to F32 debug code only.

	2)	Added extra debug checking to ensure that the number of free RAM drive clusters F32 is attempting to access corresponds to the actual size of the RAM drive.  Again, this additionaly checking is intended to be temporary.

	3)	Added an extra check to CFatMountCB::InitializeL() to compare the size of the ram drive with the size F32 expects it to be, following its scan of the FAT table to determine the number of free clusters.  This code is called only during the intial mounting of the RAM drive (eg following a warm boot).  The drive will be re-shrunk if necessary to correspond to the number of free clusters F32 encountered.

	4)	Changed KArbitraryWinsRamDiskSize from 2MB to 4MB to bring it into line with that of the EPOC machine ram drive maximum size.  Doing this also fixes a WINS bug where the media driver thought the ram drive was 4MB while the free cluster count was limited to 2MB.  This caused inconsistency between the free cluster count and the ram drive size when the media driver was happy to enlarge the drive above 2MB, whilst F32 was returning KErrDiskFull errors - without re-shrinking the ram drive.


Version 1.02.127
================
(Made by Jo, 19th January 1999)

1) Jo	
	1)	Removed the CSessionFs pointer member from classes CFixedCache, CRawDisk, CFatMountCB and CFatFileCB, introduced with the remote filesytem functionality.  The session pointers were not being coherently updated with each new fileserver session - leading to occassional access violations.  The pointers themselves were used only to pass to the global RestartActiveScheduler() functions - see below.  Now the up to date TDrive session pointer is used instead.  Modified the member functions of the above classes, and class TDriver appropriately.

	2)	Modified the initialisation functions DoInitialise() in SFILE\SF_DIR and SFILE\SF_FILE, SFILE\SF_FMT and SFILE\SF_RAW to update the session pointer member in TDrive before dealing with various fileserver requests.

	3)	Added a new function to class CServerFs.  The function, TheSessionHasDied(), checks the session queue to determine whether the session pointer passed as a parameter is still valid.

	4)	The global RestartActiveScheduler() functions were modified to behave safely in cases where the fileserver session has closed.  

	5)	Fixed a bug in RFs::Rename (SFILE\SF_NBS) which prevented extended fileserver notification requests completing.

	6)	Added extra functionality to extended fileserver notification requests (SFILE\SF_SVR).  It is now possible to submit a wildcarded path which notifies the client of changes to the path on any drive.  eg the path ?:\test\ will return notifications for changes to the test directory of any drive.  Fixes bug EDN262913.

	7)	Some modification to cleanup routines in class CServerTask (SFILE\SF_TASK) in the light of changes to RestartActiveScheduler.

	8)	Added function ParseNotificationPath() to SFILE\SF_UTL to allow wildcarded fileserver notification requests as described in 6).

2) Morgan
	1)	Added Dll-preloading functionality to F32 startup.  List the Dll's to be
		loaded at start-up in the file "\System\Data\Dll Preload list" located
		on any drive.  Filenames listed should be fully qualified, although it
		will attempt to load unqualified names using the usual search paths.  The
		comment delimiter for this file is ';'.
		

Version 1.02.126
================
(Made by Jonathan, 12th January 1999)

THIS RELEASE OF F32 REQUIRES E32 160 OR LATER

1) Jo
	1)	Fixed defect EDN911803 "Rename creates duplicate file" which was due
		to the VFAT entry of the original file not being deleted when the
		new filename was FAT.

	2)	Minor modification to ESHELL (\ETSHELL\TS_COM.cpp) so that the REL
		build of ESHELL does not stop TRACE from setting the F32 tracing
		flags.

	3)	Minor additions to \SFAT\SL_MNT.cpp to add extra checking for
		uninitialised CSessionFs pointers that could permeate down and lead
		to access violations when TDriver::ReadCritical() and
		TDriver::Write() functions are called.

2) Morgan
	2)	Fairly major overhaul of the loader to make it clean up after
		itself. Handles created by the kernel for library creation are now
		placed into The Loader's process. The handle is only transferred to
		the client when the load has successfully completed.
		This allows the loader to keep track of all the libraies it has
		created, and therefore allows it to clean up after itself on
		failure.


Version 1.02.125
================
(Made by Jo, 21st December 1998)

THIS RELEASE OF F32 REQUIRES E32 159 OR LATER

1) Alastair
	1)	Removed BLD.BAT, CLEAN.BAT and PREPARE.BAT from Group\Li.prj.

2) Morgan
	1)	Fixed a bug that was stopping RAM-loading of libraries that statically
		linked to Exes.

3) Jo
	1)	Fixed an eshell bug to improve the Copy function.  Removed edlin
		from eshell.  Modified the Hexdump command to allow the user to
	  	quit.

	2)	Removed the extraneous file sr_rom.s from \f32\srom\


Version 1.02.124
================
(Made by Jo, 8th December 1998)

1) Jo
	
	1)	Fixed defect EDN 128786
		Previously, if a notification request was made on a non existent
		path, the notification request was rejected with error KErrNotFound.
		Now the request is submitted (if the path is valid eg with no
		illegal	characters) and the client is notified upon creation of such
		a path.

	2)	Fixed defect EDN 879377
		TFindFile::FindWildByPath() now checks that the path submitted is
		not NULL before attempting to dereference it.

	3)	Modified the handling of client requests in SFILE\SF_MAIN.
		Release 120 removed the multitudinous global functions DoParseFsxxx
		and DoFsxxx and replaced them with a set of classes derived from the
		interface class MFsRequest (SFILE\SF_FUNC.H).

	These changes had some performance implications on the fileserver - the
	current modifications have now improved the performance for local
	fileserver operations.
	The changes required minor modifications to a couple of functions in
	class CServerTask, some changes to class CSessionFs, and the
	introduction of a new class TFsRequest. BC is not affected except
	internal to F32.


Version 1.02.123
================
(Made by Jo, 1st December 1998)

1) Morgan
	1)	Added Uid matching to Dll and Exe loaders. See E32 release note 157.1.1
	2)	Implemented a more intelligent Dll Loader that continues to search
		for matching dlls if the first (or subsequent) attempt fails.
		SF_LDR.CPP and SF_IMAGE.CPP
	3)	Removed the E32Image class from the public header F32IMAGE.H.  The
		E32ImageHeader and friends remain.
	4)	SARMBERIP

2) Jo
	1)	Fixed EPOC software problem SW1-29 "Local/System Filetime confusion - WINC"
		Changes to SFILE\SF_FILE,SF_NBS; SFAT\SL_DIR,SL_MNT; SWINS\ELOCAL	
	
		The file timestamps are now stored as UTC times in line with Win32. 
		File times are converted transparently between local and UTC times as
		necessary (so no adverse effect on eg the Shell) but WINC now gets the
		system time it expects and can deal with it accordingly.
		Obviously, any existing files stored on CF card will now be reported with
		incorrect timestamps if their last modification local time differed from
		GMT.  This also required a E32 fix (see E32 release note 157.2.1).

	2)	Modification to SFAT\SL_VFAT to fix a problem with the way UNICODE builds
		cope with legal DOS file names.

	3)	Modification to SFAT\SL_FMT and SFAT\SL_STD to allow F32 to get the correct
		number of hidden sectors as reported by E32 (TLocalDriveCaps).  This will
		fix Epoc Software Problem SW1-44 and Bluebell defect SW1-412 where 
		WinCE machines rejected EPOC formatted CF cards.  
		
3)	Alastair
	1)	Added ESHELL.EXE to GROUP\EWINS.REL and ESHELL.PDB to GROUP\EWINSDB.REL.
	2)	Changed code loading patch ldds from C:\system\libs\ to check that the
		third UID is KPatchLddUid (0x100000cc), and added KPatchLddUidValue to
		SFILE\SF_MAIN.CPP.
	3)	Fixed minor ESHELL bug.
	4)	Removed references to all bldmake-generated batch files from LI.PRJ
		files containing them, and updated MNT.BAT so that directories \BWINC,
		\BVC4 and \BVC4WINC are not archived (they contain nothing but
		bldmake-generated files anyway).  This means that to build F32 from
		source bldmake must always be called first to generate the batch files,
		and ensures these batch files are more likely to be up-to-date.
	5)	Changed targettype in ELOCAL.MMP and EFAT.MMP from DLL to FSY.  Removed
		FSY.DEF from BWINS, BMARM and BSARM directories.
	6)	Updated SFILE\SF_LDR.CPP in accordance with changes to E32 157's
		MapEmulatedFileName() function.


Version 1.02.122
================
(Made by Jonathan, 27th October 1998)

N.B. WINS DEB/UDEB will only work with E32 156 OR LATER.

1) Dennis
	1)	Reintroduced debug/release interoperability by synchronising DEF files
		between WINS REL and DEB builds.
2) Jo
	1)	Modified SFAT\SL_VFAT to generate an acceptable DOS shortname for
	  	UNICODE long filenames.
	2)	Made the vendor ID in the bootsector more generic - changed from
	  	"PSIONPLC" to "EPOC".

3) Alastair
		1) Added the following Unicode Uid values
			KFileSystemUidValue		0x100039df
			KFileServerUidValue		0x100039e3
			KFileServerDllUidValue	0x100039e4
		2)	Updated .MMP files in accordance with the UNICODE plan.
		3)	Changed MNT.BAT to get E32TOOLP version 096.


Version 1.02.121
================
(Made by Morgan, 20th October 1998)

NB: REQUIRES E32 VERION 155 OR LATER

(1) Jo

1) Fixed EPOC software problem SW1-199 "Narrow build DLLs not seen on UNICODE machine"

UNICODE F32 was assuming that there could never be any files with legal DOS filenames (true for any file created on a UNICODE machine but not for files created on a narrow build and introduced to a UNICODE machine eg on a CF card).  
It was thus unable to cope with any narrow build files that had true DOS names (ie fully capitalized names of less than 8 characters).
Modification to CFatDirCB::ReadL() (SFAT\SL_DIR) and CFatMountCB::DoFindL() (SFAT\SL_MNT) to allow UNICODE to recognise and deal with these files.

2) Fixed EPOC software problem SW1-253 "TFileText::Write() has wrong prototype"
Added const to the prototype - now TInt TFileText::Write(const TDesC& aDes)

3) Added a const to the prototype for the recently introduced RFs::NotifyChange() function overload - now TInt RFs::NotifyChange(TNotifyType aType,TRequestStatus& aStat,const TDesC& aPathName)

4) Fixed a bug in CFatMountCB::ReplaceClashingNameL().  Previously, when a clashing short name was replaced, the checksum in the corresponding long filename entries was not recalculated.  

5) Fixed a bug in the global function NumberOfVFatEntries() (in SFAT\SF_UTL)

Previously, if a long filename was a multiple of 13 characters it allocated an extra TFatDirEntry because it was unecessarily adding an end-of-name zero terminator.  The zero terminator is not required when all 13 characters in a TFatDirEntry are filled.

2)	Alastair
	1)	Changed dllLoader() function in \F32\SFILE\SF_LDR.CPP to allow
		the Emulator to run from anywhere.  The function no longer
		searches the Epoc search path under WINC if libraries aren't found
		in the Win32 search path.  Under WINS this function now
		passes an Epoc path rather that a full Win32 path to E32 to
		fix Epoc Software problem SW1-153 "Allow applications to
		simulate running from C: or D: on WINS".
	2)	Removed \F32\SFILE\SF_WINS.CPP.  This file provided
		functionality to map Epoc filenames to Win32 filenames.  The 
		functionality has been improved and is now provided by
		new EUSER function MapEmulatedFileName().  Since this version of F32
		calls MapEmulatedFileName() it requires E32 version 152 or above.
	3)	Various minor WINS/WINC fixes and reorganisation.
	4)	Incorporated \F32\SWINC\ELOCWINC.CPP into
		\F32\SWINS\ELOCWINS.CPP to isolate WINS/WINC differences and
		make them easier to maintain.  ELOCWINS.CPP now uses
		MapEmulatedFileName() to do its Epoc->WINS drive mapping.
	5)	Corrected WINS base address in line with the Notes document
		and added 0x66000000 for EFSRV.DLL.
	6)	Symbianised copyright information appearing in the text shell.


Version 1.02.120
================
(Made by Jo, 18th September 1998)

A number of modifications and additions to F32 for this release.  First release post-ER4.

1) Jo

(1) Fixed EPOC Software problem SW1-160.  
	
CLocalFileCB::CheckPos() (\SWINS\ELOCAL) was assuming that iCurrentPos was always pointing to the same position in the file as the Win32 file pointer.  In fact it was possible for them point to different positions if a leave occurred in a file operation before iCurrentPos was reset.  CLocalFileCB::CheckPos() now checks that they are the same and adjusts the Win32 pointer accordingly if not.  Also renamed the function (which had always been able to leave) from the incorrect CLocalFileCB::CheckPos() to CLocalFileCB::CheckPosL()

(2) Fixed Bluebell defect SW1-728
	
RFs::SetDriveName() and RFs::SetVolumeLabel() were allowing the client to set the drive/volume names to contain "illegal" characters such as * ? / > etc.  Added validation of the desired name to DoFsSetDriveName() and DoFsSetVolume().  Also made some changes to DoFsSetVolume() to allow changes to be made to the volume name under UNICODE builds.
		
(3) Fixed EPOC Software problem SW1-132

RFs::DoGetDirL() was ignoring the return value from its call to CDir::Sort()
It now inspects the value and leaves if an error occurred.	

(4) Made a change to function DoFsFileRead (\SFILE\SF_FILE) to fix a bug for UNICODE builds attempting to read beyond the length of a file.	

(5) Fixed Series 5 problem SW1-764 "F32 over-allocates clusters"	
An off-by-one error was causing F32 to allocate an extra cluster if the file size was an exact multiple of cluster size.  The fix also required modifications to the FAT checking code to allow for files created before and after this fix.

(5) Fixed Series 5 problem SW1-770 "Can't handle the last root directory entry"
The root required the last entry to be an end-of-directory entry.  Removed this requirement.

(6) Fixed Series 5 problem SW1-842 "TInt Write() does not work as documented"
Added an ASSERT_DEBUG check to RFile::Write() to prevent incorrect use of the function which could inadvertantly lead to garbage being written to a file.
	
(7) Fixed Series 5 problems SW1-230, 351 and 821 all of which were related to F32 allowing paths of greater than 256 characters to be created - which then caused problems in CDirScan functions (among others).  

The problem of F32 allowing a Rename() request to succeed, despite generating an over-long path can only be resolved by recursive checking.  This has been implemented and tested, but hasn't been included in this release as it obviously has some performance implications.  The case of path renaming to over 256 characters is relatively rare and the considerable amount of checking required to prevent it needs further consideration (eg some evaluation of the effect on performance of the recursive checking).  

To allow CDirScan::ScanUpTree() and similar functions to cope with paths >256	characters, an extra CFileMan operation (RenameInvalidEntry()) has been added.  Should any CFileMan operation encounter a path of >256	characters, the offending directory component is renamed with its VFAT shortname (guaranteed to be unique).
	
(8) Implemented RFs functions GetLongName() and GetShortName for UNICODE builds.

(9) Implemented EPOC proposal SW1-52 "File Server function to read from a file regardless of the lock state"	
RFs now supplies function ReadFileSection() to allow F32 clients to read bytes from any position in the file, regardless of its lock state.

(10) Implemented EPOC proposal SW1-91 "Extend file server change notification"
Notification of fileserver activities is more specific.  The original RFs::NotifyChange() function now returns a value (because it has always been able to leave with OOM - BC not affected).  
	
An additional pair of RFs functions NotifyChange()/NotifyChangeCancel() have been implemented.  These allow the client to specify a particular directory (and its subtree) or file to monitor.  The modifications also allow the client to have more than one outstanding change notification request (hence the additional NotifyChangeCancel() function to allow the client to cancel a specific request).  The types of changes to monitor have also been extended.  

These changes required some modification to the CSessionFs class (BC not affected except internal to F32).

(11) Implemented EPOC proposal SW1-92 
Overloaded the RFs function IsValidName() to return any illegal character within the name the client is querying.  This required some additions and modifications of the name and path checking functions in SFILE\SF_UTL.  Also required the addition of two extra query functions (IsKMatchOne() and IsKMatchAny()) to class TParseBase (to distinguish which wildcard character, '*' or '?' had been detected).

(12) Added an extra command to the text shell.  The new TShellCommand function VNAME allows the user to query the validity of a filename and indicates any illegal characters.

(13) Fixed a problem with RFs::GetDir() in UNICODE builds (changed KEntryArraySize from 0x200 to 0x400 in UNICODE only).  Necessary for the function to retrieve directories with UNICODE names >230 characters.

(14) Made a change to the way F32 handles each client request in SFILE\SF_MAIN.  
Removed the multitudinous global functions DoParseFsxxx and DoFsxxx and replaced them with a set of classes derived from the interface class MFsRequest (SFILE\SF_FUNC.H).  These changes have also required minor modifications to a couple of functions in class CServerTask, the addition of an extra data member (SFILE\SF_STD.H) and some change to the Service() and Process() functions of class CSessionFs.  BC is not affected except internal to F32.  The changes are relatively superficial, but remove code duplication through the use of class member data.

(15) Added some Set/Get functions to classes CFatMountCB() and CServerTask to reflect data encapsulation therein.



Version 1.02.115
================
(Made by Jo, 29th July 1998)

1) Jo
	Re-release of F32 114 with correct build version number in \INC\F32VER.H
	and correct E32,E32Tools and E32ToolP build version numbers (in \GROUP\MNT.bat)
	
	F32 release will now validate.


Version 1.02.114
================
(Made by Jo, 17th July 1998)

1) Jo
	1) Fixed EPOC Software Problem SW1-12.  F32 previously assumed that the name of
 	DLLs to which an executable links, were embedded in the import data as a Unicode 			
	string - in reality the data is ASCII text.  This was causing executables to fail 		
	to load from RAM on Unicode builds.  
	After consultation with the internationalisation team, F32 is to be modified in
	stages to resolve this problem.  This release marks completion of the first 	
	stage - F32 has now been modified to restrict Dlls to 8 bit names. 
	
	Executables may now be loaded from RAM on Unicode builds.  There has, in
 	effect, been no	change to 8 bit builds.


Version 1.02.113
================
(Made by Jo, 14th July 1998)

1) Jo
	1) Fixed BluebellDefects bugs SW1-587 and SW1-620 by ensuring that the iSession 	   	   	   	   	   
	   data member of CServer task is initialised for each session. (\SFILE\SF_TASK)
	
	2) Added extra function DestroyTaskThread() to class CServerTask to clean up
	   iSessionThread and iMessageSemaphore when session is closed.  Also modified 
	   CServerTask::TaskThreadFunction() code to use iTheDrive->iDriveMutex mutex
	   to protect data when fileserver operates asynchronously (\SFILE\SFTASK)

	3) Numerous small modifications to DoParseFsXXX functions to determine
	   whether a remote mount is present and thus whether to call fileserver
	   functions asynchronously. (\SFILE\SF_DEBUG,SF_DIR,SF_DRV,SF_FILE,SF_FMT,
	   SF_MAIN,SF_NBS,SF_RAW,SF_SVR,SF_SYS).  These changes have been stress tested
	   by a new test which will be permanently added to the F32Test suite
	   (to be released separately).

2) William
	
	1) Changes to ESHELL (\ETSHELL\TS_EDSHL) to fix EPOC Software Problem SW1-103 
	   Other improvements to ESHELL as follows:	

		a) Decoded kernel faults are shown as "PLAT 9" rather than "9 PLAT"

		b) You can run an exe with funny arguments without getting bitten by the 		   .bat file processing, e.g. "apprun a\b\c"






Version 1.02.112
================
(Made by Morgan, 23rd June 1998)

1) Jo
	1) Fixed bugs SW1-363, 376, 413, 414, 427, 453 by ensuring that the TDrive
	   data member of CSessionFs is fully updated for each new session.
	2) Added some extra code to ensure full initialisation of the CSessionFs data
	   members of CFatMountCB, CFixedCache and CFileShare.  Removed the unused
	   and unnecessary CSessionFs data member in CFormatCB.

2) Morgan
	1) Fixed a batch file CD bug in ESHELL
	2) Fixed some bugs in the remote file system support.  Mostly
	   indescriminate handle orphaning, OOM behaviour errors, and
	   some other weirdnesses.
	3) Simplified some code, removed some unecessary indirections,
	   and reduced the size of the session classes.


Version 1.02.111
================
(Made by Pete, 10th June 1998)

1) Dennis
	1)	Changed occurrences of TSimpleArray<T> and TPointerArray<T> to
		RArray<T> and RPointerArray<T> following renaming in E32.

2) Petteri
	1)	Changed LDRPATCH.MMP

3)	Alastair
	1)	Changed sfile\sf_main.cpp so that patches are loaded automatically
		after a warm reset. The code will attempt to load, in name order,
		any files in directory "C:\System\Libs\" as logical device drivers
		if they have the logical device driver second uid, the extension
		".SYS" and the "System" file attribute.
	2)	Changed ELOCAL.FSY so that the initial default path for WINC
		programs is the current directory rather than C:\.
	3)	Changed CLocalFileCB::IsRomDrive() to return EFalse under WINC so
		that WINC programs can write to drive Z:.
	4)	Removed macro EXPORT_IF_NOT_WINC_C from various files where it had
		failed to fulfil it's duty in stopping certain functions being
		exported in WINC builds (WINC EFSRV.DLL effectively combines the
		functionality of WINS dlls EFSRV.DLL and EFILE.DLL, but shouldn't
		export functions that WINS EFILE.DLL does). Hacked MNT.BAT instead
		so that WINS-built EFSRV.LIB is released for WINC builds, so that
		WINC and WINS builds of EFSRV.DLL remain binary compatible.
	5)	Changed MNT.BAT so that MNT GETBLD gets the tools required for building.

4)	Jo

	1)	Fixed EPOC32 software problem SW1-56 to prevent a file being turned into
 		a directory.
		In SFile\SF_FILE DoFsFileSet(): Added ValidateAtts() to bring it into
 		line with DoFsFileSetAtt()

	2)	Fixed EPOC32 software problem SW1-30
		SFSRV\CL_FIND TFindFile::DoFindInDir() no longer returns KErrNone when
 		an inaccessible network drive returns KErrAccessDenied.

	3)	Fixed EPOC32 software problem SW1-91
		SFAT\SL_FMT CFatFormatCB::DoFormatStepL() now writes a media descriptor
		byte to the start of the second FAT as well as the first FAT.

	4) 	Fixed Series 5 software problem SW1-278
		in SFSRV\CL_FMAN so hidden files may now be deleted by CFMan::Delete()


Version 1.02.110
================
(Made by Morgan, 14th May 1998)

1) Dennis
	1) Changes to allow for multiple ROM root directories for use with
	   multiple-variant ROMs.
	2) Changed occurrences of CArray* to TSimpleArray.

2) Morgan
	1) Fixed Bluebell defect SW1-56
	2) Minor fixes to ESHELL to correct error reporting
	3) Fixed Series 5 defect SW1-878

3) Basher
	1) Made the file server asynchronous


================
Big version number increment to skip over Liffey Lavender release.
================

Version 1.02.096
================
(Made by Jonathan, 8th May 1998)

1) Alastair
	1) Changed MNT.BAT so that MNT GETRELE32 no longer gets the
	   debugging information releasables for RELEASE builds.
	2) Changed MNT.BAT to retrieve E32TOOLS 091 and E32TOOLP 091.

2) Matthew
	1) Changed text shell to use the KConsFullScreen constant, so it can
	   be run on small-screen machines. This requires E32 124 or above.

3) Jo
	1) Change to DoListOpenFiles() in SFILE\SF_FILE, to align each TEntry 
       in the list along a 4 byte boundary.  
	   The bug came to light when running F32tests in WINC.

	2) Minor cosmetic changes to the text shell code following a code review.


Version 1.02.095
================
(Made by Graham, 16th February 1998)

1) Graham
        1)      Removed debug/release interoperability from
                WINS/WINC. Reverted to 092-style .DEF files.
                

Version 1.02.094
================
(Made by Dennis, 12th February 1998)

1)	Dennis
	1)	Debug/Release interoperability take 2: Synchronised DEF files for
		WINS/SARM/SARMBE builds.

Version 1.02.093
================
(Made by Jonathan, 10th February 1998)

1)	Alastair
	1)	Changed mnt getrel so that it doesn't attempt to get the non-existent
		.PDB files for release builds.

2)	Dennis
	1)	Added dummy exported debugging functions to release build to facilitate
		debug/release interoperability.

Version 1.02.092
================
(Made by Jonathan, 27th January 1998)

1) Jonathan
	1)	Don't format drive C: in StartupThread unless it's a RamDrive.

Version 1.02.091
================
(Made by Alastair, 26th January 1998)

1) Morgan
	1)	Range checking implimented on import ordinals.  The import stub of
		a function ordinal that is not exported by the relevent Dll is
		fixed up to point to a paniking function.

	2)	Loader no longer does a FindByPath while searching for Dlls when no
		path is supplied.

	3)	TFindFile returns KErrNoMemory on OOM.

2) Alastair
	1)	Moved build system over to MAKMAKE.  The batch files for building F32 are
		created by e32tools's BLDMAKE.  From the GROUP directory, type BLD or CLEAN
		or PREPARE without any arguments for help on how to use the new batch
		commands.  MAKMAKE has not yet been applied to the build system for MISA or
		MX86.  CLEAN.BAT uses NMAKE to do its cleaning, so a PREPARE.BAT
		needs to have been done first.  PREPARE.BAT will make the makefiles and
		build the working directories.

	2)	Renamed freeze files from .FRZ to .DEF, including CONSMARM.FRZ, CONSMISA.FRZ
		and CONSWINS.FRZ.

	3)	Removed WINS_UID statements from all source files.


3) Jo
	
	1)	Fixed SW1-623.
		ESHELL no longer forces the command line into uppercase.  The shell 
		no longer calls the console T_TSHELL (it now calls it ESHELL for 
		consistency). 

	2)	Various cosmetic fixes.
		For example, when in a subdirectory, the prompt is now the correct
		drive:path> rather than drive:path\>.

	3)	Improved batch file processing.
		This includes searching for autoexec.bat at startup in the order
		y,x,...,b,a then z rather than just looking at the default drive.
		Other improvements include fixing the bug that caused problems when
		blank lines were present in the batch file, and making changes to allow
		a drive change in the batch file.

	4)	Various changes to the TShellCommand functions in class ShellFunction.
		For example, the addition of an ATTRIB function, the alteration of
		COPY, GOBBLE, RENAME and MOVE to allow spaces in the file/directory
		names and a fix to RD.

	5)	A recursive dependency checker for Dlls/Exes.
		This rushes through statically linked libraries checking that each 
		is available and that the Uids are correct.  The checker is called 
		automatically if CShell::RunExecutable fails, to give more information 
		than the "Not Found" and "Not Supported" messages that were obtained 
		previously.  The checker has also been added to class ShellFunction
		and thus may be used directly as a TShellCommand function:
		CHKDEPS [Executable or Dll Name].
		
	6)	Better decoding of kernel faults and panics.
		The Ctrl-Fn-R dialogue now only shows the last exception information 
		as a raw hex number if the reset reason was a Kernel exception. 
		For kernel faults and kernel panics it now prints the category which is
		obtained by decoding the exception information.


Version 1.02.090
================

1) Dennis
	1)	Set the session path for gTheLoaderFs to C:\ when the loader connects
		to the file server.


Version 1.02.089
================

1) Matthew
	1)	Added code so that loading of the window server, or opening files, is
		done only from rom when Hal::StartupReason() returns EStartupSafeReset.
		This is particularly for the SB variant, where C: persists across even
		cold resets. The user must reset the machine to get out of this
		state. Changes to:
			sfile\sf_dat
			sfile\sf_main
			sfile\sf_file

2) Alastair
	SARM
	1)	Integrated Single-process code into f32 source.
		Build commands are mnt sarm, sarmall, sarmrel etc.  There are no
		releaseables and no facilities for building test programs.  SARM builds
		use the "__SINGLE__" macro for distinguishing Single-process-specific 
		code.  Work directories are \epoc32\build\f32\sarm\[build] and
		\epoc32\release\sarm\[build].  SARM makefiles are generated into
		\f32\bsarm using perl to process makefiles from \f32\bmarm as a 
		temporary measure prior to the use of makmake for creating f32 
		makefiles.
			Changes to \bsarm\*, \group\mnt.cmd, \sfat\sl_mnt, \sfile\sf_ldr.

3) Dennis
	1)	Modified loader to read data section linear address from iDataBssLinearBase
		for ROM-loaded EXEs and to read KImageFixedAddressExe flag for RAM-loaded EXEs.
	2)	Added calls to UserSvr::UnlockRamDrive() and UserSvr::LockRamDrive() to
		implement RAM-drive protection.
	3)	Loader now keeps file server session (gTheLoaderFs) open all the time, instead
		of connecting at the start of every load operation and disconnecting at the end.
	4)	Files changed:
		inc\	f32image.h
		sfat\	sl_disk.cpp, sl_fat.cpp
		sfile\	sf_main.cpp, sf_ldr.cpp, sf_image.cpp, sf_ses.cpp

4) Morgan
	1)	Added some stuff in the loader to deal with Dll data.


Version 1.02.088
================
(Made by Morgan, 22nd September 1997)

1) Basher
    1)  UniCode Fix: f32file.h, KEntryArraySize=0x200 to 0x200*sizeof(TText)
    2)  UniCode Fix: \f32\sfat\sl_mnt.cpp so that this strips "." from the
        end of a given file/dir names. eg.(SUBDIR.).
    3)  Modified following test codes for UniCode builds:
        \f32\tfsrv\t_nmbs
        \f32\tfsrv\t_file
        \f32\tfsrv\t_fman
        \f32\tfsrv\t_dirs
        \f32\tfsrv\t_gdir
        \f32\tfsrv\t_parse

2) Morgan
	1)	See \F32\PATCH\RELEASE.TXT


Version 1.02.087
================
(Made by Jonathan, 5th September 1997)

1) Dennis
    1)	Fixed SW-21.
	Modified E32Image::LoadDlls() to call UserSvr::ExeAddDependency()
	instead of UserSvr::DllAddDependency() when an EXE is found to depend
	on a DLL which is already in the loaded DLL array.

2) Morgan
	1) Updated LDRPATCH.LDD.  See \F32\PATCH\RELEASE.TXT for details.


Version 1.02.086
================
(Made by Jonathan, 26th August 1997)

1) Pete
	1) Fixed problem where FAT file system was setting the lru
	cache maximum segment count to -1 on machines where free ram was less
	than 1Mb. This meant that all segments where deleted from the
	segment queue resulting in a panic on the first read of the ATA drive.

2) Morgan
	1) Improved wildcard substitution for Copy-and-Rename operations.
	2) Fixed SW1-385.  CFileMan now recurses into hidden and system
	   directories when KEntryAttHidden and KEntryAttSystem specified.
	3) Fixed SW1-121.  WINC F32 now keeps up with drives substed after
	   F32 started.  A side effect of the fix is accesses to drives that
	   are unused now returns KErrPathNotFound, rather than KErrNotReady.
	   This fix applies to WINC only.
	4) Added test code.


Version 1.02.085
================
(Made by Morgan, 1st August 1997)

1) Dennis
        1) Fix for loading a dll which is itself in a circular chain
           of dependency.

2) Graham
        1) Updated minor version number to 02.


Version 1.00.084
===============
(Made by Morgan, 1st August 1997)

1) Fixed SW1-160 - Duplicate filenames when cut and pasting V1.0 files
2) Fixed SW1-340 - Don't put in DLL-to-DLL links when one of the files is an EXE


Version 1.00.083
===============
(Made by Morgan, 27th July 1997)

1) Added T_DLOCL test program
2) Fix from Jal to remove memory leak on media change
3) '\000' added to list of illegal characters in filenames to fix SW1-53
4) Added LDRPATCH.LDD.  See \F32\PATCH\RELEASE.TXT
5) Modified E32Image::LoadDlls() to remember the address of each library
   loaded and to pass information back to the kernel so that it can build up
   a tree structure showing which DLLs are dependent on which.
   Fixes CSW3-1559, CSW3-1560, CSW3-1530, SW1-91, SW1-155, SW1-158


Version 0.01.082
===============
(Made by Morgan, 16th July 1997)

1) Increased the maximum size of the loader heap to fix SW1-82


Version 0.01.081
===============
(Made by Jal, --rd July 1997)

1) --


Version 0.01.080
================
(Made by Jal, 23rd June 1997)

1) Removed check for the existance of the fileserver (fix 7 below) from WINS builds


Version 0.01.079
================
(Made by Jal, 23rd June 1997)

1) SW3-688 Max number of root dir entries on the internal disk has been doubled.

2) SW3-1370 Caught KErrArgument in CActiveSchedulerFs::Error()

3) SW3-1475 All uppercase alphanumeric chars are allowed as 8.3 filenames

4) SW3-1003 Lowercase chars are not allowed in 8.3 filenames

5) SW3-1056  Accessing unavailable partitions on a cf-card returns KErrNotReady instead of KErrCorrupt

6) SW3-1172 The size of the disk is doctored in such a way that a newly formatted disk appears to have zero bytes used.

7) SW3-1360 Check that the fileserver does not exist before creating it.

8) SW3-1194 Disk error notifiers should not appear spontaneously.

9) SW3-850 Renaming a directory into a subdirectory of itself returns KErrInUse instead of KErrAccessDenied

10) SW3-854 Attempts to open files on read only media in EFileWrite mode fail with KErrAccessDenied

11) SW-3870 RFs::NotifyChangeCancel will not get failed in debug mode

Version 0.01.078
================
(Made by Jal, 3rd June 1997)

1) SW3-948 Added checksum to VFAT

Version 0.01.077
================
(Made by Jal, 28th May 1997)

1) SW3-142 Added change to minimise wear on cf-cards

Version 0.01.076
================
(Made by Jal, 27th May 1997)

1) SW-4369 Added EDirDescending flag to sort.
	
	This determines whether directories are sorted in the order A-Z or Z-A.
	Files are sorted according to the EDescending flag.

2) SW-5243 The loader thread no longer has system attributes

3) SW3-768 Another fix to asynchronous notification.

4) SW-4260 UNC filename support - changes from SimonB

	This is an unapproved change but has absolutely no effect whatsoever on any
	build except WINC and I'm told it is essential for the nautilus project.

Version 0.01.075
================
(Made by Jal, 21st May 1997)

1) Commented out some useless ldr debug printfs. (debug mode only)

2) SW3-687 

	Fixes to asynchronous notification.

Version 0.01.074
================
(Made by Jal, 21st May 1997)

1) All attempts to access a mount while it is being formatted return KErrInUse

2) When Password::IsEnabled() returns ETrue EWSRV.EXE is only searched for on drive Z:

3) Morgan, Fixed SW3-329
   The loader now sets the iFilename and iRootName as it is capitalised on the drive.

4) The notifier triggered by an error while writing is now partially asynchronous.

	All calls to the fileserver will be failed with KErrInUse except ::Close() methods
	and RFs::NotifyChange and RFs::NotifyChangeCancel.

5) The volumename is now treated as a zero terminated string.

Version 0.01.073
================
(Made by Jal, 15th May 1997)

1) Fixed .TXT defect

2) TParse::AddDir(aName) returns KErrBadName if aName contains a path delimiter

3) Directories are always sorted by name.

4) TFindFile searches for files in drive order Y-A,Z

5) The windowserver is also searched for in the above drive order.

6) The drive attributes returned by RFs::DriveList now take into account substituted drives.

7) Morgan
	Passed the path of the main loadee in all calls to FindDll().

Version 0.01.072
================
(Made by Jal, 8th May 1997)

1) Morgan
	Fixed Dll and Exe RAM loading problems SW-4476 and SW-4800 when
	used with E32(105).
	DPlatLibrary::Loaded() is called on all statically linked libraries
	during a load.  Previously some were missed out if Dlls further down
	the link chain pulled in new unseen libraries.
	CSessionLoader::LoadProcess now writes back the TLoaderInfo to the
	client even if the load fails.  This provides more information to
	allow client side code to cleanup if necessary.

2) Jal
	1) Sort by type sorts by both the 2nd and 3rd uids - then by name

	2) Fixed source of corruption in directory creation

	3) Added mount check before flushing information when closing a file

	4) Fixed problem with SetNotifyUser spotted by Doug	

Version 0.01.071
================
(Made by Jal, 30th April 1997)

1) Fixed 4121 -  "Asynchronous Writes of zero bytes completes twice"

2) Fixed 2696 - All localised text has been moved to ELOCL.DLL

3) Optimised CFileMan::Move to rename if the files reside on the same drive.

4) Fixed 4362 4367 and 4555 - MaxLength folder names can be created 
   and corruption will not occur.
	
	There are still problems in this area. 

5) Fixed 4256 - Volume label will default to ""

6) Fixed 4486 - All files are sorted by uid2

7) Fixed 4352 - Uids are sorted lowest -> highest. 

	Uid2==0 is treated as special case and listed last.


Version 0.01.070
================
(Made by Jal, 19th April 1997)

1) Fixed 3812 - The startcluster of a file is written to disk as soon as it is allocated.

2) Fixed 3462 - PsiWin 1.1 + long filenames in Z: no longer cause fileserver termination.

3) Fixed 3755 - The EFSRV.LIB that WINC releases is copied from the WINS build.

4) Fixed 3756 - ELOCAL.FSY in WINC links by ordinal

5) Fixed 3757 - All frz files are up to date.

6) Removed KUidExe from eshell

	UIDS
	====
	
	eshell.exe		UID1 = 0x1000007a
	efile.exe		UID1 = 0x1000007a	UID2 = 0x1000008c	UID3 = 0x100000bb
	elocal.fsy		UID1 = 0x10000079	UID2 = 0x1000008f	UID3 = 0x100000d6
	(efat.fsy		UID1 = 0x10000079	UID2 = 0x1000008f	UID3 = 0x100000d6) // wins only
	efsrv.dll		UID1 = 0x10000079	UID2 = 0x1000008d	UID3 = 0x100000bd

	KExecutableImageUid	 = 0x1000007a
	KDynamicLibraryUid	 = 0x10000079

	KServerProcessUid	 = 0x1000008c
	KFileSystemUid		 = 0x1000008f
	KSharedLibraryUid	 = 0x1000008d
	
	KFileServerUid		 = 0x100000bb
	KLocalFileSystemUid	 = 0x100000d6
	KFileServerDllUid	 = 0x100000bd

7) Fixed 3053 - Incorrect filesystem loading.

	As suggested by Geert, the code has been changed to invoke 
	the loader directly.

8) Fixed 3758 - Check uid1 before loading filesystem.

9) Fixed 3786 -  The 'Not enough power' notifier will only appear once.

Version 0.01.069
================
(Made by Jal, 19th April 1997)

1) Fixes to the WINC loader.

2) Updated Notifier to new values returned by Eikon. Fixes SW-3667

3) Added KUidExe to eshell.

4) Generally improved security of RFormat. Fixes SW-3574

	If a file, or directory is open RFormat::Open returns KErrInUse.
	While a disk is being formatted any attempt to open a file or directory will
	return KErrInUse.

Version 0.01.068
================
(Made by Jal, 16th April 1997)

1) Fixed SW-2760 (Reading from a text file gives KErrEof too early)

2) Fixed format defect
	
	After a media changed, format gave a spurious error.

3) Removed assert from RFs::NotifyChangedCancel fixing SW-3316

4) Relaxed attribute setting restrictions

	Attempting to set the directory attribute on a file (or viceversa) will have no effect rather 
	than causing an error. This allows code such as file.SetAtt(att,~att); to be written.
	Setting and clearing the same attribute is still panicked.

5) Fixed SW-3183, Copy doesn't preserve read-only status of file

6) Fixed SW-3143, CFileMan::Copy() to wild card destination drops the character after the dot

7) Removed notification on writing to the start of a file.

	This generated too many spurious notifications when files were being copied.

8) Removed notification on creation of temporary files to reduce the amount of scanning done by the shell.

9) Fixed SW-3032, Unknown files should be listed last

10) All arm releasables are petraned and use the new UID scheme.

11) Added notifications when write fails due to bad power and for any other failures.

Version 0.01.067
================
(Made by Graham, 9th April 1997)

1) Morgan
	1) TLoaderInfo changes for UID support


Version 0.01.066
================
(Made by Jal, 9th April 1997)

1) GetDir behaviour changed - hidden or system files will not be listed unless you ask for them.

	KEntryAttNormal|KEntryAttDir - List files & directories that are not hidden or system 
	KEntryAttNormal - List files only that are not hidden or system
	KEntryAttDir|KEntryAttMatchExclusive - List dirs only that are not hidden or system 
	KEntryAttHidden|KEntryAttSystem|KEntryAttNormal|KEntryAttDir- List all files & directories
	KEntryAttHidden|KEntryAttSystem|KEntryAttNormal- List all files only
	KEntryAttHidden|KEntryAttSystem|KEntryAttDir|KEntryAttMatchExclusive- List all dirs only

2) Frozen file server defs

3) Fixed defect spotted by JeremyW that allowed open files to be deleted.

4) TFindFile now also returns the file's uid.

5) Added notification on writing to the start of a file to catch changes to the uid.

6) MkDirAll checks that a disk is mounted before returning any other errors.

Version 0.01.065
================
(Made by Jal, 2nd April 1997)

1) Loaded compact rom media driver

2) Made iArray protected in CDir

3) Added a synchronous alert when a write is interrupted.

	This is only a provisional solution but seems reasonably stable.
	It will hang on pressing "CTRL-SHIFT-ALT S" which causes the window server to 
	attempt to dump the screen to a file but is otherwise ok.

	It is important that the threads which are needed to display the alert dialog 
	do not trigger it. RFs::SetNotifyUser(EFalse) can be used to prevent the dialog
	from being displayed.  

Version 0.01.064
================
(Made by Jal, 31th March 1997)

1) Jal

	1) Tweak to drive naming

	2) Added notification on media change

	3) Brought .FRZ files upto date

2) SimonB
	
	1) Removed dependency on MSVCRT from EFILE and ELOCAL


Version 0.01.063
================
(Made by Jal, 23th March 1997)

1) Optimised delete

2) Added drive naming functionality.

	TInt RFs::GetDriveName(TInt aDrive,TDes& aName) const;
	TInt RFs::SetDriveName(TInt aDrive,const TDesC& aName);

3) Fixed media change bug  

Version 0.01.062
================
(Made by Jal, 19th March 1997)

1) Completed protection against corrupt data

2) Fixed bug whereby folders with trailing spaces could be created.

3) Fixed SW-1251

	TFileText::Read reading a record into a buffer length of the same
	length returned KErrTooBig

4) Fixed SW-1265

	Changed the behaviour of TFileText::Read as suggested by
	Howard.

5) Removed checks that power is ok. SW-1618

6) Added TBool RFs::IsValidName(const TDesC& aName)

	Checks whether aName contains any illegal chars.
	
7) Added TUint8* RFs::IsFileInRom(const TDesC& aName)
	
	Convenience function to save "Open file, seek, close" being
	performed every time the address of the start of a file is needed.

8) RFs::SetEntry and RFs::SetModified can now alter directory times on WINS (they always worked on the rack)

	Problem spotted by DominicP and fixed by SimonB

Version 0.01.061
================
(Made by Jal, 14th March 1997)

1) The return value of MkDir has been changed creating a folder with the name of an existing file.

	MkDir attempting to overwrite a file returns KErrAccessDenied
	MkDir attempting to overwrite a directory returns KErrAlreadyExists

   Attempting to create a file with the name of an existing folder returns KErrAccessDenied.
   Attempting to create a file with the name of an existing file returns KErrAlreadyExists.
   (This is behaviour has not changed)
   
   Fixes SW-727

2) Added KEntryAttMatchExclude to allow more versatile directory listings.
	
	KEntryAttMatchExclude|KEntryAttReadOnly excludes all read only entries from the directory listing.
	KEntryAttMatchExclusive|KEntryAttReadOnly just list read only entries
	KEntryAttNormal list all entries except directories, hidden and system entries.

3) Attempting to remove a directory set as read only will return KErrAccessDenied

	Fixes SW-1399

4) CFileMan::Copy and Move return KErrAlreadyExist if  source == target	

5) Fixed WINS filedate defect SW-1350

6) Added conversion of WINS error ERROR_INVALID_DRIVE to KErrNotReady (for SimonB)

7) Added some protection against corrupt data making the filesystem panic or go into loops, more to follow.

Version 0.01.060
================
(Made by Jal, 7th March 1997)

1) Fixed RFs::Replace

2) Fixed RmDir

Version 0.01.059
================
(Made by Jal, 5th March 1997)

1) CFileMan::Rename allows the case of filenames to be changed
   Fixes SW-820 (again)

2) Added thread name generation to allow asynchronous CFileMen to be run simultaneously.

3) CFileMan::RmDir sends notification messages to the observer for each entry removed.

4) Fixed caching problem with cf-cards SW-207

5) Added iExtraInfo to CFileMan::Rename from SiamakM

6) Changes to TShell from William Roberts

	XREPRO - to run repro with [Y/N] confirmation
	
	Reports the build in the startup message

7) Fixed memory leak when CFileMan::Copying multiple identical files. (Diagnosed by Siamak)

8) Fixed 'double delete' bug in Loader that causes an exception under low mem conditions (Fix by Morgan)

Version 0.01.058
================
(Made by Jal, 3rd March 1997)

1) Stopped RFile::Rename allowing the new name to contain wildcard chars

2) RFs::Rename, RFs::Replace and RFile::Rename allow the case of filenames to be changed
   Fixes SW-820

3) RFs::NotifyChange(ENotifyEntry, ...) only notifies when an entry has been added or deleted.
   RFs::NotifyChange(ENotifyAll, ...) triggers a notification when any changes are made.
   Fixes SW-803 and SW-540

4) Added a NotifyChange at the successful close of a format.
   Fixes SW-936.

5) Fixed WINS filedate format

	When viewed from command prompt the filedates were 1 year too old 

6) RFs::Replace preserves the filedate
   Fixes SW-426

Version 0.01.057
================
(Made by Jal, 26th Feb 1997)

1) Bug fix to dismount/remount of cf-cards reported by Pete.

Version 0.01.056
================
(Made by Jal, 24th Feb 1997)


1) Morgan
	Added sanity checking to the loader

1) Jal
	More testcode + fixes to RRawDisk
	
	RRawDisk is opened on a mount rather than a drive


Version 0.01.055
================
(Made by Jal, 19th Feb 1997)

1) Fixed CFileMan::Rename defects SW-169 SW-171 and SW-177

Version 0.01.054
================
(Made by Jal, 13th Feb 1997)

1) Made ESortByUid sort each uid group alphabetically

Version 0.01.053
================
(Made by Jal, 12th Feb 1997)

1) Added an ESortByUid code to TEntryKey

	This will allow directory entries to be grouped according to UID.
	- Unfortunately the ordering of files within the uid group is arbitrary.

Version 0.01.052
================
(Made by Jal, 10th Feb 1997)

1) Error return codes for file reads and writes:

	READ ERRORS
	===========

	// Returns KErrNone - success
	// Returns KErrNotReady - non-critical error
	// Returns KErrCorrupt - an illegal read is detected
	// Returns KErrBadPower - power too low to attempt read
	
	WRITE ERRORS
	============

	// Returns KErrNone - success
	// Returns KErrNotReady - non-critical error
	// Returns KErrCorrupt - an illegal write is detected
	// Returns KErrBadPower - power too low to attempt write
	// Returns KErrAbort - critical write failure

	NOTES
	=====

	A critical error can only occur if power completely fails without warning AND a write 
	to the cf-card is in progress AND the card is removed before power is reapplied.

	A critical error means there is the possibility of corruption that cannot be repaired
	by retrying the write operation.

	A non-critical error means that the application can ask the user to rectify the fault, 
	eg: apply power or replace the disk and then retry the operation.


2) Implemented renaming of open files

3) Some directory handling optimisations

4) Bug fix to WINC DriveInfo from SimonB

Version 0.01.051
================
(Made by Jal, 2nd Feb 1997)

Jane:

1) Fixed Unicode ARM builds which had rotted with the type-safe linking.

   IMPORTANT - could I encourage everyone to release Unicode release and debug variants
   so that even if it doesn't work, we can measure the size of the Unicode ROM.

Jal:

1) Added an active object to restart the loader should it ever die fixing SW-47

2) The following chars are now illegal within filenames:

   < > : " / |

   This preserves compatibility with WINS and fixes SW-246

3) RFile::Flush only flushes the files size.

   This is a requirement in order to safeguard Store integrity.
   All entry attribute changes are written directly to disk.

4) CFileMan return value changed:
   
   Aborting a CFileMan operation now returns KErrCancel instead of KErrAbort.
   KErrAbort must be reserved for informing applications that a user has decided to abort a write.

Version 0.01.050
================
(Made by Jal, 24th January 1997)

Jal:

1) Added an RFs::GetDir variant that matches by TUidType

	IMPORT_C TInt GetDir(const TDesC& aName,const TUidType& anEntryUid,TUint anEntrySortKey,CDir*& aFileList) const;
	Null uid's may be used as 'wildcards'

2) Added an RDir::Open variant that matches by TUidType

	IMPORT_C TInt Open(RFs& aFs,const TDesC& aMatchName,const TUidType& aUidType);
	This was introduced to support the above GetDir function but may be useful to others.
	Files read from the directory are selected based on aMatchName and the uids.

3) New TFileManError errorcode

	If no files are processed by an operation it returns KErrNotFound and the TFileManError
	is set to ENoFilesProcessed.

	eg: If a copy matches no files it will return KErrNotFound.

4) Started alloc failure checking - debug build only (see test code)

5) Changed definition of TVolumeInfo.iSize on the ramdrive

	After discussion with SimonB the ramdrive iSize = the potential size of the ramdrive.
	ie current actual size + free memory

6) TParse no longer automatically strips leading spaces

	The VFAT standard allows filenames to have leading spaces.
	Trailing spaces are still stripped.

	eg: _L("   file   . ext") is a good filename.

7) Bug fixes
	
	Various fixes to bugs found by testing in low memory situations.


Version 0.01.049
================
(Made by Jal, 10th January 1997)

1) Morgan,
		1) Increased the stack size for the LoaderThread because it
		   was exploding on the X86 version.
		2) Added Memory Alloc Failure tools and a cleanup stack to the
		   loader.
		3) Fixed the loader so it behaves under low memory
		   conditions and added alloc failing test code (T_LDR) for the
		   X86 platform.
		4) Fixed a bug that was allocating too much ram for an Image's
           code chunk.
		5) Put in a fix so that device drivers can be loaded from RAM.
           Problems arise because device drivers link directly to
		   EKERN.EXE and the loader verifies all exporting libraries
		   are DLLs, (which EKERN.EXE is not).

2) Graham
                1) Made relocatable static data changes appropriate for
                   our real-time needs.

Jal:

1) Fixed HA-297.

	CFileMan::Move cleans up after failure.

2) Fixed HA-299

	CFileMan::Copy detects cyclic copies

3) Fixed HA-301

	CFileMan::SetAsynchronous has been removed.
	All asynchronous functions require a TRequestStatus which is used to logon to the thread.

4) Minor changes to api

	RFormat::Open argument changed from TFormatMode to TUint
	RFormat::Next argument changed from TPckBuf<TInt>& to TInt&
	CFileMan NewCopy,NewMove etc have replaced the old functions 
	Made recursive CFileMan::Rename illegal due to problems renaming across directories
	Removed CFileMan::SetRecursiveSearch and added a switch ERecurse.
	Renamed CFileMan::BytesTransferred to BytesTransferredByCopyStep
	Removed CFileMan::Logon and CFileMan::LogonCancel
	TFindFile::FindByPath now requires a TDesC* to save 512 bytes of stack space

5) Removed aRelPath argument from CDirScan::SetScanData

6) Added TScanDirection to CDirScan

	EScanDownTree starts at the top of a directory tree scanning each layer in turn.
	EScanUpTree starts from a leaf directory and works upwards.

7) Fixed SW-55

	CDirStack::PushL cleans up its argument on failure.
	
8) Fixed HA-241 - Added TParsePtr and TParsePtrC classes

	To save stack space TParsePtr allows the TParse functionality to 
	be used without	copying a buffer to an intermediate TParse.
	TParsePtr takes a TDes& which is manipulated by the usual TParse functions.
	TParsePtrC takes a TDesC& and the AddDir() or PopDir() functions cause a panic.

9) Fixed HA-298 & HA-412

	CFileMan::RmDir uses the callbacks before deleting files/directories.

10) Fixed HA-271

	CFileMan::Copy overwrite option bug fixed

11) TFileText::Read returns KErrEof 

	This is necessary to distinguish the case of reading an empty line from
	hitting the end of the file. 
	
12) Changes to file size are flushed to disk before a seek backwards is made.

	This is a requirement for Store.

13) Fixed HA-413

	CFileMan error reporting capabilities have been enhanced.
	TFileManError gives details about the cause of the error and
	GetCurrentTarget gives the name of the target of the operation.

14) Enabled the ramdisk to access memory directly.
	
15) Moved occurances of TEntryArray onto the heap to help prevent out of stack space problems

16) Changed the error returned by RFile::Create from KErrInUse to KErrAlreadyExists 
	when the conflicting file is open.

17) Additional shell commands

	TRACE [0xFFFFFFFF] [/f] [/l] [/s]

		/f - turn on Fat filesystem debugging information
		/l - turn on Loader debugging information
		/s - turn on fileServer debugging information
		0xFFFFFFFF - set E32 debug info mask
		
		TRACE 0 - turns off all debugging information.
	
	DEFPATH [string]

		Set default path to "string". No argument returns the current default path

18) RFs functions that can act on directories as well as files have been made more user friendly.

	Rename, Entry, SetEntry, GetShortName and GetLongName will automatically handle 
	directory arguments such as _L("C:\\System\\") which previously needed to be passed
	without the trailing backslash.

19) RFs::SetEntry and RFile::SetAtt panic if attributes KEntryAttDir or KEntryAttVolume are set or cleared
	A check is also carried out for attempting to clear and set the same attributes in the same call.

20) CFileMan callbacks have been removed in favour of a Mixin class as recommended by MartinT.

Version 0.01.046
================
(Made by Jal, December 21st 1996)

1) Fixed cf-card bug.
	
	Cf-card data was being corrupted as the card filled > 170k. However, due to 
	internal caching of good data the corruption does not appear until after the 
	card is remounted - which allowed test code to pass.                

Version 0.01.045
================
(Made by Matthew, December 13th 1996)

This release is binary compatible with 044

1) Matthew
        1) Fixed HA-298 (CFileMan::RmDir() callbacks not called).
2) Morgan
        1) Fixed HA-311

Version 0.01.044
================
(Made by Graham, December 9th 1996)

This release is binary compatible with 042

1) Graham
        1) Made changes to the PS function in ESHELL.EXE which had
           become bugged due to the changes to MatchF() in E32 075.

2) Morgan
        1) Bug fix in the loader:  The last linked in DLL was being ignored
           by the library load finalisation code.
           
3) Simonb
        1) Moved the WINC file server over to the new WINS compatable E32
        2) Changed loader code so WINC can load Dll's from anywhere
        3) Added new ELOCAL for WINC in the SWINC directory. This
           doesn't map drives or mess around with ROM inttracacies.
        4) Removed from sf_wins DriveMapping


Version 0.01.042
================
(Made by Graham, November 28th 1996)

1) Matthew
	1) Changd lots of functions retuning TInts to identical functions returning
	   TBools.

	2) Changed Wins UID scheme. See E32 release notes.

2) Andrew Thoelke
	1) Fixed bug in the code in the fat filing system to expand the lower portion of
       the seek index when the file shrunk.


Version 0.01.041
================
(Made by Jal, November 20th 1996)

** Almost binary compatible with 039
** Format has changed. If you do any disk formatting your code will need attention
** Otherwise the release is entirely binary compatible.

1) Improved caching
        
        There is now a global cache shared between all Mounts as a 
        least recently used list of sector sized segments.

2) Fixed MkDir Bug
        
        MkDir on the root now returns  KErrAlreadyExists instead of
        KErrBadName

3) Fixed HA-268 access violation from CFileMan::Delete

4) Format overhauled

	Format functionality now complies with the SDK.
	Open returns a 'count' which is decremented to zero by repeated calls to Next.
	EFullFormat fills the entire disk with 0xFF before formatting.
	EQuickFormat makes only the minimum changes needed for the disk to appear formatted.
	EHighDensity and ELowDensity are ignored.

5) WINS Z: emulation bug fix

	Opening a file on Z: with mode EFileWrite now returns KErrAccessDenied in both
	wins and arm builds. (Reported by DuncanS)

6) Added a cluster index to RFile to improve seek times

7) Cached the location of the last directory visited

8) TFileText recognises \r\n as a line terminator

9) Added overwrite option to:
	
	CFileMan::Copy 
	CFileMan::Rename
	CFileMan::Move

10) KErrInUse is returned when access to a file is not granted because someone else is using it.
	KErrAccessDenied is returned if write privileges are requested on a readonly file.
	KErrInUse is returned preferentially to KErrAccessDenied.

Version 0.01.040
================
(Made by Graham, November 8th 1996)

1) Alastair
        1) Introduced process status mode, entered by typing "ps".
           help information while in the mode is displayed by typing
           "?" or "h", and the mode can be exited by pressing "q".
           This command is used to display the current state of
           O/S resources such as threads, processes, chunks etc.


Version 0.01.039
================
(Made by Jal, November 6th 1996)

** Binary compatible with 038 **

1) Fixed defect preventing ARM Debug booting on 8MB machines.

2) Fixed defect in RFile::SetSize reported by Geert.

Version 0.01.038
================
(Made by Jal, October 26th 1996)

1) Minor changes to API

	KWildAny and KWildChar replaced by KMatchAny and KMatchOne

	TOpenFileScan::Owner removed

	NewSetErrorCondition -> SetErrorCondition, after deleting the old function

	TFindFile::File returns a TDesC& instead of a TParse

	+ others

2) Changed internal variables in TParse from TInt8 to TUint8

3) Changed the text shell TRACE command to take a hex number rather
   than ON and OFF. You can now turn on debug using eg: TRACE FE7F.
   See K32STD.H for list of KTRACE_OPT values which can be set for
   different levels of debug information available from E32

Version 0.01.037
================
(Made by Jal, October 18th 1996)

** This release is binary compatible with 036 **

1) BugFix: CF cards are now mounted as they are inserted.

2) Fixed Protea B2 HA-192: Open files can no longer be deleted

3) BugFix: Stopped zero length reads on a CF cards reporting an error.

4) Fixed Software defects HA-247: WINS build converts ERROR_DISK_FULL to KErrDiskFull

5) Fixed Protea B2 HA-201: 
	
	Only C, D, E, F, and G appear as local drives on TDriveList.
	NB: E, F and G are available as partitions on a CF-Card.

6) Added wildcard file location to TFindFile

7) Fixed bug in EShell. Del with no arguments deletes no files.

8) Added a count to the SetErrorCondition function.

	To preserve binary compatibility I had to make it a new function NewSetErrorCondition
	which will be renamed when the old function is deleted after an unfreeze.

9) Added another callback to CFileMan.

	CallBackDuring() is called while copying files. A return value of ECancel will stop the
	copy, EContinue to carry on.

10) Added BytesTransferred() function to CFileMan.

	This function is to support the smooth increment of progress bars during a file copy.
	BytesTransferred should be called within a CallBackDuring().

11) CF-cards format has been changed again. They can now be freely transfered between protea
	and your PC.

12) Some optimisations to RFile::Seek. More to follow.

13) The loader has moved into a thread that is continuously running. This should
	prevent problems caused by the interaction between the loader and the undertaker.


Jane
1)  Fixed a few places where code assumed KErrGeneral==KNotFound

Version 0.01.036
================

1) Morgan
        Changes to EPOC platform:
        1) Fixed RAM loading of statically linked libraries:  A DLibrary
           of a statically linked DLL is now created relative to the newly
           created process.
           Also, the call to UserSvr::LibraryLoaded for each library is delayed
           until all Dlls are loaded so that the code chunk is not protected
           before the loader is able to fix-up the imports and entrypoints.
           And, the DllRefTable of a library/exe is updated for all of its
           imported DLLs, not just the ones that have not already been 'seen'
           further up the load chain.
           
        2) Added 4 Uids (for Uid1) that are checked for EXEs and DLLs at load time:
           KNarrowDebugUid, KNarrowReleaseUid, KWideDebugUid, KWideReleaseUid.
        
        3) Added type safe linking for statically linked DLLs.  The libraries 3rd
           Uid is encoded in the DLL's export name.  eg. TEST[12345678].DLL would
           link to TEST.DLL and the 3rd Uid would be verified to be 0x12345678
           when it was loaded.

        4) Change to E32ImageHeader and TLoaderInfo data structures to add
           iPriority member.
2) Jal
        1) *.* matches all filenames, with or without extensions.

        2) TOpenFileList is implemented. 
        
        Calling TOpenFileList::Next returns a CFileList of files 
        opened by one RFs session.

        3) Fixed Notify bug. Multiple sessions can now be notified of
           file changes.
        
        4) Various changes to CFileMan.
        
        All operations are now implemented and allow recursion through 
        subdirectories.

        5) Bug fix to WINS RFs::SetEntry.

        Setting the time on a read only file gave KErrAccessDenied
        - spotted by Dominic.

Version 0.01.035
================
(Made by Jal, September 27th 1996)

1) Added an ESortNone option to TEntryKey.

        Any code that relied on ESortByName == 0 will be broken by
        this change. 

2) SteveG:
    1) Added DEBUG command to the E32 text shell which starts the GDB stub. Type
       debug <filename>. The stub, D_GDB.EXE, must be present in Z:\SYSTEM\LIBS
       and should be after EUSER.DLL and before anything you are debugging
       in the ROM obey file. D_GDB will live in Z:\SYSTEM\PROGRAMS in
       future, but for now problems may occur if it is not in LIBS.
       
    2) Fixed a few bugs in the shell to do with running executables when supplying
       paths from different drives or directories.

Version 0.01.034
================
(Made by Jal, September 23rd 1996)

1) Local drive attributes are initialized even if a disk is not present.
	
	- TDriveList will now contain entries for all local drives.
	- TDriveInfo.iType is set to EMediaNotPresent if the drive doesn't contain a disk.
	
2) Changes to CFileMan.

	By default CFileMan provides synchronous functions. 
	Call SetAsynchronous(ETrue) to make CFileMan operate asynchronously within a low priority thread.
	An optional callback function is checked after each successfully completed or 
	failed operation and should return retry, continue or abort.
	
3) Bug fix: Under WINS drive C: now returns the correct media attributes.

4) TDriveUnit added to F32FILE.H from BillB.

5) Bug fix: TFindFile no longer panics if its RFs session cannot connect. 
	
	A connected session is passed in during construction.

6) Bug fix: EShell Type command opens files with mode EFileShareAny

7) A change to the bootsector format means any cf-cards formatted by release 033 will not be recognised.

Morgan
1) Extended Library and Process loading in line with E32.
2) Added more library loading test code.
        
Version 0.01.033
================
(Made by Jal, September 11th 1996)

1) Initial path moved to C: on all platforms.

2) Bug fixed: NTFS Uid streams can now be read.

3) Bug fixed: Code no longer attempts to read a UID from a file with length < sizeof(TCheckedUid)

4) EShell now has a fully functional single line editor - thanks to SteveG

5) TParse changed:

	The path and extension are now inherited regardless of drives.

6) KErrDiskFull is now returned when you run out of disk space.

7) All WINS drives are now hidden by default.

        WINS drives may be accessed by using environment variables.

SimonB

1) Created a new MAK file in BWINC - EFSRV. This contains both client and server side of the file server code.

2) Changes to initialisation code, with the removal of the dependancy on k32Std.h !

3) Creation of new TWINC directory. Conatins mak files for testing the TFSRV code under WINC. Not all test code works, due to dependancies on the existance of files such as ECONS. Will change the testcode for __WINC__

4) MNT file changes in parallel with e32.

Version 0.01.032
================
(Made by Jal, September 7th 1996)

1) Jane
	1) Added environment path & system directory searching for exe loading

	2) Added environment path searching for dll loading, and improved
       WINS loading scheme to cope with new scheme for C: and Z:

2) Jal

	1) The directory that represents drive C: under WINS will default to
	the current drive. Similarly, the current drive will be used if the drive
	is omitted from an environment variable value.

	2) CFileMan::Copy and Move have been implemented and will handle
	wildcards.

	3) Bug fixed - RDir::Open no longer returns an error if the directory
	is empty.

	4) Added TDriveNumber, an enum to enumerate drives.

	5) Implemented RFs::Replace(anOldName,aNewName);
		
		The code is equivalent, for most purposes, to
		
		Delete(aNewName); // ignore error
		Rename(anOldName,aNewName); // pay attention to error
		
		The critical difference is that the function is atomic. That is, it avoids 
		the caller having to worry about the case of the Delete succeeding and the Rename failing.

	6) Added functionality to TFindFile::FindByPath
         
			If the path does not specify a drive letter all drives are
	searched in turn from A -> Z.

	7) The real FAT and ROM filesystems may be added under WINS for
	testing purposes.

		test.Next(_L("Mounting FAT filesystem"));
		r=TheFs.AddFileSystem(_L("EFAT"));
		test(r==KErrNone);
		r=TheFs.MountFileSystem(_L("Fat"),EDriveY);
		test(r==KErrNone || r==KErrCorrupt);
		if (r==KErrCorrupt)
			FormatFat();
		test.Next(_L("Mounting ROM filesystem"));
		r=TheFs.MountFileSystem(_L("Rom"),EDriveX);
		test(r==KErrNone);

	(Code taken from T_SCAN.CPP)
                
	8) Initial default path is set to Z: on all platforms.

Version 0.01.031
================
(Made by Jal, August 29th 1996)

1) ROMFILE.BIN and IRAMLDRV.BIN have been superseded by a new system 
   on the WINS platform.

	C: now shows the files in C:\Epoc32\WINS\C
	Y: has disappeared forever.
	Z: now defaults to C:\Epoc32\WINS\Z

	Those who live on D: or have a very good reason to use a 
        different path can set an environment variable _EPOC_DRIVE_? 
        (where ? is the drive letter). eg:
	
	set _EPOC_DRIVE_C=D:\Epoc32\WINS\C
	set _EPOC_DRIVE_Y=C:\MY_Y_DRIVE

2) RFs::IsRomAddress is not supported by the new system and will
   be removed after the api is unfrozen.

Version 0.01.030
================
(Made by Jane, August 26th 1996)

1)  Jane and Jal
	Various mnt.cmd and bld.cmd bug fixes for the new directory scheme.

2) Morgan
	Various WINC build problem fixes for the new directory scheme

Version 0.01.029
================
(Made by Jane and Jal, 17 August '96)

1) Fixed bug in RFs::Delete - corrupted disk when size > 0.5MB

2) Stopped bad relocations warnings from being triggered by EShell

3) Added EFSRVD.DEF to \F32\BWINS\LI.PRJ

4) RFile::ChangeMode(TFileMode aMode) added.

	Allows the share mode of a file to be toggled between EFileShareExclusive and EFileShareReadersOnly.
	Passing any other value returns KErrArgument.
	KErrAccessDenied is returned if a file has multiple readers and aMode==EFileShareExclusive or if the 
	file share mode is EFileShareAny.

5) Fixed "md" bug in Shell.

6) Added functions to allow access to short (8.3) filenames. 
   (For use by people trying to talk to primative 16bit windows apps ie: Psiwin)
	
	RFs::GetShortName(const TDesC& aLongName,TDes& aShortName);
	- Gets the short name associated with the VFAT aLongName
	- aLongName must include the full path to the file if it differs from the sessionPath
	RFs::GetLongName(const TDesC& aShortName,TDes& aLongName);
	- Gets the VFAT version of aShortName
	- aShortName must include the full path to the file if it differs from the sessionPath
	
7) The WINS filesystem now returns long filenames as we now have an alternative method for accessing short ones.

8) Renamed RFileText to TFileText and removed obselete close method.

9) Changed function names:
	
	const TParse& CDirScan::RelPath() -> TPtrC CDirScan::AbbreviatedPath()
	const TParse& CDirScan::AbsPath() -> TPtrC CDirScan::FullPath()
	void CDirScan::SetScanDataL(...) changed TEntryKey to TUint
	TPtrC CFileBase::RelPath() -> TPtrC CFileBase::AbbreviatedPath()
	TPtrC CFileBase::AbsPath() -> TPtrC CFileBase::FullPath()
	void CFileMan::Attribs(const TParse& aFileName,TUint anAttributes) -> Attribs(const TParse& aFileName,TUint aSetMask,TUint aClearMask)
	void CFileMan::Copy(const TParse& aName,const TParse& aNewPath) -> Copy(const TParse& aName,const TDesC& aNewPath)
   	void CFileMan::Locate(const TParse& aName,const TDesC* aSearchPath=NULL); has been removed.
	void CFileMan::LocateByPath(const TParse& aName,const TDesC* aSearchPath=NULL); has been added, but not implemented
	void CFileMan::LocateByDir(const TParse& aName); has been added, but not implemented

10) Added api for TOpenFileScan. (not yet implemented)

	This class allows the user to iterate through the files that are currently open.
	Calling Next creates a CEntryList (a typedef of CDir) of the files opened by a thread.
	The owner of the files listed is returned by calling Owner().

11) Added api for function RFs::Replace (not yet implemented) as proposed.

	TInt RFs::Replace(const TDesC& anOldName,const TDesC& aNewName);

12) Added RFs::IsRomAddress


13) Added api for RFs::GetNotifyUser and RFs::SetNotifyUser (not implemented)

	If NotifyUser == ETrue the user is automatically requested to replace a CF card whenever necessary.
	If NotifyUser == EFalse an error is returned to the caller - a file may be marked corrupt if a write failed.

	Details:
	When attempting a read a check is made to ensure the disk is available. If it is not already present in a drive the
	user is asked to replace the disk. The request is repeated until the user complies or aborts the read. In this case 
	an KErrAbort is returned.
	If the disk is removed while writing data the user is requested to replace the disk and warned that failing to do so
	will result in the loss of data. If the user aborts the write the file is marked corrupt and KErrAbort is returned.

Version 0.01.028
================
(Made by Graham, 27 July '96)

1) Ported B_GEN.CPP and fixed the bugs it showed up.

2) Made more changes to the shell.
	
	Invalid switches should no longer cause a panic
	Batch files and executables can be run without specifying the .XXX extension.

3) TInt RFs::CheckDisk(const TDesC& aDrive) method added.

	Returns KErrNone or an error is the disk is corrupt.

4) void RFs::SetErrorCondition(TInt anErrorCode) method added

	Causes calls to the fileserver to fail with error anErrorCode. (anErrorCode==KErrNone clears the failure mode)
	- Only available in the debug build.

5) Operations on the ROM such as write to file, create new directory etc now return KErrAccessDenied instead of KErrNotSupported

6) Compression for the internal ram drive has been implemented.

Version 0.01.027
================
(Made by Graham, 02 July '96)


1) VFAT has been implemented
	
	Strings of upto 255 chars in length may be used as file or directory names.
	This has enabled us to produce the first tested Unicode release of the 
	fileserver for some time.

2) Fixed NT time <-> TTime conversion
	
	MarkT reported a 1hr discrepancy between files listed from a dos box
	and files listed in the shell.

3) Notify has been implemented

	RFs::Notify allows programs to automatically update file information as changes occur.

4) Change to TSeek
	
	OLD :: enum TSeek {EAddress,EStart,ECurrent,EEnd};
	NEW :: enum TSeek {ESeekAddress,ESeekStart,ESeekCurrent,ESeekEnd};

5) The FAT is now cached

6) Directory entry bug fixed:

	Directories with > 26 entries corrupted the FAT

7) Rename checks for duplication of file names. Rename across directories is implemented.
	
	The error returned if a rename across drives is attempted has been changed to KErrArgument.

8) Improvements to the shell from Matthew:

	Wildcards and a new destination can now be specified in Copy.
	Delete also accepts wildcards.
	Various bug fixes.

9) Fixed bug HA-162 in RDir asynchronous read
	
	RDir::Read(TEntry& anEntry,TRequestStatus& aStatus) <- old
	RDir::Read(TPckg<TEntry>& anEntry,TRequestStatus& aStatus) <- new

Jane -

1) RAM loader code changed to support new E32Image format (E32TOOLS 029 and later.)

	IMPORTANT NOTE - You must now update to the latest version of E32TOOLS. This
    version of E32/F32 is incompatible with versions of tools pre 029.

2) Added limited support for search paths in RAM loading of DLLs. More will be added with an additional
   search path parameter in the client interface.
	
Version 0.01.026
================
(Made by Graham, 31 May '96)

1) Graham

        Fixed bug in loader with EXE files which import from more
        than one DLL.

2) Jal
        Fixed UID bug. Uids were being read all the time regardless
        KEntryAttAllowUid.

3) Made GetDir sort using CompareF instead of just Compare.

Version 0.01.025
================
(Made by Graham, 30 May '96)

1) Implemented RFileText.
	
	RFileText::Read reads a terminated line of text into a descriptor
	RFileText::Write writes the descriptor data to the end of the file and adds a terminator
	RFileText::Seek seeks to either the start or end of a file or panics.
	- after J-Day this will change to TFileText as the close method is not required.

2) Changes to TShell (from DW) that display more information if a process panics.

3) Implemented TFindFile
	
	TInt TFindFile::FindByPath(const TDesC& aFileName,const TDesC& aPathList);
	- Looks for aFileName then searches the semicolon delimited aPathList.
	TInt TFindFile::FindByDir(const TDesC& aFileName,const TDesC& aDir);
	- Looks for aFileName in directory aDir on all drives - the default drive is searched first.
	TInt TFindFile::Find()
	- Searches the next drive or member of the pathlist.
	void TFindFile::File()
	- Returns the last file found
	Return values are KErrNone or KNotFound

4) Added change suggested by SimonB to WINS filesystem (HA-154)

5) Modification to Uid behaviour under WINS at the request of GeertB:
	
	A check for a uid at the start of a file is made when the NTFS :UID stream is not present.

6) Fixed bug HA-152. The name of the file generated by RFile::Temp now specifies the drive.

7) Fixed bug HA-139. The archive file attribute is now set when:
	
	The file is created or replaced.
	The file is written to.

Version 0.01.024
================
(Made by Graham, 24 May '96)


1. Rename bug fixed - spotted by DominicP

2. Implemented Uids.

   If RFs::GetDir is called with KEntryAttAllowUid selected the
   entrylist will contain UID information if it is present.
   All calls to RFs::Entry will return UID information.
   The WINS ELOCAL.FSY implements uids as an NTFS filestream "UID"
   associated with the file.

   WINS uid filestreams may be created and read using the tool e32uid.exe

3. Created new directory TMAN for non-standard tests that must be run manually.

4. Changed implementation of RFile::Write

   All clusters required for a write are allocated 
   before data is written.

5. The mode argument of RFile::Create and RFile::Replace is
   now automatically ored with EFileWrite.

6. GetDir on the root directory of an empty floppy in a: no longer
   returns an error.

7. Jane
	Added support for RAM loading of dlls and exes. Currently entrypoints
    are called in the same manner as for ROM exes and dlls, i.e. only once
    for a process attach, and never for a thread attach/detach, or a process
    detach. 


Version 0.01.023
================
(Made by Jal, 9 May '96)

JAL:

1). Changed RFile::Read() to not return KErrEof.

Version 0.01.022
================
(Made by Colly, 6 May '96)

Colly:

1). T_RCOUNT.EXE would fail if it was run from the command line
    as T_RCOUNT without the .exe extension. This was because the
    program tried to open itself. Fixed this with a hack since the
    O/S was at fault not returning the full path name and leaving
    off the extension .exe

2). F32MSG.H was incorrectly namedas it is a private header file.
    Renamed to message.h.

3). Added some inline functions to f32file.h which meant a new
    header file f32file.inl. So remember to update all dependencies.

Jal:

1). Arguments to GetDir changed from aFileList to anEntryList -
    the former was misleading as the entries listed could be either
    files or directories.

2). CDirScan added. This provides functionality for traversing a
    directory structure. CDirScan::SetScanData sets the root of the
    structure. CDirScan::Next returns the directory contents. Repeatedly
    calling next will move through the directory structure. See the
    test code T_SCAN.CPP for an example.

3). TShell: Matthew has made a few changes to replace explicit numbers
    with meaningful constants. CShell now owns a CConsoleBase* instead of
    subclassing CConsoleTextWin - as suggested by DW.

4). As requested by KevinD:
    RFile::Read returns KErrEof if it cannot read any more data.

5). Stub functionality has been added for:
    CFileMan - active object support for functions that are recursive
               or can take a wildcard.
    CFileBase - base class for CFileMan
    RFileText - read/write \cr\lf delimited text records from a file.
    RRawDisk -  allow direct disk access, no other resources can be open
                during direct access
    RFs::ListOpenResources - returns a list of the currently open resources
    RFs::ListOpenFiles - returns a list of the currently open files.
    TFormatMode::EQuickFormat - just resets the FAT table and root directory

    I'm still looking at ways to test for server side alloc heaven from
    client side test code. Hence some provisional debuging facilities
    have been added:
        RFs::ServerHeapMarkStart();
        RFs::ServerHeapMarkEnd();
        RFs::ServerHeapFailNext(TInt aCount);
    Further functions to simulate Read/Write, low battery etc failures
    are under discussion.

6). Added automatic formatting of the RAM drive to the startup sequence.

7). Added Universal identifiers to TEntry

        TEntry::operator[](TInt anIndex) const;
        TEntry::IsUidPresent(TUid aUid) const;
        TEntry::IsUidValid() const;
        
8). mnt.cmd:

    Added %_F32VER% as the second parameter of all recursive
    getXXX calls to fix defect HA-121 reported by DavidW

9). RFs::GetDir(const TDesC& aName,TUint anEntryAttMask,TUint anEntrySortKey,CDir*& anEntryList,CDir*& aDirList)

    Changed argument name aFileList to anEntryList to reduce confusion as
    reported in defect HA-90 by SimonC. anEntryList can contain either
    files, directories or both depending on anEntryAttMask. eg:
        anEntryAttMask=KEntryAttMaskSupported => list all entries
        anEntryAttMask=KEntryAttDir|KEntryAttMatchExclusive => list directories only
        anEntryAttMask=KEntryAttNormal => list files only

10).Shell Copy Command: Will not change the time stamp to fix HA-109
    reported by SteveG

Version 0.01.021
================
(Made by Graham, 24 April '96)

1)  Fixed exception generated when trying to access a non-existent drive. 
    (Reported by Brendan as defect HA-108)

2)  Add to .OBY files
    file=c:\work\emarm\elocald.fsy sys\elocald.fsy

3)  Renamed T_FORMAT to T_MISC as it includes many simple, general tests as
    well as formatting.

4)  RFs::MkDir trying to create a root directory on a mounted drive:
    MkDir(_L("\\")); or MkDir(_L("\\PROG")); will now return KErrAlreadyExists.
    If the drive is not mounted the return value could also be
    KErrNotReady or KErrCorrupt.
        
5)  RFs::RmDir when trying to delete a root directory returns KErrInUse.

    In general, not ready errors, corrupt media, etc are given priority
    over other errors.

6)  KDefaultDrive=KMaxTInt, the previous value was zero. This allows
    simplification of drive numbering. Now A: has value 0, B: =1 etc

7)  Split the fat file system off into its own dll. In WINS this is called
    EFAT.FSY because the local filesystem is NT. For other platforms the
    fat filesystem is named is ELOCAL.FSY. NB: .OBY files will need to
    add the extra line: file=c:\work\emarm\elocald.fsy sys\elocald.fsy

8)  Deleted obselete file F32Locl.cpp from SWINS directoryrCorrupt.

Version 0.01.020
================
(Made by Graham, 8 April '96)

1) Jal,
        Run test programs on X86 and ARM platforms.

	MkDir acts only on the path presented by its argument and will
	ignore any filename.
	eg:
	MkDir(_L("C:\\PROG1\\PROGDATA.TXT")); will create a PROG1
	directory. 
	MkDir(_L("C:\\PROG1\\"); is exactly equivalent to the above.
	MkDir(_L("C:\\PROG1"); will return KErrBadName
	Similar changes have been made to RmDir() and RDir::Open().
	This change should be made consistently across all directory
	oriented functions - please report any I miss.

	TParse Set(aName,aRelated,aDefault):
	aName of the form "xxx\yyy" now returns KErrBadName
	Any name that contains a '\' is treated as a path and therefore
	must start with a '\'
	Set(_L("\\xxx\\yyy"),NULL,_L("C:\\BBB")); returns a drive "C:"
	path "\xxx\" name "yyy"

	RFile::Commit has been renamed to Flush

	GetDir functionality should now be consistent across rom, fat and
	local drives:
	GetDir(Path_Ignoring_Name,Selection_Flags,Ordering_Flags,FileList)
	GetDir(Path_Ignoring_Name,Selection_Flags,Ordering_Flags,FileList,DirList)
	eg:
	GetDir(_L("C:\\"),NULL,NULL,aFileList); lists files only from the
	root directory into aFileList
	GetDir(_L("C:\\"),KEntryAttDir,NULL,aFileList); lists all files
	and directories excluding hidden and system files
	GetDir(_L("C:\\"),KEntryAttMaskSupported,NULL,aFileList); lists
	everything except the volume entry.
	GetDir(...,...,...,...,aDirList) aDirList lists all directories
	in addition to the above functionality.

	TParse:: if aName or aRelated overrides the aDefault drive the
	rest of the default information
	is considered invalid and the default is treated as the root path
	_L("\\");
	eg:
	TParse.Set(_L("World"),&_L("Y:"),&_L("X:\\HELLO\\.EXT"));
	produces a fullname _L("Y:\\World");


Version 0.01.019
================
(Made by Morgan, 18 March '96)

1). Matthew,
	Redesigned the text shell to allow it to be more easily
	maintained. Also added support for batch files.

2). Jal,
	An implementation of TPlatDrive from PeteS. Enables F32 to read and
	write to a fixed length file on C: via TLocalDrive.
	Added code to TBool P::Initialise() to initialise the
	TPlatDrive array.


Version 0.01.018
================
(Made by Morgan, 23 Feb '96)

1).
	Updated to work with E32 build 054.

2). Matthew
	Uses the new versions of CServer and CSession.
	Improved the test shell: added TYPE and HEXDUMP commands, made CD
	remember the current directory for each drive, and added extra
	switches, including '/?'.

3). Jane
	Fixed bug in F32 loader (not completing with correct error status)
	- now when you try to run a non-existant app you get a helpful
	little "File Not Found" error message.


Version 0.01.017
================
(Made by Morgan, 29 Jan '96)

1).	Updated to work with E32 build 053.

2).	Removed all trace of old date/time classes.

3). Added a GETSRC verb to MNT.CMD


Version 0.01.016
================
(Made by Matthew, 16 Jan '96)

1). Matthew
	Updated to work with E32 build 52, including partial conversion to
	the new date/time classes.


Version 0.01.015
================
(Made by Matthew, 21 Dec '95)

1). Updated to work with E32 build 051.

2). Jane
	Added support for dll and device loading under EPOC.


Version 0.01.014
================
(Made by Matthew, 12 Dec '95)

1). Geert
	Updated to work with the new definition of TBool in E32 build
	050. See the E32 release notes for information on these changes.

2). Jane
	Added cleanup verb to build system.

3). Matthew
	Improved test shell to run test programs on EPOC, and added a
	few DOS-esque commands (try HELP).


Version 0.01.013
================
(Made by Matthew, 21 Nov 1995)

1). Updated to work with E32 build 049.

Version 0.01.012
================
(Made by Colly, 30 Oct 1995)

1). Updated to work with E32 build 048

2). Added builds for the Arm version in \f32\bmarm.

3). Added support to load DLLs.

Version 0.01.011
================
(Made by Colly, 9 Oct 1995)

1). Updated to work with E32 build 047

2). The file server was not synchronising its startup with the kernel
	properly. Fixed.

Version 0.01.010
================
(Made by Colly, 2 Oct 1995)

1). Updated to work with E32 build 046

2). b_rand.cpp now compiles and runs in unicode builds. May thanks to
	Geert for fixing this.

3). Added the basic text windows shell. The source is in \F32\TSHELL

4). Added the loader server to support EPOC/32 builds.

5). For EPOC/32 builds, made the file server scan for a window server
	in \SYS directories called WSERV?.EXE. It will load the correct
	window server according to the build of the file server being
	executed, i.e. WSERV.EXE, WSERVD.EXE, WSERVU.EXE and WSERVUD.EXE.
	It is also presumed that the window server will scan for a shell
	in \SYS directories. The shell is epected to be called SHELL?.EXE.

6). Added RFs::AddFileSystem() and RFs::RemoveFileSystem(). These
	functions allow file systems to by dynamically added and removed.

7). The ROM filing system was not opening files with the archive bit set
	as normal files. Fixed.

8). Added the text shell to the group.

9). If a drive was not ready and a file or directory was opened on it no
	error was reported even though ity had failed.

10).The ROM file system was not reporting the size of files correctly.

Version 0.01.009
================
(Made by Colly, 30 Aug 1995)

1). Updated to work with E32 build 045
2). Added the ROM file system for WINS. This will load a file
	in \E32SYS\ROMFILE.BIN as the ROM filling system. This file
	can be built with the E32ROM.EXE building tool or the T_ROMG.EXE
	test program. Note that	under WINS DLLs and EXEs cannot be loaded
	from the ROM filing system. For unicode the file ROMFILEU.BIN is
	generated. T_ROMG.EXE wants the path name of a directory as its
	argument. The contents of the sepcified directory become the root
	of the ROM file system. T_ROMG.EXE will include all sub-directories
	of the specified directory. Note that the ROM file system will
	appear as drive Z:.
3). First release of EPOC32/X86 version of the file server and ROM
	file system.

Version 0.01.008
================
(Made by Colly, 23 Aug 1995)

1). Updated to work with E32 build 044

Version 0.01.007
================
(Made by Colly, 21 Aug 1995)

1). All DLLs now link by ordinal.
2). Updated to work with E32 build 043

NOTE

	All test now pass in all builds. i.e. The file server is now working
	in release builds.

Version 0.01.006
================
(Made by Colly, 25 July 1995)

1). Completed implementation of CDir::Sort().
2). RFile::Seek() was not supporting EAddress seek type properly. Fixed.
3). Moved the .MAK files to \F32\BWINS so the .PDB debug databases get
	full pathnames to the source files.
4). Fixed the file server bug which was causing the server to crash when
	closing the connection to the server.

Version 0.01.005
================
(Made by Colly, 20 July 1995)

1). Upgrade to support E32 build 040.
2). Use the new build strategy using nmake
3). Pick up E32 headers from \E32INC
4). Unicode versions of the file server are now working.
5). Changed the RFile::Read() function to take an argument of
	TEntryArray which is a new CDT to hold a packed array of entries.
	TEntryArray just has Count() and operator[] so that it is
	"LIKE" the CArray classes. Althought the read packed entries functions
	are public they are really intended for use by the RFs::GetDir()
	functions. i.e. Use RFs::GetDir() in preference.
6). The CDir class is now implemented as are the RFs::GetDir()
	functions. CDir::Sort() still needs to be implemented.
NOTES
	b_rand.cpp does not compile in Unicode.

Version 0.01.004
================
(Made by Colly, 23 June 1995)

1). Fixed a number of the functions which should have been const to
	be const.
2). Changed to work with build 039 of E32.

Version 0.01.003
================
(Made by DavidW, 19 May 1995)

1). Rebuilt on my PC and re-released so that EFSRVD.DLL doesn't want
to import _adjust_fdiv from MSVCRT20.DLL (that function doesn't seem
to exist in that DLL on PCs at work!)

Version 0.01.002
================
(Made by Colly, 17 May 1995)

1). Fixed a bug in RFile.Temp() which was not returning the name
	of the temporary file properly.
2). Converted the test program B_RAND.CPP.
3). Added test program T_LOCK.CPP
4). Fixed a bug in locking overlapped regions.
5). Changed T_FSRV.CPP to use O: rather than Z:
6). Recording the size of compnents in the release history.

Comp     Date   Bld  .text   .bss .rdata  .data .idata  Total
===== ========= === ====== ====== ====== ====== ====== ======
EFSRV 17-Mar-95   2  17502   1312    332    152   5414  23400

Version 0.01.001
================
(Made by Colly, 9 May 1995)

1). First release.

	Started with the design for the file server, had it reviewed and
	implemented it all in just two weeks.

	The main header file is F32FILE.H.

	The header file F32FSYS.H is for the use of implementers of file
	systems which are used by the file server.

