os/kernelhwsrv/userlibandfileserver/fileserver/group/release.txt
author sl
Tue, 10 Jun 2014 14:32:02 +0200
changeset 1 260cb5ec6c19
permissions -rw-r--r--
Update contrib.
     1 Version 2.00.2026
     2 =================
     3 (Made by vfebvre 17/12/2009)
     4 
     5 1.	patrickconway
     6 	1.	DEFECT FIX: DEF143273: Mass Storage still using an obsoleted API to allocate endpoint resources
     7 		In cases where support for new API is detected in device capabilities, use that API to allocate endpoint resources
     8 
     9 
    10 Version 2.00.2025
    11 =================
    12 (Made by vfebvre 16/12/2009)
    13 
    14 1.	MichaelCox
    15 	1.	MINOR_CHANGE: Improve documentation for class CFsNotify concerning how big the buffer should be
    16 
    17 2.	HaoJ
    18 	1.	DEFECT FIX: DEF143253 [Coverity]:DEADCODE and CHECKED_RETURN error in MSF00264 vtb101sf
    19 	2.	MINOR_CHANGE: Remove a build warning in arm4 and wins introduced by fix for DEF143253
    20 
    21 3.	hengrant
    22 	1.	DEFECT FIX: DEF143386: t_notify_perf failure of edge use cases on gekko79 
    23 
    24 4.	DmitryL
    25 	1.	DEFECT FIX: DEF143263 FAT CheckDisk() is too slow comparing to ScanDrive() 
    26 
    27 5.	FadhliMustaffa
    28 	1.	DEFECT FIX: DEF142711: RFsPlugin needs to expose a Volume() API
    29 
    30 
    31 Version 2.00.2024
    32 =================
    33 (Made by vfebvre 15/12/2009)
    34 
    35 1.	cnotton
    36 	1.	MINOR_CHANGE Added two missing public headers for case when SYMBIAN_ENABLE_PUBLIC_PLATFORM_HEADER_SPLIT is used.
    37 
    38 
    39 Version 2.00.2023
    40 =================
    41 (Made by VincentF 14/12/2009)
    42 
    43 1.	cnotton
    44 	1.	DEF143346: Stop including platform headers in f32file.h
    45 
    46 
    47 Version 2.00.2022
    48 =================
    49 (Made by VincentF 10/12/2009)
    50 
    51 1.	DmitryL
    52 	1.	DEFECT FIX: DEF143214 t_automounter.cpp depends on exfat which is not contributed to the foundation  
    53 
    54 2.	KaiD
    55 	1.	DEFECT FIX: DEF143215: 	File server requesting a large chunk
    56 
    57 
    58 Version 2.00.2021
    59 =================
    60 (Made by VincentF 03/12/2009)
    61 
    62 1.	DmitryL
    63 	1.	DEFECT FIX: DEF142313 excessive usage of Entry() in the file server  
    64 	2. 	MINOR_CHANGE: placing RBitVector into common utilities file
    65 
    66 2.	HaoJ
    67 	1.	DEFECT FIX: DEF143222 t_notify_perf failure
    68 
    69 
    70 Version 2.00.2020
    71 =================
    72 (Made by VincentF 27/11/2009)
    73 
    74 1.	NicholasC
    75 	1.	DEFECT FIX: DEF143079: E32USER-CBASE 46 with Host Ms Thread3 in mass storage file system
    76 
    77 2.	DmitryL
    78 	1.	DEFECT FIX: DEF143009 T_scn32rd2 test fails on 1MB FAT volume and no call to DoRummageDirCacheL()
    79 
    80 3.	ChrisNotton
    81 	1.	DEFECT FIX: DEF142863: Public header files must not include platform or internal headers
    82 
    83 
    84 Version 2.00.2019
    85 =================
    86 (Made by Vino Jose 25/11/2009)
    87 
    88 1.	NicholasC
    89 	1.	DEFECT FIX: DEF142837: Enable File Server client to determine if logical drive is attached to USB bus	
    90 	2.	DEFECT FIX: DEF142899: t_ext1 fails on NaviEngine UREL with USB MS drive
    91 	3.	DEFECT FIX: DEF142900: t_dspace failing with USB Mass Storage drive
    92 
    93 2.	DmitryL
    94 	1.	DEFECT FIX: DEF142322 FAT: CFatMountCB::IsEndOfClusterCh() implementation is not optimal  
    95 	2. 	DEFECT FIX: DEF142991 Automounter FS shall comply with changes introduced in DEF142837  
    96 	3.	DEFECT FIX: DEF143023 FAT, exFAT: CDynamicDirCache::ReadL() can't handle bulk reads  
    97 
    98 3.	MichaelCox
    99 	1.	DEFECT FIX: DEF142995: F32 Plugins cannot get the filename when intercepting EFsSetEntry 
   100 
   101 
   102 Version 2.00.2018
   103 =================
   104 (Made by Vino Jose 05/11/2009)
   105 
   106 1.	KaiDuan
   107 	1.	DEF140485: ASSERT triggered in CCacheMemoryClient::Reset()
   108 
   109 Version 2.00.2017
   110 =================
   111 (Made by Vino Jose 04/11/2009)
   112 
   113 1.	DmitryL
   114 	1.	DEFECT FIX:  DEF142796: exFAT: CExFatMountCB::SetVolumeClean() sometimes corrupts original boot code.  
   115 
   116 2.	NicholasC
   117 	1.	DEFECT FIX: DEF142538: b_fat32 hangs when using large Mass Storage devices
   118 	2.	DEFECT FIX: DEF141812: F32TEST T_NOTIFY_MFS on Unicore SMP (Naviengine) Image
   119 	3.	DEFECT FIX: DEF142590: Test hanging in usb host mass storage file system 
   120 
   121 3.	SophieY
   122 	1.	DEFECT FIX: DEF141402: File server trace LDD causes zombie thread to remain in existence forever 
   123 
   124 4.	FadhliMustaffa
   125 	1.	DEFECT FIX: DEF142406: T_FMAN and T_FSYS failing on X86 (T_fman.cpp:105 & T_fsys.cpp:570)
   126 	2.	MINOR_CHANGE: Correctly labelled tests in T_FMAN
   127 
   128 
   129 Version 2.00.2016
   130 =================
   131 (Made by Vino Jose 29/10/2009)
   132 
   133 1.	DmitryL
   134 	1.	DEFECT FIX:  DEF142713  RFs::NotifyDismount() has behaviour which is not documented  
   135 	
   136 2.	HaoJiang
   137 	1.	DEFECT FIX:  PDEF142695: unwanted disk space check when RFile::Att or RFile::Modified is called 
   138 
   139 3.	NicholasC
   140 	1.	MINOR CHANGE: /smassstorage/inc/cusbmassstoragescheduler.h is test file so moved to /f32test/smassstorage/inc/ 
   141 	2.	DEFECT FIX: DEF142701: suspend not entered with large USB mass storage device after formatting
   142 	3.	DEFECT FIX: DEF142703: Improve use of buffers in TBlockTransfer
   143 
   144 
   145 Version 2.00.2015
   146 =================
   147 (Made by Vino Jose 22/10/2009)
   148 
   149 1.	MichaelCox
   150 	1.	DEFECT FIX: DEF142065: F32 Plugins can be removed whilst still being in use 
   151 
   152 2.	DmitryL
   153 	1.	MINOR_UPDATE: Separating source code for 'sfat' and 'sfat32' components
   154 
   155 
   156 Version 2.00.2014
   157 =================
   158 (Made by  Vino Jose 21/10/2009)
   159 
   160 1.	SophieY
   161 	1.	DEFECT FIX: DEF142394: File server uses excessively sized heap
   162 
   163 Version 2.00.2013
   164 =================
   165 (Made by  Vino Jose 13/10/2009)
   166 
   167 
   168 1.	NicholasC
   169 	1.	MINOR CHANGE: Remove TCB from t_fsysbm
   170 	2.	DEFECT FIX: DEF141910: Usbmsapp does not correctly support OTG environments
   171 	3.	DEFECT FIX: DEF142293: [OTG] Host Ms Thread1 crashes when connecting large capacity USB stick to phone
   172 	4.	DEFECT FIX: DEF142428: Buffer allocation can be improved in CUsbHostMsLogicalUnit 
   173 
   174 2.	DmitryL
   175 	1.	DEFECT FIX:  DEF142328: make use efat32.fsy by default  
   176 
   177 Version 2.00.2012
   178 =================
   179 (Made by  Vino Jose 07/10/2009)
   180 
   181 1.	NicholasC
   182 	1.	DEFECT FIX: DEF142383: USB connection does not work after an OTG device is connected
   183 2.	MiguelB
   184 	1.	DEFECT FIX: DEF142169: File Server crash observed on the NE1_TB.ARMV5.UREL.SMPDATAPAGE configuration 
   185 
   186 
   187 
   188 Version 2.00.2011
   189 =================
   190 (Made by  Vino Jose 06/10/2009)
   191 
   192 1.	SophieY
   193 	FinalDS: SymTB9.2, GT0419, MS3.35, DS.1759 CR1993 Improve Performance of PREQ2083 NGFS
   194 	Change Requests:
   195 	CR1993 Improve Performance of PREQ2083 NGFS
   196 
   197 Version 2.00.2010
   198 =================
   199 (Made by  Vino Jose 01/10/2009)
   200 
   201 1.	IndrajeetSingh
   202 	1.	DEFECT FIX: DEF141687: F32TEST T_COMPAT32 on all platforms
   203 
   204 2.	DmitryL
   205 	1.	FinalDS: SymTB9.2, GT0419, MS3.39, DS.1823 CR2075 " Auto-mount exFAT storage media"
   206 		Change Requests: CR2075 Auto-mount exFAT storage media
   207 		Other: New COMPONENT: 169 Automounter
   208 
   209 Version 2.00.2009
   210 =================
   211 (Made by  Vino Jose 24/09/2009
   212 
   213 1.	RichardCo
   214 	1.	DEFECT FIX: PDEF142179: Qt applications take 15 seconds to load if libraries are installed on E:
   215 		Improve performance of the loader when loading already-loaded binaries from removable media.
   216 
   217 2.	VincentF
   218 	1.	MINOR_CHANGE: Break down T_PAGELDRTST into smaller test units to prevent timeouts
   219 
   220 
   221 
   222 Version 2.00.2008
   223 =================
   224 (Made by Vino Jose   21/09/2009)
   225 
   226 1.	MiguelB
   227 	1.	DEFECT FIX: DEF141409: File Server crashes when disconnecting Host USB 
   228 
   229 2.	MichaelCox
   230 	1.	DEFECT FIX: DEF141517: ONB - F32TEST Plugin_Framework_Version_2_Test Hanging on navi smp WDP
   231 		Original problem was locking the semaphore twice which caused it to hang.
   232 		Fixing this revealed a further problem of transferring requests	when the session was being closed.
   233 3.	FadhliMustaffa
   234 	1.	DEFECT FIX: DEF141874: [Coverity]:UNINIT,SYMBIAN.CLEANUP_STACK,REVERSE_INULL,ORDER_REVERSAL
   235 
   236 4.	NicholasC
   237 	1.	DEFECT FIX: DEF141046: File Server Coverity
   238 		Part IV
   239 
   240 
   241 
   242 Version 2.00.2007
   243 =================
   244 (Made by Vino Jose   16/09/2009)
   245 
   246 1.	NicholasC
   247 	1.	DEFECT FIX: DEF141046: File Server Coverity
   248 		Part III
   249 
   250 
   251 Version 2.00.2006
   252 =================
   253 (Made by Vino Jose   04/09/2009)
   254 
   255 1.	NicholasC
   256 	1.	DEFECT FIX: DEF141046: File Server Coverity
   257 		Part II
   258 	2.	DEFECT FIX: DEF141650: Host USB Mass Storage is SMPSAFE
   259 
   260 2.	DmitryL
   261 	1.	DEFECT FIX: DEF141785 extra data copying in FAT LeafDir cache methods calls  
   262 	2.	MINOR_CHANGE: Added the ability to dump names of opened objects on media formatting
   263 
   264 
   265 Version 2.00.2005
   266 =================
   267 (Made by Vino Jose   02/09/2009)
   268 
   269 1.	DmitryL
   270 	1.	DEFECT FIX: DEF141591 RFormat shall allow forced media formatting even if volume has files opened.  
   271 
   272 
   273 Version 2.00.2004
   274 =================
   275 (Made by Vino Jose   27/08/2009)
   276 
   277 1.	KaiD
   278 	1.	MINOR_CHANGE:  Missing distribution.polocy.s60 files
   279 
   280 2.	FadhliMustaffa
   281 	1.	DEFECT FIX: DEF141520: t_fman: test of CFileMan::Move() with long filenames is incorrect
   282 		Enabled SetupDirectoryForMove() to return an error code
   283 
   284 Version 2.00.2003
   285 =================
   286 (Made by Vino Jose   21/08/2009)
   287 
   288 1.	DmitryL
   289 	1.	DEFECT FIX: DEF126357: NAND User Data FAT drves should be scanned on mounting
   290 	2.	DEFECT FIX: DEF141595: exFAT CExFatDirCB::ReadL() processes iPending incorrectly.
   291 
   292 4.	ChrisNotton
   293 	1.	MINOR_CHANGE: Test code compile fixes in preparation for when spilt headers are enabled.
   294 
   295 
   296 Version 2.00.2002
   297 =================
   298 (Made by Vino Jose   18/08/2009)
   299 
   300 1.	NicholasC
   301 	1.	DEFECT FIX: DEF141046: File Server Coverity
   302 		Part I		
   303 
   304 2.	FadhliMustaffa
   305 	1.	DEFECT FIX: DEF140473: T_LDRTST fails on 34xx in both paged and non-paged configs (t_ldrtst.cpp:636)
   306 		Replaced hard-coded system drives in test with RFs::GetSystemDriveChar()
   307 
   308 3.	FabianGortz
   309 	1.	DEFECT FIX: DEF141239: T_RDSECT intermittently fails to read correct number of bytes(t_rdsect.cpp:831)
   310 
   311 
   312 
   313 
   314 Version 2.00.2001
   315 =================
   316 (Made by Vino Jose   18/08/2009)
   317 
   318 1	NicholasC
   319 	1.	DEFECT FIX: DEF141474: USB Host write access to MMC cards doesn't work properly
   320 	2.	DEFECT FIX: DEF141499: Host USB Mass Storage fails to mount corrupted MMC card 
   321 	3.	MINOR_CHANGE: Add trace to USB disconnection notification 
   322 
   323 Version 2.00.2000
   324 =================
   325 (Made by Vino Jose   14/08/2009)
   326 
   327 1.	IndrajeetSingh
   328 	1.	FileServer to support surrogate pairs outside BMP
   329 		PartialDS: SymTB10.1, DS.1489 PREQ2471 TI18N enhance EUser library to support Unicode 5.0 
   330 		Requirements: PREQ2471 UTF-16 compliant text handling
   331 
   332 	
   333 Version 2.00.1999
   334 =================
   335 (Made by VincentF   11/08/2009)
   336 
   337 1.	MiguelB
   338 	1.	DEFECT FIX: DEF141341: CFileCache::IsDirty() requires more locking
   339 
   340 
   341 Version 2.00.1998
   342 =================
   343 (Made by Vino Jose   07/08/2009)
   344 
   345 1.	SophieY
   346 	1.	DEFECT FIX: DEF141166: [FSrvPerf] Optimizations on RFs::Connect() 
   347 
   348 2.	ChrisNotton
   349 	1.	DEFECT FIX: DEF141421: File Relocation Changes may break components using kern_ext.mmh
   350 
   351 
   352 Version 2.00.1997
   353 =================
   354 (Made by Vino Jose   04/08/2009)
   355 
   356 1.	MiguelB
   357 	1.	DEFECT FIX: PDEF141350: Security Issue in File Server
   358 
   359 
   360 Version 2.00.1996
   361 =================
   362 (Made by Vino Jose   03/08/2009)
   363 
   364 
   365 1.	MiguelB
   366 	1.	DEFECT FIX: DEF140772: File server is not suspending MS device properly 
   367 
   368 2.	NicholasC
   369 	1.	MINOR_CHANGE: Fix t_notifydismount for Host USB Mass Storage
   370 
   371 3.	ChrisNotton
   372 	1.	MINOR_CHANGE: Changed OS_LAYER_SYSTEMINCLUDE to OS_LAYER_SYSTEMINCLUDE_SYMBIAN.
   373 
   374 4.	MichaelCox
   375 	1.	DEFECT FIX: DEF135837: ONB failures of T_ENCPLUGIN on NaviEngine
   376 		The encryption_plugin / xorencryptionplugin was trying to save a list
   377 		of encrypted files to the system drive. When the system drive was a ram disk
   378 		this was failing as plugins cannot write to drives which do not support local buffers.
   379   
   380 
   381 Version 2.00.1995
   382 =================
   383 (Made by Vino Jose   28/07/2009)
   384 
   385 
   386 1.	MiguelB
   387 	1.	DEFECT FIX: DEF139855: Dismountiing a file system with clamped files & dirty data behaves unexpectedly 
   388 
   389 Version 2.00.1994
   390 =================
   391 (Made by Vino Jose   21/07/2009)
   392 
   393 1.	NicholasC
   394 	1.	DEF140849: RFs::GetMediaSerialNumber() panics with USB Ms drive  
   395 	2.	INC141147: Improper Mass Storage Error Code for Empty Drive
   396 
   397 2.	indrajeetsingh
   398 	1.	DevCR: SLEH-7RDDHP Peripherals, GT0419 Base Duranduran, F32 to use FATCharsetConv plug-ins
   399 		The new file server plug-in framework enables variant creators to choose any load 
   400 		code page dll to be explicitly without the need of any locale dll. A test code is 
   401 		provided to create and load test cp932.dll explicitly.
   402 Version 2.00.1993
   403 =================
   404 (Made by Vino Jose   20/07/2009)
   405 
   406 1.	DmitryL
   407 	1.	FinalDS: SymTB9.2, GT0419, MS3.31, DS.1749 exFAT MasterSF release
   408 		Requirements: PREQ2083 Next generation file system
   409 		Other: Impacted Components 168 exFAT File System
   410 
   411 
   412 Version 2.00.1992
   413 =================
   414 (Made by Vino Jose   14/07/2009)
   415 
   416 1.  	SophieY
   417 	1.  	DEFECT FIX: PDEF140507: Fileserver misses intercepts for EFsFormatSubClose message
   418 	2.  	DEFECT FIX: DEF140718: Example code error in CFileMan document 
   419 	3.  	DEFECT FIX: DEF140656: CFileMan::Copy and CFileMan::Move use wrong trace attributes.
   420         4.	DEFECT FIX: PDEF140677: ASSERT triggered in the FAT Directory cache  Version 
   421 
   422 2.	DmitryL
   423 	1.	DEF140928 File server functionality is broken as a result of DEF138883  
   424 
   425 	
   426 
   427 
   428 Version 2.00.1991
   429 =================
   430 (Made by Vino Jose   10/07/2009)
   431 
   432 1.	ChrisN
   433 	1.	MILESTONE: SymTB9.2, GT0419, MS3.36, DS.1815 PREQ2621 System Architecture Relocating header files - K&HS support
   434 
   435 
   436 Version 2.00.1990
   437 =================
   438 (Made by Vino Jose   08/07/2009)
   439 
   440 1.	FadhliMustaffa
   441 	1.	DEFECT FIX: DEF140666: T_Notifier failure on sfdev intermittantly
   442 		Checked for no cache or write-through in CFsMessageRequest::DoNotify() for EFsFileWrite
   443 
   444 	
   445 
   446 Version 2.00.1989
   447 =================
   448 (Made by Vino Jose   02/07/2009)
   449 
   450 1.	MichaelCox
   451 	1.	DEFECT FIX: DEF140552: No notification when moving file from non-monitored folder to monitored folder 
   452 			With rename notifications, the destination was not being checked against the notification filter.
   453 	2.	DEFECT FIX: DEF140566: F32 Notification framework panics when copying a file btn drives using CFileMan
   454 			From time to time CFsRequest.Message().Function returns the wrong thing. Changed to uise the preferred FsFunction.
   455 	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.
   456 			Whole path is sent to file server, so notification framework was looking at that rather than 'ignoring any filenames specified' as RFs::MkDirAll suggests.
   457 			
   458 
   459 Version 2.00.1988
   460 =================
   461 (Made by VincentF 26/06/2009)
   462 
   463 1.	DmitryL
   464 	1.	DEFECT FIX: DEF138883: API RFile::Lock() fails for greater offset than 2^32  
   465 	2.	INTERFACE CHANGE: BR2806.1 SFileShareLock structure shall not be publishedPartner
   466 
   467 2.	FadhliMustaffa
   468 	1.	DEFECT FIX: PDEF140556: Phone does not start up - Estart regression caused by DEF139400
   469 		Set pointer to EOF if line does not have '\n'
   470 		Also able to handle DOS/Unix estart.txt files with empty lines at the beginning
   471 
   472 3.	HenryGrant
   473 	1.	DEFECT FIX: DEF139730: Coverity - UNINIT,REVERSE_INULL,OVERRUN_STATIC,FORWARD_NULL,DEADCODE
   474 		Fixed CIDS: 33678, 33674, 33698, 33749. Rest are rejected as False Positives
   475 
   476 4.	junwookkwak
   477 	1.	DEFECT FIX: PDEF140510: Autodetection in estart ignore a drive insertted corrupt media
   478 		Propagated fixes from 9.4 branch.
   479 
   480 5.	NicholasC
   481 	1.	MINOR CHANGE: Extend husbconsapp user interface to support multiple USB MS devices.
   482 
   483 
   484 Version 2.00.1987
   485 =================
   486 (Made by Vino Jose 22/06/2009)
   487    
   488 1.	MichaelCox
   489 	1.	DEFECT FIX: DEF140387: Clients of CFsNotify can receive two sucesssive overflow notifications
   490 		When re-issueing a request after overflow, the counters were not being updated correctly resulting in
   491 		a potential for successive overflow notifications.
   492 
   493 2.	KaiD
   494 	1.	DEFECT FIX: DEF135563: 	File creations should avoid unnecessary DoRummageDirCacheL() operation 
   495 
   496 Version 2.00.1986
   497 =================
   498 (Made by Vino Jose 19/06/2009)
   499 
   500 1.	MiguelB
   501 	1.	DEFECT FIX: DEF140435: File Server plugins intercepting EFsFileSubClose can cause a KERN-EXEC 44 
   502 
   503 Version 2.00.1985
   504 =================
   505 (Made by Vino Jose 19/06/2009)
   506 
   507 1.	NicholasC
   508 	1.	MINOR CHANGE: Change to use quick format in t_scn32dr1.cpp (f32test)
   509 	2.	MINOR CHANGE: Remove unused Format() from t_sess.cpp (f32test)
   510 	
   511 2.	MiguelB
   512 	1.	DEFECT FIX: PDEF140320: PPIA-7SF8Z5 Claendar content disappear when using MfE 
   513 	2.	DEFECT FIX: DEF139855: Dismountiing a file system with clamped files & dirty data behaves unexpectedly 
   514 	3.	INTERFACE CHANGE: BR2820.1 Prevent three internal TDrive methods from being exported unnecessarily
   515 	
   516 
   517 3.	NeilClifford
   518 	1.	MILESTONE: SymTB10.1, GT0472, MS3.6, DS.1737: PREQ1967 Embedded MMC v4.3
   519 
   520 4.	JessieZh
   521 	1.	DEFECT FIX: PDEF140211: estart log does not give enough information   
   522  
   523 Version 2.00.1984
   524 =================
   525 (Made by Vino Jose 12/06/2009)
   526 
   527  1.	OliverStuart
   528 	1.	MINOR CHANGE: CR1970: Adding missing S60 distribution files and correcting IDs.
   529 	2.	MINOR CHANGE: CR1994: Updating incorrect copyright headers.
   530 	3.	MINOR CHANGE: CR1970: Removing orphaned S60 distribution files copied from symtb91.
   531 
   532 Version 2.00.1983
   533 =================
   534 (Made by Vino Jose 11/06/2009)
   535 
   536 1.	MiguelB		
   537    	1.	DEFECT FIX: DEF139382: File Server memory leak 
   538 2.	KaiD		
   539    	1.	DEFECT FIX: PDEF139239: CFileMan async functions not clear what happens on error
   540 
   541 3.	NicholasC
   542 	1.	MINOR_CHANGE: Remove unused file - /f32test/server/t_std.h
   543 	2.	MINOR_CHANGE: Move FsBarrier definition to /f32test/fileutils/src/fs_utils.cpp
   544 
   545 4.	GayathriR
   546 	1.	MILESTONE: SymTB10.1, GT0472, MS3.8, DS.1751 EI0038: USB Mass Storage Client Shared Memory Chunks
   547 		Engineering Changes: EI0038 USB Mass Storage Client Shared Memory Chunks
   548 
   549 
   550 Version 2.00.1982
   551 =================	
   552 (Made by Vino Jose 08/06/2009)
   553 
   554 1.	FadhliMustaffa
   555 	1.	DEFECT FIX: PDEF139900: ESTART.TXT parsing does not cope with linux-style line endings
   556 		Checked for DOS line ending to support both DOS and Unix formats
   557 		Note that variants need to be rebuilt if Unix-style estart.txt files are to be used
   558   
   559 		
   560 
   561 
   562 Version 2.00.1981
   563 =================
   564 (Made by Vino Jose 02/06/2009)
   565 1.	SivashankarN
   566 	1.	DEFECT FIX: DEF139176: Remove unused API defined for EFsRawDiskCaps 
   567 2.	FrankHofmann
   568 	1.	DEFECT FIX: DEF135405: FS Tests assume presence of media devices
   569 		Modify f32 test framework code to give human-readable errors as well as numerical error codes
   570 		for situations where previous tests have hung / corrupted media and/or where
   571 		corrupted/defective media have been detected.
   572 	2.	MINOR_CHANGE: Add RUNEXEC command to text shell.
   573 		For manual testing, to reproduce intermittend failures.
   574 		Invokes a command repeatedly. See "RUNEXEC /?" for instructions.
   575 
   576 3.	NicholasC
   577 	1.	MINOR_CHANGE: f32test re-org. Move FAT tests to /f32test/filesystem/fat
   578 4.	KaiD
   579 	1.	DEFECT FIX: DEF139837:	t_ms_mountstart fails
   580 
   581 
   582 
   583 Version 2.00.1980
   584 =================
   585 (Made by Vino Jose 01/06/2009)
   586 1.	DmitryL
   587 	1. 	DEFECT FIX: PDEF139441 File Server heap corruption caused by CDirCache
   588 2.	MiguelB
   589 	1.	DEFECT FIX: PDEF139326: Ejecting memory card can cause deadlock
   590 3.	JohnS 	
   591 	1.	MILESTONE: SYMTB9.2, Base Duranduran, GT0419, MS3.26, PREQ2540: Kernel & HWS: Prepare "LFFS" NOR Flash File System TPIP for Symbian Foundation 		
   592 	2.	INTERFACE CHANGE: BR2729.2 Removal of lffs file system and lffs specific tests
   593 
   594 
   595 Version 2.00.1979
   596 =================
   597 (Made by Sergei Trofimov 28/05/2009)
   598 
   599 1.  sergeitrofimov
   600 	1.	PREQ2621, DS.1698: relocating header files.
   601 1.  AndreiMironenko 
   602 	1.	DEFECT FIX: DEF137804: T_FSYS fails on 34XX_SDP.ARMV5
   603 		
   604 
   605 Version 2.00.1978
   606 =================
   607 (Made by Vino Jose 20/05/2009)
   608    
   609 1.	SamiraA
   610 	1.	MILESTONE: SymTB10.1, GT0472, MS3.3, DS.1579 PREQ1847: Enhanced File Server change notification 
   611 	
   612 	Requirements:
   613 	PREQ1847 Enhanced File Server change notification
   614 
   615 2.	indrajeetsingh
   616    	1.	DEFECT FIX: PDEF137716 : TTG:<On moving a FOLDER, FOLDER will be disappeared>
   617    	2.	DEFECT FIX: PDEF137719 : TTG:<wrong error code on moving folder> 
   618 
   619 
   620 Version 2.00.1977
   621 =================
   622 (Made by GeorgeSin 19/05/2009)
   623    
   624 1.	MiguelB
   625    	1.	DEFECT FIX: DEF139010: File Server faults if trace LDD missing
   626    	2.	DEFECT FIX: DEF139382: File Server memory leak 
   627    	
   628    	
   629 Version 2.00.1976
   630 =================
   631 (Made by George Sin 12/05/2009)
   632    
   633 1.	MiguelB
   634    	1.	DEFECT FIX: DEF138141: RFs::Entry flushes the file cache unnecessarily 
   635    	2.	DEFECT FIX: DEF138853: Asynchronous read request handling is not multi-thread safe 
   636    
   637 2.	ChrisNotton
   638    	1.	DEFECT FIX: DEF136928: T_FSCHED fails on UDEB versions of 34XX_SDP in BTB
   639    
   640    
   641 Version 2.00.1975
   642 =================
   643 (Made by George Sin 07/05/2009)
   644    
   645 1.	ChrisNotton
   646    	1.	DEF138336: SMP + Data Paging T_REAPER I fails: failed check at line number 256
   647    	
   648 Version 2.00.1974
   649 =================
   650 (Made by George Sin 29/04/2009)
   651 
   652 1.	NicholasC
   653 	1.	DEFECT FIX: DEF137917: usbhostmssrv.exe panic sometimes plug in and pull out USB flash disk
   654 	2.	DEFECT FIX: PDEF134548: Host mass storage test on locking/unlocking media test fails
   655 
   656 2.	OliverStuart
   657 	1.	DEF138332: SMP + Datapaging T_FSCHED I fails:T_FSCHED failed check 21 in \os\kernelhwsrv...
   658 		TestClientDies does not wait for all I/O operations initiated by the threads it
   659 		kills to finish before calling CheckDisk so the the disk is locked. We now use
   660 		CLOSE_AND_WAIT with a destruction notifier to ensure completion.
   661 	
   662 Version 2.00.1973
   663 =================
   664 (Made by George Sin 28/04/2009)
   665 
   666 1.	MichaelCox
   667 	1.	MINOR_CHANGE: Change description in sl_std.h from f32 to fileserver
   668 	
   669 
   670 Version 2.00.1972
   671 =================
   672 (Made by George Sin 21/04/2009)
   673 
   674 1.	FrankHofmann
   675 	1.	DEFECT FIX: DEF135638 T_FALSESPACE fails on NE1_TB.ARMV5
   676 
   677 2.	NicholasC
   678 	1.	DEFECT FIX: DEF138395: husbconsapp test app doe not support discconnect of multiple LUNs or devices
   679 
   680 3.	ChrisN
   681 	1.	MILESTONE: GT0419,Base Duranduran,MS3.22 PREQ2498 Splitting mixed header files
   682 		PREQ2498 Splitting "mixed" header files - Kernel & Hardware Services
   683 		CR1944 PREQ2498 "Splitting "mixed" header files - Kernel & Hardware Services" to scope of SymTB	
   684 		Interface Changes:
   685 		BR2748.10 Splitting "mixed" header files - Kernel & Hardware Services (F32)  
   686 
   687 Version 2.00.1971
   688 =================
   689 (Made by GeorgeSin 17/04/2009)
   690 
   691 1.	NicholasC
   692 	1.	DEV CR: SLEH-7NCEGZ: Kernel, GT0419 Base Duranduran, Create new USB testclient and Host test suite
   693 
   694 Version 2.00.1970
   695 =================
   696 (Made by GeorgeSin 14/04/2009)
   697 
   698 1.	DmitryL
   699 	1. 	MINOR_CHANGE: pulling restricted\exfat branch from the old dev1 into sfdev
   700 	
   701 2.	MiguelB
   702 	1.	DEFECT FIX: PDEF137626: Connectivity: Phone reboots automatically when connecting to PC via USB after pl
   703 
   704 
   705 Version 2.00.1969
   706 =================
   707 (Made by GeorgeSin 09/04/2009)
   708 
   709 1.	DmitryL
   710 	1.	DEFECT FIX: DEF136692  ScanDrive shall finalise the drive after successul run.  
   711 	2.	DEFECT FIX: DEF137590  emulator elocal.fsy shall detect windows file system used as emulator drive C:  
   712 
   713 
   714 
   715 Version 2.00.1968
   716 =================
   717 (Made by GeorgeSin 08/04/2009)
   718 
   719 1.	FadhliMustaffa
   720 	1.	DEFECT FIX: DEF137105: Duplication of header files in sf_svr.cpp.
   721 
   722 
   723 Version 2.00.1967
   724 =================
   725 (Made by GeorgeSin 23/03/2009)
   726 
   727 1.	DmitryL
   728 	1.	DEFECT FIX: DEF136511 CDataCache64 and CLruCache code in FAT implementation is redundant.  
   729 
   730 2	NicholasC
   731 	1.	DEFECT FIX: DEF136708: Host USB Mass Storage panics t_notifydismount 
   732 	2.	DEFECT FIX: DEF136710: Host USB Mass Storage Size of partitioned drive is incorrect 
   733 
   734 3.  	AndreiMironenko
   735  	1.	DEFECT FIX: DEF135299 t_fsys fails on lubbock, integrator and some other platforms
   736 
   737 
   738 Version 2.00.1966
   739 =================
   740 (Made by George Sin 18/03/2009)
   741 
   742 1. 	AndreiMironenko
   743 	1. 	DEFECT FIX: PDEF136759: t_ramstress should not be included in f32test.auto.bat	
   744 
   745 Version 2.00.1965
   746 =================
   747 (Made by George Sin 13/03/2009)
   748 
   749 
   750 1.	JessieZhang
   751 	1.	DEFECT FIX: PDEF136339: Incorrect length parameter checking in File Server 
   752 
   753 2.  	AndreiMironenko
   754 	1.  Milestone: Base Meteora, GT0339, MS3.21, DS.1449 PREQ1235 Remove "SSR" Flash Translation Layer
   755     
   756 3.	OliverStuart
   757 	1.	DEFECT FIX: DEF133800: T_LDRTST times out
   758 		The kernel heap leak reported is that of a misc notifier (runtests makes a call to NotifyDestruction)
   759 		that is only deleted after EFile has already called HeapMarkEnd.  The memory is not really leaked.
   760 		Runtests now allocates the destruction notifier early so that it will not affect the kernel heap's
   761 		memory leak checking because it will be allocated before any HeapMarkStart.
   762 
   763 4.	NicholasC
   764 	1.	DEFECT FIX: DEF136360: Host USB Mass Storage: CUsbHostMsProxyDrive::Initialise() should check for media 
   765 	2.	DEFECT FIX: DEF135931: Host Mass Storage USB fails USB client tests 
   766 
   767 5.	DmitryL
   768 	1.	DEFECT FIX: DEF136225: void CFatMountCB::InitializeL() shall check the amount of cluster on the volume
   769 	2.	MINOR_CHANGE: Updated F32 performance tests scripts
   770 
   771 6.	HenryGrant
   772 	1.	DEFECT FIX: PDEF136028: USB mass storage system wide deadlock
   773 
   774 Version 2.00.1964
   775 =================
   776 (Made by GeorgeSin 10/03/2009)
   777 
   778 1.	NeilClifford
   779 	1.	DEFECT FIX: PDEF134733: ONB F32 test failures on onenand platform (on MMC drive accesses)
   780 
   781 2.	KaiD
   782 	1.	DEFECT FIX: DEF134135: Changing the settings for the directory cache in estart.txt doesn't work 
   783 	2.	MINOR_CHANGE: Updated test code t_fman.cpp to aviod intermittent failures on emulator platform.
   784 
   785 3.	TomCosgrove
   786 	1.	DEFECT FIX: PDEF134764: "Fuzzing by truncation" test is not executed for an internal drive
   787 		Add line to set target drive to the internal drive before the appropriate test.
   788 		
   789 4.	MichaelCox
   790 	1.	DEFECT FIX: DEF135502: SMP unsafe calls in LFFS 
   791 		Was trying to use a stack variable between two threads. Wasn't waiting for the client-side thread
   792 		handle to be cleared before trying to recreate threads with the same name.
   793 
   794 
   795 Version 2.00.1963
   796 =================
   797 (Made by GeorgeSin 27/02/2009)
   798 
   799 1.	KaiD
   800 	1.	MINOR_CHANGE: Updated documentation of CFileMan for 'low memory' conditions.
   801 		"Note: 
   802 		To support wildcard, CFileMan uses heap memory to store all directory entries 
   803 		from a single directory. Therefore, in a extreme condition, if a directory contains 
   804 		a huge number of files (e.g. more than 15000 files with 10 characters' long file 
   805 		names), user may encounter KErrNoMemory errors. Developers who have a need to handle 
   806 		this very rare case should increase the heap size limitation of their applications. 
   807 		For more information about heap size configuration, please refer following 
   808 		section in Symbian Developer Library:
   809 		Symbian OS build guide >> Build Tools Reference >> MMP file syntax >> epocheapsize"   
   810 
   811 	2.	MINOR_CHANGE: Updated Base_Functional_Specification.doc for PREQ1885 delivery.
   812 
   813 2.	DmitryL
   814 	1.	DEFECT FIX: DEF133904: Loader vunerability
   815 
   816 
   817 Version 2.00.1962
   818 =================
   819 (Made by JohnS 10/02/2009)
   820 
   821 1.	KaiD
   822 	1.	DEFECT FIX: PDEF134667: TTG:<Wild card characters cannot be handled in the short file names> 
   823 
   824 2.	NicholasC
   825 	1.	DEFECT FIX: PDEF134640: t_rcache fails with Host USB MS drive 
   826 
   827 Version 2.00.1961
   828 =================
   829 (Made by NicholasC 04/02/2009)
   830 
   831 1.	indrajeetsingh
   832 	1.	DEF133041: t_fatcharsetconv.exe fails with inter-op testing
   833 	2.	DEF133076: Inconsistent test pattern in t_fatcharsetconv
   834 
   835 
   836 Version 2.00.1960
   837 =================
   838 (Made by Kai Duan 29/01/2009)
   839 
   840 1.	MahantappaPatil
   841 	1. 	MINOR_CHANGE: Removed "interop_test" from EXFAT tests due to some restrictions.
   842 
   843 2.	FrankH
   844 	1.	DEFECT FIX: DEF130206: t_format fails on lubbock k drive
   845 
   846 3.	RajivM
   847 	1.	DEFECT FIX: PDEF133084:File Server: IsValidName returns wrong result 
   848 
   849 	2.	DEV CR:KNOI-7F3FU9: An existing API: "TBool IsValidName(const TDesC &anEntryName)" implicitly takes into
   850 		account the default session path when it verifies the given filename. The existing 
   851 		"TBool IsValidName(const TDesC &anEntryName)" API shall be re-implemented on the basis of a new API 
   852 		TBool RFs::IsValidName(const TDesC& aName, TNameValidParam& aParam )
   853 
   854 4.	JessieZhang
   855 	1.	DEFECT FIX: DEF131667: Incorrect length parameter checking in File Server 
   856 
   857 5.	MiguelB
   858 	1. 	MILESTONE: Sphinx, GT0339, MS3.25, DS.1494 PREQ1617: Instrument file server
   859 
   860 6.	DmitryL
   861 	1.	MINOR_CHANGE: Eshell extended by adding 'mount' command, which allows mounting and dismounting 
   862 		file sytems from the command prompt.
   863 	2.	DEFECT FIX: PDEF133607 t_mount skips TestFinaliseFS() test in UREL build  
   864 	3.	DEFECT FIX: PDEF133608 setting volume finalisation flag in FAT[1] shall be configurable for FAT16  
   865 
   866 7.	MariamSood
   867 	1.	DEFECT FIX: DEF133456: Typo in the parameter of __ASSERT_ALWAYS 
   868 
   869 8.	GavinCochrane
   870 	1.	DEFECT FIX: DEF132082: Panic "CSessionFs" is missing in documentation 
   871 
   872 
   873 Version 2.00.1959
   874 =================
   875 (Made by DeleOgunjumelo 15/01/2009)
   876 
   877 1.	DmitryL
   878 	1.	DEFECT FIX: DEF132841 The returned value of the RFile64::Write from WINSCW is not same as ARMV5  
   879 	
   880 2.	NicholasC
   881 	1.	DEFECT FIX: DEF131893: t_ext1 hangs with USB Host MS drive 
   882 
   883 3.	MahantappaPatil
   884 	1.	MINOR_CHANGE: Fixed issue related to f32_perf_tests not running as PREQ1885 tests scripts were also 
   885 		required for H2 platform. Existing script file names are modified with suffix _H4 and similar scritps 
   886 		are added for H2. The documentation FS Performance Test Suite Description.doc is also updated with this.
   887 
   888 Version 2.00.1958
   889 =================
   890 (Made by fabiangortz 07/01/2009)
   891 
   892 1.	indrajeetsingh
   893 	1.	DEFECT FIX: DEF131967: F32TEST T_FMAN.EXE fails on WINS/WINSCW FAT drives
   894 
   895 
   896 Version 2.00.1957
   897 =================
   898 (Made by Tom Cosgrove 02/01/2009)
   899 
   900 1.	DmitryL
   901 	1.	DEFECT FIX: DEF131949 coverity issue in FAT code delivered by PREQ 1885
   902 
   903 2.	TomCosgrove
   904 	1.	DEFECT FIX: DEF132210: [System Build]: Case issues in bld.inf causing build failures on linux, F32test
   905 		Change name of directory plugins/version_2/CryptoEncryption to plugins/version_2/crypto_encryption.
   906 
   907 
   908 Version 2.00.1956
   909 =================
   910 (Made by LukaszForynski 19/12/2008)
   911 
   912 1.	RichardCo
   913 	1.	MINOR_CHANGE: Mark more binaries as SMPSAFE
   914 
   915 2.	DmitryL
   916 	1.	DEFECT FIX: DEF131092 One of Writing functions of RFile64 returns wrong value  
   917 	2.	Milestone: Diran, GT0419, MS3.7, DS.1199 Next Generation File System
   918 		Requirements: PREQ2083 Next Generation File System
   919 
   920 3.	RichardCo
   921 	1.	MILESTONE: Diran GT0364 - SMP MS3.1.3 DS.1454 PREQ1945 Basic SMP Compatibility Mode
   922 		NaviEngine roms can be built with -d SMPCOMPATMODE to enable compatibility mode.
   923 		In compatibility mode, any usermode binary which lacks the SMPSAFE flag will force
   924 		the process it is loaded into to execute only on core 0.
   925 
   926 
   927 Version 2.00.1955
   928 =================
   929 (Made by DmitryL 11/12/2008)
   930 
   931 1.	SamiraA
   932 	1.	DEFECT FIX: PDEF130334: Cannot create a file with "\u3005" name correctly 
   933 
   934 2.	indrajeetsingh
   935 	1.	DEFECT FIX: DEF130678: CFileMan is leaking memory
   936 
   937 3.	VincentF
   938 	1.	DEFECT FIX: DEF130916: [Coverity]-SYMBIAN.CLEANUP_STACK -base/f32/sfile
   939 
   940 4.	ArunachalamR
   941 	1.	DEFECT FIX: DEF130917: TFsFileWrite::CommonEnd() should treat file size as unsigned long long 
   942 		Function signature and implementation is modified to treat file size as unsigned long long
   943 		Union implementation in CFileCache is removed. 
   944 
   945 5.	KaiD
   946 	1.	Milestone: Diran, GT0419, MS3.3, DS.1325 Kernel: Improved FAT performance for large numbers of files
   947 		Requirements:
   948 		PREQ1885 Improved FAT performance for large numbers of files 
   949 		Symbian Variability:
   950 		#define SYMBIAN_ENABLE_FAT_DIRECTORY_OPT
   951 		(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.
   952 		(DS1325.2. Implemented new directory caches for FAT volumes, the new cache adopts the Memory Manager/Client framework for dynamic cache size allocation.)
   953 		(DS1325.3. Optimised current usage of FAT directory caches. )
   954 
   955 6.	DmitryL
   956 	1.	DEFECT FIX: PDEF131470 Attributes, date, time of copied files are changed because of file cache flush 
   957 
   958 7.	NicholasC
   959 	1.	DEFECT FIX: DEF131311: [Coverity] Errors reported in Host Mass Storage 
   960 	2.	DEF131305: Block reads can fail with SanDisk Card reader b_fat32
   961 
   962 8.	ReubenH
   963 	1.	MINOR_CHANGE: Added SMPSAFE to a carefully-selected, MarkH-approved subset of Base projects.
   964 
   965 9.	JessieZhang
   966 	1. 	DEFECT FIX: DEF130390: [Coverity] Issues CID 1048 and 1049 to be reinvestigated...
   967 	
   968 10.	MiguelB
   969 	1.	DEFECT FIX: DEF131384: ROFS Directory Cache not robust against changes to heap allocation algorithm 
   970 
   971 
   972 Version 2.00.1954
   973 =================
   974 (Made by AnatolyP 04/12/2008)
   975 
   976 1.	AnatolyP	
   977 	1.	MILESTONE: Diran GT0364 - SMP MS3.1.1 DS.1410	PREQ1945: SMP kernel prototype support for Cortex A9 processor
   978 	2.	MILESTONE: Diran GT0364 - SMP MS3.1.2 DS.1439	PREQ1945: Prototype Run Mode Debug
   979 	3.	MILESTONE: Diran GT0364 - SMP MS3.2.5 (DS1419)	PREQ1994: ARM11 MPCore SMP BSP: NAND 
   980 	4.	INTERFACE CHANGE: BR2572.1 New virtual method DLogicalChannel::SendMsg
   981 
   982 
   983 Version 2.00.1953
   984 =================
   985 (Made by AnatolyP 02/12/2008)
   986 
   987 1.	DmitryL
   988 	1.	DEFECT FIX: DEF130178: ReserveDriveSpace function in RFs Class can't get result to be expected 
   989 
   990 2	NicholasC
   991 	1.	DEFECT FIX: DEF131057: Hang when accessing memory beyond media's address size using SanDisk
   992 
   993 Version 2.00.1952
   994 =================
   995 (Made by indrajeetsingh 27/11/2008)
   996 
   997 1.	NicholasC
   998 	1.	DEFECT FIX: DEF127908: F32Tests fail with Host USB Mass Storage 
   999 
  1000 2.	MiguelB
  1001 	1.	DEFECT FIX: PDEF130659: More issues with MMC card removal 
  1002 	
  1003 3.	SivashankarN
  1004 	1.	DEFECT FIX: DEF130905: which category does \base\f32\shostmassstorage\ belong to?	
  1005 	
  1006 4.	NicholasC
  1007 	1.	DEFECT FIX: PDEF130023: RFs::Drive returns valid data when a drive is mounted for USB mass storage 
  1008 
  1009 5.	DmitryL
  1010 	1.	DEFECT FIX: PDEF130213 TTG:<wrong description in Developer's library as to folder depth>  
  1011 
  1012 6.	indrajeetsingh
  1013 	1.	DEFECT FIX: DEF130404: asynch move behaves differently when src path doenst exist
  1014 	2.	DEFECT FIX: DEF128965: T_FMAN fails when run with other f32tests on 4GB SD Card
  1015 
  1016 7.	NeilClifford
  1017 	1.	DEFECT FIX: DEF130396: SMP: Efile panic when run crypto SMP multicore test
  1018 
  1019 8.	JessieZhang
  1020 	1.	DEFECT FIX: PDEF129836: Fail to create a file with "IDEOGRAPHIC SPACE(\u3000)"  name
  1021 	2.	DEFECT FIX: DEF130324: TFormatMode documentation is incorrect  
  1022 	
  1023 9.	MiguelB
  1024 	1.	DEFECT FIX: PDEF130503: SMP: File server request completion isn't SMP safe 
  1025 
  1026 10.	SivashankarN
  1027 	1.	INC130429: [OTG] Wrong IPC Argument in RUsbHostMsDevice 
  1028 
  1029 Version 2.00.1951
  1030 =================
  1031 (Made by SivashankarN 14/11/2008)
  1032 1.	TomCosgrove
  1033 	1.	MINOR_CHANGE: Fix punctuation error in doc comments on RFile*::AdoptFromServer()
  1034 		Comma at end of sentence should be full stop.
  1035 	2.	MINOR_CHANGE: Print out failure reason within GetLFFSControlModeSize() in T_CHLFFS
  1036 		to help determine cause of DEF130206 t_format fails on lubbock k drive.
  1037 
  1038 Version 2.00.1950
  1039 =================
  1040 (Made by DaveGordon 12/11/2008)
  1041 
  1042 1.	MiguelB
  1043 	1.	DEFECT FIX: PDEF129507: SPPR_REL: Phone freezes when memory card removed during recording
  1044 
  1045 2.	TomCosgrove
  1046 	1.	MINOR_CHANGE: Fix incorrect non-doxygen comment on LocaleUtils::IsLegalShortNameCharacter()
  1047 		Original comment describing the method had been copied from LocaleUtils::ConvertFromUnicodeL()
  1048 
  1049 
  1050 Version 2.00.1949
  1051 =================
  1052 (Made by Vino Jose 31/10/2008)
  1053 
  1054 1. ArunachalamR
  1055 	1. 	MileStone: Diran, GT0419, MS3.6, DS.1176, PREQ1725 64 Bit File Server
  1056 		Symbian Variability: SYMBIAN_ENABLE_64_BIT_FILE_SERVER_API
  1057 		BR2477.1 Affected clients of RFile should explicitly enable 64-bit file 
  1058 		support to allow access to files beyond the 2GBytes boundary, and migrate to 
  1059 		using TInt64 offsets and the new RFile::Seek64/RFile::Size64 API's where appropriate. 
  1060 		Clients who have not migrated need to ensure they handle the error KErrTooBig
  1061 
  1062 2. KaiD
  1063 	1. 	Milestone: Sphinx, GT0339, MS3.18, DS.1254 CR1271: Kernel & HW: Improve File Server test coverage for non-european languages
  1064 		Change Requests: CR1271 Improve File Server test coverage for non-european languages
  1065 
  1066 
  1067 Version 2.00.1948
  1068 =================
  1069 (Made by ReubenH 27/10/2008)
  1070 
  1071 1.	DmitryL
  1072 	1.	DEFECT FIX: PDEF129419 F32 file name checksum calculation is not optimal
  1073 
  1074 2.	MichaelCox
  1075 	1.	DEFECT FIX: DEF129320: TF32ArgType should be publishPartner and Released. 
  1076 		Fix for INC128291: TF32ArgType is in the global namespace and clashes with existing enums, moved TF32ArgType
  1077 		to f32plugin.h, which is declared as @file internalTechnology, whereas before TF32ArgType was publishPartner.
  1078 		Also, TFsPluginRequest::Function and DriveNumber have been made publishPartner as they are needed by plugin authors.
  1079 
  1080 
  1081 Version 2.00.1947
  1082 =================
  1083 (Made by NeilClifford 	17/10/2008)
  1084 
  1085 1.	KaiD
  1086 	1.	Development CRs: MZAI-7JRKFL New CFileMan Test Framework
  1087 
  1088 2.	patrickconway
  1089 	1.	DEFECT FIX: DEF128392: T_FSYS fails when querying block-size information of large-block NAND devices 
  1090 
  1091 3.	JessieZhang
  1092 	1.	DEFECT FIX: PDEF128029: Panic code documentation for RFs::ReadFileSection() is not correct 
  1093 
  1094 4.	MichaelCox
  1095 	1.	DEFECT FIX: DEF128682: Base not building with RVCT 3.1
  1096 
  1097 5.	DmitryL
  1098 	1.	DEFECT FIX: PDEF128860 TTG:< the file becomes deleted when a file would be renamed >  
  1099 
  1100 
  1101 	
  1102 Version 2.00.1946
  1103 =================
  1104 (Made by NicholasC 	14/10/2008)
  1105 
  1106 1.	KaiD
  1107 	1.	DEFECT FIX: PDEF128576: Unicode name file deleted after Scandrive 
  1108 
  1109 2.	dharmeshgandhi
  1110 	1.	DevCR: Peripherals, GT0339 Base Meteora, Reference file server plug-in,
  1111   		The new file server plug-in framework enables third party suppliers to write their own file modifier plug-ins .
  1112 		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.
  1113 		A management application shall be delivered and shall basically load/unload plug-ins, etc
  1114 
  1115 
  1116 Version 2.00.1945
  1117 =================
  1118 (Made by KaiD	13/10/2008)
  1119 
  1120 1.	KaiD
  1121 	1.	Milestone: Diran, GT0419, MS3.13, DS.1130 Improved FAT performance for large numbers of files 
  1122 		Requirements: 
  1123 			PREQ1885 Improved FAT performance for large numbers of files
  1124 		Symbian Variability:	
  1125 			#define SYMBIAN_ENABLE_FAT_DIRECTORY_OPT
  1126 
  1127 
  1128 Version 2.00.1944
  1129 =================
  1130 (Made by SivashankarN  08/10/2008)
  1131 
  1132 1.	DmitryL
  1133 	1.	DEFECT FIX: PDEF128466: TTG:<two files with the exactly same short file name erroneously exist> 
  1134 
  1135 2.	SivashankarN
  1136 	1.	DEFECT FIX: DEF127652:  [MS] Host can't recover gracefully from USB device removal during data transfer
  1137 
  1138 Version 2.00.1943
  1139 =================
  1140 1.	MichaelCox
  1141 	1.	DEFECT FIX: INC128291: TF32ArgType is in the global namespace and clashes with existing enums 
  1142 
  1143 2.	RichardCo
  1144 	1.	DEFECT FIX: PDEF128520: SWI-installed KDLL (statically linked to LDD) does not get loaded 
  1145 		Loading a kernel-side library which is linked to another kernel side library
  1146 		was not possible if the dependent had static data.
  1147 
  1148 
  1149 
  1150 
  1151 Version 2.00.1942
  1152 =================
  1153 (Made by MichaelMo  02/10/2008)
  1154 
  1155 1.	SivashankarN
  1156 	1.	DEFECT FIX: DEF128289: Template roms cant be built
  1157 
  1158 2.	AnatolyP
  1159 	1.	DEFECT FIX: PDEF127937: TTG:<a invalid character can be set on the volume label>
  1160 
  1161 
  1162 Version 2.00.1941
  1163 =================
  1164 (Made by SebOlney  24/09/2008)
  1165 
  1166 1.	patrickconway
  1167 	1.	DEFECT FIX: DEF114282: Multiple intermittent F32TEST failures on Integrator
  1168 
  1169 
  1170 Version 2.00.1940
  1171 =================
  1172 (Made by georgiosdementis 22/09/2008)
  1173 
  1174 1.	MichaelCox
  1175 	1.	DEFECT FIX: DEF127677: TFsPluginRequest::FileName( ) does not work in some scenarios 
  1176 
  1177 2.	JessieZhang
  1178 	1.	DEFECT FIX: DEF127010: eshell 'copy' command not working correctly for single files
  1179 
  1180 3.	SivashankarN
  1181 	1.	GT0399 MS3.15 DS1031 PREQ1577: USB Host Mass Storage
  1182 
  1183 
  1184 
  1185 Version 2.00.1939
  1186 =================
  1187 (Made by georgiosdementis 12/09/2008)
  1188 
  1189 1.	MichaelCox
  1190 	1.	DEFECT FIX: DEF126881: TFsPluginRequest::Src() faults in EFsDirReadOne and EFsDirReadPacked intercept 
  1191 	2.	DEFECT FIX: DEF126581: Enchanced file server plugin test failures relating to LFFS and readfilesection 
  1192 	3.	DEFECT FIX: DEF127407: CFsObject::Name returns NULL when TName is expected. 
  1193 
  1194 2.	DmitryL
  1195 	1.	DEFECT FIX: PDEF127147 RFile::SetModified does not take effect by RFile::Flush()	
  1196 	2.	DEFECT FIX: PDEF126981 TTG:<CheckDisk error is raised after having Renamed a file or folder>
  1197 	3.	MINOR_CHANGE: F32 tests tidy up 
  1198 
  1199 3.	AnatolyP
  1200 	1.	DEFECT FIX: PDEF127162 SPPR_REL: DUT is shut down automatically when tapping continuously 'Retry'
  1201 	2.	DEFECT FIX: PDEF127207 Video sharing:Phone reboot when unpluging memory card in Video sharing state.
  1202 
  1203 4.	ArchanaH	
  1204 	1.	DEFECT FIX: DEF124775: If (lockposition+locklength)> 2GB -1, then RFile::Lock() returns KErrNone.
  1205 
  1206 5.	MiguelB
  1207 	1.	DEFECT FIX: PDEF127286: Inc9 POD: The phone reboots or hangs up after plugging USB while downloading an 
  1208 
  1209 6.	GeorgeS
  1210 	1.	DEFECT FIX: DEF127529 eshell gives -21 instead -11, while md folder name is same as file name
  1211 
  1212 7.	KaiD
  1213 	1.	DEFECT FIX: PDEF127641: FAT/FAT32: unable to open or delete file whose name contains illegal characters 
  1214 
  1215 8.	indrajeetsingh
  1216 	1.	DEFECT FIX: DEF127074: t_FMAN fails on large cards
  1217 
  1218 
  1219 Version 2.00.1938
  1220 =================
  1221 (Made by georgiosdementis 05/09/2008)
  1222 
  1223 1.	JessieZhang
  1224 	1.	DEFECT FIX: DEF125362: Emulator drive C reports media type as RAM 
  1225 
  1226 2.	MichaelCox
  1227 	1.	DEFECT FIX: PDEF127294: t_ext1 has warnings and fails with PDEF122991 fix 
  1228 	2.	DEFECT FIX: DEF126584: Enhanced file server plugin test failures when calling AddPlugin
  1229 
  1230 3.	GeorgeSin
  1231 	1.	DEFECT FIX: DEF126404: [coverity] - many different coverity issues found at /f32/sfile/
  1232 
  1233 
  1234 Version 2.00.1937
  1235 =================
  1236 (Made by georgiosdementis 29/08/2008)
  1237 
  1238 1.	JessieZhang
  1239 	1.	DEFECT FIX: DEF126690: runtests doesn't warn users that it's going to panic on purpose
  1240 
  1241 2.	AndreasP
  1242 	1.	DEFECT FIX: DEF126257: eshell copy file to same folder should return error message.
  1243 
  1244 3.	AttilaV
  1245 	1.      MINOR CHANGE: Update Base Functional Specification with CR1258
  1246 
  1247 
  1248 Version 2.00.1936
  1249 =================
  1250 (Made by indrajeetsingh 26/08/2008)
  1251 
  1252 1.	JessieZhang
  1253 	1.	DEFECT FIX: DEF126397: [Coverity]- DELETE_ARRAY - /f32/slffs/
  1254 	2.	DEFECT FIX: DEF126398: [Coverity]- OVERRUN_STATIC - /f32/smassstorage/
  1255  
  1256 2.	GeorgeSin
  1257 	1.	DEFECT FIX: DEF126395 [Coverity]- SYMBIAN.CLEANUP_STACK - /f32/scomp/ 
  1258 	2.	DEFECT FIX: DEF126396 [Coverity]- EVALUATION_ORDER - \f32\sfat32
  1259 
  1260 
  1261 Version 2.00.1935
  1262 =================
  1263 (Made by MichaelCox, 20/08/2008)
  1264 
  1265 1.	DmitryL
  1266 	1.	DEFECT FIX: DEF125490: Damaged MMC card causes ASSERT in FAT implementation 
  1267 
  1268 2.	KaiD
  1269 	1.	DEFECT FIX: PDEF126260: Japanese name directory without VFAT entry fails to access
  1270 
  1271 3.	MichaelCox
  1272 	1.	GT0399 MS3.16 DS1030 PREQ1111: Peripherals: Enhanced F32 plug-in framework
  1273 
  1274 
  1275 Version 2.00.1934
  1276 =================
  1277 (Made by patrickconway, 15/08/2008)
  1278 
  1279 1.	MichaelCox
  1280 	1.	DEFECT FIX: DEF126548: Typo in comment for class THMem
  1281 
  1282 2.	VincentF
  1283 	1.	DEFECT FIX: DEF126477: Is f32test/demandpaging test or production
  1284 
  1285 3.	GayathriR
  1286 	1.	DEFECT FIX: PDEF126203: CMassStorageMountCB::MountL handles missing media in wrong way 
  1287 
  1288 4.	AndreasP
  1289 	1.	DEFECT FIX: DEF126257: eshell copy file to same folder should return error message.
  1290 
  1291 5.	patrickconway
  1292 	1.	DEFECT FIX: DEF126307: T_FILEMATCH doesn't check return codes
  1293 
  1294 
  1295 Version 2.00.1933
  1296 =================
  1297 (Made by JohnS, 15/08/2008)
  1298 
  1299 1.	KaiD
  1300 	1.	MINOR CHANGE: Fixed X86GCC build errors in t_dirs.cpp
  1301 
  1302 2.	MiguelB
  1303 	1.	DEFECT FIX: PDEF126145: T_DemandPaging failures cause t_filecache failure.
  1304 	2.	DEFECT FIX: DEF124458: Formating an SD card with an existing illegal partition table can fail
  1305 
  1306 3.	NeilC
  1307 	1.	DEFECT_FIX: DEF125019: [coverity] - CHECKED_RETURN - base/f32/sfile
  1308 
  1309 4.	indrajeetsingh
  1310 	1.	DEFECT_FIX: DEF125570: src dir is not deleted after Move if trg has the same src dir already existing
  1311 
  1312 
  1313 Version 2.00.1932
  1314 =================
  1315 (Made by ReubenH, 04/08/2008)
  1316 
  1317 1.	MichaelCox
  1318 	1.	DEFECT FIX: DEF125673: Undocumented position parameter in RFs::MountPlugin 
  1319 
  1320 2.	KaiD
  1321 	1.	DEFECT FIX: DEF125143: Inconsistency found in dir creations when containing trailing dots and spaces
  1322 
  1323 
  1324 Version 2.00.1931
  1325 =================
  1326 (Made by fabiangortz, 24/07/2008)
  1327 
  1328 1.	GayathriR
  1329 	1.	DEFECT FIX: DEF125010: [coverity] - OVERRUN_STATIC - base/f32/sfile/sf_drv.cpp
  1330 
  1331 2.	DmitryL
  1332 	1.	DEFECT FIX: DEF125009  [coverity] - OVERRUN_STATIC - base/f32/sfat32 
  1333 
  1334 3.	KaiD
  1335 	1.	DEFECT FIX: DEF125015: [coverity] - REVERSE_INULL - base/f32/sfile 
  1336 	
  1337 4.	MiguelB
  1338 	1.	DEFECT FIX: PDEF124959: Phone freezes when memory card is removed during recording
  1339 
  1340 5.	indrajeetsingh
  1341 	1.	DEFECT FIX: DEF124051: Can not compile f32test - t_readdist test
  1342 	
  1343 6.	MichaelCox
  1344 	1.	DEFECT FIX: DEF115913: File System Plugins ignore the Mounted Drive attribute 
  1345 
  1346 7.	LaneR
  1347 	1.	MINOR_CHANGE: Changed ldrtst makefile to propagate bldmake bldfiles platform type to enable building for ARMv6
  1348 
  1349 	
  1350 Version 2.00.1930
  1351 =================
  1352 (Made by fabiangortz, 21/07/2008)
  1353 
  1354 1.	RichardCo
  1355 	1.	DEFECT FIX: DEF125008: [coverity] - FORWARD_NULL - base/f32/sfile 
  1356 
  1357 2.	TomCosgrove
  1358 	1.	DEFECT FIX: DEF125011: [coverity] - OVERRUN_STATIC - base/f32/sfile/sf_local.cpp
  1359 		Replace "<= KMaxPBusSockets" with "< KMaxPBusSockets" to fix off-by-one.
  1360 
  1361 
  1362 Version 2.00.1929
  1363 =================
  1364 (Made by RichardCo, 17/07/2008)
  1365 
  1366 1.	RajivM
  1367 	1.	DEFECT FIX: DEF123575: CFileMan::Move() returns KErrNone even with unsuccessful move operation.
  1368 
  1369 2.	GayathriR
  1370 	1.	DEFECT FIX: PDEF124744: Return value is not checked in CUsbMsFileSystem::InitThreadL()
  1371 
  1372 3.	RichardCo
  1373 	1.	DEFECT FIX: PDEF125108: BC error: BC problem with third party application PocketTODO
  1374 		Loader was not correctly handling uncompressed or bytepair compressed executables
  1375 		on removable media when paging is enabled.
  1376 
  1377 
  1378 Version 2.00.1928
  1379 =================
  1380 (Made by LukaszF, 15/07/2008)
  1381 
  1382 1.	NicholasC
  1383 	1.	DEFECT FIX: PDEF124150: USB - Lumiere fails USBCV MSC Mass Storage test in both FS and HS modes 
  1384 
  1385 2.	VincentF
  1386 	1.	DEFECT FIX: PDEF124805: TFindFile::DoFindByDir is inefficient
  1387 
  1388 3.	TomCosgrove
  1389 	1.	DEFECT FIX: DEF121020: Typographical error in sf_request.cpp
  1390 		Changed "if (r |= KErrNone)" to "if (r != KErrNone)
  1391 
  1392 
  1393 Version 2.00.1927
  1394 =================
  1395 (Made by KaiD, 09/07/2008)
  1396 
  1397 1.	ArchanaH
  1398 	1.	DEFECT FIX: DEF123645: etshell doesn't handle file sizes > 2GB 
  1399 
  1400 
  1401 Version 2.00.1926
  1402 =================
  1403 (Made by DmitryL, 07/07/2008)
  1404 
  1405 1.	DmitryL
  1406 	1.	DEFECT FIX: DEF123582 FAT32 PREQ1721 enhancements require better support in FileServer 
  1407 
  1408 2.	ArchanaH
  1409 	1.	DEFECT FIX: DEF123044: Request status value for negative scenarios are not handled properly in CFileMan 
  1410 	2.	DEFECT FIX: DEF123645: etshell doesn't handle file sizes > 2GB 
  1411 
  1412 3.	KaiD
  1413 	1.	DEFECT FIX: PDEF124082: Directories/files with non-latin names are not listed in dialogs and file browse
  1414 
  1415 	
  1416 Version 2.00.1925
  1417 =================
  1418 (Made by NicholasC, 23/06/2008)
  1419 
  1420 1.	NicholasC
  1421 	1.	DEFECT FIX: PDEF123999: USB Mass Storage WHQL Test failure (Disk Stress) with double buffering 
  1422 
  1423 Version 2.00.1924
  1424 =================
  1425 (Made by indrajeetsingh, 20/06/2008)
  1426 
  1427 1.	MiguelB
  1428 	1.	DEFECT FIX:  PDEF123403: t_cfstest.exe for some larger SD Cards
  1429 		This defect was re-opened to cater for reported problems with Panasonic 8GB cards.
  1430 		A timeout in the test has been increased.
  1431 
  1432 Version 2.00.1923
  1433 =================
  1434 (Made by patrickconway, 17/06/2008)
  1435 
  1436 1.	VincentF
  1437 	1.	DEFECT FIX: PDEF123681: Calculation of transfer rate is not correct in f_sysbm 
  1438 
  1439 2.	indrajeetsingh
  1440 	1.	DEFECT FIX: DEF121663: Moving a directory returns failure eventhough the directory is moved.
  1441 
  1442 
  1443 Version 2.00.1922
  1444 =================
  1445 (Made by deleogunjumelo, 11/06/2008)
  1446 
  1447 1.	MiguelB
  1448 	1.	DEFECT FIX:  PDEF123403: t_cfstest.exe for some larger SD Cards
  1449 	2.	DEFECT FIX:  DEF123449: File Server memory leak
  1450 
  1451 2.	DmitryL
  1452 	1.	DEFECT FIX: PDEF123410 File server panic due to error of DeleteNotify() even when platsec disabled 
  1453 
  1454 3.	SharathK
  1455 	1.	MINOR_CHANGE: Reframed the documentation fix of DEF120050 to improve the quality
  1456 	
  1457 
  1458 Version 2.00.1921
  1459 =================
  1460 (Made by JohnS, 05/06/2008)
  1461 
  1462 1.	AndrewHi
  1463 	1.	DEFECT FIX: T_Format Test5 not properly supported for all LFFS media
  1464 	
  1465 2.	MichaelCox	
  1466 	1.	DEFECT FIX: DEF121566: t_ext1 test fails after several runs
  1467 
  1468 3.	KaiD
  1469 	1.	DEFECT FIX: DEF122894: Defect in RFs GetDir() API
  1470 
  1471 
  1472 Version 2.00.1920
  1473 =================
  1474 (Made by RichardCo, 01/06/2008)
  1475 
  1476 1.	RajivM
  1477 	1. 	DEFECT FIX: DEF119140: wrong file name had been created in case of including Japanese character
  1478 
  1479 2.	ArchanaH
  1480 	1.	DEFECT FIX: DEF119141: long filename is not created in case of including Japanese character
  1481 
  1482 3.	SharathK
  1483 	1.	DEFECT FIX: DEF120050: CFIleMan::Copy() returns "KErrNone" instead of "KErrDiskFull"
  1484 
  1485 Version 2.00.1919
  1486 =================
  1487 (Made by ParameshwariB, 23/05/2008)
  1488 
  1489 1.	MichaelCox
  1490 	1.	DEFECT FIX: PDEF121816: ESTART calls InitCompositeFileSystem() in wrong place
  1491 
  1492 2.	SebOlney
  1493 	1.	DEFECT FIX: PDEF122770: Password Store Exceeded
  1494 
  1495 3.	RichardCo
  1496 	1.	DEFECT FIX: PDEF122835: ONB: wstest_t_autotest.script crashes on H4 / times out on WinSCW
  1497 		Make loader safely fail when asked to load a binary whose name is the empty string.
  1498 
  1499 4.	TomCosgrove
  1500 	1.	MINOR_CHANGE: Fix spelling in comments: it's "whether", and not "wether" (and rarely "weather")
  1501 		Corrections made in several files throughout base code.
  1502 
  1503 5.	PhilipSturdy
  1504 	1.	Change Request: CR1266: Implemented Delete On Close extension to RFile file creation methods (#1240403)
  1505 	2.	Minor fix (#1244079) to t_file relating to a race on subset of test hardware due to CR1266 check in.
  1506 
  1507 
  1508 
  1509 Version 2.00.1918
  1510 =================
  1511 (Made by SivashankarN, 19/05/2008)
  1512 
  1513 1.	NicholasC
  1514 	1.	DEF118967: CBulkOnly transport does not connect to all LUNs. 
  1515 
  1516 2.	MichaelCox
  1517 	1.	DEFECT FIX: DEF121566: t_ext1 test fails after several runs
  1518 
  1519 3.	patrickconway
  1520 	1.	DEFECT FIX: PDEF122384: E32test and F32test issues (SD / F32) 
  1521 
  1522 4.	DmitryL
  1523 	1.	DEF121859: ScanDrive badly handles large amount of lost clusters
  1524 
  1525 
  1526 Version 2.00.1917
  1527 =================
  1528 (Made by LukaszF, 09/05/2008)
  1529 
  1530 1.	MichaelP
  1531 	1.	PDEF122074: USB Mass Storage driver crashes in certain situations
  1532 		Changed the USB Mass Storage driver such that function
  1533 		CBulkOnlyTransport::ReadAndDiscardData() doesn't use any longer the main Read
  1534 		buffer iReadBuf (the not-readiness of which caused the defect) but instead
  1535 		the new dedicated small buffer iDiscardBuf.
  1536 2.	JohnS
  1537 	1.	MINOR_CHANGE: Remove unnecessary code from t_nandmisc.cpp.
  1538 
  1539 3.	DmitryL
  1540 	1.	DEFECT FIX: PDEF120775: FAT volume remonting does not notice FAT table changes.
  1541 	2.	DEFECT FIX: DEF119115 Unreliable code in FAT implementation 
  1542 	3.	DEFECT FIX: DEF122067 Fat32 bit cache populating thread work is not optimal 
  1543 
  1544 4.	BhaskarR
  1545 	1.	DEFECT FIX: DEF121829 Duplicate test case in t_dcdiskadminallfiles.cpp 	
  1546 
  1547 5.	RichardCo
  1548 	1.	DEFECT FIX: DEF115401: Incomplete validation of data in loader 
  1549 
  1550 
  1551 Version 2.00.1916
  1552 =================
  1553 (Made by DmitryL, 28/04/2008)
  1554 
  1555 1.	MichaelMo
  1556 	1.	DEFECT FIX: DEF120597: Priority dependence in fileserver in T_CFSSIMPLE
  1557 
  1558 
  1559 Version 2.00.1915
  1560 =================
  1561 (Made by fabiangortz, 22/04/08)
  1562 1.	KaiDuan
  1563 	1.	DEFECT FIX: DEF117345: TTG:<Japanese character as short file name changes to different one on creating>
  1564 		Corrected leading "0xE5" character handling in FAT implementation.
  1565 
  1566 
  1567 Version 2.00.1914
  1568 =================
  1569 (Made by NicholasC, 18/04/08)
  1570 
  1571 1.	AndreasP
  1572 	1.	DEFECT FIX: DEF120773: EShell format of MMC media - ReservedSector / Number of FATS
  1573 2.	NicholasC
  1574 	1.	DEFECT FIX: DEF121112: USB Mass Storage driver has bare RDebug::Printf(() 
  1575 
  1576 
  1577 Version 2.00.1913
  1578 =================
  1579 (Made by indrajeetsingh, 16/04/08)
  1580 
  1581 1.	MichaelCox
  1582 	1.	DEFECT FIX: PDEF120295: BC break in CFsPlugin
  1583 
  1584 
  1585 Version 2.00.1912
  1586 =================
  1587 (Made by deleogunjumelo, 09/04/08)
  1588 
  1589 1.	NeilC
  1590 	1.	MILESTONE: Sphinx, GT0339, MS3.7.2 DS766 PREQ1724: Enable the use of shared chunks within F32 and the media subsystem
  1591 
  1592 
  1593 Version 2.00.1911
  1594 =================
  1595 (Made by patrickconway, 03/04/2008)
  1596 
  1597 1.	NicholasCox
  1598 	1.	PDEF119749: t_ms_publish hangs 	
  1599 	2.	PDEF120290: DriveStateChangedPublisher causes a behaviour break to the drive manager in msfs 
  1600 	
  1601 2.	RoopaR
  1602 	1.	DEFECT FIX: PDEF119847: TestExtendedChars of t_scn32dr1.exe failed in Japanese environment.
  1603 	
  1604 3.	MiguelB
  1605 	1.	DEFECT FIX: DEF120175: Issues with file server plugins & file caching
  1606 
  1607 Version 2.00.1910
  1608 =================
  1609 (Made by DjordjeK, 26/03/2008)
  1610 
  1611 1.	NicholasCox
  1612 	1.	DEF119965: Unguarded RDebug::Printf in mass storage production code (GetCheckDrive) 
  1613 
  1614 Version 2.00.1909
  1615 =================
  1616 (Made by JohnS, 20/03/2008)
  1617 
  1618 1.	MichaelCox
  1619 	1.	DEFECT FIX: DEF119472: Drive Info not fully updated immediately after media change	
  1620 
  1621 2.	VincentF
  1622 	1.	MINOR_CHANGE: Enable CSV output in perf_filter.pl
  1623 
  1624 3.	MichaelP
  1625 	1.	MINOR_CHANGE: Removed obsolete USB Mass Storage unit test t_13cases.
  1626 		Coverage for the '13 cases' is provided by the MSC test suite of the
  1627 		official USB test & compliance tool USBCV.
  1628 
  1629 4.	LukaszF
  1630 	1. DEFECT FIX: DEF119418: Loading the locale DLL into process after setting locale fails on emulator.
  1631 
  1632 Version 2.00.1908
  1633 =================
  1634 (Made by ParameshwariB, 17/03/2008)
  1635 
  1636 1.	fabiangortz
  1637 	1.	DEFECT FIX: DEF116668: TTG:<Chkdsk command on PC detects an error after renamed folder on SDHC>
  1638 
  1639 2.	MichaelCox
  1640 	1.	CHANGE REQUEST: CR1115:	Dual Slot Support
  1641 
  1642 
  1643 Version 2.00.1907
  1644 =================
  1645 (Made by RichardCo, 11/03/2008)
  1646 
  1647 1.	JohnS
  1648 	1.	DEFECT FIX: PDEF114161: XSR garbage collection not updated for multiple FAT
  1649 		The Unistore-II / XSR driver now collects garbage for every FAT partition.
  1650 	2.	MINOR CHANGE: Filldrive() in t_xferbm no longer generates unnecessary test failures.
  1651 
  1652 2.	DmitryL
  1653 	1.	DEFECT FIX: DEF119052 t_scn32dr2 test fails on volume of 8192 sectors and 4 spc. 
  1654 
  1655 3.	markhambleton
  1656 	1.	DEFECT FIX: DEF119113: Test cases don't handle a lack of removable media on x86.
  1657 
  1658  
  1659 Version 2.00.1906
  1660 =================
  1661 (Made by OlegI, 04/03/2008)
  1662 
  1663 1.	AndreasP
  1664 	1.	Milestone: Sphinx, MS3.11, Base Meteora GT0339, DS956, PREQ1871 Peripherals: Support code for System State Manager
  1665 	
  1666 		Configurability and compatibility:
  1667 		BR2271 Increase Domain Manager domain id and domain state variable sizes
  1668 		Not configurable, certain components need to be compiled with these changes in, such as domainpolicy2, testexecute, apparc and ecom3.
  1669 
  1670 
  1671 
  1672 Version 2.00.1905
  1673 =================
  1674 (Made by ReubenH, 03/03/2008)
  1675 
  1676 1.	NicholasC
  1677 	1.	DEFECT FIX: PDEF118828: I/O errors in mass storage mode with non-Windows terminals
  1678 
  1679 2.	LukaszF 
  1680 	1.	DEFECT FIX: DEF111290: DP Default ROM Failures: apparctest_t_Locale & apparctest_t_Caption
  1681 
  1682 
  1683 Version 2.00.1904
  1684 =================
  1685 (Made by fabiangortz, 28/02/2008)
  1686 
  1687 1.	patrickconway
  1688 	1.	DEFECT FIX: PDEF118165: Klocwork issues, NULL pointer can be used in release build base_f32
  1689 
  1690 2.	DmitryL
  1691 	1.	DEFECT FIX: PDEF117851: RFs::Volume() incorrectly reports KErrNone after media removal 
  1692 	2.	MILESTONE: Sphinx, GT0339, MS3.5.2, PREQ1721 REQ7248 DS710 FAT32 background scan for free clusters.
  1693 	3.	MILESTONE: Sphinx, GT0339, MS3.5.4, PREQ1721 REQ7766 DS711 Compressed FAT representation.
  1694 
  1695 3.	Yogesh Chauhan
  1696 	1.	DEFECT FIX: DEF118468: KCurrentPosition cannot be specified by user in RFile::Read and RFile::Write.
  1697 
  1698 
  1699 Version 2.00.1903
  1700 =================
  1701 (Made by ParameshwariB, 19/02/2008)
  1702 
  1703 1.	MichaelMo
  1704 	1.	DEFECT FIX: PDEF118046: file server crashes because requests queued incorrectly on main thread
  1705 
  1706 
  1707 Version 2.00.1902
  1708 =================
  1709 (Made by SivashankarN, 14/02/2008)
  1710 
  1711 1.	MiguelB
  1712 	1.	DEFECT FIX: PDEF117946: Back upping Phone with PC Suite via USB makes phone to crash
  1713 
  1714 2.	DmitryL
  1715 	1.	DEFECT FIX: PDEF117478: Locale and time changes trigger time consuming fat operations 
  1716 	
  1717 	
  1718 Version 2.00.1901
  1719 =================
  1720 (Made by ReubenH, 11/02/2008)
  1721 
  1722 1.	MiguelB
  1723 	1.	DEFECT FIX: PDEF117786: CheckDisk after FindEntryBounce of t_fsrvbm fails with KErrTooBig
  1724 
  1725 2.	ReubenH
  1726 	1.	DEV CR: BBRE-77FLAL: Kernel, GT0364 SMP, SMP: Modifications to base code in support of the GCC compiler 
  1727 		and related tools for the x86 target (i.e. support for new X86GCC platform)
  1728 
  1729 Version 2.00.1900
  1730 =================
  1731 (Made by NicholasC, 30/01/2008)
  1732 
  1733 
  1734 Version 2.00.1748
  1735 =================
  1736 (Made by RichardCo, 25/01/2008)
  1737 
  1738 1.	indrajeetsingh
  1739 	1.	DEFECT FIX: PDEF112148: CFileMan->Move() behaves inconsistently
  1740 
  1741 2.	MiguelB
  1742 	1.	DEFECT FIX: PDEF116573: Phone reboots when formatting memory card after recording high quality voice cli
  1743 	2.	DEFECT FIX: DEF116576: T_RAW can fail on large media
  1744 
  1745 3.	MariamSood
  1746 	1.	DEFECT FIX: DEF116276: CLocDrvMountCB::CreateLocalDrive() doesn't handle error code of InitLocalDrive()
  1747 
  1748 4.	DmitryL
  1749 	1.	DEFECT FIX: PDEF116531 FAT32 Free clusters counting is inefficient.
  1750 
  1751 5.	SebO
  1752 	1.	CHANGE REQUEST: Development CR BBRE-788J8X, Peripherals GT0339 Base Meteora
  1753 		(Was CR1084) Removable media should be able to use Local time stamps.
  1754 
  1755 6.	indrajeetsingh
  1756 	1.	DEFECT FIX: DEF113299: CFileMan::Rename() should fail for invalid file rename
  1757 
  1758 Version 2.00.1747
  1759 =================
  1760 (Made by DmitryL 16/01/2008)
  1761 
  1762 1.	patrickconway
  1763 	1.	MINOR_CHANGE: Modified TestReadAhead() in t_rcache.cpp to report on drive synchronicity
  1764 	
  1765 2.	fabiangortz
  1766 	1.	DEFECT FIX: DEF115095: IMPORT_C on BLKIFUNC()
  1767 
  1768 
  1769 Version 2.00.1746
  1770 =================
  1771 (Made by fabiangortz, 11/01/2008)
  1772 
  1773 1.	NicholasC
  1774 	1.	DEFECT FIX: PDEF116158: Memory card not available in USB Mass Storage after password given
  1775 
  1776 2.	DmitryL
  1777 	1.	DEFECT FIX: PDEF116219: t_ms_mountstart stalls
  1778 
  1779 
  1780 Version 2.00.1745
  1781 =================
  1782 (Made by patrickconway, 08/01/2008)
  1783 
  1784 1.  	KaiD
  1785 	1.  DEFECT FIX: PDEF115574: FAT should create VFat entries for unicode character contained file
  1786 	
  1787 2.	MiguelB
  1788 	1.	DEFECT FIX: DEF115578: User::Invariant() panic in file system thread.
  1789 	2.	DEFECT FIX: DEF116041: Cannot specify the number of FAT tables when formatting a drive
  1790 		Added a flags field to TLDFormatInfo to allow the default number of FAT tables to be specified
  1791 		and added this functionality to the shell format command.
  1792 	3.	MINOR CHANGE: Changed t_med_writebm to fill buffer outside for loop to improve throughput timing calculation.
  1793 
  1794 Version 2.00.1744
  1795 =================
  1796 (Made by NeilC, 25/12/2007)
  1797 
  1798 
  1799 1.  	RaghavendraB
  1800 	1.  DEFECT FIX: INC111038  F32_MMC T_FMAN failed.
  1801 
  1802 2.	DmitryL
  1803 	1.  DEFECT FIX: DEF115494  RFs::IsValidName() API documentation is not complete.
  1804 
  1805 Version 2.00.1743
  1806 =================
  1807 (Made by DeleO, 17/12/2007)
  1808 
  1809 1.	RoopaR
  1810 	1.	DEFECT FIX : DEF115215: Missing description for DriveNumber() of CFsDispatchObject class 
  1811 	2.	DEFECT FIX : DEF115216: Missing description for Mount() of CProxyDrive class.
  1812 	3.	DEFECT FIX : DEF115217: Missing documentation for global function GetFileSystem().
  1813 	4.	DEFECT FIX : DEF115214: Missing description for member functions and data members of CFileShare class.
  1814 	5.	DEFECT FIX : DEF115218: Update in-source doc for data members of struct TDriveExtInfo in correct format 
  1815 	6.	DEFECT FIX : DEF115221: Update in-source doc for data members of TExtensionInfo in correct format 
  1816 
  1817 2.	NicholasC
  1818 	1.	DEFECT FIX : DEF115318: MAC can not read large files from USB Mass storage
  1819 
  1820 3.	JonathanM
  1821 	1.	DEFECT FIX : DEF115564: File Server session simulated failure should enclude File Clamp Close operation
  1822 
  1823 4.	DmitryL
  1824 	1.	DEFECT FIX : PDEF114708  extra CFatMountCB mounting after format operation.
  1825 
  1826 5.	KaiD
  1827 	1.	DEFECT FIX : DEF115314: TTG:<`(0x60) code cannot be used as valid Short File Name>
  1828 
  1829 6.	ReubenH
  1830 	1.	DEFECT FIX: DEF114154: Secure clock does not persist HAL setting 
  1831 
  1832 7.	RichardCo
  1833 	1.	DEFECT FIX: DEF109820: Loader issue
  1834 
  1835 
  1836 Version 2.00.1742
  1837 =================
  1838 (Made by LukaszF, 10/12/2007)
  1839 
  1840 1.	SwetankaM
  1841  	1.	DEFECT FIX:PDEF114641 :	SetModified()-Modifies even the creation time of a file on the emulator
  1842 
  1843 2. 	PrashantHG
  1844 	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
  1845 
  1846 
  1847 Version 2.00.1741
  1848 =================
  1849 (Made by DmitryL, 06/12/2007)
  1850 
  1851 1.	RichardCo
  1852 	1.	DEFECT FIX: PDEF115243: Wrong loading order if two DLLs with the same name in Z: and C: have same versio
  1853 		Imported DLL loading now only searches the drives in the usual order rather than searching the
  1854 		directory containing the main EXE/DLL being loaded first.
  1855 	2.	BREAK REQUEST: BR2262.2: Change DLL path search rules to not prefer EXE directory
  1856 		Break for behavioural change in PDEF115243, above.
  1857 
  1858 2.	AndreasP
  1859 	1.	DEFECT FIX: DEF114647: 'cd' command does not work for an absolute path in eshell
  1860 
  1861 
  1862 Version 2.00.1740
  1863 =================
  1864 (Made by DjordjeK 04/12/2007)
  1865 1.	MiguelB
  1866 	1.	DEFECT FIX: INC114627: Formatting E: crashes the shell with 16GB eMMC (Exit Type 2.10 USER)
  1867 
  1868 2.	Rajiv Maskara
  1869 	1.	DEFECT FIX: DEF114667: RDir::Read returns KErrEof when attempting to read from non-existant directory 
  1870 
  1871 3.	NeilC
  1872 	1.	DEFECT FIX: DEF114744: TTG:<number of folders that CheckDisk() can chase up is different with creation>
  1873 
  1874 
  1875 Version 2.00.1739
  1876 =================
  1877 (Made by RichardCo 30/11/2007)
  1878 
  1879 1.	SharathK
  1880 	1.	DEFECT FIX: DEF114527 : Tech view : Remove directory (command) returns wrong error code.
  1881 
  1882 2.	MiguelB
  1883 	1.	DEFECT FIX: DEF114421: Inconsistent File Server behaviour when enumerating dirctories
  1884 
  1885 Version 2.00.1738
  1886 =================
  1887 (Made by OlegI 26/11/2007)
  1888 
  1889 1.	JonCo
  1890 	1.	DEFECT FIX: INC113606: DP: Bytepair doesn't work if CODE ODP is enable with AknLayout2scalable.dll file
  1891 		Increased loader stack size to 32K.  This is a temporary solution until the upcoming loader
  1892 		rework is completed.
  1893 
  1894 2.	indrajeetsingh
  1895 	1.	DEFECT FIX: PDEF114246: RFs::Rename() operation return -11 even if names of files are different
  1896 
  1897 3.	Radhakrishnanramanat
  1898 	1.	DEFECT FIX: PDEF114712: ShellFunction::Md returns KErrAlreadyExists with long filename.
  1899 		Validate and return the error code corresponding to GetFullPath() in Md() function.
  1900 	
  1901 4.	AttilaV
  1902 	1.	Defect FIX: PDEF114732: Defects in loader exposed by new loader tests
  1903 
  1904 	
  1905 Version 2.00.1737
  1906 =================
  1907 (Made by ReubenH 22/11/2007)
  1908 
  1909 1.	JenniferH
  1910 	1.	MINOR CHANGE: Changed runtests timeout in autoexec.bat (h2 & H4) for base test images.
  1911 	
  1912 2.	MiguelB
  1913 	1.	DEFECT FIX: DEF110992: Test TSU_MMF_SRSSNK:MM-MMF-SRSSNK-U-0131 fails
  1914 	2.	DEFECT FIX: DEF114103: CFileMan should disable write caching
  1915 	3.	MINOR CHANGE: Added a debug-only class (TFileCacheConfig) to retrieve current file-cache 
  1916 		config for a particular drive.
  1917 	4.	DEFECT FIX: DEF114514 : Calling RFs::Close() with a slow MMC card can cause a USER 80 panic
  1918 	5.	DEFECT FIX: DEF114666 : Changed MmcLoader to call RFile::Flush() to trap write failures when write caching is enabled
  1919 		This only affects demand-paging-from-MMC ROMs.
  1920 	
  1921 3.	AttilaV
  1922 	1.	DEFECT FIX: DEF113333: Kernel crashes on loading an executable.
  1923 
  1924 4.	georgiosdementis
  1925 	1.	MINOR CHANGE: Add entry BASE/F32/29 in Base_Functional_Specification.doc
  1926 
  1927 5.	nicholasc
  1928 	1.	DEFECT FIX: PDEF114233: USB Mass Storage eject and reinsert is not working for udeb
  1929 	2.	MINOR CHANGE: Add entry BASE/F32/30 in Base_Functional_Specification.doc for PREQ1845
  1930 
  1931 
  1932 Version 2.00.1736
  1933 =================
  1934 (Made by NeilC	16/11/2007)
  1935 
  1936 1.	SamiraA
  1937 	1.	DEFECT FIX: DEF114247: T_PWSTR: local drive number doesn't match file server number.
  1938 
  1939 	
  1940 Version 2.00.1735
  1941 =================
  1942 (Made by NicholasC	14/11/2007)
  1943 
  1944 1.	nicholasc
  1945 	1.	MILESTONE: Naiad, GT0326, MS3.14, PREQ1845 - USB Client Mass Storage Double Buffering.
  1946 
  1947 
  1948 Version 2.00.1734
  1949 =================
  1950 (Made by MariamSood	13/11/2007)
  1951 
  1952 1.DmitryL
  1953 	1.	DEFECT FIX: PDEF114026: Code in CScanDrive class uses too much stack.
  1954 
  1955 2.	Radhakrishnanramanat
  1956 	1.	DEFECT FIX: DEF112864: RFs.Entry() returns 'Access denied' error [error code -46] 	
  1957 	Modified TBool SIDCheck(CFsRequest* aRequest, const TDesC& aThePath) to check for SID without appending with \\	
  1958 
  1959 3.	SwetankaM
  1960 	1.	DEFECT FIX: DEF112050: : Some F32tests use D: drive or drive derived from session path.
  1961 	Modified to use command line argument.
  1962 
  1963 4.	MichaelCox
  1964 	1.	DEFECT FIX: DEF112757: Rfile::Set() attributes mask check is incorrect and doesn't correspond to desc. 
  1965 		Update : Tests t_npfail and t_clamp also updated
  1966 
  1967 
  1968 Version 2.00.1733
  1969 =================
  1970 (Made by ParameshwariB 09/11/2007)
  1971 
  1972 1.	KaiD
  1973 	1.	DEFECT FIX: PDEF113482: "App closed: Voicerecorder" happened when inserting the third new sound clip to
  1974 	2.	DEFECT FIX: PDEF102531:	F32 should be able to be tested against Non-Latin (Unicode) characters
  1975 
  1976 2.	dharmeshgandhi
  1977 	1.	DEFECT FIX: DEF112176: It is possible to change directory name to 257 characters (incl. drive letter)
  1978 
  1979 3.	georgiosdementis
  1980 	1.	DEFECT FIX: DEF113117: call to GetDesLength() is not checked for an error return
  1981 
  1982 4.	DmitryL
  1983 	1.	DEFECT FIX: DEF113832: FAT lookup for the first free cluster for MKdir is inefficient 
  1984 
  1985 
  1986 
  1987 Version 2.00.1732
  1988 =================
  1989 (Made by SushmitaR 07/11/2007)
  1990 
  1991 1.	DmitryL
  1992 	1.	DEFECT FIX: DEF113637 CFatMountCB::CheckDisk() incorrectly calculates number of clusters. 
  1993 
  1994 2.	patrickconway
  1995 	1.	DEF112944: TFileText::Read() API reads more than 256 characters
  1996 	2.	DEF113584: TFileText::Read() reads wrong number of characters 
  1997 		
  1998 3.	fabiangortz
  1999 	1.	DEFECT FIX: DEF113225: Access permission denied for system folders with caching flags
  2000 	
  2001 4.	MiguelB
  2002 	1.	DEFECT FIX: DEF113338: 'Reserved For Boot Sector' data is not written at format.
  2003 
  2004 5.	ArchanaH
  2005 	1.	DEFECT FIX: DEF112507: Issues with CompFS 
  2006            Tested for return values.
  2007 
  2008 6.	KaiD
  2009 	1.	DEFECT FIX: PDEF113483: CFileMan::RmDir can't delete path that has no long file name
  2010 Version 2.00.1731
  2011 =================
  2012 (Made by SivashanakarN 30/10/2007)
  2013 
  2014 1.	DmitryL
  2015 	1.	DEFECT FIX: DEF112734  FAT32 FAT1 table and FAT2 table "head bytes" 
  2016 
  2017 2.	JohnS
  2018 	2. DEFECT FIX:  PDEF112952: The T_NANDMISC NAND acceptance test fails
  2019 		This nand acceptance test includes a disk free space vs size test that was failing for FAT32 
  2020 		drives. FAT32 drives include one cluster for the root directory in the reported size, whereas 
  2021 		FAT12 & FAT16 drives don't. The test was failing to allow for this.
  2022 
  2023 3.	SamiraA
  2024 	1.	DEFECT FIX: DEF112972: TDriveUnit::TDriveUnit(TInt aDrive) API takes -1 
  2025 
  2026 
  2027 Version 2.00.1730
  2028 =================
  2029 (Made by KaiD 26/10/2007)
  2030 
  2031 1.	SamiraA
  2032 	1.	CHANGE REQUEST:  CR1086: Add new drive attribute to identify drives with physically removable media
  2033 		Added KDriveAttLogicallyRemovable
  2034 
  2035 
  2036 2.	SwetankaK
  2037 	1.	DEFECT Fix:  DEF112049: Wrong error code during opening a lot of files from ramdrive. 
  2038 		The error code is changed to KErrNoMemory.
  2039 
  2040 4.	BhaskarR
  2041 	1.	Defect Fix: DEF113015: APIREG:TParsePtrC returns FSCLIENT 25 if the the specified name 
  2042 		fails to parse. Modified the in-source documentation to reflect the change of error code (FSClient 24).
  2043 
  2044 5.	PatrickConway
  2045   	1.	DEFECT FIX: PDEF112800: Defect in ESTART can lead to corrupt drive mapping info and file server panic 
  2046 
  2047 
  2048 
  2049 Version 2.00.1729
  2050 =================
  2051 (Made by JohnS 23/10/2007)
  2052 
  2053 1.	ParameshwariB
  2054 	1.	DEFECT FIX: DEF112229: Removing file system without dismounting causes file server crash 
  2055 
  2056 2.	MiguelB
  2057   	1.	DEFECT FIX: DEF112962: Minor improvements to File Server write caching
  2058 
  2059 
  2060 3.	MichaelCox
  2061 	1.	DEFECT FIX: DEF112757: Rfile::Set() attributes mask check is incorrect and doesn't correspond to desc. 
  2062 		Update : An attempt to set or clear the KEntryAttDir, KEntryAttVolume or KEntryAttRemote attributes have no effect.
  2063 
  2064 4.	DmitryL
  2065 	1. 	DEFECT FIX: DEF111524  H2 board crashes (debug assert) as a result of MMC card removal (reopened).
  2066 
  2067 
  2068 
  2069 Version 2.00.1728
  2070 =================
  2071 (Made by indrajeetsingh 10/10/2007)
  2072 
  2073 1.	MiguelB
  2074 	1.	DEFECT FIX: DEF111700: Formatting a locked SD/MMC leaves it in a bad state (causes panics later)
  2075 
  2076 2.	ArunachalamR
  2077 	1.	DEFECT FIX: DEF101639: RFs::SwapFileSystem is not tested by f32test
  2078 		Added t_swapfsys test application.
  2079 
  2080 3.	ParameshwariB
  2081 	1.	DEFECT FIX: DEF074912: RFs::NotifyDiskSpaceCancel() should run on a separate drive thread 
  2082 
  2083 4.	GayathriR
  2084 	1.	DEFECT FIX: DEF111477: Mass storage test t_msfs_scsi fails after fix for drive eject(PDEF110325).
  2085 	
  2086 5.	DmitryL
  2087 	1.	DEFECT FIX: PDEF112480  Restarting application happens on executing RFs::ChechDisk()
  2088 	2.	DEFECT FIX: DEF112466  CFatMountCB::DoFindL() code is inefficient	
  2089 	3.	MINOR_CHANGE: fixed multithreading issue with RTest in t_checkdisk
  2090 
  2091 6.	MarkTa
  2092  	1.	MINOR CHANGE: Update t_pageldrtst as the integration from the preq308a branch missed the latest changes
  2093  		to test case that prevent it locking up.
  2094 
  2095 	
  2096 Version 2.00.1727
  2097 =================
  2098 (Made by DeleOgunjumelo 04/10/2007)
  2099 
  2100 1.	DmitryL
  2101 	1.	DEFECT FIX: DEF112264  Wrong error code during creating directory without trailing backslash.
  2102    
  2103 2.	MichaelMo
  2104 	1.	DEFECT FIX: DEF112351: runtests.mmp contains invalid mmp syntax
  2105 
  2106 3.	MiguelB
  2107 	1.	MILESTONE: Oghma, GT0302, MS3.13 DS733 : PREQ775: Base - Alignment of CBR and System Model components
  2108 		INTERFACE CHANGE: BR2160 Peripherals: Alignment of Base components against CBR package 
  2109  		Separate out existing base_f32 component into the following components :
  2110  			f32\group\base_f32.mrp
  2111  			f32\estart\base_f32_estart.mrp
  2112  			f32\etshell\base_f32_eshell.mrp
  2113  			f32\iso9660\base_f32_siso9660.mrp
  2114  			f32\ntfs\base_f32_sntfs.mrp
  2115  			f32\scomp\base_f32_scomp.mrp
  2116  			f32\sfat\base_f32_sfat.mrp
  2117  			f32\sfat32\base_f32_sfat32.mrp
  2118  			f32\sftl\base_f32_sftl.mrp
  2119  			f32\slffs\base_f32_slffs.mrp
  2120  			f32\smassstorage\base_f32_smassstorage.mrp
  2121  			f32\srofs\base_f32_srofs.mrp
  2122  			f32\srom\base_f32_srom.mrp
  2123  		N.B. Most of the new components have their own BLD.INFs so build scripts may need changing (!)
  2124 
  2125 Version 2.00.1726
  2126 =================
  2127 (Made by LukaszForynski 01/10/2007)
  2128 
  2129 1.	DmitryL
  2130 	1. 	DEFECT FIX: DEF111658 FAT32 LRU cache doesn't flush dirty pages 
  2131 
  2132 2.	indrajeetsingh
  2133 	1.	DEFECT FIX: PDEF111018: CFileMan->Move() moves items recursively in non-recursive mode
  2134 
  2135 3.	jenniferh
  2136 	1.	DEFECT FIX: DEF111827: T_Nandpaging has a potential deadlock.
  2137 
  2138 4.	MiguelB
  2139 	1.	DEFECT FIX: DEF111681: CheckDisk is returning bad error code when run on locked SD card
  2140 	2.	DEFECT FIX: PDEF111776: memory card write failure notification can deadlock the phone
  2141 
  2142 5.	MarkTa
  2143 	1.	DEFECT FIX: DEF112344: runtests.exe should not be dependant on btracec.dll.
  2144 		Make the runtests '-a' option conditional on a macro being defined.
  2145 
  2146 
  2147 Version 2.00.1725
  2148 =================
  2149 (Made by MarkTa 26/09/2007)
  2150 
  2151 1.	MiguelB
  2152 	1.	DEFECT FIX: DEF111567: ScanDrive reads directory entries though the wrong cache
  2153 	2.	DEFECT FIX: DEF111755: Can't enable write caching unless read caching is also enabled
  2154 
  2155 2.	SamiraA
  2156 	1.	DEFECT FIX: DEF111000: Techview Eshell, prompt jumps up display screen when press up arrow. 
  2157 		Line number was not calculated correctly.
  2158 
  2159 3.	DmitryL
  2160 	1.	DEFECT FIX: DEF111524 H2 board crashes (debug assert) as a result of MMC card removal.
  2161 
  2162 4.	AndrewHi
  2163 	1.	DEFECT FIX: PDEF111701: Memory leak in CMountCB 
  2164 
  2165 
  2166 Version 2.00.1724
  2167 =================
  2168 (Made by DmitryL 11/09/2007)
  2169 
  2170 1.	MiguelB
  2171 	1.	DEFECT FIX: PDEF110480: Large files: RFs::CheckDisk() fails if a 4GB file is present
  2172 	2.	DEFECT FIX: PDEF110482: Large files: RFs::ScanDisk() fails if a 4GB file is present
  2173 	3.	DEFECT FIX: PDEF110483: Large disks: formatting a FAT32 volume greater than 16GB causes an exception
  2174 	4.	DEFECT FIX: PDEF110484: Large files: Can't open an existing 4GB file for reading
  2175 	5.	DEFECT FIX: PDEF110485: Large files: can't create a file greater than 2GB in size with RFile::Write()
  2176 	6.	DEFECT FIX: PDEF110486: Large files: Can't copy a file greater than 2GB in size with CFileMan
  2177 	7.	DEFECT FIX: PDEF111239: Large files: RFs::GetDir() with ESortBySize fails if a >2GB file is present 	
  2178 	8.	MINOR_CHANGE: Changed EStart to output boot time to serial port if SYMBIAN_ESTART_OUTPUT_BOOT_TIME defined
  2179 	9.	DEFECT FIX: DEF111431: Kernel Fault when ejecting the in use media card.
  2180 
  2181 2.	KaiD
  2182 	1.	DEFECT FIX: PDEF111123: Memory card: No errors/warnings shown when copying/moving too many files to the
  2183 
  2184 Version 2.00.1723
  2185 =================
  2186 (Made by OlegI 04/09/2007)
  2187 
  2188 1.	DmitryL
  2189 	1.	DEFECT FIX: PDEF109713: TEntry::iSize returns negative number for a file with 2GB or more size.
  2190 	2.	DEFECT FIX: PDEF110916: Unable to use RAM disk as C: drive.
  2191 	3.	INTERFACE CHANGE: BR2120.1 RFs API extension
  2192 	4.	MILESTONE: Sphinx, GT0339, MS3.5.1, PREQ1721 REQ7247 DS709 Correct Drives finalisation; using FSInfo sector and backup Boot Sector for FAT32.
  2193 		PREQ1721 Optimised FAT cluster handling
  2194 		REQ7247 Correct drives finalisation that allows using of FSInfo sector
  2195 
  2196 
  2197 Version 2.00.1722
  2198 ==========================
  2199 (Made by ReubenH, 29/08/2007)
  2200 
  2201 1.	fabiangortz
  2202 	1.	DEFECT FIX: PDEF110004: CFileMan RMDir cannot handle TParse path format when it is equal to 256 chars
  2203 
  2204 2.	indrajeetsingh
  2205 	1.	DEFECT FIX: PDEF109443 : Symbian - Moving files with option ERecurse works incorrectly
  2206 
  2207 3.	KaiD
  2208 	1.	DEFECT FIX: PDEF110478: Potential regression in CFileMan::Rename operation
  2209 
  2210 4.	Yogesh Chauhan
  2211 	1.	DEFECT FIX: DEF110648: Test tags unique ID assigned twice.
  2212 
  2213 5.	JohnS
  2214 	1.	DEFECT FIX: DEF107927: CFatMountCB::MountL bad conditional expressions for unlocking of RAM drive 
  2215  		Change expressions to test media attributes in place of drive attributes.
  2216 	2. 	DEFECT FIX: DEF107945 - Windows emulator selects sizeable raw disk for local internal drives 
  2217  		Test for media atributes KMediaAttVariableSize as well when selecting sizeable raw disk.
  2218 
  2219 
  2220 
  2221 Version 2.00.1721
  2222 ==========================
  2223 (Made by JonCo, 15/15/2007)
  2224 
  2225 1.	MichaelP
  2226 	1.	DEFECT FIX: DEF110410: USB Mass Storage Stall Timeout Should Be Reduced
  2227 		Changed timeout in CBulkOnlyTransport::StallEndpointAndWaitForClear()
  2228 		from 10 to 5.5 seconds.
  2229 
  2230 2.	NeilC
  2231 	1.	DEFECT FIX: DEF109797: F32test build depends on non-exported internal file sf_file_cache_defs.h
  2232 	2.	DEFECT FIX: PDEF110622: ScanDrive can corrupt the disk if an invalid directory entry is present
  2233 
  2234 3.	NicholasC
  2235 	1.	DEFECT FIX: PDEF110325: Mass Storage volume spontaneously remounts on Mac OS X and ubuntu
  2236 
  2237 
  2238 Version 2.00.1720
  2239 ==========================
  2240 (Made by MariamSood, 08/08/2007)
  2241 
  2242 1.	markhambleton
  2243 	1.	CHANGE REQUEST: BBRE-74UH6R: Integrate multithreading bug fixes to e32 and f32 		test code discovered during the SMP prototype development phase
  2244 
  2245 
  2246 Version 2.00.1719
  2247 ==========================
  2248 (Made by NeilC, 02/08/2007)
  2249 
  2250 1.	DjordjeK
  2251 	1.	DEFECT FIX: PDEF109805: Loader security vulnerability 
  2252 
  2253 2.	fabiangortz
  2254 	1.	DEFECT FIX: PDEF109858: T_MS_MOUNTSTART fails with Micro SD cards
  2255 	2.	DEFECT FIX: PDEF108235: t_soak1 not very good on large or slow drives
  2256 
  2257 3.	SebO
  2258 	1.	DEFECT FIX: DEF107996: Warnings generated with checksource build
  2259 		Made paths in .mmp and bld.inf's consistant with file system.
  2260 
  2261 4.	Yogesh Chauhan
  2262 	1.	DEFECT FIX: DEF109391: CProxyDrive missing in source documentation 
  2263 
  2264 5.	dharmeshgandhi
  2265 	1.	DEFECT FIX:PDEF109212:  Changing password for emulated MMC does not work always 	
  2266 		Defect reopened - integrated fix for WINS too
  2267 
  2268 6.	dharmeshgandhi
  2269 	1.	DEF110162:[System Build]:GT Warnings due to variable'env_Val' not intialized M04304v9.4 
  2270 
  2271 
  2272 
  2273 Version 2.00.1718
  2274 ==========================
  2275 (Made by ParameshwariB, 24/07/2007)
  2276 
  2277 1.	Radhakrishnanramanat
  2278 	1.	DEFECT FIX: DEF108613:ESHELL carries out a carriage return and a backspace when you use backspace
  2279 		Modified CLineEdit::Recall() method to calulate the line number for displaying history buffer.
  2280 
  2281 
  2282 Version 2.00.1717
  2283 ==========================
  2284 (Made by JohnS, 17/07/2007)
  2285 
  2286 1.	DipakA
  2287 	1.	DEFECT FIX: DEF104756: APIREG: RFs::ReadFileSection allows negative length 
  2288 		Modified sf_nbs.cpp file and added new tests in t_rdsect.cpp to check for negative length argument in ReadFileSection API.
  2289 2.	dharmeshgandhi
  2290 	1.	DEFECT FIX:PDEF109212:  Changing password for emulated MMC does not work always 	
  2291 
  2292 Version 2.00.1716
  2293 ==========================
  2294 (Made by SushmitaR, 10/07/2007)
  2295 
  2296 1.	JohnS
  2297 	1.	MINOR_CHANGE: If \epoc32\data\epoc.ini does not exist Wintest.bat now creates 
  2298 		the ini file and writes the build-and-test-system settings to it.
  2299 
  2300 2.	michaelmoate2
  2301 	1.	DEFECT FIX: DEF107748 - class CFsPluginConnRequest is incorrectly specified in F32plugin.h
  2302 		Removed duplicate declaration of Message method.
  2303 
  2304 Version 2.00.1715
  2305 ==========================
  2306 (Made by AndreasP, 04/07/2007)
  2307 
  2308 1.	ArunachalamR
  2309 	1.	DEFECT FIX: DEF107791: RFs::SwapFileSystem panics if the drive is asynchronous
  2310 		Modified code to return KErrNotSupported if the drive is asunchronous.
  2311 		Updated documentation accordingly. 
  2312 
  2313 2.	RaghavendraB
  2314 	1.  DEFECT FIX: DEF107806: T_CFSTEST occasionally fails on paged ROMs.
  2315 
  2316 3.	SamiraA
  2317 	1.	MILESTONE: Oghma, GT0302, MS3.11, PREQ912  - Support LFFS on Intel "Sibley" NOR flash.
  2318 
  2319 Version 2.00.1714
  2320 ==========================
  2321 (Made by AndrewHi, 28/06/2007)
  2322 
  2323 1.	AndrewHaigh
  2324 	1.	MILESTONE: Nutmeg, GT0332, MS3.7.1 PREQ1426  - Finalise  run-mode debug driver including speculative Thumb2 debug support.
  2325 	2.	DEFECT FIX: DEF108191. PREQ1426 - Debug Security can be circumvented.
  2326 
  2327 2.	MiguelB
  2328 	1.	DEFECT FIX: DEF108463: File caching submission increases boot time
  2329 		Removed inefficient code in FsFileOpenL()
  2330 	2.	DEFECT FIX: DEF108498: Opened file can be read from dismounted FS 
  2331 		Flush file cache when file system is dismounted.
  2332 
  2333 Version 2.00.1713
  2334 ==========================
  2335 (Made by JonCo, 26/06/2007)
  2336 
  2337 1.	NicholasC
  2338 	1.	PDEF108112: Response to TEST UNIT READY doesn't meet USB MSCCV specification
  2339 	The problem is due to the USBCV compliance test suite corrupting the boot sector rather 
  2340 	than a problem with compliance of the stack. The check for a valid boot sector is removed
  2341 	which now allows a host to format the drive in the case that the drive is corrupted.
  2342 
  2343 2.	DmitryL
  2344 	1.	DEFECT FIX: DEF108054  Cannot fill more than 4GB on an 8GB card.
  2345 
  2346 3.	MiguelB
  2347 	1.	DEFECT FIX: DEF108189: Client thread death can cause a file server exception with file caching enabled 
  2348 	2.	DEFECT FIX: DEF108573: FAT12 size calculation is incorrect 
  2349 
  2350 
  2351 4.	FabianGortz
  2352 	1.	DEFECT FIX: DEF107860: t_dspace has ram drive hardcoded
  2353 
  2354 5.	NeilC
  2355 	1.	DEFECT FIX: DEF108393: t_notify repeatedly tests the same status result
  2356 
  2357 
  2358 
  2359 Version 2.00.1712
  2360 ==========================
  2361 (Made by VincentF, 13/06/2007)
  2362 
  2363 1.	OlegI
  2364 	1.	DEFECT FIX: PDEF107141: Loader tests need updating to include simulated error tests
  2365 
  2366 2.	NicholasC
  2367 	1.	DEFECT FIX: DEF107327: Reduce KMaxBufSize to 64K in scsiprot.h
  2368 	2.	DEFECT FIX: DEF107330: When EMediaNotPresent is detected - abort and dismount immediately.
  2369 	3.	MINOR_CHANGE: Call SetActive() once all other functions have been called.
  2370 	4.	MINOR_CHANGE: Tidy whitespace in cbulkonlytransport.[ch]
  2371 
  2372 Version 2.00.1711
  2373 ==========================
  2374 (Made by MiguelB, 06/06/2007)
  2375 
  2376 1.	NeilC
  2377 	1.	DEFECT FIX: PDEF106484:	T_FMAN step "Test stack usage" crashes on H2.ARM4 UDEB
  2378 
  2379 2.	AndreasP
  2380 	1.	DEFECT FIX: PDEF100529: Mounting file system extension in estart not supported
  2381 
  2382 3.  DmitryL
  2383 	1.	MINOR_CHANGE: Fixed t_fatcorrupt test that may fail on FAT32, some minor fixes for other tests.
  2384 
  2385 
  2386 Version 2.00.1710
  2387 ==========================
  2388 (Made by SushmitaR, 30/05/2007)
  2389 
  2390 1.  DmitryL
  2391 	1.	DEFECT FIX: DEF107347 A FAT32-enabled ROM incorrectly allows file caching on the RAM drive.
  2392 
  2393 2.  MiguelB
  2394 	1.	DEFECT FIX: DEF105438: File server thread safety issues 
  2395 		Fixed three issues exposed by SMP testing.
  2396 
  2397 3.	Yogeshchauhan
  2398 	1.	DEFECT FIX: PDEF106686: Single mapping in ESTART causes KErrArgument when setting mappings.
  2399 
  2400 4.	JenniferH
  2401 	1.	DEFECT FIX: DEF106675: Redundant code in loader
  2402 
  2403 5.	SivashankarN
  2404 	1.	Engineering Change: EC114: Core OS: Enhance File Server to solve 1085/1086 interoperability issue. 
  2405 		Enhanced the Rofs and Composite file system to list the feature  
  2406 		manager file with special attributes uniquely by their mount id.
  2407 
  2408 Version 2.00.1709
  2409 ==========================
  2410 (Made by JenniferH, 24/05/2007)
  2411 
  2412 1.	AndreasP
  2413 	1.	DEFECT FIX: PDEF105959: Digitizer pen up and down discard filter works incorrectly.
  2414 
  2415 2.	dharmeshgandhi
  2416 	1.	DEFECT FIX: PDEF106692:Klocwork errors: base_f32 (2156) 
  2417 
  2418 3.	NicholasC
  2419 	1.	DEFECT FIX: DEF106895: The response to the SCSI INQUIRY command is not correct 
  2420 	2.	DEFECT FIX: DEF107277: Compilation warnings in scsiprot.cpp
  2421 
  2422 4.    	georgiosdementis
  2423 	1.	DEFECT FIX:  PDEF096424:  Some F32tests fail on the protected area of an SD Card
  2424 
  2425 5.  	RaghavendraB
  2426 	1.	DEFECT FIX:  PDEF106557  TTG:< DEF097495 again >.
  2427 
  2428 6.  	DmitryL
  2429 	1.	DEFECT FIX: PDEF102739 Memory card content cannot be read.
  2430 	2.	DEFECT FIX: DEF106662 t_fatcorrupt randomly fails because of generation bad sectors in FAT12 root dir. 
  2431 	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"
  2432 		because T_COMPAT32 does the same.
  2433 
  2434 7.	ArunachalamR
  2435 	1.	DEFECT FIX: PDEF104287: RFormat::Open crashes file server.
  2436 		(Propagated from INC096975: RFormat::Open crashes file server and applied same fix from INC096975)
  2437 		CCompMountCB nulls the CCompFileSystem::iMount pointer to itself when it is destroyed.
  2438 
  2439 Version 2.00.1708
  2440 ==========================
  2441 (Made by MiguelB, 22/05/2007)
  2442 1.	MiguelB
  2443 	1. 	MILESTONE: Oghma, GT0302, MS3.1.2 DS479 & DS537 Preq914 - Improve filesystem performance with server-side caching 
  2444 		This is being delivered with read and write caching turned off by default.
  2445 		See Base_How_To_File_Caching.doc for more details on how to enable file caching.
  2446 
  2447 Version 2.00.1707
  2448 ==========================
  2449 (Made by SamiraA, 17/05/2007)
  2450 
  2451 
  2452 1.	sivashankarnagappan
  2453 	1.	DEF102024:  RFs::UnlockDrive fails with KErrAlreadyExists with wrong password
  2454 			Fixed the problem of unlocking the drive with wrong password not returning KErrAccessDenied. Note that unlocking
  2455 			an already unlocked drive will still always return KErrAlreadyExists as expected.
  2456 		Also fixed the following defects (for wins environment)
  2457 			i)  Clear password with wrong password was succeeding - instead of returning KErrAccessDenied
  2458 			ii) Setting new password with wrong password as current password was succeeding - instead of returning KErrAccessDenied
  2459 			iii) Locking with wrong password was succeeding - instead of returning KErrAccessDenied
  2460 			iv) Fixed - Password information and status were information retrieval while switching between cards using hot keys was fetching wrong data
  2461 		Also fixed the above said defects including DEF102024 for SD card
  2462 
  2463 2.	MichaelP
  2464 	1.	DEFECT FIX: PDEF106584: MSC doesn't handle WRITE10 failure properly
  2465 		Reworked function CBulkOnlyTransport::ReadAndDiscardData() such that it now
  2466 		also caters for the case where there's more data to be read and discarded
  2467 		than fit in a single buffer.
  2468 		
  2469 3.	AndreasP
  2470 	1.	DEFECT FIX: PDEF102803: Emulator EStart does not handle starters that do not exit when startup is over
  2471 	
  2472 
  2473 
  2474 Version 2.00.1706
  2475 ===============================
  2476 (Made by MichaelMo, 09/05/2007)
  2477 
  2478 1.	georgiosdementis
  2479 	1.	DEFECT FIX: PDEF105189: MMC(SD) is not corrupted if remove it form phone when formatting is ongoing.
  2480 		Change the order of the CreateBootSector function call during the format operation. 
  2481 
  2482 2.	MiguelB
  2483 	1.	DEFECT FIX: PDEF104639: Phone automatically reboots when inserting memory card with password. 
  2484 		Calling RFs::UnlockDrive() with notifier active can fault the file server.
  2485 
  2486 3.	sivashankarnagappan
  2487 	1.	DEF102017:  RFs::CheckDisk accepts the string "test" as drive path. 
  2488 		Updated the parameter description document as the fix. Also did the same for the ScanDrive.
  2489 
  2490 4.  ArunachalamR
  2491 	1.	DEFECT FIX: PDEF104758: TParsePool* TParsePool::Get() does not update iCountFree properly.
  2492 		Updated source code to update iCountFree properly.
  2493 
  2494 5.  MadhuriP
  2495 	1.	Defect Fix: DEF104757: APIREG: RFs::Replace passes when a file with ReadOnly attribute is used.
  2496 
  2497 6.	OlegI
  2498 	1.	DEFECT FIX: PDEF104272: CFileman RMdir still cannot remove longfile name directory 
  2499 
  2500 7.	DmitryL
  2501 	1.	DEFECT FIX: PDEF105953: Format parameters. 
  2502 		Fixed problems with "ReservedSectors" format parameter. Eshell "format" command extended.
  2503 
  2504 8.	NicholasC
  2505 	1.	DEFECT FIX: DEF105575: usb mass storage mode ejection with linux
  2506 	2.	DEFECT FIX: DEF104842: Remove CMediaChangeNotifier
  2507 	3.	Minor change: Cleanup whitespace in smassstorage
  2508 	4.	Minor change: Add const to constant vars in smassstorage
  2509 	5.	Minor change: Renaming of scsi command buffer and use of constants
  2510 
  2511 
  2512 Version 2.00.1705
  2513 ==========================
  2514 (Made by JonCo, 24/04/2007)
  2515 
  2516 1.	DmitryL
  2517 	1.	DEFECT FIX: PDEF105081: File Server can crash when opening a file under very low memory.
  2518 
  2519 3.	yogeshchauhan
  2520 	1.	DEFECT FIX: DEF103162: Class TFSStartup is not exported but is used by partners 
  2521 		Documentation for TFsStartUp is added.
  2522 
  2523 4.	RaghavenedraB
  2524 	1.	DEFECT FIX: PDEF105053: A folder including unknown file and folder can be deleted. 
  2525 
  2526 
  2527 Version 2.00.1704
  2528 ==========================
  2529 (Made by AndrewHi, 16/04/2007)
  2530 
  2531 1.	DmitryL
  2532 	1.	DEFECT FIX: PDEF104955 Fat 12 issue on protected area of SD media card.
  2533 
  2534 2. 	SamiraA
  2535 	1.	DEFECT FIX: DEF096685 RFs::SetStartupConfiguration() should be publishedPartner 
  2536 		@publishedPartner and @release added to cl_cli.cpp for RFs::SetStartupConfiguration()
  2537 
  2538 
  2539 Version 2.00.1703
  2540 ==========================
  2541 (Made by VincentF, 03/04/2007)
  2542 
  2543 1.	DmitryL
  2544 	1.	DEFECT FIX: PDEF104147: RFile::Duplicate() leaves a handle open 
  2545 
  2546 2.	OlegI
  2547 	1. 	DEFECT FIX: PDEF102776: CFileMan->Move does not remove all items from source directory when moving to it
  2548 
  2549 3.	VincentF
  2550 	1.	MINOR_CHANGE: Demand Paging test additions.
  2551 
  2552 4.	IgorM
  2553 	1.	DEFECT FIX: 	PDEF104017 RFs::Rename() method corrupts data when run on hardware
  2554 	2.	DEFECT FIX: 	PDEF104475 T_BLOCKMAP failing on h2.arm4
  2555 
  2556 5.	ArunachalamR
  2557  	1.	DEFECT FIX: PDEF102310  in template port KScanRate specified in microseconds, should be milliseconds.
  2558  		Modified the constant value and updated comments.
  2559 
  2560 6.	ParameshwariB
  2561 	1.	DEFECT FIX: DEF103041 T_FALSESPACE, B_OPEN and T_FATCORRUPT fail on 8GB SD card. 
  2562 
  2563 7.	MiguelB
  2564 	1.	DEFECT FIX: PDEF104312: Memory Card ForcedErase in Text shell 
  2565 		Fixed problem running commands from a locked MMC/SD drive.
  2566 
  2567 
  2568 Version 2.00.1702
  2569 ==========================
  2570 (Made by MiguelB,  22/03/2007)
  2571 
  2572 1.	georgiosdementis
  2573 	1.	MILESTONE: Naiad, GT0326, MS3.3  DS585  CR 0909 - Change the behaviour of RFs::DriveList to exclude remote files and add new 
  2574 		overload that includes them.
  2575 		Change the behaviour of RFs::DriveList and class TFindFile, in order to be able to specify the
  2576 		attribute mask of drives to be searched. Tests t_locate,t_fsrv test the added functionality.
  2577 		INTERFACE CHANGE: BR1939.2: Modify behaviour of RFs::DriveList to exclude remote drives
  2578 
  2579 
  2580 Version 2.00.1701
  2581 ==========================
  2582 (Made by SushmitaR, 19/03/2007)
  2583 
  2584 1.	MichaelP
  2585 	1.	DEFECT FIX: PDEF103792: Usb synchronisation issue between stalling and clearing an endpoint.
  2586 		Changed and simplified the way Bulk endpoints are stalled (halted) and
  2587 		checked for un-stalling by the host in the USB Mass Storage transport
  2588 		component (cbulkonlytransport.cpp).
  2589 
  2590 
  2591 Version 2.00.1700
  2592 ==========================
  2593 (Made by SamiraA, 08/03/2007)
  2594 
  2595 1.	ArunachalamR
  2596 	1.		DEFECT FIX: PDEF095980  [Codebase] RRawDisk::Read RRawDisk::Write panics documentation.
  2597 			(Propagated from DEF092024)
  2598 			Updated insource documentation.
  2599 		 
  2600 2.	ReubenH
  2601 	1.		DEFECT FIX: PDEF102739 Memory card content cannot be read 
  2602 			(Propagated from INC102003)
  2603 			Updated FAT16 directory listing logic to tolerate spurious long filename entries 
  2604 			without marking entire volume as corrupt.
  2605 	
  2606 3.	DmitryL
  2607 	1.		DEFECT FIX: PDEF103139 Some general issues with mount file system APIs.
  2608 			Corrected the docummentation on RFs::MountFileSystem() API, removed KernelPanic reason for the critical notifiers
  2609 			on synchronous drives. Extended RFs::QueryVolumeInfoExt() API to check if the specisied drive is sync/async one.
  2610 	2.		MINOR_CHANGE: TFatBootSector, TFSInfo code refactoring.
  2611 	3.		MINOR_CHANGE: small CFatMountCB code rearragement.
  2612 
  2613 4.	NicholasC
  2614 	1.		PDEF103095: Media removal fails on Windows Vista
  2615 
  2616 Version 2.00.1513
  2617 ==========================
  2618 (Made by MarkTa, 19/02/2007)
  2619 
  2620 		
  2621 1.	MiguelB
  2622 	1.	DEFECT FIX: DEF101943: Problems with TParsePool 
  2623 		TParsePool was not thread-safe and had the potential of panicking the file server if
  2624 		a memory allocation failed.
  2625 
  2626 2.	MarkHambleton
  2627 	1.	DEFECT FIX: DEF102020:  efile::Loader thread crashes
  2628 		E32ImageHeader::New was not checking the return from FileRead and continuing to create 
  2629 		and allocate an image. Added check and return of error if FileRead returns anything other 
  2630 		than KErrNone.
  2631 		Also from analysing test code found that reaper was faulting the system if it was unable to 
  2632 		do initial cleanup, this is erroneous so fixed this aswell.
  2633 
  2634 Version 2.00.1512
  2635 ==========================
  2636 (Made by JohnS, 14/02/2007)
  2637 		
  2638 1.	DmitryL
  2639 	1.	MINOR_CHANGE: some Eshell commands extended.
  2640 		eshell "gobble" command prints time taken to create the file
  2641 		eshell "chkdsk" command now allows to start ScanDrive on a specified drive
  2642 		eshell "drvinfo" command now prints FAT subtype (FAT12,16 or 32)
  2643 
  2644 2.	ReubenH
  2645 	1.	DEFECT FIX: DEF096347:  NAND: Recogniser failed with KErrCOrrupt
  2646 
  2647 3.	MiguelB
  2648 	1.	DEFECT FIX: PDEF101895: Device crash in efile.exe when plugging/unplugging USB cable using fast file ... 
  2649 		Fixed problem with RFs::NotifyDismount(): this cancels any outstanding requests on the drive thread but
  2650 		this can lead to memory leakage (and a panic in debug mode) when cancelling a KDispatchObjectClose object.
  2651 
  2652 4.	NeilC
  2653 	1.	DEFECT FIX: DEF099619: Increase in boot time by 1%
  2654 
  2655 Version 2.00.1511
  2656 ==========================
  2657 (Made by IgorM, 08/02/2007)
  2658 
  2659 1.	KaiD
  2660 	1. 	DEFECT FIX: PDEF101442  Memory Card: The default name is not correct after formatting the memory card.
  2661 		Default volume name is "" now.
  2662 	2. 	DEFECT FIX: INC100580: Folder default name can not be displayed completely. 		
  2663 
  2664 2.	MarkHambleton
  2665 	1.	DEFECT FIX: DEF101470: DP: variantmediadef.h does not allow code paging from ROFS on Techview
  2666 		All NAND drives are now marked as pageable for h2 and h4. This change only affects code paging.
  2667 
  2668 3.	IgorM
  2669 	1.	DEFECT FIX: INC100241 	CFileMan::Copy and CFileMan::Move methods do not call RFile::Flush method before
  2670 	2.	DEFECT FIX: PDEF095995 	Redefine ESystemDrive HAL attribute and ensure it is always set.
  2671 
  2672 4.	RyanHarkin
  2673 	1.	MINOR_CHANGE: T_BLOCKMAP fails on non-NAND builds and boards.  I've updated it so that it only run if it
  2674 		finds a NAND drive, but it still never runs on a Lubbock because it doesn't have the correct APIs for the test.
  2675 
  2676 5.	JonCo
  2677 	1.	DEFECT FIX: DEF101702: DP: Loader contains testing code
  2678 		Removed unreferenced code
  2679 
  2680 6. 	JohnS
  2681 	1.	PDEF101070: T_Blockrep erases initial bad blocks
  2682 		When recovering simulated bad blocks genuine bad blocks may fail to erase.	
  2683 
  2684 
  2685 
  2686 Version 2.00.1510
  2687 ==========================
  2688 (Made by AttilaV, 29/01/2007)
  2689 
  2690 1.	DmitryL
  2691 	1. 	DEFECT FIX: DEF100353  CFatMountCB::CheckDisk() implementation contains potentially dangerous code.
  2692 
  2693 2.	MichaelP
  2694 	1.	DEFECT FIX: INC100541: Mass Storage Write operation performance optimization
  2695 		Introduced a new virtual method 'void ReportHighSpeedDevice()' with empty
  2696 		default implementation to class MProtocolBase. This new method gets called by
  2697 		the F32 Bulk-only Transport once it has opened the USB LDD and detected that
  2698 		it's running on a HS capable USB device. The SCSI Protocol implements the new
  2699 		function and changes its media write size from 4KB to 64KB.
  2700 
  2701 3.	ArunachalamR
  2702 	1.	DEFECT FIX: PDEF100386: It's possible to subst /Resource to a new drive with only DriveAdmin capability. (Propagated from DEF099546)
  2703 		INTERFACE CHANGE: BR2027.3: Currently it's possible to subst /Resource to a new drive with only DiskAdmin capability.
  2704 		This is incorrect & is to be changed to TCB to match the /Sys and /Private.
  2705 
  2706 		Modified code to verify that the application has TCB capability for /Resource path.h.
  2707 
  2708 
  2709 Version 2.00.1509
  2710 ==========================
  2711 (Made by StefanW, 18/01/2007)
  2712 
  2713 1.	StefanW
  2714 	1. 	MILESTONE: Argus, GT0286, MS3.14 DS565 CR0960 - Provide a mechanism so that it is possible 
  2715 		to access an entire media address space not just a given partition of an SD Card.
  2716 
  2717 2.	KaiD
  2718 	1. 	MILESTONE: Argus GT0286, MS3.7 DS401 CR0882 - Provide additional attributes to TVolumeInfo to allow 
  2719 		efficient buffer usage for underlying media
  2720 
  2721 Version 2.00.1508
  2722 ==========================
  2723 (Made by DjordjeK, 17/01/2007)
  2724 
  2725 1.	DjordjeK
  2726 	1.	DEFECT FIX: PDEF100042: Malformed reloc info can kill loader thread (MCL)
  2727 		The fix for stability issue where phone may crash if a faulty/corrupted executable image is loaded.
  2728 
  2729 2.	StefanW
  2730 	1.	DEFECT FIX: DEF099820: Changes in CFileMan (DEF092084) have caused regressions of DevProv ONB tests
  2731 		Fixes a a regression caused by DEF092084 which caused CFileMan to no longer return KErrInUse when 
  2732 		attempting to remove a directory containing open files using CFileMan::RmDir.
  2733 
  2734 3.	AndrewHi
  2735 	1.	DEFECT FIX: INC099941:   F32 test T_FNAME is set to fail incorrectly
  2736 		Changed path and file names to be lower case.
  2737 
  2738 4.	NicholasC
  2739 	1.	DEFECT FIX: PDEF099927: Strange behaviour when connecting USB cable - sometimes not working at all
  2740 
  2741 
  2742 Version 2.00.1507
  2743 ==========================
  2744 (Made by JonathanM, 09/01/2007)
  2745 
  2746 1.	JonathanM
  2747 	1.	Milestone:
  2748 		Naiad,SM013,MS3.20.1,PREQ1110 - Base: Demand Paging Submission (ROM paging only enabled) 
  2749 
  2750 2.	StefanW
  2751 	1.	DEFECT FIX: DEF099820: Changes in CFileMan (DEF092084) have caused regressions of DevProv ONB tests
  2752 		Fixes a a regression caused by DEF092084 which caused CFileMan to no longer return KErrInUse when 
  2753 		attempting to remove a directory containing open files using CFileMan::RmDir.
  2754 
  2755 Version 2.00.1506
  2756 ==========================
  2757 (Made by OlegI, 18/12/2006)
  2758 
  2759 1.	dharmeshgandhi
  2760 	1.	DEFECT FIX:PDEF095997 [codebase]t_ms_mountdrive doesn't (quite) work on emulator 
  2761 
  2762 2.	DmitryL
  2763 	1.	DEFECT FIX: PDEF098783  [NQP] Parameter definition is incorrect for RFs::DismountExtension().
  2764 	2.	DEFECT FIX: PDEF098866  [NQP] RFs::GetMediaSerialNumber() error codes differ from documentation 
  2765 	3.	DEFECT FIX: PDEF098865  Symbian provided RFs::NotifyChange does not work for root directories like e:\
  2766 
  2767 3.	StefanW
  2768 	1.	DEFECT FIX: DEF099009: Rename doesn't trigger directory notifiers
  2769 		Modified change notification to notify clients when a watched directory appears due to a rename operation.
  2770 		(prior to this, clients would only be notified if a directory disappears and not when it re-appears).
  2771 
  2772 4.	JohnS
  2773 	1.	DEFECT FIX: PDEF095959: Force Dismount of file systems may have some short comings
  2774 		Closing an open file handle after a force dismount was causing a file server fault. For non
  2775 		rugged FAT force dismount was failing to flush uncommitted file length changes.
  2776 	2.	DEFECT FIX:	DEF099210:	DP: nandtest_rel_autoexec.bat files are not exported as PRJ_EXPORTS
  2777 		Because the files were exported as PRJ_TESTEXPORTS they were not available to system build.
  2778 
  2779 5.	NicholasC
  2780 	1.	DEFECT FIX: PDEF098658: Connected to PC Mass storage.Unable eject memory card My Computer 
  2781 	2.	DEFECT FIX: PDEF098663: USB MS ZLP is not sent when device sends less than expected data length
  2782 		
  2783 
  2784 Version 2.00.1505
  2785 ==========================
  2786 (Made by MichaelMo, 04/12/2006)
  2787 
  2788 1.	MarkTa
  2789 	1.	DEFECT FIX: PDEF097862: Loader problems
  2790 		Make RImageFinder::Close immune to being called twice by ensuring it NULLs iHeader.  
  2791 		Extended t_loadfail to cover this fix
  2792 	2.	MILESTONE: Open Environment GT314, MS3.13: DS.381:PREQ1466:Base:Open Environment- entry-point lookup by name
  2793 		Modify loader to ensure that the import tables of non-XIP exe/dlls that link against stdexe/stdll(s) have 
  2794 		the 0th ordinal addresses of the stdexe/stdll(s) fixed up.
  2795 
  2796 2.	MichaelP
  2797 	1.	MINOR_CHANGE: Made some changes to T_FSYSBM: Added read and write tests
  2798 		with 1MB block size; these show a further increase in performance when
  2799 		compared to the previous maximum block size of 64KB.
  2800 
  2801 3.	RichardCo
  2802 	1.	DEFECT FIX: PDEF098218: Self-signed application causes Loader to crash by sending invalid IPC messages (
  2803 		Fix the loader so that when it panics the client for being in a bad
  2804 		state, it doesn't also crash itself. Extend t_ldrtst to cover this.
  2805 
  2806 4.	samiraabbasnejad
  2807 	1.	DEFECT FIX: PDEF096027: Incorrect descriptions in TEntry::iModified 
  2808 	2.	DEFECT FIX: PDEF098199: Phone resets when phone is locked manually and remote device lock msg is receivd
  2809 	3. 	Minor Change: Remove armv5 compile warning with unreachable break
  2810 
  2811 5.	AndrewHi
  2812 	1.	DEFECT FIX: DEF097083: File reading over the length of a buffer is inconsistent
  2813 		Added user-side check to compare the requested read length with the maximum size of the buffer,
  2814 		returning KErrOverflow if inappropriate. Also added test testReadBufferOverflow to t_file to exercise this change.
  2815 
  2816 6.  RaghavendraB
  2817 	1.  DEFECT FIX:  PDEF098142 Illegal capability on DevLib.
  2818  		Corrected insource documentation typo in cl_cli.cpp documentation.
  2819 
  2820 7.	YingS
  2821 	1.	MILESTONE: Argus GT0286, MS3.12 DS343,
  2822 		CR0628 File system should cache normalised text and collation key and upper layer should use them
  2823 
  2824 8.	IgorM
  2825 	1.	DEFECT FIX: PDEF095924 	[codebase] CFileMan::CreateTargetNameFromSource and non-trivial masks	
  2826 	2.	DEFECT FIX: PDEF096012 	[codebase] CFileMan::RenameInvalidEntryL does not handle special cases
  2827 	3.	DEFECT FIX: PDEF096923 	CFileMan::Move moves directories in wrong way in recursive mode	
  2828 	4.	DEFECT FIX: PDEF095956 	CFileMan not deleting long fullnames correctly
  2829 	5.	DEFECT FIX: DEF094435 	Test failures on LFFS drive overnight tests.
  2830 
  2831 
  2832 
  2833 Version 2.00.1504
  2834 ==========================
  2835 (Made by KaiD, 20/11/2006)
  2836 
  2837 1.	DmitryL
  2838 	1.	DEFECT FIX: PDEF097586  CBaseExtProxyDrive::DeleteNotify is not implemented.
  2839 	2.	DEFECT FIX:	DEF097510  Memory leak when marking bad clusters in FAT.
  2840 
  2841 2.	MichaelP
  2842 	1.	MINOR_CHANGE: Made some changes to T_FSYSBM: Benchmark figures are now
  2843 		more accurate and are also displayed in MB/s. Increased test file size
  2844 		from 64KB to 2MB. All test files are now deleted before program exit.
  2845 
  2846 
  2847 version 2.00.1503
  2848 ==========================
  2849 (Made by JonCo, 10/11/2006)
  2850 
  2851 1.	YingS
  2852 	1.	DEFECT FIX: PDEF096003 - Scandrive should not check DOS file names using local just for standard illegal
  2853 		Don't perform basic ASCII character check in LocaleUtils::IsLegalChar() when scanning drive
  2854 	2.	DEFECT FIX: PDEF097611: Use TRAP instead of TRAPD in CLffsMountCB::ControlIO()
  2855 	3.	MINOR_CHANGE: Remove f32 & f32test warnings
  2856 
  2857 2.	KaiD
  2858 	1.	DEFECT FIX: PDEF095988: Volume label operation not consistent with what Windows does
  2859 
  2860 3.	DmitryL
  2861 	1.	DEFECT FIX: PDEF096002: FAT/FAT32 cannot create 8.3 directory entries. 
  2862 	2.	DEFECT FIX: PDEF095934: F32 Plugin Architecture is vunerable to BC breaks.
  2863 
  2864 4.	ReubenH
  2865 	1.	DEFECT FIX: PDEF096000: F32Test T_VIRUS puts hook in wrong place
  2866 	
  2867 
  2868 version 2.00.1502
  2869 ==========================
  2870 (Made by MiguelB, 31/10/2006)
  2871 1.	YingS
  2872 	1.	DEFECT FIX: PDEF096005 - iClusterBuffer should restrict its max length to just one cluster long
  2873 		Don't use MaxLength() for real length of buffer. Use concrete number 1 << ClusterSizeLog2()
  2874 	2.	DEFECT FIX: PDEF097059 - Wrong operator precedence in FsThreadManager functions
  2875 		- TBool b=(t.iIsAvailable && (t.iIsSync)||(!t.iIsSync&&t.iId==id));
  2876 		+ TBool b = t.iIsAvailable && (!t.iIsSync && t.iId==id || t.iIsSync);
  2877 
  2878 2.	Radhakrishnan R
  2879 	1. 	DEFECT FIX: PDEF096022: (codebase) RFs::ReserveDriveSpace reporting wrong error code
  2880  		Propagated from DEF091829.
  2881 
  2882 3.	StefanW
  2883 	1. 	MINOR_CHANGE : Added command line auto-completion support to EShell.
  2884 	2.	DEFECT_FIX: DEF097434:  [System Build]: KSpaceChar already defined errors in M04059 v9.3 and v9.4
  2885 	
  2886 4.	ParameshwariB
  2887 	1.	DEFECT FIX: PDEF095998: Check for Unvisited clusters in checkdisk should start from Cluster 2 for FAT32.
  2888 
  2889 5.	DipakA
  2890 	1. 	DEFECT FIX: PDEF096010: TDrive-Document is incomplete for many inline functions of this class
  2891 		Popagated from DEF092752. In source documentation added for TDrive functions.
  2892 
  2893 
  2894 version 2.00.1501
  2895 ==========================
  2896 (Made by DmitryL, 18/10/2006)
  2897 
  2898 1.	ParameshwariB
  2899 	1.	DEFECT FIX: PDEF095998: Check for Unvisited clusters in checkdisk should start from Cluster 2 for FAT32.
  2900 	2.	DEFECT FIX: PDEF096018: [Codebase] T_SCN32DR3 fails when run on a FAT12/16 drive.
  2901 	3.	DEFECT FIX: PDEF096019: Corrupt drives can cause knock-on F32TEST failures.
  2902 
  2903 2.	KaiD
  2904 	1. Other Changes: MINOR_CHANGE Reverting fixes for PDEF095963 on MCL as there's no requirement for
  2905 		 disabling multiple ROFS support any more.
  2906 
  2907 
  2908 Version 2.00.1500
  2909 ==========================
  2910 (Made by YingS, 11/10/2006)
  2911 
  2912 1.	ArunachalamR
  2913 	1.	DEFECT FIX: PDEF096029: Techview eshell new line rendering/cursor errors
  2914 
  2915 2.	DipakA
  2916 	1. 	PDEF096030: [Codebase] TFindFile makes no check on parameters passed
  2917 		Defect fixed in f32file.h and cl_find.cpp. Insource document updated also added KErrArgument return value
  2918 		for Empty file name.
  2919 
  2920 3.	DmitryL
  2921 	1.	PDEF095932: RF Unable to determine if a pre-installed DLL on MMC has a hash file.
  2922 		Added new method to the RLoader API RLoader::CheckLibraryHash() that allows to check if the corresponding
  2923 		hash file exists for the gived dll and optionally validate it.
  2924 
  2925 4.	NicholasC
  2926 	1.	DEFECT FIX: PDEF095970: Mass storage mode ejecting fails with XP
  2927 
  2928 5.	KaiD
  2929 	1.	PDEF095963: 'Flexible ROM configuration' allows customers free rein to modify the OS
  2930 			- This defect fixing has been reverted on MCL.
  2931          
  2932 Version 2.00.1146
  2933 ==========================
  2934 (Made by IgorM, 21/09/2006)
  2935 
  2936 1. 	NeilC
  2937 	1.	DEFECT FiX: DEF087940: [AQP] t_ms_password emualtor test fails
  2938 
  2939 2.	YingS
  2940 	1.	DEFECT FiX: DEF093765 - [codebase] Scandrive can't detect bad single short entry
  2941 								when no long name entry
  2942 		Return IsDosEntry(aEntry) if first entry is short entry.
  2943 
  2944 3.	StefanW
  2945 	1.	DEFECT FIX: DEF094062 : [Codebase]FAT32/SD: End of 2nd FAT should be at the end of a Boundary Unit
  2946 		SD FileSystem Specification V2.0 states that the start of the user data area of FAT should be
  2947 		aligned to a boundary unit. Modified the SD drivers to communicate the number of reserved sectors
  2948 		to the FAT file system to ensure that this constraint is met.
  2949 
  2950 	2.	DEFECT FIX: DEF094452 : [codebase] FAT32 formatting will fail when we reach 16G capacity
  2951 		The current implementation of FAT32 was constrained to calculating SPC up to 16G.  Fixed
  2952 		by implementing additional SPC calculations as described in the FAT32 specification.
  2953 
  2954 4.	ParameshwariB
  2955 	1.	DEFECT FIX: DEF091820: [CodeBase] BPB_RootClus field is not updated when cluster 2 is marked as bad.
  2956 		Also added code to copy the contents from bad cluster to new one allocated during write. 
  2957 
  2958 	2.	DEFECT FIX: DEF094211: Documentation change of capability requirements for RFs methods.
  2959 
  2960 5.  MarkHambleton
  2961 	1.	DEFECT FIX: DEF092271: [codebase]CDir::Compress() should be more imformative in dev lib
  2962 
  2963 	2.	DEFECT FIX: INC092401: RFS::NotifyChange (with three parameters) using parameter ENotifyDir does not wo
  2964 
  2965 6.  RaghavendraB
  2966  	1.	MINOR CHANGE: Insource documentation updates for asynchronous RFile::Read().
  2967 
  2968 7.	ArunachalamR
  2969 	1.	DEFECT FIX: DEF091675: [codebase] Some undocumented functions in RFs
  2970 		Insource documentation added to source file f32/sfsrv/cl_debug.cpp
  2971 	2.	DEFECT FIX: DEF088224: TFindFile::FindByDir returns incorrect error code for platsec violations
  2972 		Defect fix in source file f32/sfsrv/cl_find.cpp
  2973 		
  2974 		Two test applications are added: t_findcapall and t_findcapnone
  2975 		
  2976 		Following files are modified for testing
  2977 			f32test/group/bld.inf
  2978 			f32test/group/wintest.bat
  2979 			f32test/group/romstuff.mke
  2980 		Following files are added for testing
  2981 			f32test/server/t_findcaptestfile.txt
  2982 			f32test/group/t_findcapall.mmp
  2983 			f32test/group/t_findcapnone.mmp
  2984 			f32test/server/t_findcapall.cpp
  2985 			f32test/server/t_findcapnone.cpp
  2986 		
  2987 6.  RaghavendraB
  2988  	1.	MINOR CHANGE: Insource documentation updates for asynchronous RFile::Read().
  2989 
  2990 7.	ArunachalamR
  2991 	1.	DEFECT FIX: DEF091675: [codebase] Some undocumented functions in RFs
  2992 		Insource documentation added to source file f32/sfsrv/cl_debug.cpp
  2993 	
  2994 	2.	DEFECT FIX: DEF088224: TFindFile::FindByDir returns incorrect error code for platsec violations
  2995 		Defect fix in source file f32/sfsrv/cl_find.cpp
  2996 		
  2997 		Two test applications are added: t_findcapall and t_findcapnone
  2998 		
  2999 		Following files are modified for testing
  3000 			f32test/group/bld.inf
  3001 			f32test/group/wintest.bat
  3002 			f32test/group/romstuff.mke
  3003 		Following files are added for testing
  3004 			f32test/server/t_findcaptestfile.txt
  3005 			f32test/group/t_findcapall.mmp
  3006 			f32test/group/t_findcapnone.mmp
  3007 			f32test/server/t_findcapall.cpp
  3008 			f32test/server/t_findcapnone.cpp
  3009 
  3010 
  3011 Version 2.00.1145
  3012 ==========================
  3013 (Made by RichardC, 14/09/2006)
  3014 
  3015 1.	NeilC
  3016 	1.	DEF093656: RF DriveNumbertoLocalDriveNumber incorrectly declared.
  3017 	2.	DEF093418: Documentation incomplete for class CFsObject & CFsDispatchObject.
  3018 	3.	DEF093419: Documentation incomplete for class CProxyDrive.
  3019 	4.	DEF093420: Documentation incomplete for class CProxyDriveFactory.
  3020 	5.	DEF093421: Documentation incomplete for class CLocalProxyDrive.
  3021 	6.	DEF093422: Documentation incomplete for class CLocDrvMountCB in dev library.
  3022 	7.	DEF093424: Documentation incomplete for member data/functions for class CFileBase.
  3023 	8.	DEF093425: Documentation incomplete for struct TExtensionInfo and TDriveExtInfo.
  3024 	9.	DEF093426: Documentation incomplete for Class CFileShare and TParseBase in dev library.
  3025 
  3026 2.  KaiD
  3027 	1.	DEFECT FIX: PDEF093691: RF Mount fails on FAT if volume label contains double byte characters
  3028 		Don't call TrimRight() but only trim trailing spaces ('0x20') and NULL chars ('0x00'). 
  3029 
  3030 3.	GavinT
  3031 	1.	DEFECT FIX: DEF092546: [Codebase] KEntryAttXIP and KDebugNotifyMask have no descriptions
  3032 
  3033 4.	ParameshwariB
  3034 	1.	DEFECT FIX: DEF090389: [Codebase] FAT entry corrupted after unexpected end of sync write
  3035 
  3036 5.	YingS
  3037 	1.	DEFECT FIX: DEF093074  [Codebase] Potential problem with scandrive with the japanese character set
  3038 		Clarify RFs::ScanDrive()'s document with details of errors ScanDrive check
  3039 
  3040 6.	IgorM
  3041 	1.	DEFECT FIX:	INC089638: CFileMan->Move() does not remove all items from source directory
  3042 	2.	DEFECT FIX:	DEF092086: [codebase] CFileMan::RunL does not handle ERetry from observer properly
  3043 
  3044 7.	ReubenH
  3045 	1.	DEFECT FIX:     DEF093416: [codebase]RFS::LockDrive does not return KErrNotSupported (?)
  3046 	2.	DEFECT FIX:	DEF093417: [codebase]RFs::UnlockDrive returns KErrAlreadyExists on emulator
  3047 
  3048 8.	JohnS
  3049 	1. 	DEF085847 [AQP] PREQ1085 was delivered without tests for REQ5268
  3050 		Extend the ROFS tests to NAND FAT composite file system partitions.
  3051 	2. 	DEF093402: codebase]t_rofsdir test tests for root directory Resource twice
  3052 		Test adjusted to test for root directory Resource once and to check for autoexec.bat file instead 
  3053 		of testing Resource twice.
  3054 	3.	 DEF093072: [codebase]MountFileSystemAndScan returns err -21 but ok flag
  3055 		Initialise aIsMountSuccess to EFalse in RFs::MountFileSystemAndScan() procedures.
  3056 
  3057 9.	NicholasC
  3058 	1.	DEFECT FIX: INC090673: USB disconnection problems with MAC 
  3059 		Check LOEJ bit is set before load/unload of drive.
  3060 
  3061 10.	ArunachalamR
  3062  	1.  	DEF093083: [Codebase] RFile::SetSize panic undocumented
  3063 		Source file f32/sfsrv/cl_file.cpp updated with in-source documentation.
  3064 
  3065 11.	DipakA
  3066 	1.	DEF092868 - Dismounting drive returns KErrNotReady
  3067 		Updated Source documentation for RFs::DismountFileSystem() as following
  3068 		KErrNotFound, if aFileSystemName is not found;
  3069 		KErrNotReady, if the drive does not have a file system mounted on it; 
  3070 		KErrPermissionDenied, if the client does not have the necessary capabilities to dismount the file system;
  3071 
  3072 11.	ParameshwariB
  3073 	1.	DEFECT FIX: DEF091659: [Codebase] T_FATCORRUPT fails on some 1GB SD cards
  3074 	2.	DEFECT FIX: DEF091673: [CodeBase] Version number is not checked before mounting
  3075 
  3076 12.	YingS
  3077 	1.	DEFECT FIX: INC087879 - Applications in memory card not opening after re-boot
  3078 		Not update directory cache in file server code when card is still locked.
  3079 	2.	DEFECT FIX: DEF090642 [CodeBase] - PCB: EikFileUtils::CopyFile API Shows Misleading errorcode
  3080 		Replace:
  3081 			if (FileNamesIdentical(srcName.FullName(),trgName))
  3082 				User::Leave(KErrAlreadyExists);
  3083 		with:
  3084 			if (FileNamesIdentical(srcName.FullName(),trgName))
  3085 				if (iSwitches&KOverWriteFlag)
  3086 					User::Leave(KErrNone);
  3087 				else
  3088 					// return an error if !KOverwrite
  3089 					User::Leave(KErrAlreadyExists);
  3090 	3.	DEFECT FIX: DEF092975 - [Codebase] Checkdisk does not report invalid values in an entry
  3091 		Make RFs::CheckDisk()'s in-source comment clearer.
  3092 
  3093 13.	RichardCo
  3094 	1.	DEFECT FIX: DEF091818: [codebase] TFindFile finds directories
  3095 		Update documentation to reflect this behaviour; it's always been that
  3096 		way.
  3097 
  3098 14.	StefanW
  3099 	1.	DEFECT FIX: DEF091265: [Codebase] Formatting in f32tests should use the ESpecialFormat mode.
  3100 		Modified FAT formatting code to always use special formatting options if supported
  3101 		by the media driver.  This ensures that media such as SD cards are formatted for
  3102 		optimal performance.
  3103 	2.	DEFECT FIX: DEF084005: File System threads should have useful names
  3104 		Drive threads are now named, containing the local drive number to assist debugging.
  3105 
  3106 15.	AndrewHi
  3107 	1.	DEFECT FIX: DEF091187: [codebase]RFs::IsFileOpen accepts directories as file argument
  3108 		Modified the in-source comment to specify more precisely.
  3109 
  3110 
  3111 Version 2.00.1144
  3112 ==========================
  3113 (Made by ParameshwariB, 29/08/2006)
  3114 1.	DmitryL
  3115 	1.	DEF091904:  [codebase]CDirScan behaves oddly if scan dir specified without \\
  3116 		Documentation updated.
  3117 
  3118 2.  NeilC
  3119 	1.	DEF093321: [Codebase] Formatting for FAT32 when FAT32 isn't in the ROM causes panic.
  3120 		Fat16 files system will now report not support if requested to use FAT32 formatting
  3121 
  3122 3.	YingS
  3123 	1.	PDEF092815: Scandrive should not check DOS file names using local just for standard illegal
  3124 		Don't perform basic ASCII character check in LocaleUtils::IsLegalShortNameCharacter() when
  3125 		scanning drive.
  3126 
  3127 4.  RaghavendraB
  3128 	1.  DEF090863: [codebase] RFs::ReadFileSection reads directories ?
  3129 		ReadFileSection function updated for checking empty directories. Added new function to check 
  3130 		empty directories at server-side. t_rdsect tests updated for the same.
  3131 
  3132 Version 2.00.1143
  3133 ==========================
  3134 (Made by OlegI, 21/08/2006)
  3135 
  3136 1.  DipakA
  3137 	1.	DEF090855: [codebase] RFs::ReadFileSection reads without any file being passed
  3138 		ReadFileSection function updated for zero length file checking. t_rdsect tests updated for the same.
  3139 	2.	DEF091545: [Codebase] RFile::Write(const TDesC8 &aDes, TInt aLength) is uninformative.
  3140 		RFile::Write functions updated for zero length file checking.t_file tests updated for the same.
  3141 	3.	DEF092368: [Codebase]RFs::CharToDrive accepts lower case
  3142 		Source documentation changed for RFs::CharToDrive , added "a to z".
  3143 	4.	DEF092147: [codebase] RFs::Rename accepts Zero Length File Name.
  3144 		Zero length checking condition added in RFs::Rename function. Tests b_gen updated for the same.
  3145 	5.	DEF090654: (Codebase) MFileManObserver::NotifyFileManStarted behaves strangely with ECancel
  3146 		Modified function EXPORT_C void CFileBase::RunL() and void CFileMan::CompleteOperationL()
  3147 		Also added addition test cases in t_fman.cpp
  3148 	6.	DEF091508: [codebase] RFile::Read(TDes8 &aDes, TInt aLength) accepts a negative length
  3149 		RFile::Read function source documentation updated. Read function checked for negative length input.
  3150 		Also test modified for the same.
  3151 
  3152 2.	AndreasP
  3153 	1.	DEF092019: [Codebase] RRawDisk::Read RRawDisk::Write reporting KErrCorrupt wrongly
  3154 		TFsRawDiskWrite::DoRequestL and TFsRawDiskRead::DoRequestL now handle the case in which
  3155 		a negative positionhas been given as input RRawDisk::Write and ::Read respectively and
  3156 		return KErrArgument.
  3157 	2.	PDEF092580: EMediaNotPresentCritical state not supported please remove references to it
  3158 		All references to EMediaNotPresentCritical have been removed.
  3159 
  3160 3.	Radhakrishnan
  3161 	1.	DEF091920: RFile::Read(): Document says return value for a void function Read() 
  3162 		Insource document is changed from description of return value to updates aStatus parameter with
  3163 		corresponding error code, since this is void function no return value description is applicable
  3164 
  3165 
  3166 4.	DmitryL
  3167 	1.	PDEF092432:  miniSD:Cannot boot up with 2GB miniSD which formatted FAT 16 by PC.
  3168 		Fixed ScanDrive to skip bad clusters.
  3169 	2.	DEF092047: [codebase] CDir::Sort() behaves strangely when invoked with EDirDescending 
  3170 		documentation updated.
  3171 	3.	MINOR CHANGE: Eshell "format" command extended to support "sectors per cluster" value for user FAT formatting
  3172 	4.	MINOR CHANGE: Eshell "gobble" command performance improved.
  3173 	5.	MINOR CHANGE: New parameters in epoc.ini file: "MultiMediaCardSlots" & "MultiMediaCardsNum" 
  3174 		that specify number of emulated MMC cards and slots
  3175 	6.	MILESTONE: Bravo,GT0236,MS3.25 PREQ1192 REQ6179 Dedicated cache for FAT metadata.
  3176 		Introduced dedicated cache for FAT directories.
  3177 
  3178 
  3179 Version 2.00.1142
  3180 ==========================
  3181 (Made by NeilC, 16/08/2006)
  3182 
  3183 1.	YingS
  3184 	1.	MINOR_CHANGE: CR PSCE-6Q5KKD Add support in F32 to enable/disable Rugged FAT on a per-drive basis
  3185 		NOTE TO LICENSEE: This feature gives ability to switch between rugged and non-rugged
  3186 		file system. By defualt, file system is rugged. The benefit of using non-rugged FAT is
  3187 		performance gain from file read/write operation, yet there is risk of loss of data integrity.
  3188 	2.	PDEF091955 Issues with estart
  3189 		Change arguments' order in function call.
  3190 	3.	DEF091858  Generic Estart defaults to SSR rather than XSR
  3191 		Use __NAND_SSR__ instead of __NAND_XSR__ and change default behavior to __NAND_XSR__.
  3192 		NOTE, licensee who wants to use __NAND_SSR__ can define macro __NAND_SSR__ in own
  3193 		version of estart.mmp.
  3194 
  3195 2.	NeilC
  3196 	1.	DEF091461: Redefine ESystemDrive HAL attribute and ensure it is always set.
  3197 		Implementation of CR0896, sets EsystemDrive attribute in EStart through use of FS_SYSTEM_DRIVE keyword.
  3198 
  3199 
  3200 
  3201 Version 2.00.1141
  3202 ==========================
  3203 (Made by MiguelB, 08/08/2006)
  3204 
  3205 1.	DmitryL
  3206 	1.	PDEF091960  LFFS Mount makes excessive accesses to media.
  3207 
  3208 2.	AndrewHi
  3209 	1.	DEF091176: [codebase] Renaming to _L(""), seems fine to CFileMan
  3210 		Clarified the in-source comments and extended the tests in t_fman.cpp to demonstrate.
  3211 	2.	DEF091830: All EStart variants should gain PowerMgmt capability
  3212 		Added capability to all relevant MMP files (all except the  one that has
  3213 		specifically excludes Domain Management, omap_hrp\h4_mebootloader). Also
  3214 		implemented run-time test in generic estart initialisation code to check
  3215 		for the capability.
  3216 
  3217 3.	MarkTa
  3218 	1.	DEFECT FIX: PDEF085986: Mass Storage Periodic data transfer timer is always active
  3219 		Make iTimer stop after afew seconds of inactivity or when USB disconnected
  3220 
  3221 
  3222 Version 2.00.1140
  3223 ==========================
  3224 (Made by MichaelP, 03/08/2006)
  3225 
  3226 1.	DmitryL
  3227 	1.	DEF091573 [codebase]NotifyFileManOperation() does not cancel a copy operation correctly.
  3228 		Changed CFMAn::NotifyFileManOperation description to correspond to the functionality.
  3229 
  3230 2.	RobertJ
  3231 	1.	PDEF091940: RFs::RemountDrive description is wrong
  3232 		Added descriptions for flags:
  3233                   0x00000001 - Used to simulate ejecting and re-inserting the media.
  3234                   0x80000000 - used to force the media driver for the specified logical
  3235                                drive to be closed and reopened.
  3236 
  3237 
  3238 	2.	DEFECT FIX: PDEF091959: File server fault occurs due to disconnect request completing with KErrNotReady
  3239 		When dismounting a file system, all outstanding requests for the drive are completed with KErrNotReady.
  3240 		Session disconnect would fault if completed with any error other than KErrCancel.
  3241 		
  3242 
  3243 Version 2.00.1139
  3244 ==========================
  3245 (Made by RobertJ, 19/07/2006)
  3246 
  3247 1.	JohnS
  3248 	1.	PDEF090121: NAND thread crash when doing async writes to internal memory.
  3249 		TInt DMediaDriverNand::DoWrite() paniced for zero length source descriptors - this was crashing
  3250 		the Nand thread.
  3251 
  3252 2.	Dipak Agrawal
  3253 	1.	DEF090699: [codebase] Returning ECancel to MFileManObserver::NotifyFileManEnded - no effect
  3254 		Added "MFileManObserver::ECancel will not cancel processing the current
  3255 		entry" comment in MFileManObserver::NotifyFileManEnded()function.
  3256 
  3257 3.	AndrewHi
  3258 	1.	DEF090994: [codebase] RFS::ReadFileSection writes buffer length even if it fails
  3259 		Modified server-side code to reset the descriptor length to zero in the event of an error.
  3260 		Extended t_readsect to test this condition.
  3261 	2.	DEF091173: [codebase] Copy to a directory_L("") seems fine with CFileMan
  3262 		In-source documentation made more explicit.
  3263 
  3264 	
  3265 Version 2.00.1138
  3266 ==========================
  3267 (Made by StefanW, 11/07/2006)
  3268 
  3269 1.	YingS
  3270 	1.	DEFECT FIX: DEF088863 - T_FSRVBM performance down by fix for DEF079957
  3271 	2.	DEFECT FIX: DEF090715  estart.exe for h4 does not have an explicit SID
  3272 		Added SID to estart.mmp of h4 and integrator as well.
  3273 
  3274 2.	StefanW
  3275 	1.	CHANGE REQUEST: PCHY-6PALT2: Add asynchronous Flush() and define ranges for file attributes.
  3276 	2.	MILESTONE: Bravo GT0236, MS3.20.1 DS317 PREQ1389 CR0795,CR0618 Support for >2G SD part 1
  3277 		Added support for >2G SD Cards conforming to the SD2.0 version of the specification.
  3278 	3.	DEFECT FIX: DEF077215: T_SCN32DR1 fails when using 4GB CF card
  3279 		On the FAT32 file system, the root directory can grow which was not taken into account in this
  3280 		test.  This caused tests to fail when the root directory extended into a new cluster.  Modified
  3281 		the test code to ensure that when creating files, the root directory does not grow in size.
  3282 	4.	DEFECT FIX: INC090262: T_FSYS F32test fails on 1G MMC FAT32 Formatted 
  3283 		T_FSYS would attempt to auto-detect the type of file system by reading the boot sector, then
  3284 		explicitly mount the FAT or FAT32 file systems by name.  This fails, as both the FAT and FAT32 file
  3285 		systems share the same object name ("FAT").  Changed to only mount with the name "FAT". In order for
  3286 		this (or any) tests to operate correctly on large/FAT32 volumes, you must ensure that the FAT32 file
  3287 		system is present in ROM (using the WITH_FAT32 macro).
  3288 
  3289 3.	NicholasC
  3290 	1.	DEFECT FIX: DEF082033: USB Mass Storage drivers do not report suspended host machines correctly
  3291 	2.	MINOR CHANGE: Remove ARM4 warnings introduced in DEF082033
  3292 
  3293 4.	ParameshwariB
  3294 	1.	DEFECT FIX: PDEF087543: RFs::FileSystemName behavior is different from devlib
  3295 
  3296 
  3297 Version 2.00.1137
  3298 ==========================
  3299 (Made by JohnS, 07/07/2006)
  3300 
  3301 1.	DmitryL
  3302 	1.	DEFECT FIX: PDEF087113  Licensee would like up to change the way fat type is calculated.
  3303  
  3304 2.	ParameshwariB	
  3305 	1.	DEFECT FIX: DEF081323: [AQP] T_SCN32DR3 fails on fat32 formatted 4GB CF card using Lubbock
  3306 	2.	DEFECT FIX: DEF076350: [AQP] T_FATCORRUPT fails on 4GB CF card	
  3307 
  3308 3.	YingS
  3309 	1.	DEFECT FIX: INC088228 - No way to show the progress of a format operation in ESTART
  3310 		Added virtual function ShowFormatProgress() in estart.
  3311 
  3312 
  3313 Version 2.00.1136
  3314 ==========================
  3315 (Made by GavinT, 23/06/2006)
  3316 
  3317 1.	StefanW		
  3318 	1.	DEFECT FIX: DEF087791: CFileMan::Move leaves with KErrPathNotFound if destination path does not exist.
  3319 
  3320 2.	GavinT
  3321 	1.	DEFECT FIX: PDEF087663: USB mass storage SCSI mode sense and request sense invalid responses
  3322 		Testing for the presence of a single bit in a bit field now uses '&' rather than '=='
  3323 
  3324 
  3325 Version 2.00.1135
  3326 ==========================
  3327 (Made by JoR, 13/06/2006)
  3328 
  3329 1.	Ranisuneela Motru
  3330 	1.	DEFECT FIX: DEF087350: RFs::ErasePassword documentation should indicate the media may need formatting
  3331 	Modified in-source documentation as necessary
  3332 
  3333 
  3334 Version 2.00.1134
  3335 ==========================
  3336 (Made by RobertJ, 08/06/2006)
  3337 
  3338 1.	YingS
  3339 	1.	DEFECT FIX: DEF083235 - HAL Attributes (eg screen calibration) lost if the battery 
  3340 		is pulled out (Base part)
  3341 		Changed TFSStartup::InitialiseHAL() to call halsettings.exe.
  3342 
  3343 2.	GavinT
  3344 	1.	DEFECT FIX: INC078251: F32 is wasting RAM for TFileName class members
  3345 		Added new class, TParsePool, to manage a pool of TParse objects. As requests
  3346 		are made, objects are taken from the pool and returned when no longer needed. 
  3347 
  3348 
  3349 Version 2.00.1133
  3350 ==========================
  3351 (Made by DjordjeK, 06/06/2006)
  3352 
  3353 1.	AttilaV
  3354 	1.	DEFECT FIX: DEF081770: The Loader should verify compression type.
  3355 
  3356 
  3357 Patch to Version 2.00.1132
  3358 ==========================
  3359 (Made by RobertJ, 02/06/2006)
  3360 
  3361 1.	RobertJ
  3362 	1. 	INTERFACE CHANGE: BR1889.1 DEF087365: f32 not compatible bettwen 9.1 & MCL
  3363 	2.	DEFECT FIX: DEF087365: f32 not compatible between 9.1 & MCL
  3364 		Needed to change def files for BWINS, BX86 & EABI also
  3365 
  3366 Version 2.00.1132
  3367 ==========================
  3368 (Made by DavidM, 26/05/2006)
  3369 
  3370 1.	YingS
  3371 	1.	DEFECT FIX: DEF086974 - The fix for DEF074824 is not valid if the local drive mapping file is missing
  3372 		Apply same fix code of DEF074824 to function TFSStartup::DetectAndMountFileSystems()
  3373 
  3374 2.	JohnS
  3375 	1.	DEFECT FIX:   DEF085952: t_soak1 crash on exit.
  3376 		t_soak1 invariably faults and sometimes crashes when run on an LFFS drive. The fault and subsequent 
  3377 		crash follow on from detecting a difference in the sizes of the free, close and allocated queues just
  3378 		prior to starting the test and just after finishing it. The test has been modified to wait for the
  3379 		test threads to complete prior to checking for inbalance - this fixes the fault but masks the crash.
  3380 		The crash is fixed by applying a further modification to the file server code that stops the procedure 
  3381 		RequestAllocator::OpenSubFailed() from being called twice following on from a leave when opening 
  3382 		a file or directory. Such leaves may result from attempts to open files or directories from a thread 
  3383 		just as it is dying.
  3384 
  3385 3.	DavidM
  3386 	1.	DEFECT FIX: DEF084675: Corrupted miniSD not detected as corrupted by phone 
  3387 		Propagated from INC083446. Changed TDrive::CheckMount() so that after three 
  3388 		failed attempts at mounting the drive we give up until a media change.
  3389 
  3390 4.	RobertJ
  3391 	1. 	INTERFACE CHANGE: BR1889.1 DEF087365: f32 not compatible bettwen 9.1 & MCL
  3392 	2.	DEFECT FIX: DEF087365: f32 not compatible between 9.1 & MCL
  3393 
  3394 5.	AttilaV
  3395 	1.	Milestone: Argus,GT0286,MS3.2
  3396 		Extended EFILE (loader) to recognise and load executable image compressed by Byte Pair algorithm. 
  3397 
  3398 
  3399 Version 2.00.1131
  3400 ==========================
  3401 (Made by AndreasP, 22/05/2006)
  3402 
  3403 1.	YingS
  3404 	1.	DEFECT FIX: DEF085923 - ESTART fails to mount a second filesystem if a primary extension is re-used
  3405 		-- if (r==KErrNone)
  3406 		++ if (r == KErrNone || r == KErrAlreadyExists)
  3407 
  3408 2.	JohnS
  3409 	1.	DEFECT FIX:  DEF085298: RFile::Read crashes H2 board when supplied a negative length
  3410 		The negative length parameter on a file read was not being properly trapped for two media types 
  3411 		i.e RAM & emulator NAND. This has been fixed.
  3412 		
  3413 3.	MiguelB
  3414 	1.	DEFECT FIX: DEF086407: RFile::Create() does not create the private directory 
  3415 		Changed in-source documnetation to emphasise the fact that... "If the resulting path 
  3416 		does not exist, then the operation cannot proceed and the function returns an error code."
  3417 
  3418 4.	StefanW		
  3419 	1.	DEFECT FIX: DEF073924: CFileMan::Move does not move an empty directory across drives
  3420 	2.	DEFECT FIX: INC074828: CFileMan::Move moves content of directory correctly but returns KErrPathNotFound
  3421 	3.	DEFECT FIX: INC078759: CFileMan::Move moves directories in wrong way in recursive mode
  3422 	4.	DEFECT FIX: INC078800: CFileMan::Move - directory itself moved with content when moving across drives
  3423 
  3424 5.	ParameshwariB
  3425 	1.	DEFECT FIX: DEF085241: Mass Storage documentation update
  3426 
  3427 
  3428 Version 2.00.1130
  3429 ==========================
  3430 (Made by AttilaV, 15/05/2006)
  3431 
  3432 1.	DmitryL
  3433 	1.	DEFECT FIX: DEF085946  If Fat32 storage (MMC/SD/HDD) is formatted with a volume label, B_GEN test fails.
  3434 		Fixed a problem with FAT cache alignment.
  3435 	2.	MINOR_CHANGE: Eshell extended. "Format" command now can accept FAT type specifier(fat12, fat16, fat32) for FAT media; 
  3436 		new "DRVINFO" command added that shows information about drives in the system.
  3437 	3.	DEFECT FIX: DEF085356  LFFS crashes on manually corrupted image.
  3438 		Fixed a problem (only for release build) when LFSS couldn't cope with artificially corrupted image.
  3439 		For debug build ASSERT still works.
  3440 	4.	MINOR_CHANGE: Added epoc.ini "FlashForceImgMount" parameter support to allow force mounting of LFFS images.
  3441 
  3442 
  3443 Version 2.00.1129
  3444 ==========================
  3445 (Made by NicholasC, 09/05/2006)
  3446 
  3447 1.	JoR
  3448 	1.	DEFECT FIX: DEF083563: Unable to get post intercept for EFsDirReadPacked
  3449 		Propagated fix from INC82565
  3450 	2.	DEFECT FIX: DEF083523: base_f32: Not possible to get filename, pos and length in RFs::ReadFileSection
  3451 		Propagated fix from INC81842
  3452 	3. 	DEFECT FIX: DEF083999: Fileserver plugins should not cause completion of RFs::NotifyChange
  3453 		Propagated fix from INC82877
  3454 	4.	DEFECT FIX: DEF084204: Improve FAT mount performance by increasing FAT cache
  3455 		Propagated fix from INC80245
  3456 
  3457 2.	GavinT
  3458 	1.	DEFECT FIX: DEF076507: Propagated: ContentAccess::CManager::GetDir sorts files in wrong order
  3459 		Changed TKeyDir::Compare() to search from the end rather than the beginning of the filename when
  3460 		looking for the extension separator
  3461 
  3462 Version 2.00.1128
  3463 ==========================
  3464 (Made by RichardCo, 04/05/2006)
  3465 
  3466 1.	GavinT
  3467 	1.	DEFECT FIX: DEF083998: Envelope icon doesn't stop blinking until phone is rebooted
  3468 		Applied fix from INC074134 to TDiskSpaceQue::CheckDiskSpace(TInt64&)
  3469 
  3470 Version 2.00.1127
  3471 ==========================
  3472 (Made by RobertJ, 26/04/2006)
  3473 
  3474 1.	JohnS
  3475 	1.	INTERFACE CHANGE: BR1783.2 Change to the error code returned by RFs::AddFileSystem when mass-storage 
  3476 		file system already exists. Current (erroneous) value returned is KErrNoMemory - this change is to 
  3477 		return KErrAlreadyExists instead.
  3478 	2.	DEFECT FIX: DEF079149: File server crash when re-adding MSFS.FSY
  3479 		The message completion code was trying to access drive information even when there was no drive. Now 
  3480 		the code only tries to access drive information when a drive is present.
  3481 	3.	DEFECT FIX: DEF080979: RFs::AddFileSystem, wrong error code when re-adding the mass storage file system
  3482 		Adjust the mass storage file system factory function so that if the server thread is running, a pointer 
  3483 		to the new file system object is returned in place of a null pointer. The calling code now cleans up 
  3484 		the new file system object. 	
  3485 	4.	DEFECT FIX: DEF083801: Isetta: "Windows was unable to complete the format" for 256MB MiniSD card
  3486 		It is now possible to format cards for FAT32 using the USB Mass Storage Feature and a USB XP Host. The
  3487 		fix was to modify CScsiProtocol::HandleReadCapacity() to write the Last Block Address instead of the 
  3488 		number of blocks. 
  3489 	5.	MINOR_CHANGE: Modify usb-mass-storage-low-level-driver-test-code to 
  3490 		write endpoint data correctly.
  3491 	6.	MINOR_CHANGE: Add trace information to Mass Storage FileSystem code.
  3492 
  3493 2	NicholasC
  3494 	1.	DEFECT FIX: DEF083986: USB mass storage class doesn't detach from Apple MAC/Tiger
  3495 	2.	DEFECT FIX: DEF084421: Mass Storage File System manual regression test failures for emulator.
  3496 
  3497 3.	Neilc
  3498 	1.	DEF081788: Chinese MMC card name is corrupted during bootup
  3499 
  3500 
  3501 Version 2.00.1126
  3502 ==========================
  3503 (Made by RobertJ, 11/04/2006)
  3504 
  3505 1.	DmitryL
  3506 	1.	DEFECT FIX: DEF071138:  Filesystem error in Thunder.
  3507  	2.	MINOR_CHANGE: Fixed ARMV5 compiler warnings in LFFS code.
  3508 
  3509 
  3510 Version 2.00.1125
  3511 ==========================
  3512 (Made by VamosA, 27/03/2006)
  3513 
  3514 1.	MaximK
  3515  	1.	DEFECT FIX: DEF082321: Installer - shows blank field if memory stick has no name
  3516  		MountL() functions in both FAT and FAT32 modified to trim trailing whitespace
  3517  		from volume label.
  3518  	2.	DEFECT FIX: DEF082323: New volume label test code in T_FSRV is wrong
  3519  		IsFileSystemFAT32() and IsFileSystemFAT() modified to read BPB.
  3520 
  3521 2.	MiguelB
  3522 	1.	DEFECT FIX: DEF083227: FAT: Debug ASSERT is incorrect 		
  3523 
  3524 
  3525 Version 2.00.1124
  3526 ==========================
  3527 (Made by MarkTa, 20/03/2006)
  3528 
  3529 1.	NicholasC
  3530 	1.	DEFECT FIX: DEF082324: Install from memory card - sis file not recognised if stored in root folder o...	
  3531 		Pad volume name with spaces instead of NULLs.
  3532 
  3533 2.	YingS
  3534 	1.	DEFECT FIX: DEF081515 - RFs::FinalizeDrives() call fails.
  3535 		- TInt nDrv = aRequest->DriveNumber(); //-- the number of the drive, requested to be finalised
  3536 		+ TInt nDrv = aRequest->Message().Int0(); //-- the number of the drive, requested to be finalised
  3537 		-     nRes = SendReceive(EFsFinaliseDrive,TIpcArgs());
  3538 		+     nRes = SendReceive(EFsFinaliseDrive,TIpcArgs(i));
  3539 	2.	DEFECT FIX: DEF083005 - Opening/closing keyboard when USB File Transfer is being established
  3540 		Comment out all iNotifier.Connect() calls.
  3541 
  3542 
  3543 Version 2.00.1123
  3544 ==========================
  3545 (Made by MichaelP, 14/03/2006)
  3546 
  3547 1.	SushmitaR
  3548 	1.	DEFECT FIX: DEF077207 - t_scndr1 test is failing for emulator (winscw). This is a manual f32 test.
  3549 
  3550 2.	MiguelB
  3551 	1.	DEFECT FIX: DEF081620 File server crashes under load
  3552 		Made CServer2's iSessionQ thread-safe by implemented CServerFs::RunL() and aquiring 
  3553 		a mutex whenever (1) a RMessage2::EConnect is received or (2) the disconnect thread 
  3554 		deletes a session.
  3555 		
  3556 3.	AndreasP
  3557 	1.	DEFECT FIX: DEF080233 - Drive mapping files broken for H2/H4
  3558 		Nandloader now obtains information from all drives numbered within the range of 0 and KMaxDrives.
  3559 		The first drive that is of type KPartitionTypeRofs is the first usable ROFS drive which we are interested in.
  3560 		If such a drive is not found then Nandloader uses testgui::KDefaultDrive (7) as before. In both cases though
  3561 		that value gets overwritten if the -d option has been used to specify a drive number for the NAND area.
  3562 	2.	MINOR_CHANGE: Changes to the test framework prior to System Test (India) submission.
  3563 
  3564 4.	JoR
  3565 	1.	DEFECT FIX:  DEF076344: B_OPEN fails when using 4GB CF card
  3566 		Comparison between disk size and file size now made using TInt64, so that 
  3567 		large disk sizes are not interpreted as negative.
  3568 
  3569 
  3570 Version 2.00.1122
  3571 (Made by MaximK, 07/03/2006)
  3572 ==========================
  3573 
  3574 1.	MichaelMo
  3575 	1.	DEFECT FIX: DEF080853 - SS31 File Transfer mode does not resume activity after PC is awakened from 
  3576 		sleep mode
  3577 		Function HWStart was modified to take a boolean argument to control whether or not 
  3578 		ReadAndDiscardData() is called. This was then used to prevent ReadAndDiscardData() after a reset.
  3579 
  3580 	2.	DEFECT FIX: DEF082243 - Mass Storage failure. Bulk Transport handles case badly
  3581 		Call to ReadAndDiscardData() was relocated in CBulkOnlyTransport::RunL() to after the transfer is 			complete.
  3582 
  3583 2.	MaximK
  3584 	1.	DEFECT FIX: DEF074909: Deadlock scenario possible in F32 plugin architecture.
  3585 		Various plugin operations could cause deadlock situations due to recursive I/O.
  3586 		Additionally, plugin initialisation occurred in main thread context making it
  3587 		impossible to perform file IO at this stage without again causing deadlock.
  3588 
  3589 		   - Plugin initialisation/cleanup now occurs in plugin thread context.
  3590 		   - Internal plugin requests (Open/Dismount etc...) are handled in the correct thread.
  3591 		   - Synchronous operations (or requests to synchronous drives) that originate (or are
  3592 		     dispatched via a plugin thread are now handled in main thread context.
  3593 		   - Plugin helper functions (GetName etc..) updated to ensure correct operation.
  3594 
  3595 
  3596 Version 2.00.1121
  3597 (Made by RobertJ, 01/03/2006)
  3598 ==========================
  3599 
  3600 1.	JoR
  3601 	1.	DEFECT FIX: DEF080559: [BLOCKING] EFsFileReplace is not possible to postintercept
  3602 		Propagate changes from 9.1/  INC078459
  3603 	2.	DEFECT FIX: DEF076086: B_FAT32 fails on 4GB CF card using Lubbock
  3604 		Test included a constant value intended to be large enough to return KErrCorrupt
  3605 		when it was read from. This was invalid for the 4Gig card and has been altered to
  3606 		scale better with card size.
  3607 
  3608 2.	YingS
  3609 	1.	DEFECT FIX: DEF079957 - FAT Inefficient name matching when opening files
  3610 		Moving these to a single test outside the loop reduced the time to open 500 file from 6.2 seconds to 3 seconds
  3611 
  3612 3.	parameshwarib
  3613 	1.	DEFECT FIX: DEF079753 - FAT table cache is not flush before closing, resulting in EFile panic if
  3614 		data is
  3615 		Added code to flush the FAT table data for bad sector cluster in FAT and FAT32 filesystem.
  3616 
  3617 4.	MichaelMo
  3618 	1.	DEFECT FIX: DEF081267 - CFatFileCB::SetSizeL returns KErrTooBig for size greater than 1GB
  3619 		Modified function CFatFileCB::CalcSeekIndexSize (used by SetSizeL) to use an unsigned instead of 
  3620 		signed integer for it's bit shifting so that sizes upto (2^31)-1 bytes (just under 2GB) are now
  3621 		supported.
  3622 
  3623 5.	AttilaV
  3624 	1. 	DEFECT FIX: DEF080552 - Menu: System error (-1)' shown, when trying to open Web after phone has 		been communicating with PC using USB
  3625 
  3626 
  3627 Version 2.00.1120
  3628 (Made by CarlosF, 21/02/2006)
  3629 ==========================
  3630 
  3631 1.	RichardCo
  3632 	1.	DEFECT FIX: DEF080218: CrashRead coorupt media on disk full
  3633 		FAT implementation does not correctly handle the case where a currently
  3634 		zero-length file tries to be extended to more than the available space
  3635 		on the disk. Fixed and implemented a test case in B_FAT, and updated
  3636 		chkdsk to detect this condition.
  3637 
  3638 2.	JohnS
  3639 	1.	DEFECT FIX: DEF078793: RFile::Open fails with KErrPermissionDenied 
  3640 		when opening a file in Z:\resource>. 
  3641 		The fix relaxes the capabilities rules for RFile::Open. \resource 
  3642 		files may now be opened in EFileShareReadersOrWriters|EFileRead access 
  3643 		and share mode, without the user having TCB capabilities. 	
  3644 
  3645  	2.	MINOR_CHANGE: Correct system file access tests in test programs 
  3646  		t_dcdiskadmin, t_dcdiskadminallfiles and t_dcnone.2.	
  3647 
  3648 3.	DavidM
  3649 	1.	DEFECT FIX: DEF078946: Time limit for lazy dll unloading should be configurable. 
  3650 		Propagate changes from v9.1.
  3651 
  3652 Version 2.00.1119
  3653 (Made by NicholasC, 14/02/2006)
  3654 ==========================
  3655 
  3656 1.	NicholasC
  3657 	1.	DEFECT FIX: DEF076092: EFileShareReadersOrWriters handling in TFsFileWrite::DoRequestL() is wrong.
  3658 	
  3659 2.	YingS
  3660 	1.	DEFECT FIX: DEF078788 - Platform Security data caging error in estart.cpp (Base part of fix)
  3661 	
  3662 3.	MiguelB
  3663 	1.	DEFECT FIX: DEF073538: Creation of directories on FAT systems is sub-optimal 
  3664 	2.	DEFECT FIX: DEF075820: T_FALSESPACE fails on large drives 
  3665 
  3666 4. 	JoR
  3667 	1.	DEFECT FIX: DEF074548: Greater than 2GB storage not supported. - N91
  3668 		Propagated from 9.1/ 8.1b.
  3669 	2. 	MINOR CHANGE: Add note to comments for RFs::MkDirAll and RFs::MkDir
  3670 
  3671 
  3672 Version 2.00.1118
  3673 (Made by AndreasP, 06/02/2006)
  3674 ==========================
  3675 
  3676 1.	RobertJ
  3677 	1.	DEFECT FIX: DEF079276 - comments for RFile::Write() are incorrect. In-source documentation corrected
  3678 
  3679 2.	AndreasP
  3680 	1.	MILESTONE: Intulo GT262, MS3.8 PREQ1085 Flexible device ROM configuration
  3681 		BR1725: Change DMedia class to support more than four (>4) partitions on a media device
  3682 	
  3683 		This adds support to the composite file system for multiple (more then rom and one rofs)
  3684 		partitions, and the ability to hide files accross seprate rofs.
  3685 	
  3686 	2.	DEFECT FIX: DEF068715 - Base overnight test should test Composite FS
  3687 
  3688 3.	MichaelMo
  3689 	1.	DEFECT FIX: DEF079645: Write to file fails on WINSCW if file aleady opened for reading.
  3690 		In the emulator files are now always opened with Windows for Read and Write (unless not
  3691 		possible, i.e. read only files) as the file server will arbitrate access appropriately.
  3692 
  3693 4.	YingS
  3694 	1.	DEFECT FIX: INC074894 - MMC app does not refresh its view, when card is unlocked
  3695 		Add EFsLockDrive & EFsUnlockDrive in TOperation::NotifyType() so that ENotifyDisk notification can be sent out.
  3696 
  3697 
  3698 Version 2.00.1117
  3699 (Made by RichardCo, 01/02/2006)
  3700 ==========================
  3701 
  3702 1.	MichaelMo
  3703 	1.	DEFECT FIX: DEF078302: ReserveDriveSpace() returns no errors although memory runs out
  3704 		ReservDriveSpace() now check to see if the total amount of reserved space requested for 
  3705 		a drive exceeds the available free space. If it does then KErrDiskFull is returned.
  3706 		F32 test T_FALSESPACE is updated to reflect this change in behaviour.
  3707 
  3708 Version 2.00.1116
  3709 (Made by JonCo, 23/01/2006)
  3710 ==========================
  3711 
  3712 1.	AttilaV
  3713 	1.	DEFECT FIX: DEF070648: ESTART.TXT parsing doesn't work with >2 drive flags
  3714 
  3715 
  3716 Version 2.00.1115
  3717 (Made by NeilC, 16/01/2006)
  3718 ==========================
  3719 
  3720 1.	MiguelB
  3721 	1.	MINOR CHANGE: Tidy up f32test\group\wintest.bat 
  3722 
  3723 2.	SushmitaR
  3724 	1.	DEFECT FIX: DEF066623 T_CFSSOAK fails
  3725 
  3726 3.	RichardCo
  3727 	1.	DEFECT FIX: INC077362: Vulnerabilities in the Loader
  3728 		Fix the loader's handling of executables which have an uncompressed size >2GB, or
  3729 		a larger dllRefTableCount than there are entries in the file for. Both these cases
  3730 		caused the loader to crash, taking down the OS. No security vulnerabilities were
  3731 		identified.
  3732 
  3733 4.	NicholasC	
  3734 	1.	DEFECT FIX: DEF075112: Locale is loaded after MMC is mounted which causes MMC name corruption
  3735 
  3736 5.	MaximK
  3737 	1.	DEFECT FIX: DEF077497 - Wrong memorycard label
  3738 		Added code to reload volume label from a volume label file when the volume is being mounted.
  3739 		Also created a test case.
  3740 
  3741 6.	DavidM
  3742 	1.	DEFECT FIX: DEF077913: FAT driver is not compliant with FAT
  3743 		specification for starting with 0xE5 char. 
  3744 		Propagate changes from INC073747
  3745 
  3746 Version 2.00.1114
  3747 (Made by JenniferH, 12/01/2006)
  3748 ==========================
  3749 
  3750 1.	MiguelB
  3751 	1.	DEFECT FIX: DEF074713 ASSERT not inserted into CFileCB::DemoteShare() as this would crash b_open 
  3752 		Ensure CFileShare calls CFileCB::PromoteShare() immediately after it's constructed to prevent
  3753 		hitting an ASSERT caused by the CFileShare destructor calling CFileCB::DemoteShare()
  3754 
  3755 
  3756 Version 2.00.1113
  3757 (Made by JonathanM, 04/01/2006)
  3758 ==========================
  3759 
  3760 1.	MiguelB
  3761 	1.	DEFECT FIX: DEF075737: T_FATCORRUPT fails for FAT16 media > 128MB 
  3762 		Added code to t_fatcorrupt, in method DoTestUserFormatL() to calculate the sectors per 
  3763 		cluster depending on the volume size.
  3764 		Changed CFatFormatCB::BadSectorToCluster() so that the code is the same as for FAT16 - 
  3765 		Before this the code didn't correctly handle a bad sector occuring in the FAT / root directory.
  3766 		
  3767 	2.	DEFECT FIX: DEF075841: Danger of heap corruption in the file server request allocator.
  3768 		Fixed possibility of heap corruption introduced by fix for DEF073693.
  3769 
  3770 2.	NicholasC	
  3771 	1.	DEFECT FIX: DEF070027: TFileMode doc is wrong & ChangeMode operation
  3772 	
  3773 3.	AndreasP
  3774 	1.	DEFECT FIX: DEF065087: Created Time/Date field missing when file/dir is created on the FAT filesystem.
  3775 		Two new member variables have been added to struct SFatDirEntry to hold the creation date (iDateC) and time (iTimeC).
  3776 		These variables are being updated everytime a directory or file is being created and when a file is being replaced.
  3777 
  3778 Version 2.00.1112
  3779 (Made by AttilaV, 12/12/2005)
  3780 ==========================
  3781 
  3782 1.	YingS
  3783 	1.	DEFECT FIX: DEF074291 - Scandrive deletes file if named with Japanese characters
  3784 		Seperate ScanDrive from MountDrive; this allows drives to be mounted followed by
  3785 		locale loading. Scanning drives after locale is set thus can recognise non-ascii filename.
  3786 
  3787 2.	VincentF
  3788 	1.	DEFECT FIX: DEF066537 - T_SCNDR3 and T_SCN32DR3 fail
  3789 		Increase stack size to 16k.
  3790 		Update tests to cope with data caging.
  3791 		Update tests to take into account existence of the f32-tst directory.
  3792 
  3793 3.	DavidM
  3794 	1.	DEFECT FIX: DEF073795: DMA is not used in USB file transfer mode
  3795 		Propagate changes from INC072172 (v9.1)
  3796 	2.	DEFECT FIX: DEF073800: USB data throughput rate in mass storage class mode is too low
  3797 		Propagate changes from INC069059 (v9.1)
  3798 
  3799 4.	NicholasC
  3800 	1.	DEFECT FIX: DEF073111: Documentation of TFindFile (f32file.h) omits any references to Capabilities
  3801 
  3802 5.	GavinT
  3803 	1.	DEFECT FIX: DEF074815: File Server disk space notification doesn't take reserved space into account
  3804 		TDiskSpaceQue::CheckDiskSpace() was modified to adjust the amount of free space reported
  3805 		by the drive. It now only includes the reserved space on the drive if the session has 
  3806 		reserved access. 
  3807 		
  3808 6.	MiguelB
  3809 	1.	DEFECT FIX: DEF075119: FAT32 Scan drive : cluster range incorrect for non-standard root cluster volumes
  3810 		For FAT32 volumes with a root directory cluster of something other than 2, the cluster range 
  3811 		checking was incorrect.
  3812 
  3813 Version 2.00.1111
  3814 (Made by JohnS, 30/11/2005)
  3815 =========================
  3816 
  3817 1.	GemaG
  3818 	1.	MINOR CHANGE: Test tags added in T_NOTIFY for MS3.8 (Bravo)
  3819 
  3820 2.	MichaelMo
  3821 	1.	DEFECT FIX: DEF074429 - RFormat::Open returns KErrNone, even if card is locked.
  3822 		Modify FsFormatOpen to check if drive is locked and if so return KErrLocked (previously
  3823 		this didn't happen until RFormat::Next was called).
  3824 		Modify test t_pwstr to reflect this change and to check for regressions in the future 
  3825 		(N.B. this is a manual test as it requires user interaction)
  3826 
  3827 
  3828 Version 2.00.1110
  3829 (Made by YingS, 21/11/2005)
  3830 =========================
  3831 
  3832 1.	YingS
  3833 	1.	DEFECT FIX: DEF069977 - f32test cannot be built at SEMC
  3834 		Reengineered t_fatext and t_fatcorrupt.
  3835 		Reorganised code of handling bad blocks on disk in slocal & sfat32.
  3836 
  3837 	2.	DEFECT FIX: DEF073693 - File server incorrectly treats ROM drive as substituted
  3838 		Using User::AllocZ() to pre-allocate space for array to guarantee that the whole
  3839 		space is cleared and set to zero. By doing this we can promise that no unwanted
  3840 		content left.
  3841 
  3842 	3.	MINOR_CHANGE: Fix file server panic
  3843 		Add ValidateDriveDoSubst() check in TFsFinaliseDrive::Initialise().
  3844 
  3845 2.	GavinT
  3846 	1.	MINOR_CHANGE: Fixed T_OPEN failure
  3847 		Test harness modified to only consider the results of TFileOpenScan::NextL()
  3848 		for the threads it is interested in.
  3849 	2.	DEFECT FIX: DEF072397 - CFileMan::Copy synchronous operation is not synchronous
  3850 		Updated API documentation for the TTime parameter to CFileMan::Attribs() as this
  3851 		was incorrect. Changed CLocalMount::SetEntryL() to close the handle if the attempt
  3852 		to set a file's or directory's timestamps failed.
  3853 	3.	DEFECT FIX: DEF062875 - TOpenFileScan::ThreadId() always returns the id of the calling thread
  3854 		TThreadId now stored in the CSessionFs when the file is opened.
  3855 		T_OPEN modified to incorporate a new test for this defect.
  3856 
  3857 
  3858 Version 2.00.1109
  3859 (Made by MichaelP, 15/11/2005)
  3860 =========================
  3861 
  3862 1.	MiguelB
  3863 	1.	DEFECT FIX: DEF067976: MR1: Force Erase of MMC lock UI until complete 
  3864 		Added a new value (EForceErase=0x400) to enum TFormatMode so that the RFormat
  3865 		API can now be used to force erase a locked card. The RFormat::Next() method has
  3866 		an asynchronous overload so that now a client can regain control while a forced
  3867 		erase is in progress, rather than using the synchronous method RFs::ErasePassword().
  3868 		
  3869 	2.	DEFECT FIX: DEF072881: Storing MMC password to C drive doesn't work no directory c:\\Sys\\data
  3870 
  3871 2.	JohnS
  3872 	1.	DEFECT FIX: DEF067960 - Cannot connect the Mass Storage file system more than once! This
  3873 		fix allows the USB Manager to connect the Mass storage file system more than once. It is 
  3874 		supposed to be applied together with the solution to DEF066399 a Shortlink defect.	
  3875 
  3876 	2.	DEFECT FIX: DEF068041 - RUsbMassStorage::Connect() isn't very secure. This method now
  3877 		checks the server id as well as the server name for the Usb mass storage server.  	
  3878 
  3879 	3. 	MINOR CHANGE: Modify usbmsapp.exe (e32utils/usbmsapp/usbmsapp.cpp) so that the logical 
  3880 		device USBC (EUSBC.LDD) gets 'freed' when the application terminates.
  3881 
  3882 
  3883 3.	YingS
  3884 	1.	DEFECT FIX: DEF073107 - Safe remove on PC side does not affect phone
  3885 		Add Connect Drive code in CBulkOnlyTransport::HwStart();
  3886 		Add Disconnect Drive code in CBulkOnlyTransport::HwStop().
  3887 
  3888 4.	MichaelMo
  3889 	1.	DEFECT FIX: DEF072541: Class CRawDiskCB stores bit fields in a TBool
  3890 		Declare iFlags as TUint32 instead of TBool
  3891 
  3892 	2.	DEFECT FIX: DEF072539: Identifier 'CMountCB::Locked()' redeclared from TBool to TInt
  3893 		Changed declaration in f32fsys.inl to match that in f32fsys.h, return type is now 
  3894 		TBool in both files.
  3895 
  3896 	3.	DEFECT FIX: INC071913: RFile.Temp() "mangles" path given to capitals
  3897 		Removed call to aName.Uppercase in TDrive::FileTemp.
  3898 	
  3899 5.	DavidM
  3900 	1.	DEFECT FIX: DEF072746 - CFileMan.Move() moves files in wrong way in recursive mode
  3901 		Changed so that if the recursive flag is set and the source path is a subset of
  3902 		the target path then the directory scan direction should be upward.
  3903 
  3904 6.	VamosA
  3905 	1.	DEF070648: ESTART.TXT parsing doesn't work with >2 drive flags
  3906 
  3907 
  3908 Version 2.00.1108
  3909 (Made by MichaelMo, 08/11/2005)
  3910 ============================
  3911 
  3912 1.	MiguelB
  3913 	1.	DEFECT FIX: DEF071735: Scan drive for fat32 should check cluster range
  3914 		Renamed CScanDrive::AlreadyUsed() to CScanDrive::AlreadyUsedL()
  3915 		Renamed CScanDrive::SetUsed() to CScanDrive::SetUsedL()
  3916 		Changed both functions to leave with KErrCorrupt if cluster out of range.
  3917 
  3918 	2.	DEFECT FIX: DEF072510: Dotdot cluster number of directory below root should be null
  3919 		Changed code to ensure that the "dotdot" cluster number is zero when the parent
  3920 		is the root directory (before the cluster number was 2 for FAT32).
  3921 
  3922 2.	GavinT
  3923 	1.	DEFECT FIX: DEF068791: RFs::GetDir(..), Sorting filenames works wrong
  3924 		Changed sorting algorithm to use different collation method that considers punctuation
  3925 
  3926 	2.	DEFECT FIX: INC070455: RFile.ChangeMode() panics
  3927 		Removed magic number from string length
  3928 
  3929 
  3930 Version 2.00.1107
  3931 ============================
  3932 (Made by DmitryL, 31/10/2005)
  3933 
  3934 1.	JoR
  3935 	1.	DEFECT FIX: DEF068789: Operator new crash in elffs
  3936 		Heap allocation in TVolumeMetrics::SetVars has been replaced with stack allocation.
  3937 
  3938 
  3939 Version 2.00.1106
  3940 ============================
  3941 (Made by MaximK, 25/10/2005)
  3942 
  3943 1.	JoR
  3944 	1.	DEFECT FIX: DEF070658: LFFS: CorrectStatusBitPairs does not check CRC before using address from LEP
  3945 		Fix propagated from DEF064943. In slffs_log.cpp:
  3946 		Change code in ReadEntry to check that SegmentFromLEP returns a value within bounds before using it to index iL2PTable.
  3947 		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.
  3948 
  3949 	2.	DEFECT FIX: DEF070659: LFFS "FIXME" hit during soak testing
  3950 		Fix propagated from DEF065216. 
  3951 		
  3952 2.	MiguelB
  3953 	1.	MINOR_CHANGE: Changed T_DSPACE to work with large cluster sizes
  3954 	2.	DEFECT FIX: DEF071696: KErrCorrupt on Scan Drive
  3955 		Problem was that full drives were regarded as corrupt by Scan Drive dur to an invalid ASSERT.
  3956 	3.	DEFECT FIX: DEF071326: B_FAT & B_FAT32 Panic Target with FAT32 enabled 
  3957 		Removed incorrect ASSERT.
  3958 	
  3959 3.	MaximK
  3960 	1.	DEFECT FIX: DEF071517 - It's hard (impossible?) to diagnose data caging problems in hardware.
  3961 		Added a function to append the filename to the message.
  3962 
  3963 4.	MichaelMo
  3964 	1.	DEFECT FIX: DEF067962: CFileMan::Move completes with KErrNone and deletes the source file in error
  3965 		Fixes issues where CFileMan::Move could cause data loss and where CFileMan::Move behaviour was not 
  3966 		consistent with documentation. See defects linked to by INC066181 (propogated from) for more info.
  3967 
  3968 Version 2.00.1105
  3969 ============================
  3970 (Made by RobertJ, 13/10/2005)
  3971 
  3972 1.	AndrewHi
  3973 	1.	DEF070637: CCompMountCB::IsFileInRom implemented inconsistently with CCompMountCB::EntryL
  3974 		Modified method CCompMountCB::IsFileInRom to return immediately if IsFileInRom returns a NULL value
  3975 		for the primary file system, rather than then invoking the function of the same name for the secondary
  3976 		file system as a check.
  3977 		
  3978 2.	MiguelB
  3979 	1.	DEF068763 - Hotswap, FileManager: Phone freezes with "Put the disk back or data will be lost 
  3980 		In order to avoid potential deadlock conditions (such as when SysApp responds to a media change 
  3981 		while the 'Put disk back' dialog is active etc...) the file server has been modified to:
  3982 		(a) - Defer issuing media change notifiers while the dialog is active (this prevents clients 
  3983 		from responding to the media change and issuing excessive requests to a blocked drive).
  3984 		(b) - Reject any requests immediately with KErrNotReady while the notifier is active.
  3985 	2.	DEF070935 - B_FAT test fails on 2 GB SD cards 
  3986 		Test failed because of heap overflow and taking too long.
  3987 
  3988 3.	JonathanM
  3989 	1.	MINOR_CHANGE: Fixed race-condition in unit test T_HANDSHARE. (Added Sync() command to test server.)
  3990 
  3991 Version 2.00.1104
  3992 ============================
  3993 (Made by JenniferH, 11/10/2005)
  3994 
  3995 1.	YingS
  3996 	1.	DEFECT FIX: DEF067961 - USB CF - Mass Storage Class interface (Reported by USB CF)
  3997 		Change code of handling GetMaxLun and Reset commands to be compliant with specification.
  3998 		Change code of checking invalid CBW and handling this event to be compliant with specification.
  3999 		Change code of processing standard cases 11 & 13 to be compliant with specification.
  4000 		Change code of processing scsi commands (Inquiry & RequestSense) to be compliant with specification.
  4001 		Modify USB test Ldd code in \e32utils and mass storage tests in \f32test to reflect changes in USB mass storage.
  4002 
  4003 
  4004 Version 2.00.1103
  4005 ============================
  4006 (Made by GavinT, 05/10/2005)
  4007 		
  4008 1.	MiguelB
  4009 	1.	DEFECT FIX: DEF065773: Use macros defined in RemovableFeatures.iby to exclude MMC & USB from ROM 
  4010 		Defect re-opened to exclude USB mass storage file system (msfs.fsy) from ROMs 
  4011 		if SYMBIAN_EXCLUDE_USB defined.
  4012 	2.	DEFECT FIX: DEF068047: Ejecting SD Card while deleting files causes crash 
  4013 		Removed all calls to TDrive::Dismount() from the TDriver class to remove a circular
  4014 		dependency : CFatMountCB calls TDriver which calls TDrive which can delete CFatMountCB.
  4015 	3.	DEFECT FIX: DEF068235: Formatting SD card with MBR can result in a bad format. 
  4016 		Formatting an MMC card may result in an MBR (Master Boot Record) being written
  4017 		which is different from the one originally on the card. This means that the
  4018 		partition may change size or position. We now force a remount of the drive before
  4019 		writing the boot sector.
  4020 
  4021 
  4022 Version 2.00.1102
  4023 ============================
  4024 (Made by AnatolyP, 26/09/2005)
  4025 		
  4026 1.	MiguelB
  4027 	1.	DEFECT FIX: DEF068833 : Fat32 uses both Hi and Low 16 bit sections of a dir entry on fat16 volumes 
  4028 		Created a StartCluster() function in the CFatMount Class that takes a dir entry, 
  4029 		this then detects if the volume is fat32 or not and masks out the top 16bits of 
  4030 		the start cluster number.
  4031 	
  4032 
  4033 2.	YingS
  4034 	1.	MINOR CHANGE: Correctify RFS::SetSubst() in-source document, modifying capability description:
  4035 		  @capability DiskAdmin
  4036 		  @capability Dependent If aPath is /Sys then Tcb capability is required.
  4037 		  @capability Dependent If aPath begins with /Private and does not match this process' SID then AllFiles capability is required.
  4038 
  4039 3.	DmitryL
  4040 	1.	Fix for INC067968: RFs.MkDir() returns KErrAlreadyExists.
  4041 		File server now checks the client's descriptor length on MkDir operation. t_fnames test extended to test this particular case.
  4042 		Fixed several Armv5 warnings in file server.
  4043 
  4044 
  4045 Version 2.00.1101
  4046 ===========================
  4047 (Made by RichardCo, 21/09/2005)
  4048 
  4049 1.  DmitryL
  4050     1.  DEFECT FIX: DEF068026 FAT drives not scanned when file system is mounted even if they were not finalised.
  4051         DEFECT FIX: DEF068024  FAT32 drives are not scanned even if they were finalised.
  4052 
  4053         Introduced support for FAT16 and FAT32 "volume clean shutdown" flag, ScanDrive now will scan dirty volumes on mount.
  4054         FinaliseDrives() now works correctly, finaly putting them into ReadOnly mode and setting "volume clean shutdown" flag if it is possible.
  4055         This feature is now turned OFF, because turning it ON is a behaviour break, see BR.1649
  4056 
  4057     2.  MINOR_CHANGE: Introduced new f32.mmh file, which is now included into all *.mmp files for F32 component.
  4058         Macro SCANNING_UNFINALISED_FAT_DRIVES_ENABLED in this file controls drives finalisation and ScanDrive running on startup.
  4059 
  4060     3.  MINOR_CHANGE: Fixed unsafe code in tests: t_dcallfiles, t_dcnone, t_dctcb, t_dctcballfiles
  4061 
  4062 2.	MaximK
  4063 	1.	DEFECT FIX: DEF067980: TFileText corrupts the stack if it has to swap bytes.
  4064 		Modified parameters in the call to SwapWords() from TFileText::FillBuffer().
  4065 
  4066 
  4067 Version 2.00.1100
  4068 ===========================
  4069 (Made by AndreasP, 14/09/2005)
  4070 
  4071 1.	GavinT
  4072 	1.	DEFECT FIX: DEF068060: Memory card's password store is located in old insecure location
  4073 		Changed KMediaPWrd to place the password file in C:\sys\data.
  4074 		Test harness T_PWSTR modified accordingly to verify that the mmcstore file does indeed
  4075 		get written to this new location.
  4076 
  4077 2.	YingS
  4078 	1.	DEFECT FIX: DEF068040 - USBCommandVerifier's [Stress] Enumeration test fails on mass storage mode
  4079 		Have to response MSC reset command after reset behaviour. Send back zero-length status packet to
  4080 		confirm reset completion. Correct code of checking MSC packet format which not compliant with
  4081 		standard.
  4082 	2.	DEFECT FIX: DEF063789 - Make T_FATEXT more generic
  4083 	3.	DEFECT FIX: DEF068054 - Usb mass storage: criticle section enter and leave don't match
  4084 		Add 'iCritSec.Wait();' in CMassStorageDrive::SetMountConnected() in drivemanager.inl 
  4085 	4.	MINOR CHANGE: Fix T_FATCORRUPT test failure in emulator
  4086 
  4087 3.	DmitryL
  4088 	1.	DEFECT FIX: DEF067965: [PSAudit] Unallocated data initialization vulnerability in RFile.
  4089 		RamDrive memory gets zero-filled on shinking and expanding cluster chain.  CRamFatTable::AllocateSingleClusterL(),
  4090 		CRamFatTable::ExtendClusterListL() and  CRamFatTable::FreeClusterListL() now clean memory by zero-filling it.
  4091 		Also ERamDrive type of memory chunk gets cleaned on memory commit for multiple and moving memory models.
  4092 
  4093 
  4094 Version 2.00.1023
  4095 ===========================
  4096 (Made by YingS, 05/09/2005)
  4097 
  4098 1.	MaximK
  4099 	1.	DEFECT FIX: DEF061458: LFFS allows file entries to be accessed as directory entries.
  4100 		Added a number of extra checks, also created a test case.
  4101 
  4102 
  4103 Version 2.00.1022
  4104 ===========================
  4105 (Made by MichaelMo, 31/08/2005)
  4106 
  4107 1.	AndreasP
  4108 	1.	DEFECT FIX: DEF066454 T_RESIZE test does not run on H2/H4 boards.
  4109 		T_RESIZE was made platform independant and automated (uses t_main.cpp).
  4110 
  4111 2.	RichardCo
  4112 	1.	MILESTONE: Intulo GT262, MS3.3.1 PREQ1032 VFP detection support for Software Install use
  4113 		Provide HAL attribute indicating whether VFP is supported by the current platform, and
  4114 		extend RLibrary::GetInfoFromHeader to return VFP-ness of a binary.
  4115 
  4116 3.	MiguelB
  4117 	1.	DEFECT FIX: DEF067360: Running ScanDrive on a Full64MB SD Card causes crash
  4118  		An array created in CScanDrive::ConstructL() was out by one due to a
  4119  		rounding error.
  4120 
  4121 
  4122 Version 2.00.1021
  4123 ===========================
  4124 (Made by MichaelP, 17/08/2005)
  4125 
  4126 1.	DmitryL
  4127 	1.	DEFECT FIX: DEF065286 Can not build scandrive debug binaries.
  4128 		CScanDrive::ReadFatL() method has been made constant, this has fixed the problem.
  4129 
  4130 	2.	DEFECT FIX: INC062399: NTT - Long directory name crashs a program in the RDir::Open() operation.
  4131 		Fixed the elocal.fsy to correctly handle the situation with zero-terminating filenames of 256
  4132         	symbol length.
  4133     		Added a test step to the T_FNames to check this particular case.
  4134 
  4135 2.	MiguelB
  4136 	1.	DEFECT FIX: DEF066252: Mounting a file system extension over a failed media driver causes a fault
  4137 		If a media driver fails to load, any attempt to mount a file system extension triggers an ASSERT.
  4138 		Fixed by checking the media driver before mounting the extension.
  4139 
  4140 3.	MaximK
  4141 	1.	CHANGE REQUEST: AHIN-6D4M3C - SSR Nand driver: deprecation in Mike (9.1)
  4142 		Parts of SSR Nand driver marked as deprecated.
  4143 
  4144 4.	RichardCo
  4145 	1.	DEFECT FIX: DEF066544: First file in ROFS is always corrupt
  4146 		ROFS images with few files in can return invalid data for files whose contents start in the first
  4147 		1024 bytes of the image. Fixed the ROFS block cache to not mistakenly return uninitialised cache
  4148 		entries when data is requested.
  4149 	2.	DEFECT FIX: DEF066626: ESTART executable not configurable on emulator
  4150 		Add a new optional epoc.ini setting, "EStart", to choose which executable
  4151 		the fileserver will launch (defaulting to the current e32strt.exe).
  4152 
  4153 5.	YingS
  4154 	1.	DEFECT FIX: DEF065961 - ESTART panic catgories are too long
  4155 	2.	DEFECT FIX: DEF066216 - Formatting from the command line with the /S option causes a panic
  4156 
  4157 
  4158 Version 2.00.1020
  4159 ===========================
  4160 (Made by MaximK 05/08/2005)
  4161 
  4162 1.	MiguelB	
  4163 	1.	DEFECT FIX: DEF060393 - RFs::MountFileSystemAndScan() passes garbage IPC arg to DoMountFsInitialise() 
  4164 		RFs::MountFileSystemAndScan() now defaults to mount the drive as concurrent (asynchronous).
  4165 		RFs::SwapFileSystem() now gets the concurrent status from the old mount and copies it to the new.
  4166 
  4167 2.	CarlosF
  4168 	1.	DEFECT FIX: DEF063795: T_SCN32DR1 and T_FATCORRUPT fail on NAND/SSR FAT drives
  4169 		RFs::MountFileSystemAndScan now has the option of also mounting an extension.
  4170 
  4171 3.	YingS
  4172 	1)	DEFECT FIX: DEF063771 - RFs::CheckDisk incorrectly reports disks with clusters marked bad as corrupt
  4173 		Modify code of CFatMountCB::CheckUnvisitedClustersL() to exclude bad cluster marker value from
  4174 		EFatChkDskBadCluster report.
  4175 	2)	DEFECT FIX: INC065877 - TFindFile could be more stack efficient?
  4176 		Two TFileName objects in TFindFile::DoFindNextInDriveList() are replaced
  4177 		with TPtrC objects thus save near 1k bytes stack space.
  4178 	3)	DEFECT FIX: Fix according to DEF047896 - Replace non-Ascii characters with hex equivalents
  4179 	4)	DEFECT FIX: INC065890 - CFileMan uses too much stack
  4180 		Reengineer code, replace TFileName object with TPtrC.
  4181 	5)	DEFECT FIX: DEF066406 - f32 test t_scn32dr1 fails when built on machines with japanese windows.
  4182 
  4183 4.	StefanW
  4184 	1)	MINOR_CHANGE: Update T_PWSTR to obtain the CID from the TBusLocalDriveCapsV5 serial number
  4185 		Running this test is somewhat difficult, as the CID of each card being tested must be obtained
  4186 		and the test rebuilt. CR-APOS-65YC4H introduced serial numbers into local drive caps, 
  4187 		which the test now uses to obtain the CID. Also added simple attempt to locate the first MMC drive.
  4188 
  4189 5.	RichardCo
  4190 	1)	DEFECT FIX: DEF062293: RFs::Entry and RFile::Open return wrong error code on NAND
  4191 		Make composite FS return the correct error code in all cases when
  4192 		file/path is not found.
  4193 
  4194 Version 2.00.1019
  4195 ===========================
  4196 (Made by JohnS, 21/07/2005)
  4197 
  4198 1.	StefanW
  4199 	1)	DEFECT FIX: DEF064100 - RRawDisk capability documentation error
  4200 		RRawDisk::Open, RRawDisk::Read and RRawDisk::Write were incorrectly documented as requiring
  4201 		DiskAdmin capabilities, where in fact TCB is required.
  4202 
  4203 	2)	DEFECT FIX: DEF057519 - RFs::ForceRemount does not return an error code
  4204 		Modified TBusLocalDrive::ForceRemount to return any error returned by the corresponding
  4205 		call to RLocalDrive::ForceRemount. Additionally, a call to ::CheckMount is made to determine 
  4206 		if a the forced remount was successful.
  4207 
  4208 	3)	DEFECT FIX: INC063197 - EKA2: MMC & SD: Errors in lock unlock functionality.
  4209 		 - Modified TBusLocalDrive functionality to ensure that the mount status is retained correctly.
  4210 		 - Modified MMC media driver to allow a locked partition to be mounted.
  4211 		 - Updated T_PWSTR tests to include all test cases supported by the EKA1 version.
  4212 		 - Fixed problem in emulator which prevented the emulated MMC card from being removed.
  4213 		   (F5+F4 key combination now cycles between Card1, Card2 and No Card as it does in EKA1)
  4214 
  4215 	4)	DEFECT FIX: INC063392 - File sharing in the file server is critically deficient.
  4216 		The existing file share modes (EFileShareExclusive, EFileShareReadersOnly and EFileShareAny)
  4217 		do not provide enough flexibility for clients that simply read from a file and do not care if 
  4218 		the file has been (or will be) opened for writing.  Currently, if a client fails to open	
  4219 		with the EFileShareAny share mode, then they must subsequently attempt to open a second time with 
  4220 		EFileShareReadersOnly to gain access.  Failure to do so	(particularly since the introduction of file 
  4221 		handle sharing) may lead to problems that are not uncovered until late in the testing cycle.
  4222 
  4223 		To resolve this issue, a new file share mode has been added: EFileShareReadersOrWriters.  This
  4224 		share mode is compatible with both EFileShareReadersOnly and EFileShareExclusive.  A client
  4225 		opening a file in this share mode can make no assumptions as to 'real' share mode of the file
  4226 		as a second client may subsequently open in either compatible mode - after which point the
  4227 		share mode of the file is effectively promoted to the new mode.
  4228 
  4229 	5)	DEFECT FIX: INC064062 - F32 heap is occupies too much ram.
  4230 		Recent changes to the file server request allocator caused all request types to hold a source and
  4231 		destination path - this includes the default disconnect request which forms part of each session.
  4232 		Reworking the layout of the internal request classes reduces the default size of a session by 1K.
  4233 		Additionally, saved an additional 176 bytes by replacing the infrequently used 'reserved access'
  4234 		arrays (CSessionFs::iReserved, CSessionFs::iReservedAccess) with a simple RArray.
  4235 
  4236 	6)	CHANGE REQUEST: APOS-6CKBXL - Differentiation between reaching EOF or overrunning writer needed for progressive download use case. 
  4237 		The current implementation of the asynchronous RFile::Read API's would complete immediately even
  4238 		if all the requested data is not available. The progressive download use case requires a new mode
  4239 		of operation where the request is not completed until a writer process has written enough data to
  4240 		the file to complete the request. 
  4241 
  4242 		This new functionality is enabled by opening the file using the EFileReadAsyncAll access mode.
  4243 		(Without specifying this mode, the original behaviour of the API is maintained)
  4244 
  4245 		This new file mode is incompatible with the EFileShareExclusive and EFileShareReadersOnly share
  4246 		modes, as a file opened in either of these two share modes prevents a writing process from writing 
  4247 		to the file and completing the request.  Hence, any client expecting to perform an asynchronous read 
  4248 		using the new access mode must open the file with EFileShareAny or EFileShareReadersOrWriters.
  4249 
  4250 		Two additional RFile API's have been added to allow the outstanding asynchronous request to be cancelled:
  4251 			void RFile::ReadCancel(TRequestStatus& aStatus) const;	(cancels the specified async read)
  4252 			void RFile::ReadCancel() const;				(cancels all outstanding async reads)
  4253 
  4254 	7)	DEFECT FIX: DEF065220 - File Server Panics when MMC Card removed during scandrive boot.
  4255 		Removing an MMC card while scandrive is running causes a double deletion FAT mount objects.
  4256 		Corrected by modifying CFatMountCB::ScanDrive() to increment the FAT mount resource count while
  4257 		scandrive is active to ensure that the media change handler doesn't destroy the mount.
  4258 
  4259 	8)	DEFECT FIX: DEF065367 - B_OPEN crashes Lubbock.
  4260 		Reworked CFileCB::InitL to ensure that a failure to allocate memory for the folded file name
  4261 		or body class doesn't result in the mount being closed prematurely.
  4262 		
  4263 2.	MiguelB
  4264 	1.	DEFECT FIX: DEF063081 - Add documentation on  RFile ::AdoptFromClient & other similar api's.
  4265 		Updated in source documentation and "Base_How_To_Share_File_Handles.doc" to emphasize the need 
  4266 		to call RFs::ShareProtected() before transferring a file handle. 
  4267 
  4268 Version 2.00.1018
  4269 ===========================
  4270 (Made by JonathanM, 13/07/2005)
  4271 
  4272 1.	JonathanM
  4273 	1.	DEFECT FIX: DEF063060 - Mass Storage P&S uses insecure depreciated API's
  4274 		INTERFACE CHANGE: BR1569.1 Change P&S Category to be the SID of the file server process.
  4275 		This changes the value of KUsbMsDriveState_Category to be equal to the File Servers Secure ID.
  4276 		This is the property category used by USB Mass Storage to publish state changes.
  4277 
  4278 Version 2.00.1017
  4279 =================
  4280 (Made by OlegI, 11/07/2005)
  4281 
  4282 1.	RichardCo
  4283 	1.	DEFECT FIX: DEF063872: RProcess::Create does not support being passed "z:MyProg.exe"
  4284 		Fix emulator's path parsing to be able to deal with the case where no
  4285 		path is given, only the drive letter and filename. It will now load
  4286 		the executable from \sys\bin on that drive.
  4287 
  4288 
  4289 Version 2.00.1016
  4290 =================
  4291 (Made by DjordjeK 05/07/2005)
  4292 
  4293 1.	MaximK
  4294 	1)	DEFECT FIX: DEF057864 - T_NandDrv acceptance test assumes that the nand user area is drive 6.
  4295 		Added a function to search for the drive.
  4296 	2)	DEFECT FIX: DEF062867 - T_NandDrv acceptance test fails due to incorrect DriveCaps.iMediaAtt.
  4297 		Test condition corrected.
  4298 	3)	DEF054953 - Locking when using RAM drive
  4299 		All locks removed.
  4300 
  4301 2.	AnatolyP
  4302 	1)	DEFECT FIX: DEF063887: Chkdeps command of EShell application doesn't work with compressed files.
  4303 		Decompression possibilities are added to the EShell application by including 
  4304 		f32\sfile\sf_inflate.cpp and f32\sfile\sf_decomp.cpp files into project. Function 
  4305 		GetImportDataL was modified to consider possible file compression. Also this function 
  4306 		was splitted into 2 parts to facilitate code understanding. To parse file name of dependencies, 
  4307 		I've included TFileName class from efile project into Eshell project (by copy&paste). 
  4308 
  4309 3.	MichaelMo
  4310 	1)	DEFECT FIX: DEF060782 - USB Mass Storage is not immediately recognised by Win2K
  4311 		Fix is to ensure that media is set to changed when mass storage filesystem is mounted.
  4312 	
  4313 	2)	DEFECT FIX: DEF061453 - MAC OS doesn't recognize Symbian USB Mass Storage device
  4314 		Windows and OS X differ in their interpretation of the 'Prevent Media Removal' command, specifically 
  4315 		OS X interprets acceptance of this command as meaning a device is not removable and therefore stops 
  4316 		polling for it. The fix is therefore to remove support for this command, which forces OS X to treat 
  4317 		the media as removable and has no adverse affect under windows. A commented out #define is provided 
  4318 		in scsiprot.cpp should this need to be re-enabled for any reason.
  4319 	
  4320 	3)	MINOR CHANGE: Enable ControlIO support in CMassStorageMountCB (debug builds only)
  4321 	
  4322 	4)	MINOR CHANGE: Add commented out #define for enabling mass storage debugging in massstoragedebug.h
  4323 	
  4324 	5)	MINOR CHANGE: Changes to F32 Mass Storage Tests to reflect changes in behaviour caused by fixes for the following defects:
  4325 			DEF060782 - USB Mass Storage is not immediately recognised by Win2K.
  4326 			DEF061453 - MAC OS doesn't recognize Symbian USB Mass Storage device.
  4327 
  4328 
  4329 Version 2.00.1015
  4330 =================
  4331 (Made by RobertJ 27/06/2005)
  4332 
  4333 1,	YingS
  4334 	1)	DEFECT FIX: BR1559.1 DEF059968: Potential exploit using RFs::Subst()
  4335 		Added DiskAdmin capability requirement when calling RFs::SetSubst()
  4336 
  4337 2.	RichardCo
  4338 	1)	DEFECT FIX: DEF063639: No def file exported from basedomain
  4339 		Export domainpolicyu.def so that it can be used by implementors of
  4340 		domain policies to ensure the correct DLL ordinals.
  4341 
  4342 
  4343 Version 2.00.1014
  4344 =================
  4345 (Made by AndrewHi 23/06/2005)
  4346 
  4347 1.	Jeremys
  4348 	1)	DEFECT FIX: DEF061544: T_scndr1 appears to fail on 9.1
  4349 		Fix test code so it copes with the memory for the fat buffer not being aligned on a 32-bit
  4350 		boundary.
  4351 
  4352 2.	YingS
  4353 	1)	DEFECT FIX: DEF062026: GetStartupMode() needs access to the file server
  4354 		Add another function GetStartupModeFromFile(). Estart calls this function after FS initialisation
  4355 		when access FS to get startup mode is needed. Default base version returns KErrNotSupported.
  4356 		Licensees should derive this function to provide their own method of getting startup mode from
  4357 		FS and make it return KErrNone when succeed. New startup mode value will update the property.
  4358 
  4359 	2)	DEFECT FIX: DEF062411  SS Lowering the priority of the loader thread == a large performance improvement
  4360 		  Added new API RFs::SetStartupConfiguration(TInt aCommand,TAny* aParam1,TAny* aParam2=0). This function
  4361 		  can be called from estart only. To change loader priority, licensee should put similar code in their
  4362 		  estart as below:
  4363 
  4364 		    r = rfs.SetStartupConfiguration(ELoaderPriority, (TAny*)EPriorityAbsoluteBackground);
  4365 		    if (r != KErrNone)
  4366 		        User::Panic(_L("SetStartupConfiguration error"), r);
  4367 
  4368 		  NOTE ALSO: Licensee should add following two lines in their estart.mmp file to build:
  4369 		    LIBRARY EFSRV.LIB
  4370 		    UID    0 0x10272C04
  4371 
  4372 	3)	DEFECT FIX: DEF063539 - Eshell panics if keypad is stuck
  4373 		Correctify command length check.
  4374 
  4375 3.	AnatolyP
  4376 	1) 	DEFECT FIX: DEF063557: Xrepro and debug commands of EShell application refer to absent executables
  4377 		This defect is a part of DEF049934: Some text shell built in functions broken.
  4378 		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.
  4379 		Debug command of EShell runs gdbstub for on-target debugging, and this is not present by default. 
  4380 		Now superfluous commands deleted from EShell. 
  4381 	
  4382 	2)	DEFECT FIX: DEF063558: Filenames of <3 characters are considered as invalid by EShell application	
  4383 		This defect is a part of DEF049934: Some text shell built in functions broken.
  4384 		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. 
  4385 		Now superfluous filename limitation removed
  4386 
  4387 4.	Dennis
  4388 	1)	Minor change:	Rename TLoaderHeapFunction to TLoaderDebugFunction and remove redundant entries.
  4389 						Move EFsCancelLazyDllUnloading to TLoaderDebugFunction and rename it to ELoaderDebug_CancelLazyUnload.
  4390 
  4391 
  4392 Version 2.00.1013
  4393 =================
  4394 (Made by JenniferH 14/06/2005)
  4395 
  4396 1.	StefanW
  4397 	1)	DEFECT FIX: DEF062095 - File server perfomance of syncronous drives improved by avoiding lock.
  4398 		Modified CFsMessageRequest::Dispatch() to prevent locking if the drive is synchronous.  Locking
  4399 		was unnecessary, as the synch drive flag is never modified within a drive thread.
  4400 
  4401 	2)	DEFECT FIX: INC061006  NTT Applications are not closed when MMC card is hotswapped.
  4402 		The peripheral bus controller returned the incorrect error code when the media is not present.
  4403 		This has been corrected to return EMediaNotPresent.  Additionally, the state machine has been 
  4404 		optimised to prevent the card from being continuously powered up if no card is present - this 
  4405 		should reduce boot time on systems that provide no card detect mechanism.
  4406 
  4407 	3)	MINOR CHANGE: Added MMC media change test T_MEDCH.EXE and associated driver D_MEDCH.LDD
  4408 
  4409 	4)	DEFECT FIX: DEF062805 - Malicious client can fault f32.  Passing an invalid mode argument
  4410 		to the RFs::NotifyDismount could fault the file server - Now returns KErrArgument.
  4411 
  4412 	5)	DEFECT FIX: DEF062987 - USB Mass Storage does not fully support the SCSI VERIFY(10) command.
  4413 		The VERIFY(10) packet contains a BYTCHK bit that specifies wether the verify operation should
  4414 		only read from the media (BYTCHK==0) or compare with the data supplied by the host (BYTCHK==1).
  4415 		Mass Storage ignores the BYTCHK==0 case, which prevents disk utility tools such as ScanDisk 
  4416 		from being able to identify and mark bad blocks on the media. This is now supported correctly.
  4417 
  4418 2.	RichardCo
  4419 	1)	DEFECT FIX: DEF057037: No way to protect against bad session handles being passed
  4420 		RFile::AdoptXxx methods use the new secure version of RSessionBase::Open to ensure that the
  4421 		session they are adopting is really a file server session.
  4422 
  4423 3.	Jeremys
  4424 	1)	DEFECT FIX: DEF061544: T_scndr1 appears to fail on 9.1
  4425 
  4426 		Fix test code so it copes with the memory for the fat buffer not being aligned on a 32-bit
  4427 		boundary.
  4428 
  4429 Version 2.00.1012
  4430 =================
  4431 (Made by Carlosf 06/06/2005)
  4432 
  4433 1.	MaximK
  4434 	1)	DEFECT FIX: DEF059964 - file server ChangeMode() should be policed server-side.
  4435 		Server-side code modified (sf_file.cpp: TFsFileChangeMode::DoRequestL()) and 
  4436 		a test case added (t_file.cpp: testMiscellaneousReportedBugs()).
  4437 
  4438 2.	YingS
  4439 	1)	DEFECT FIX: DEF062545 - Potential risk of corrupt file system in T_FATCORRUPT
  4440 
  4441 
  4442 Version 2.00.1011
  4443 =================
  4444 (Made by MichaelMo 01/06/2005)
  4445 
  4446 1.	YingS
  4447 	1)	CHANGE REQUEST: JHAS-68YPX7 System, GT0223 Mike Base, Implement PREQ1163 "Limited support for hard disks as secondary storage" in Mike.
  4448 		Interface Change: BR1543.1 - Peripherals: Add GetLastErrorInfo API to CProxyDrive
  4449 
  4450 		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).
  4451 
  4452 		
  4453 Version 2.00.1010
  4454 =================
  4455 (Made by RichardCo 26/05/2005)
  4456 
  4457 1.	JonatanM
  4458 	1)	MINOR_CHANGE: Modified T_FALSESPACE test so that it doesn't run on drive K: if 'TESTFAST' mode
  4459 		is set. (This is to speed up automated testing.)
  4460 2.	StefanW
  4461 	1)	DEFECT FIX: DEF061457 - LFFS - LffsDir::readEntry can access deleted directory entries causing panic. 
  4462 		Deleting the current directory would result in a panic due to LFFS accessing an inode now marked as
  4463 		unused.  TLffsDir::ReadEntry corrected to catch this case and search for the next valid entry.
  4464 
  4465 	2)	DEFECT FIX: DEF059352 - Mass Storage P&S does not operate as stated in the design doc when ejecting MMC
  4466 		Unrelated to card ejection, when stopping the Mass Storage device from the host the controller would
  4467 		immediately enter the Disconnected state without passing the Disconnecting state.
  4468 
  4469 	3)	DEFECT FIX: DEF060781 - USB Mass Storage - Synchronous notification in the file server
  4470 		It is not possible to mount the Mass Storage FSY while applications/servers have files open on the
  4471 		drive.  In order to facilitate a safe and clean dismount of the file system, a notification mechanism
  4472 		is required to inform clients that the file system is about to be dismounted.  This is acheived using 
  4473 		the following new File Server API's:
  4474 
  4475 		IMPORT_C void NotifyDismount(TInt aDrive, TRequestStatus& aStat, TNotifyDismountMode aMode) const;
  4476 		IMPORT_C void NotifyDismountCancel(TRequestStatus& aStat) const;
  4477 		IMPORT_C void NotifyDismountCancel() const;
  4478 		IMPORT_C TInt AllowDismount(TInt aDrive) const;
  4479 
  4480 	4)	DEFECT FIX: DEF061078 - Inefficiency in LFFS file system.
  4481 		The LFFS logical to physical sector lookup was very inefficient, involving a search through the
  4482 		segment list.  This has been optimised by modifying the lookup table to contain segment pointers.
  4483 
  4484 	5)	DEFECT FIX: DEF061757 - Missing in-source comment for two new constants in F32.
  4485 		Added in source documentation for KPluginAutoAttach and KPluginAutoLocate.
  4486 
  4487 	6)	DEFECT FIX: DEF061243 - Closing RRawDisk session doesn't remount filesystem.
  4488 		Modified RRawDisk to ensure that the mount is remounted if the contents of the drive has changed.
  4489 
  4490 3.	YingS
  4491 	1)	DEFECT FIX: DEF061834 - RFile Seek performance Improvement
  4492 		In ESeekStart case, directly return after pos set instead of copying pos back to parameter which is only
  4493 		waste time.
  4494 
  4495 	2)	DEFECT FIX: DEF059965: Loader & FS policing of add FS / add extension ineffective
  4496 		  Add DiskAdmin permission check in ELoadFileSystem and ELoadExtension cases of file loader ServiceL() function.
  4497 		  Add SID=f32 check in TFsAddExtension & TFsAddFileSystem, remove old check in TFsAddFileSystem.
  4498 		  Add DiskAdmin permission check in TFsRemoveExtension & TFsDismountExtension. 
  4499 
  4500 4.	RobertJ
  4501 	1)	PREQ563 MS3.4.2 Lazy dll unloading
  4502 
  4503 5.	AnatolyP
  4504 	1)	DEF061344: In text shell pagination for help screens/ dir etc. is broken(part of DEF049934)
  4505 		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:
  4506 		   - Help
  4507 		   - Dir
  4508 		   - Attrib
  4509 		   - Hexdump
  4510 		   - Tree	
  4511 		   - Type	
  4512 		   - Ps ( with all subcommands ) 
  4513  		Dir function is also modified to support proper alignment of text into columns when called with /w switch.
  4514 
  4515 
  4516 Version 2.00.1009
  4517 =================
  4518 (Made by StefanW 17/05/2005)
  4519 
  4520 1.	AnatolyP
  4521 	1)	Defect Fix: DEF061239: Help for the Trace command of text shell is not complete (part of DEF049934).
  4522 	
  4523 2.	MiguelB
  4524 	1)	Defect Fix: DEF058337 - Rugged file system not rugged enough when growing FAT directories
  4525 
  4526 3.	MichaelMo
  4527 	1)	Defect Fix: DEF057360: Add new EKA2 emulator property to disable the System Starter
  4528 
  4529 Version 2.00.1008
  4530 =================
  4531 (Made by Kamran 12/05/2005)
  4532 
  4533 1.	Kamran
  4534 	1)	MILESTONE: Yankee,GT0223,MS3.4.1 PREQ473 Generic fileserver hooks
  4535 		Note: this included addition of t_virus test to f32tests	
  4536 
  4537 Version 2.00.1007
  4538 =================
  4539 (Made by MiguelB, 03/05/2005)
  4540 
  4541 1.	JoR
  4542 	1)	Defect Fix: DEF058458: LFFS: defects building logical->physical mapping on mounting
  4543 2.	JohnS
  4544 	1)	Milestone: GT0236, MS3.7 - Engineering Change Macro Removal
  4545 
  4546 
  4547 Version 2.00.1006
  4548 =================
  4549 (Made by JonathanM, 26/04/2005)
  4550 
  4551 1.	JonathanM
  4552 	1)	MINOR CHANGE: Removed obsolete F32TESTs (those checking DLL linkage in different directories)
  4553 		
  4554 Version 2.00.1005
  4555 =================
  4556 (Made by JasmineS, 19/04/2005)
  4557 
  4558 1.	RichardCo
  4559 	1) Defect Fix: DEF059487 - EStart doesn't restore the timezone settings correctly after a system restart
  4560 
  4561 2.	PeterS
  4562 	1) Defect Fix: DEF059050 - F32 client and FSY APIs are not future proofed.
  4563 
  4564 	Added reserved member data to the following 'publishedAll' classes: TEntry, TDriveInfo, TVolumeInfo, TFindFile.
  4565 	
  4566 	Added the new virtual function GetInterface() which returns an interface extension to the following
  4567 	'publishedPartner' classes: CMountCB, CFileCB, CDirCB, CFormatCB, CFileSystem, CProxyDrive, CBaseExtProxyDrive.
  4568 	Added a new machine word of reserved member data to the following 'publishedPartner' classes: CFileCB, CDirCB,
  4569 	CFormatCB, CFileSystem, CProxyDrive.
  4570 	Added a new leaving function in the creation path of CMountCB - CMountCB::InitL().
  4571 	Added a destructor to CProxyDrive.
  4572 	
  4573 	2) INTERFACE CHANGE: BR1375 "Changes to make FSY API more future proof". (as part of fix for DEF059050).
  4574 	This will affect all FSY components - which need to be rebuilt after this change. 
  4575 	
  4576 	3) INTERFACE CHANGE: BR1468 "Changes to make F32 client APIs more future proof". (as part of fix for DEF059050).
  4577 	ALL COMPONENTS USING TEntry, TDriveInfo, TVolumeInfo OR TFindFile NEED TO BE REBUILT AFTER THIS CHANGE.
  4578 
  4579 3.	JeremyS
  4580 	1) CR PHAR-6B8GSS - Add RFile::FullName API (Development CR)
  4581 
  4582 4.	RobertJ
  4583 	1)	PREQ563 MS3.4.1 MatchF Removal
  4584 
  4585 Version 2.00.1004
  4586 ================
  4587 (Made by Jeremy Smithers, 12/04/2005)
  4588 
  4589 1.	JonathanM
  4590 	MINOR CHANGE: Added new option to RUNTESTS.
  4591 		Specifying -st will cause the time taken for each test to be shown (if the test passes).
  4592 		Example output: "RUNTESTS: Test MY_TEST.EXE OK - Seconds Taken: 234"
  4593 	MINOR CHANGE: Made RUNTESTS output a linefeed before any TIMEOUT message (to help log parsing)
  4594 
  4595 2.	MiguelB
  4596 	1)	Defect Fix: DEF058817 - File server panics if the NAND media driver fails to load.
  4597 	2)	Defect Fix: DEF058681 - Mass Storage reports VolumeName incorrectly
  4598 
  4599 3.	MichaelMo
  4600 	1)	DEFECT FIX: DEF058075 - Inefficient stack usage in FAT filesystem can result in stack overflow
  4601 
  4602 4.	StefanW
  4603 	1)	DEFECT FIX: DEF059046 - LFFS tests fail with RVCT2.2
  4604 					Code reworked to avoid an RVCT2.2 bug causing problems within LFFS Entry code.
  4605 
  4606 Version 2.00.1003
  4607 ================
  4608 (Made by Kamran, 01/04/2005)
  4609 
  4610 1.  JoR
  4611 	1)	Minor Change: Backing out changes in etshell/ts_com.cpp and wins/specific/mmc.cpp which were made for test purposes only
  4612 	2)	Minor Change: Fixing f23/smassstorage/drivemanager.cpp to check return values of RProperty::Attach correctly
  4613 
  4614 2.  MaximK
  4615 	1)	Defect Fix: DEF056007 - ~RUsbMassStorage()
  4616 	
  4617 3.  MiguelB
  4618 	1)	Defect Fix: INC055996 - Add overloads of CFileMan functions that take a source RFile parameter 
  4619 	2)	Defect Fix: DEF058234 - RFile::Adopt() should not panic if given an invalid file handle 
  4620 
  4621 Version 2.00.1002
  4622 =================
  4623 (Made by MichaelP, 22/03/2005)
  4624 
  4625 1.	YingS
  4626 	1)	Defect Fix: DEF056488 - Fat caching scheme on EKA2 is not safe
  4627 	2)	Defect Fix: INC054580 - NTT Renaming sys folder on C: on H2 allows user to access sys files
  4628 	3)	Defect Fix: DEF057668 - ESHELL.EXE panics (USER PANINC 11) when "Copy " is used without arguments
  4629 
  4630 2.	MaximK
  4631 	1)	Defect Fix: DEF055797 - Pointless drive letter checking in TDrive::LocateFile
  4632 
  4633 3.	JoR
  4634 	1)	Defect Fix: DEF057517 	FAT causes drive unmounting and remounting after running scanDrive
  4635 
  4636 
  4637 Version 2.00.1001
  4638 ================
  4639 (Made by JS, 14/03/2005)
  4640 
  4641 1.	YingS
  4642 	1)	Defect Fix: DEF056249 - GMT offset is not propery updated after loading elocl.dll
  4643 
  4644 2.	KamranN
  4645 	1)	Defect Fix: DEF056344 - Cedar Fat has issue with small write flushing
  4646 
  4647 3.	JeremyS
  4648 	1)	Defect Fix: DEF056327 - t_falsespace takes too long to run 
  4649 	2)	Defect Fix: DEF056330 - Missing RProcess::Close in Runtest 
  4650 
  4651 4.	Dennis
  4652 	1)	Defect Fix: DEF056999 - Loader performs unnecessary file system accesses
  4653 
  4654 7.	RichardCo
  4655 	1.	MILESTONE: Bravo,GT0236,MS3.2.2 PREQ234 UTC and Auto DST Support(Peripherals)
  4656 	2.	INTERFACE CHANGE: BR-1316.1 Peripherals: File system to use UTC.
  4657 
  4658 
  4659 Version 2.00.1000
  4660 ================
  4661 (Made by MichaelMo, 04/03/2005)
  4662 
  4663 1.	MichaelMo
  4664 	1)	Defect Fix: DEF055667 - CFatMountCB VolumeLabelFile methods always use cluster 0 and shouldn't on FAT32
  4665 	2)	Defect Fix: DEF055320 - Fat32 is used in MMC cards which are bigger than 32MB
  4666 	3)	MINOR CHANGE: Stop warnings on release builds for FAT and FAT32
  4667 
  4668 2.	JeremyS
  4669 	1)	Defect Fix: INC055113 - NTT Program closed error occurs when exiting from Eshell in Techview emulator
  4670 
  4671 3.	MiguelB
  4672 	1)	Defect Fix: DEF056111 - RFile::Duplicate() does not correctly increment the file session resource count 
  4673 
  4674 4.	MaximK
  4675 	1)	Defect Fix: DEF055669 - TFindFile SD error
  4676 
  4677 
  4678 Version 2.00.548
  4679 ================
  4680 (Made by DjordjeK, 21/02/2005)
  4681 
  4682 1.	JonathanM
  4683 	1)	DEFECT FIX: DEF055621 - Locale DLL not loaded on EKA2
  4684 
  4685 2.	YingS
  4686 	1)	DEFECT FIX: INC054269 - Language swapping not supported in current Hermione baselines
  4687 
  4688 3.	KamranN
  4689 	1) Minor Change: changing the cache request block size
  4690 
  4691 
  4692 Version 2.00.547
  4693 ================
  4694 (Made by CarlosF, 15/02/2005)
  4695 
  4696 1.	DjordjeK
  4697 	1)	DEFECT FIX: DEF054369 - RFs doesn't specify in documentation if time is UTC or local
  4698 
  4699 2. 	KamranN
  4700 	1)	DEFECT fix: DEF055202 - RFile::Replace gives NULL pointer and craches emulator
  4701 	2)	Minor Change: Increasing reserved memory for b_open test 
  4702 
  4703 
  4704 Version 2.00.546
  4705 ================
  4706 (Made by RichardCo, 08/02/2005)
  4707 
  4708 1)	YingS
  4709 	1)	CR: RFID-5YNJAW System, GT0177 Kernal and Peripherals, 
  4710 		Add a method to acquire the serial number of removable media
  4711 
  4712 1)	MiguelB
  4713 	1)	DEF052982 - Generic EStart fails to mount composite file system 
  4714 	2)	DEF053956 - TFatDirEntry::IsLongNameStart is logically incorrect 
  4715 	3)	DEF054111 - FAT32 bug with large discs
  4716 	
  4717 Version 2.00.545
  4718 ================
  4719 (Made by RichardCo, 01/02/2005)
  4720 
  4721 1)	YingS
  4722 	1)	Minor Change: adjust calling condition in estart::StartSystem()
  4723 
  4724 
  4725 Version 2.00.544
  4726 ================
  4727 (Made by MichaelMo, 21/01/2005)
  4728 
  4729 1)	JoR
  4730 	1)	DEFECT FIX: DEF053763  No documentation for RFs::ReserveDriveSpace and related functions 
  4731 
  4732 2)	KamranN
  4733 	1) CR PGEN-66RLDR System, GT0182 Sierra, Improve small read performance in EKA2 File System
  4734 
  4735 
  4736 Version 2.00.543
  4737 ================
  4738 (Made by JonathanM, 18/01/2005)
  4739 
  4740 1)	MiguelB
  4741 	1)	DEF052298 - 0 length files on dev boards (h2 / lubbock) for 8.1b
  4742 	2)	DEF053475 - Problem with FAT/FAT32 with large disc (20GB)
  4743 	3)	DEF053851 - Searching for hidden dir in a ROFS file system  will cause an endless loop
  4744 
  4745 2)	YingS
  4746 	1)	DEF053467 - T_TLINK failure in EKA2 when platsec switch off
  4747 
  4748 
  4749 Version 2.00.542
  4750 ================
  4751 (Made by StefanW, 10/01/2005)
  4752 
  4753 1)	RandyL
  4754 	1)	Defect Fix: DEF053262 - Test cases Notification_1 and Notification_2 aren't implemented (propagated from DEF052683)
  4755 
  4756 2)	KamranN
  4757 	1)	DEFECT FIX: DEF053244 -	Running out of battery during formatting MMC
  4758 
  4759 3)	YingS
  4760 	1)	DEFECT FIX: DEF053671 - emulator version estart haven't been modified
  4761 
  4762 
  4763 Version 2.00.541
  4764 ================
  4765 (Made by YingS, 04/01/2005)
  4766 
  4767 1)	MiguelB
  4768 	1)	DEFECT FIX: DEF052973 - File server panics booting a NandLoader ROM with WITH_EXTENSION macro defined
  4769 
  4770 2)	YingS
  4771 	1)	DEFECT FIX: DEF052345 - ESHELL "chkdeps" command is confused by the composite filesystem
  4772 	2)	DEF053431 - T_ESTART failure when platsec switch off
  4773 	3)	CR WPAR-66JF9U System Libraries, GT0219 Mike System Libraries, Define System Properties at startup
  4774 
  4775 3)	TrevorC
  4776 	1)	DEFECT FIX: DEF053260 - USB Mass Storage Filesystem states, error handling, and thread safety issues.
  4777 
  4778 4)	MichaelMo
  4779 	1)	DEFECT FIX: DEF052145 - Fat32 over writes all 32bits of a fat table entry, only 28 bits should be changed
  4780 	2)	Minor Change: Extended B_FAT32 test to ensure only 28 bits of fat table entries are changed.
  4781 
  4782 5) 	KamranN
  4783 	1)	DEFECT FIX: DEF052483  MMC formatting not compatible to Epson printers 
  4784 
  4785 
  4786 Version 2.00.540
  4787 ================
  4788 (Made by MichaelP, 16/12/2004)
  4789 
  4790 1)	MiguelB
  4791 	1)	DEF052379 - RFile::Adopt panics when handle is null
  4792 	2)	DEF051122 - Browsing V:\Attrib directory on TechView emulator causes it to hang 
  4793 
  4794 2)	RobertJ
  4795 	2)	DEF052290 - Improvement to the file server startup mechanism
  4796 
  4797 
  4798 Patch release
  4799 ================
  4800 1)	AndrewJ
  4801 	1) CR MBUN-63SMAQ Change the IPR catagory of Fat32
  4802 
  4803 
  4804 Version 2.00.539
  4805 ================
  4806 (Made by KamranN, 6/12/2004)
  4807 
  4808 1)	KamranN
  4809 	1) 	Minor changes: Adding two tests to t_fman to test long file names and paths
  4810 
  4811 2)	AndrewJ
  4812 	1)	Fixed DEF052243 Excesive parsing in the EKA2 file server. 
  4813 
  4814 3)	YingS
  4815 	1)	Fixed DEF052211 Potential memory leak in eshell
  4816 
  4817 4)	StefanW
  4818 	1)	DEF048418 - LFFS mount time too long.  LFFS Mount has been updated to (a) detect
  4819 		empty segments to eliminate scanning at boot, and (b) to make use of the read ahead cache.
  4820 	2) 	DEF052265 - LFFS corrupts itself sometimes after format.
  4821 	3) 	DEF052266 - LFFS outdated and erased log entries affecting mounting process.
  4822 	4)	DEF052280 - LFFS corruption. LFFS would mistake a segment full of zero's due to an interrupted 
  4823 					erase for an invalid segment, which could lead to data corruption.  Mount now checks
  4824 		        	for this case and performs recovery if possible, otherwise enters read only mode.
  4825 	5)	DEF052282 - Modified T_SOAK1 fails. Fixed a race condition in the LFFS filesystem that resulted 
  4826 					in the background thread deleting the Inode while accessed by foreground thread, 
  4827 					and a problem with reclaiming Null Log Entries that are part of an open transaction.
  4828 	6)	DEF052286 - Creating many files in a short period causes LFFS corruption. Fixed by checking for 
  4829 					zero length writes before writing to the media.
  4830 
  4831 5)	YingS
  4832 	1)	DEF052346 - ESHELL debugport command does not accept argument -2
  4833 
  4834 6)	AlexS
  4835 	1)	Fix for DEF051862 - Mass storage FS works very slow with Windows ME	
  4836 	2)	Fix for DEF051810 - The unit tests  t_ms_drive and  t_msfs cannot be run on EKA2
  4837 	3)	Fix for DEF052156 - Mistakes in API Classification 
  4838 
  4839 7)	TrevorC
  4840 	1)	Fix for DEF052306 - CMassStorageDrive decrements Mount Lock inappropriately.
  4841 	2)	Fix for DEF052303 - USB MS drive list is incorrect
  4842 
  4843 
  4844 Version 2.00.538
  4845 ================
  4846 (Made by JonathanM, 29/11/2004)
  4847 
  4848 1)	AndrewJ
  4849 	1) 	DEF052117  Remove defpath from 9.0 onwards, Added a new file (/f32/sfsrv/cl_insecure.cpp) 
  4850 		containing the insecure default path APIs and there stubs. 
  4851 
  4852 
  4853 Patch to Version 2.00.537
  4854 ================
  4855 (Made by KamranN, 29/11/2004)
  4856 
  4857 1)	KamranN
  4858 	1) fix for DEF051428 	PlatSec: Incorrect errors returned by f32
  4859 
  4860 
  4861 Version 2.00.537
  4862 ================
  4863 (Made by StefanW, 19/11/2004)
  4864 
  4865 1)	RobertJ
  4866 	1)	DEF051746 System file Recoverablility test support trace output incomplete.
  4867 	2)	DEF051577 - SS Formatting of Generic MMC fails and leaves MMC card corrupted
  4868 
  4869 2)	MichaelMo
  4870 	1)	DEF050272 - T_LDRCHECK.EXE (of F32Test) failing in cedar Development branch
  4871 
  4872 3)	KamranN
  4873 	1) 	Minor changes to add a test step in t_rename to test long path names
  4874 
  4875 4)	StefanW
  4876 	1)	Milestone: Sierra,GT0224,MS3.2 USB Mass Storage
  4877 		Requirements: PREQ:544 USB Mass Storage
  4878 
  4879 
  4880 Version 2.00.536
  4881 ================
  4882 (Made by DjordjeK, 16/11/2004)
  4883 
  4884 1)	KamranN
  4885 	1)	Fix for defect DEF047684  Trailing dots on SD card folder name upset windows 2000 
  4886 	
  4887 2)	MichaelMo
  4888 	1)	Fix for Defect DEF050650 - FAT filesystem accesses cache object after it is deleted
  4889 
  4890 3)	YingS
  4891 	1)	Fix for DEF051362  estart doesn't "Resume" sysstart.exe
  4892 
  4893 4)	RichardCo
  4894 	1)	Fix DEF051473 - Wrong file sources & paths in t_scn32dr3.mmp
  4895 
  4896 5)	AndrewJ
  4897 	1)	Marked default path APIs as deprecated as part of BR 1206.1
  4898 
  4899 
  4900 Patch to Version 2.00.535
  4901 =========================
  4902 (Made by RobertJ, 08/11/2004)
  4903 
  4904 1)	RobertJ	
  4905 	1)	DEF051349 - [system build] E32_EKA2 warning (GT summary) in build 03411
  4906 
  4907 
  4908 Version 2.00.535
  4909 ================
  4910 (Made by AndrewHi, 05/11/2004)
  4911 
  4912 1)	MichaelMo
  4913 	1)	Minor changes to the following f32 rofs tests to make them accept a drive letter from the 
  4914 		command line: t_rofsattrib, t_rofsdir, t_rofsfile, t_rofssoak, t_rofstime
  4915 	2)	Fixed Defect DEF049243 - ROFS Cache
  4916 	3)	Fixed DEF050910 - PlatSec: RRawDisk requires wrong capability
  4917 
  4918 2)	RichardCo
  4919 	1)	Fixed DEF048278 - F32tests B_FAT and B_FAT32 both fail when run on a lubbock's nand drive
  4920 
  4921 3)	MiguelB
  4922 	1)	DEF050516 - Read on duplicate file handle alters position of original file handle 
  4923 
  4924 4)	YingS
  4925 	1)	MILESTONE: Mike,GT0223,MS3.2.1 PREQ808 - Seperate base starter from system starter.
  4926 	2)	Test case for above milestone.
  4927 
  4928 5)	RobertJ
  4929 	1) 	MS 3.1.1 System File Corruption Recoverability (REQ 3831).
  4930 		Added \f32test\server\t_corruptlog.cpp + support data files
  4931 
  4932 Version 2.00.534
  4933 ================
  4934 (Made by CarlosF, 25/10/2004)
  4935 
  4936 1)	AndrewJ
  4937 	1)	For defect DEF050391 [platsec] many components raising allfile warning due to RFs::Entry, 
  4938 		Although there is no issue with the checks made in the file server the in-source documentation 
  4939 		was incorrect so have put this right and inserted additional platsec diagnostic output for udeb 
  4940 		builds, it now displays the Full name being accessed when a platsec diagnostic output is triggered.
  4941 
  4942 2)	YingS
  4943 	1)	DEF050164 Search in Fileserver. TDrive::LocateFile() costs much boot time.
  4944 		Change TParsePtrC to TParsePtr and move one TParsePtr construction out of the loop.
  4945 
  4946 3)	MichaelMo
  4947 	1)	Fixed Defect INC049197 - NTT f32test t_sess panics at RTest check
  4948 
  4949 4)	MiguelB
  4950 	1)	DEF050772 - CFatFileCB::FlushAllL() should re-enable notifiers before leaving 
  4951 	2).	DEF050431 - ineffecient code in f32 path name checking 
  4952 
  4953 
  4954 
  4955 Patches to version 2.00.533
  4956 
  4957 1)	JonathanM
  4958 	1.	DEFECT FIX: DEF050624 - SS PlatSec: ESTART accessing file restricted by AllFiles
  4959 
  4960 Version 2.00.533
  4961 ================
  4962 (Made by GongjunC, 18/10/2004)
  4963 
  4964 1)	AndrewJ	
  4965 	1)	BC break BR1203 where each subsession object now has it's own Close function, This is 
  4966 		part of PREQ 473
  4967 
  4968 	2)	fixed DEF050099 [PlatSec] PlatSec checks on file open should be invariant to text/binary mode 
  4969 
  4970 2)	MichaelMo
  4971 	1)	Fix for Defect DEF047398 - T_DSPACE fails on emulator
  4972 
  4973 3)	GongjunC
  4974 	1)	Fix for Defect DEF048753 - t_fsys test assumes nand drive is on EDriveI
  4975 
  4976 4)	YingS
  4977 	1)	Fix for Defect DEF050161 - Scandrive bug
  4978 
  4979 Version 2.00.532
  4980 ================
  4981 (Made by Kamran, 08/10/2004)
  4982 
  4983 1)	RobertJ
  4984 	1)	Defect Fix:DEF049245 - Mismatch in NAND driver and deflate read window size
  4985 		Increase the inflate window size
  4986 
  4987 2)	YingS
  4988 	1)	Fix for Defect DEF047896 - Replace non-Ascii characters with hex equivalents
  4989 
  4990 3)	MichaelMo
  4991 	1)	Fix for Defect INC049224 - NTT b_osfil missing RTest.End()
  4992 
  4993 Version 2.00.531
  4994 ================
  4995 (Made by YingS, 22/09/2004)
  4996 
  4997 1)	AndrewJ
  4998 	1)	fix for DEF047409  Multi-threaded File Server uses non-shared notifier this includes a 
  4999 		BC, approved as BR1180
  5000 
  5001 
  5002 Version 2.00.530
  5003 ================
  5004 (Made by JasmineS, 09/09/2004)
  5005 
  5006 1)	AndrewJ
  5007 	1)	fix for DEF047636 ROFS: RFS::IsFileInRom - documentation and usage - change in source comment for
  5008 		API RFs::IsFileInRom() to indicate that this should not be used to ascertain whether a file is on
  5009 		Z: or not. Simply whether it is ROM file sytem.
  5010 
  5011 2)	MiguelB
  5012 	1)	fix for DEF048660 - NTT - Problem inside File Server - F32 component.
  5013 		After failing to find a unique short filename four times, the code now uses a random number 
  5014 		to generate the filename which greatly increases the likelihood of the filename being unique and
  5015 		thus speeds things up.
  5016 	2)	fix for DEF045924 - T_SCN32DR1.EXE crashes on ARMV5
  5017 
  5018 3)	AndrewR
  5019 	1)	Fix for DEF048511 - EXE files could not be executed from LFFS drive (C:)
  5020 
  5021 4)	MiguelB
  5022 	1)	fix for DEF048144 - The FileServer crashes occationally when running B_OPEN.
  5023 
  5024 
  5025 Version 2.00.529
  5026 ================
  5027 (Made by MichaelP, 27/08/2004)
  5028 
  5029 1)	AndrewH
  5030 	1) 	MS 3.1.3 Platform security Hashing removable media (REQ 3573)
  5031 
  5032 2)	MiguelB
  5033 	1)	fix for DEF047438 - NTT - STABILITY: F32 has a potential memory leak in InstallRomFileSystemL() 
  5034 
  5035 
  5036 Version 2.00.528
  5037 ================
  5038 (Made by DjordjeK, 18/08/2004)
  5039 
  5040 1)	AndrewR
  5041 	1)	Fixed DEF047011 - Problem loading Exes from C: or Flash
  5042 
  5043 2)	KamranN
  5044 	1)	Fix for DEF046643  RFile::Read(TDes8&, TInt aLen,TRequestStatus&) doesn't properly 
  5045 		handle zero aLen 
  5046 
  5047 3)	MiguelB
  5048 	1)	MS3.1.7 Platform security file handle sharing
  5049 		
  5050 4)	RobertJ
  5051 	1) 	Fixed DEF047896 - Replace non-Ascii characters with hex equivalents
  5052 
  5053 Version 2.00.527
  5054 ================
  5055 (Made by KamranN, 04/08/2004)
  5056 
  5057 1)	AndrewJ
  5058 	1)	Fixed DEF047103  Checks on Private path by the file server always assume lower case 
  5059 
  5060 2)	KamranN
  5061 	1)	PREQ133: Out of disk space handling by the file server
  5062 	
  5063 3) 	PeterS
  5064 	1) 	Implemented REQ3489: Dividing ESTART into separate generic and customisable parts.
  5065 		Also implemented REQ3489.1: Extending ESTART to provide customisable support for 
  5066 		dealing	with a corrupt filesystem on system start. This obviously involved changes 
  5067 		to ESTART. It also involved a change to	RFs::SetLocalDriveMapping() to allow mappings 
  5068 		to be swapped before the mapping is committed.
  5069 	
  5070 		Base Port Impact: See \documentation\Base_How_To_Estart.doc
  5071 
  5072 Version 2.00.526
  5073 ================
  5074 (Made by JonathanM, 26/07/2004)
  5075 
  5076 1)	AndrewJ	
  5077 	1)	Fixed INC046058  Cedar file server makes priority assumption? 
  5078 
  5079 Version 2.00.525
  5080 ================
  5081 (Made by AndrewH, 06/07/2004)
  5082 
  5083 1)	AndrewJ
  5084 	1)	Fixed DEF046379 - VFat short file names are not necessarily in caps
  5085 	2)	
  5086 
  5087 2)	AndrewHi
  5088 	1)	MS3.7.2 Sierra Nevada PREQ 729 (part 2 of 2) and PREQ 537 (part 2 of 2)
  5089 		Security policy (capability) checking performed in APIs that require it.
  5090 
  5091 Version 2.00.524
  5092 ================
  5093 (Made by MichaelP, 17/06/2004)
  5094 
  5095 1)	AndrewJ
  5096 	1)	Fixed DEF045229  ELOCAL.FSY cannot be disabled in F32.IBY file 
  5097 
  5098 2)	StefanW
  5099 	1)	Implemented REQ3383: Formatting locked MMC Card - Allows an MMC card to be formatted if the user forgets 
  5100 		the password.  This is performed by using the new fileserver API "TInt RFs::ErasePassword(TInt aDrv)" to 
  5101 		issue the FORCE_ERASE command to the media via CMD42.  If successful, this should be follows by a standard
  5102 		'quick format' operation to create a fresh filesystem on the disk.
  5103 
  5104 		This change has Break Request confirmation numbers BR1056.1 and BR1056.2
  5105 
  5106 
  5107 Version 2.00.523
  5108 ================
  5109 (Made by JonathanM, 26/05/2004)
  5110 
  5111 1)	Dennis
  5112 	1)	Fixed defect DEF044780 "Data Abort in loader thread when starting c:\eshell"
  5113 
  5114 2) 	KamranN
  5115 	1)	Implemented the following CRs
  5116 		(1) RFID-5RRAWL System, GT0177 Kernal and Peripherals, Support FAT volume-label file
  5117 		(2) RFID-5PYCJR System, GT0177 Kernal and Peripherals, Use ruggedised FAT by default
  5118 		(3) RFID-5PYCGQ System, GT0177 Kernal and Peripherals, Use one FAT for non-removable rugged FAT drives
  5119 
  5120 Version 2.00.522
  5121 ================
  5122 (Made by CarlosF, 14/04/2004)
  5123 
  5124 1)	AndrewJ
  5125 	1)	Fixed defect DEF041930 "Incorrect Distribution.Policy file"
  5126 
  5127 Version 2.00.521
  5128 ================
  5129 (Made by JonathanM, 31/03/2004)
  5130 
  5131 1)	ChrisM
  5132 	1)	Fix defect DEF041645 RFs::Volume returns the wrong infomation for emulated drives
  5133 
  5134 Version 2.00.520
  5135 ===========================
  5136 (Made by JonathanM, 19/03/2004)
  5137 
  5138 1)	JonathanM
  5139 	1)	Implemented the requirements:
  5140 		REQ2632 - Configurability of the enforcement of capabilities
  5141 		REQ2633 - Security violation diagnostic
  5142 		REQ3142 - Associate Platform Security information with an executable.
  5143 		See /cedar/generic/base/documentation/Base_How_To_Configure_Platform_Security_Settings.doc
  5144 
  5145 Version 2.00.519
  5146 ===========================
  5147 (Made by JonathanM, 26/02/2004)
  5148 
  5149 1)	JonathanM
  5150 	1)	Code changes resulting from:
  5151 		Change Request JDOD-5VUJ7F - Change in executable format of EKA2 binaries.
  5152 	2)	Modified Loader to assign to all binaries those capabilities disabled during ROMBUILD.
  5153 	
  5154 Version 2.00.518
  5155 ================
  5156 (Made by AndrewJ, 13/02/2004)
  5157 
  5158 1)	StefanW
  5159     	1)  	Implemented CR INC030294:
  5160         	Make it possible to Move a directory structure across drives using CFileMan.
  5161 2)	AndrewJ
  5162 	1)	Fixed DEF023894	F32 leaks address space in the emulator by memory mapping files 
  5163 		repeatedly.
  5164  	2) 	Fixed DEF039729  TParsePtrC creates a temporary TParse object on the stack.
  5165 
  5166 3)	StephanGu
  5167 	1)	Implemented CLCT-5VEK4P - "Binary search in ROFS 
  5168 		together with 'expanding ROFS entries with UIDs'".
  5169 		Changed Rofsbuild to provide a sorted array of offsets
  5170 		in order to allow the file system to perform binary search
  5171 		through the image.  Also expended the TRofsEntry structure
  5172 		to include a copy of the file UID data.
  5173 
  5174 Version 2.00.517
  5175 ================
  5176 (Made by StefanW, 09/01/2004)
  5177 
  5178 1)	AndrewJ	
  5179     1)  Fixed DEF040165 Fat32 to move to class D
  5180 
  5181 
  5182 Version 2.00.516
  5183 ================
  5184 (Made by StefanW, 19/12/2003)
  5185 
  5186 1)	AndrewJ	
  5187 	1)	Fixed DEF039733  Bug in CFatMountCB::DoRenameOrReplaceL() 
  5188 	2) 	Fixed DEF039729  TParsePtrC creates a temporary TParse object on the stack,
  5189 		this object no longer creates a tempory.
  5190 	3)	Fixed defect DEF038169  ScanDrive deletes Japanese named file 
  5191 
  5192 2)	ChrisCr
  5193 	1)	DEF037406 - "bad relocation" error from PETRAN.  Changed loop in ESTART.CPP
  5194 		to avoid 'using' an address off the end of an array.
  5195 
  5196 3)  	StephanGu
  5197 	1)  DEF040849 - "T_FSYS fails on drive F and K". Changed error code returned
  5198 		when an attempt is made to dismount Z:
  5199 
  5200 Version 2.00.515
  5201 ================
  5202 (Made by JonathanM, 05/12/2003)
  5203 1)	ChrisCr
  5204 	1)	DEF001193 - (Propagated) Files with scandic letters in the name might
  5205 		be deleted during boot.
  5206 	2)	DEF015608 - CDirScan::NextL leaves when trying to scan \private and
  5207 		\system directory.
  5208 
  5209 Version 2.00.514
  5210 ================
  5211 (Made by StephanGu, 13/11/03)
  5212 1)	StephanGu
  5213 	1)	Added A3.4.2"PREQ12(REQ1752) - Support for NAND flash" increment. 
  5214 		Changed rugged FAT to be used by default, as this is needed by NAND flash.
  5215 		Techview does not yet boot from NAND flash.
  5216 	2)	Fixed defect DEF037399 CProxyDrive::ControlIO not virtual
  5217 	3)      Fixed defect DEF037401  Filesystems ControlIo() doesn't call CProxyDrive::ControlIO()
  5218 
  5219 2)     	AndrewJ 	
  5220 	1)      Added Support in the file server for the composite file server to enable the 
  5221 		loader cache to reinitialise after the Composite file system has been mounted.
  5222 		Added swap file system API to allow the and atomic dismount and mount of a file 
  5223 		system. For NAND flash as per A3.4.2 PREQ12 (REQ1752) NandFlash on EKA2
  5224 	
  5225 	2)	For NAND flash as per A3.4.2 PREQ12 (REQ1752) NandFlash on EKA2 changed Estart to handle
  5226 		Composite file system using the new RFs::SwapFileSystem() API
  5227 
  5228 
  5229 Version 2.00.513
  5230 ================
  5231 (Made by JonathanM, 31/10/2003)
  5232 
  5233 1)	JonathanM
  5234 	1)	Fix for DEF038863 - Integration Test Harness (ScheduleTest) no longer works on EKA2
  5235 		Assabet
  5236 
  5237 2)	Dennis
  5238 	1)	Fix problem loading RVCT binaries (svElfDerivedFixupImportAddresses always
  5239 		returned KErrNotSupported.
  5240 
  5241 Version 2.00.512
  5242 ================
  5243 (Made by AndrewJ, 06/10/2003)
  5244 
  5245 
  5246 1)	AndrewJ
  5247 
  5248 	1)	Released Fat32 file system
  5249 
  5250 	2)	Added support for TInt64 interface to disks. Only File system that supports 
  5251 		volumes large enough to test this at present is Fat32. implmented RRawDisk::Read()
  5252 		and RRawDisk::Write functions with 64bit interface with corresponding server side
  5253 		handling.
  5254 
  5255 	3)	Added RFs::FinilaseDrives() API that along with server side handling. This searches 
  5256 		for the internal drive and calls finalise on the File system mount, The result is that
  5257 		any final actions required on the drive before power down maybe carried out. 
  5258 
  5259 
  5260 
  5261 Version 2.00.511
  5262 ================
  5263 (Made by JonathanM, 24/09/2003)
  5264 
  5265 1) 	AndrewJ
  5266 	1)	Fixed defect DEF012073  (Propagated) Running F32test T_NMBS twice in a row, 
  5267 		LFFS gets st... 	
  5268 
  5269 	2)	Removed incorrect code in the fileserver that used a pointer to look up the message
  5270 		slot number to read or write. Now uses harded coded numbers.
  5271 
  5272 2)	Dennis
  5273 	1)	Use binary search in ROM file system.
  5274 	2)	Implemented CR ATHE-5PZEAU (Add Version Numbers to Symbian OS Executables).
  5275 
  5276 
  5277 3)	ChrisCr
  5278 	1)	Added documentation tags to /f32/inc.
  5279 
  5280 4)	MichaelP
  5281 	1)	Fixed defect DEF038210 - "Missing error check in ESTART":
  5282 		An RFile::Read() in function E32Main() is now properly assigning its return
  5283 		code to the error code variable 'r' (file /f32/estart/estart.cpp).
  5284 
  5285 5)	JonathanM
  5286 	1)	Removed old and unused files. (F32.FTC and F32.MRP)	
  5287 
  5288 
  5289 Version 2.00.510
  5290 ================
  5291 (Made by JonathanM, 05/08/2003)
  5292 
  5293 1) 	StefanW
  5294 
  5295 	1)	Modified CFatFormatCB::DoFormatStepL to allow 'Special Format' and 'Quick Format'
  5296 		to be performed together (ie - format /s /q).
  5297 
  5298 	2)	Modified the LFFS filesystem to use logical addressing to prevent
  5299 		runaway reclaims and disk corruption.
  5300 		
  5301 		****************************************************************************
  5302 		*** This version of the filesystem is incompatable with previous formats ***
  5303 		*** so requires that the device is reformatted.  make sure your data is  ***
  5304 		*** backed up before applying this version of the filesystem		 ***
  5305 		****************************************************************************
  5306 
  5307 		The LFFS filesystem has been modified to use logical based addressing rather than
  5308 		the original physical addressing scheme.  This enables the reclaim process to 
  5309 		operate without incurring a loss of disk space, and prevents the filesystem from
  5310 		entering the 'infinite reclaim' scenario where the device reclaims forever, 
  5311 		significantly improving battery life and performance under low disk space conditions
  5312 
  5313 		For a detailed description of the problem that this version addresses, refer to 
  5314 		CR PSCE-5GSNPF and the corresponding impact analysis.
  5315 
  5316 		1.  Filesystem version incremented to V2.00.
  5317 		2.  The format of the segment header has been modified to include a logical segment number.
  5318 		3.  The format of the general Log Entry has been modified to include a pointer to the previous 
  5319 		    log entry, and an extra 'Reclaimed' status bit.
  5320 		4.  Two new constants CRITICAL_LOG_ENTER/CRITICAL_LOG_GAIN added to allow read-only mode to 
  5321 		    be entered should the remaining log space enter the critical threshold.
  5322 		5.  Constant SPACE_FOR_RECLAIM has been reduced from 500% to 200%.
  5323 		7.  The system enters Read-Only mode when the filesystem is unable to recover disk space.
  5324 		    In this mode, all user operations that write to the disk (apart from delete operations) 
  5325 		    are not permitted.
  5326 		8.  The reclaim process has been modified such that log entries are moved directly into the 
  5327 		    new segment without changing their logical address.  Under non-critical conditions, 
  5328 		    some entries will be moved to the end of the log to avoid excessive fragmentation.
  5329 		9.  The Segment class has been modified to store a bitmap of used/free log entry locations 
  5330 		    within the segment.
  5331 		10. Calculations of remaining user and log space have been modified to take into account 
  5332 		    fragmentation of the log and the addressable data range to provide a more realistic 
  5333 		    measure of remaining disk space.
  5334 
  5335 		This version of the filesystem also addresses the following issues
  5336 
  5337 		1. CLffsMountCB::EntryL doesn't check return code for readCurrentDirAttributes
  5338 		2. The LFFS Can run out of disk space under extreme usage circumstances
  5339 		3. LFFS should report zero free space if in read only mode
  5340 		4. LFFS forced reclaim threshold too low
  5341 		5. LFFS leaks resources if Create/Replace File fails due to read-only mode.
  5342 		6. LFFS reports incorrect usable free space if filesystem is full with directories.
  5343 
  5344 2)	Dennis
  5345 	1)	Modified the loader so that passing an empty filename to LoadLocale will
  5346 		restore the default locale settings.
  5347 	2)	Treat locale DLLs as loading into the file server rather than the kernel.
  5348 		Their ABI should match that of the file server.
  5349 		This works fortuitously at the moment, although there may soon be enum
  5350 		problems. Longer term locale DLLs should be restructured so that the kernel
  5351 		never needs to call them.
  5352 
  5353 3)	Markdo
  5354 	1)	Introduced the multithreaded fileserver. A file system can either be mounted
  5355 		synchronously or asynchronously on a particular drive. Operations on a
  5356 		asynchronous  file system drive are handled in a separate drive thread. There
  5357 		is also a thread to handle session disconnection.
  5358 		Thread-safe reference counting objects and their containers have been added.
  5359 		Notifiers have been modified so that a media change results in notification
  5360 		completion only on the relevant socket.
  5361 
  5362 4)	ChrisCr
  5363 	1)	DEF022431 - (Propagated) The filesystem is corrupted and the device
  5364 		won't boot at all anymore.
  5365 
  5366 Version 2.00.509
  5367 ================
  5368 (Made by JonathanM, 19/05/2003)
  5369 
  5370 0.	MarkDo, JonathanM and ChrisM
  5371 	1.	Changes resulting from making E32 compatible with with
  5372 		Symbian OS version 7.0
  5373 
  5374 1)	Dennis
  5375 	1)	Fixed problem mounting CDROMs in ESTART.
  5376 	2)	Increase F32 heap size to 512K in direct memory model.
  5377 	3)	Fix from StefanW for LFFS failure to mount if a previous format was
  5378 		interrupted before writing the Ifile.
  5379 
  5380 2)	Markdo
  5381 	1)	Fixed defect DEF000073  "FAT FS: checkdisk computes wrong cluster
  5382 		count". 
  5383 
  5384 3)	JonathanM
  5385 	1)	Fixed use of __DATA_CAGING__ in F32.
  5386 		NOTE: F32TEST are not Dataging Complient as most use Default Path functions
  5387 
  5388 4)	ChrisCr
  5389 	1)	DEF015967 - Cannot format disk with DiskAdmin capability (add DiskAdmin
  5390 		capability to Format and FormatNext)
  5391 
  5392 Version 2.00.508
  5393 ================
  5394 (Made by ChrisM, 17/03/2003)
  5395 
  5396 1)	AndrewJ
  5397 	1)	Added read only file system, ROFS to F32. This is a suplimentary file 
  5398 		system aimed at ROM over spill and similar that uses media sub-system
  5399 		and can therefore be used for on a variaty of media, including non XIP 
  5400 		for binary files.
  5401 	2)	Added support for mounting Rofs on J: for platforms and V: for WINS
  5402 		in estart.
  5403 
  5404 2)	Dennis
  5405 	1)	Extend RUNTESTS.EXE to check for leftover processes and to detect
  5406 		spurious background activity.
  5407 
  5408 	2)	The ELF-derived and JFormat flags have been	generalised into header
  5409 		format, import format and ABI fields. An entry point type field has
  5410 		been added to distinguish EKA1 and EKA2 entry points.
  5411 
  5412 	3)	F32IMAGE.H is now exported and is used in building E32TOOLS instead
  5413 		of having a separate copy in E32TOOLS.
  5414 
  5415 	4)	Removed code which opens handles in order to check if a client has data
  5416 		caging enabled and replaced it with calls to the new RMessagePtr API.
  5417 
  5418 	5)	Change loader and ROMBUILD to recognise earlier Jetstream binaries
  5419 		which had the J flag in bit 3. If the new header format (bits 24-27)
  5420 		is zero, bits 3 and 4 are checked for J and ELF respectively.
  5421 
  5422 3)	PeteS
  5423 	1)	Changed InitializeLocalDriveMappingL() in \SFILE\SF_MAIN.CPP to use 
  5424 		RLocalDrive::IsRemovable() rather than RLocalDrive::MediaDevice() to
  5425 		determine socket number.
  5426 
  5427 Version 2.00.507
  5428 ================
  5429 (Made by JonathanM, 14/01/2003)
  5430 
  5431 1)	Nicolas
  5432 	1)	Fix for DEF002189 - eshell.exe should not have Root: Eshell now has Root
  5433 		and DiskAdmin instead of All.
  5434 	2)	Fixed defect DEF012182 - Eshell.exe fails: Removed Root capability from
  5435 		eshell.mmp.  Eshell still has Root capability in base ROMs to ease 
  5436 		debugging.
  5437 
  5438 2)	AndrewT
  5439 	1)	Revamped Win32 local filesystem's use of MapEmulatedFilename() to pass
  5440 		the entire path in to this function and removed defective double mapping
  5441 		from some functions.
  5442 	2)	Discontinued support for relabelling Win32 volumes using
  5443 		RFs::SetVolumeLabel(). Win32 wolumes are always reported as unnamed and
  5444 		attempting to relabel them will return KErrNotSupported.
  5445 
  5446 3)	ChrisCr
  5447 	1)	'Symbianised' LFFS to the coding standards (names of classes, member
  5448 		functions and variables; comments to generate Doxygen documentation;
  5449 		etc.).  Note that this means that every file in LFFS has changed, and
  5450 		most of the lines within each file.
  5451 	2)	DEF006380 - TFindFile::FindWildByDir(...) return incorrect error code.
  5452 		Fix is to detect and return KErrPermissionDenied in
  5453 		TFindFile::DoFindInDir().  Data caging tests modified to test this.
  5454 
  5455 4)	JonathanM
  5456 	1)	Modified the Loader so that it can handle 'ElfDerived' images.
  5457 
  5458 5)	AndrewJ
  5459 	1) 	Fixed defect DEF012072 LFFS: String class inefficient, removed the 
  5460 		base class and changed name of the derived version + typedef.
  5461 	2)	Fixed defect DEF012074 LFFS: unnecessary buffer fill when creating a 
  5462 		directory entry 
  5463 	3)	DEF012075 LFFS: Unnecessary buffer fills while searching directories 
  5464 
  5465 6)	Stephangu
  5466 	1)	Submitted fix for "DEF015911 (Propagated) Camera: 
  5467 		Could snap more than 255 images but only 255 
  5468 		images were saved to MMC".
  5469 
  5470 
  5471 Version 2.00.506
  5472 ================
  5473 (Made by AndrewT, 29/10/2002)
  5474 
  5475 1)	AndrewT
  5476 	1)	Fix for DEF002418 - ESTART has all capabilities
  5477 	2)	Relaxed meaning of 'EDataCagingOn' to merely indicate whether the data
  5478 		cage should be enforced. So all new APIs are available with data caging off
  5479 		and security violations are still traced when data caging is on.
  5480 	2)	Improved Data caging trace information to include the path name where
  5481 		appropriate.
  5482 
  5483 1)	JonathanM
  5484 	1)	Changed all binaries which link to EFILE to get their capabilities from
  5485 		include file "F32CAPS.MMH"
  5486 	2)	Changed loader to require KCapabilityAll for Device Drivers and Locales.
  5487 	3)	Removed all usage of RProcess::SecureApi and User::RemoveCapabilities.
  5488 
  5489 Version 2.00.505
  5490 ================
  5491 (Made by JonathanM, 21/10/2002)
  5492 
  5493 1)	StefanW
  5494 	1)	Fix for DEF000070 - Ambiguous error message in LFFS 
  5495 	2)	Fix for DEF000109 - LFFS: bgThread pointer can be accessed before it has been set 
  5496 	3)	Fix for DEF000160 - LFFS: reclaim thread infinite loop if it can't calc valid data.
  5497 	4)	Fix for DEF000185 - LFFS can miss the last log entry when reclaiming - updated 
  5498 	5)	Fix for DEF000247 - LFFS inefficient code in reclaim finding last log entry in segment 
  5499 	6)	Fix for DEF000370 - LFFS: calculateValidSize can exit without unlocking mutex 
  5500 	7)	Fix for DEF000395 - LFFS: deadlock because rollfwd too far behind.
  5501 	8)	Fix for DEF000411 - LFFS does not protect against bit errors in StrataFlash 
  5502 	9)   	Fix for DEF000041 - Function doesn't do what it says.
  5503 	10)	Modified ControlIO to enforce use of TDes8 as required by the secure kernel
  5504 		(modified in CL_DEBUG.CPP, and updated affected tests)
  5505 2)	AndrewJ
  5506 	1)	Fixed pre load list 
  5507 	2) 	Inserted hashing code from security and hash checking code but not used yet 
  5508 3)	CiprianM
  5509 	1)	Fixed DEF001331  The behaviour of CCaptureKeys is that "the last one wins" 
  5510 		given equal priorities 
  5511 	2)	Fixed defect EXT-5AKDAM "RFs: Folders with trailing dots cause big
  5512 		problems in the Flash File system and applications that use the file
  5513 		system". Lffs modified to handle trailing dot in the same way as the
  5514 		fat file system.
  5515 	3)	Fixed defect FID-5C3LZ3 "Bad directory entry can panic FAT filesystem".
  5516 	4)	Fixed defect FID-5CDLEF "FAT FSY checkdisk doesn't allocate enough memory for
  5517 		bit list".
  5518 	5)	Fixed defect OLD-5C7MAB "F32 Loader Cache does not update to see ROLF Drive on
  5519 		bootup".
  5520 	6)	Fixed defect EXT-5BBB45 "RFs::NotifyChange() with 0length file name kills file
  5521 		server".
  5522 	7)	Fixed defect EXT-5BMC53 "CFileMan::Copy() reports wrong for error for non-existent
  5523 		matching names".
  5524 	8)	Fixed EXT-5AJ8DJ(DEF000541) "RFile method Write never completes"
  5525 	9)	Fixed FID-5DVK66(DEF001380) "LFFS: should check the flag validity for every log entry"
  5526 	10)	Fixed DEF001631 - eshell previous command recollection doesn't work with single 
  5527 		letter commands
  5528 4)	ChrisCr
  5529 	1)	Fix for DEF000064: (Propagated) Bug in comparison with "ELOCAL" in
  5530 		AddFileSystem::DoRequestL.  Modified f32/sfile/sf_sys.cpp to match the
  5531 		original defect fix.
  5532 
  5533 5)	RobertJ
  5534 	1)	Fixed DEF000848 - "Loader cache will not set up any notifiers if no valid drives on boot"
  5535 
  5536 
  5537 2)	AndrewJ	
  5538 	1) 	Introduced file sharing between client and server processes 
  5539 
  5540 
  5541 
  5542 Version 2.00.504
  5543 ================
  5544 (Made by JonathanM, 20/09/2002)
  5545 
  5546 1.	JonathanM
  5547 	1.	Changed RUNTESTS so that it lets the Loader find 'missing' test files.
  5548 		This enables it to run tests which have been moved to \system\bin due
  5549 		to data caging.
  5550 2.	CiprianM
  5551 	1.	Fixed defect DEF001173 - Eshell.exe drive change command causes a 
  5552 		panic
  5553 
  5554 Version 2.00.503
  5555 ================
  5556 (Made by Nicolas, 16/09/2002)
  5557 
  5558 1.	RobertJ
  5559 	1.	Added support for compressed executables. Uses a deflate algorithm
  5560 		Huffman+LZ77. Huffman code is in EUSER the LZ77 code is local. The 
  5561 		iFlags field has JFormat added (for non-xip) and the iFormat field
  5562 		will either flag 0-uncompressed or be KUidCompressionDeflate which
  5563 		as the label says means compressed with deflate. The deflate code
  5564 		is virtually identical to that in Tools and should be kept that way.
  5565 2.	Nicolas
  5566 	1.	Set ESHELL's 3rd UID to nul to work-around bug in UIKON preventing
  5567 		from starting non nul 3rd UID executables from graphical shell.	
  5568 
  5569 Version 2.00.502
  5570 ================
  5571 (Made by Dennis, 16/08/2002)
  5572 
  5573 1.	Dennis
  5574 	1.	iCheckSumCode and iCheckSumData in E32ImageHeader have been replaced by
  5575 		iCapability and iFormat.
  5576 		iCapability is passed into the kernel and used to set the capabilities
  5577 		for that executable module and for any process instantiated from it.
  5578 
  5579 2.	Markdo
  5580 	1.	Ported defect fixes from Hurricane.
  5581 	2.	Introduced support for file server extensions at the plugin file system/
  5582 		media subsystem interface. Primary extensions are mounted on a drive at the
  5583 		same time as the file system whilst secondary extensions are mounted after
  5584 		the file system has been mounted.
  5585 	3.	Modified file server startup so that the local file system has to be
  5586 		explicitly loaded in estart on the necessary drives.
  5587 	4.	Modified drive letter to local drive mapping so any file system can be
  5588 		mounted on any drive. This involved the following changes:
  5589 		- RFs::SetLocalDriveMapping() introduced. To be called from estart.
  5590 		- Removed CFileSystem::DriveList().
  5591 		- Drive attributes only set if file system mounted on the drive.
  5592 		- Local file system versions of DriveNumberToLocalDrive() no longer used.
  5593 	5.	Removed copyf32.bat and copyrel.bat from \f32\group.
  5594 
  5595 Version 2.00.501
  5596 ================
  5597 (Made by Dennis, 11/07/2002)
  5598 
  5599 Memory model and loader changes.
  5600 Two mode secure kernel.
  5601 
  5602 1.	Dennis
  5603 	1.	Rewrote loader to support per-process writeable static data in DLLs
  5604 		and to work with new kernel code management.
  5605 
  5606 	2.	Loading of device drivers, file systems and locale DLLs is now done
  5607 		entirely by the loader rather than partially on the client side.
  5608 
  5609 	3.	Added generic automounting of file systems to ESTART, based on the values
  5610 		returned by the media driver for media type and partition type.
  5611 		FAT is only mounted on drives which return a FAT partition type or which
  5612 		are removable, not ready and don't return a media type of FLASH or CDROM.
  5613 
  5614 	4.	Remove masking of file attributes in file server to allow the new ROM XIP
  5615 		attribute to be reported.
  5616 
  5617 	5.	Added ISO9660 and NTFS (read only) file systems.
  5618 
  5619 	6.	Integrated platform security changes (data caging).
  5620 
  5621 	7.	Changed "z:\system\data\Dll Preload List" to "z:\system\data\preload.lst"
  5622 		to avoid moronic spaces in filenames which knacker tools.
  5623 
  5624 	8.	Changes resulting from TInt64 now being a built-in type instead of a class.
  5625 
  5626 	9.	In ESTART for the emulator, disable preemption before calling ExitProcess()
  5627 		when the initial EXE has terminated.
  5628 
  5629 
  5630 Version 2.00.500
  5631 ================
  5632 (Made by AndrewT, 21/05/2002)
  5633 
  5634 First release of EKA2 into Symbian OS mainline.
  5635 
  5636 
  5637 Version 0.01.279
  5638 ================
  5639 (Made by Dennis, 04/04/2002)
  5640 
  5641 1)	Markdo
  5642 	1)	Fixed defect BRY-58DQ8A "RDebug::Prints in F32".
  5643 	2)	Fixed defect BRY-58DPTJ "RDebug::Print in cl_parse.cpp".
  5644 
  5645 Version 0.01.278
  5646 ================
  5647 (Made by CarlosF, 12/03/2002)
  5648 
  5649 1)	Markdo
  5650 	1)	Fixed defect DON-57ZNSZ "Mounting a file system with a locked media can
  5651 		panic the file server". Migrated from 6.1.
  5652 	2)	Fixed defect DON-582CPM "GetLongName() doesn't give KErrNotFound on deleted
  5653 		file". Migrated from 6.1.
  5654 	3)	Fixed defect DON-582CS7 "Invalid cast between incompatible enums in
  5655 		TDrive::DriveInfo". Migrated from 6.1.
  5656 	4)	Fixed defect DON-582CY5 "FAT FS: free cluster search doesn't search entire
  5657 		FAT". Migrated from 6.1.
  5658 	5)	Fixed defect DON-57ZLSH "& vs && in TFindFile".
  5659 	6)	Fixed defect DON-582FQW "Secure MMC: TFindFile should not scan locked
  5660 		drives. Migrated from 6.0.
  5661 	7)	Fixed defect DON-57ZLVM "Incompatibility of FAT between EPOC and MSDOS".
  5662 		Unused fat entries are no longer 0xff filled after formatting.
  5663 	8)	Fixed defect DON-585JBS "Memory card password file shown in dialogs".
  5664 		Password file is now stored as c:\system\mmcstore.
  5665 	9)	Fixed defect DON-586FXT "ESHELL start command doesn't report errors".
  5666 	
  5667 2)	Pete
  5668 	1) 	Changes associated with implementing CR PHAR-54RJMT 'We should be able to simulate
  5669 		password protected disks on the emulator'.	
  5670 
  5671 3)	AndrewJ
  5672 	1)	Submitted a fix for FID-544KQJ where the LFFS is limited to 256 segments. Now uses
  5673 		a dynamic number of segments based on the physical media
  5674 
  5675 
  5676 Version 0.01.277
  5677 ================
  5678 (Made by ChrisM, 06/03/2002)
  5679 1)	Markdo
  5680 	1)	Removed unnecessary call to TBusLocalDrive::Caps() in
  5681 		CLffsFileSystem::DriveNumberToLocalDrive().
  5682 	2)	Modified CFatMountCB::MaxClusterNumber() to use right shift.
  5683 	3)	Fixed defect PRX-57D69V "executive call overhead in rom fs".
  5684 		Rom address header is now stored in CRom.
  5685 	4)	Implemented CR MDON-57HLDW "RFs::LockDrive() should not allow
  5686 		user to not store password". Both LockDrive() and UnlockDrive()
  5687 		now return KErrNotSupported if the password is not stored.
  5688 
  5689 2)	AndrewJ
  5690 	1)	Submitted RichardF's read ahead cache to optimise log reads in the log flash 
  5691 		file system
  5692 	2) 	Submitted fix from RichardF for defect FID-54YDZT where a forced reclaim can use 
  5693 		all erased space and cannot be recovered, for the LFFS system.
  5694 	3)	Submitted Code from RichardF to fix FID-568L6X where lffs leaves orphaned entries on the 
  5695 		list when a write fails.
  5696 
  5697 
  5698 Version 0.01.276
  5699 ================
  5700 (Made by RobertJ, 11/02/2002)
  5701 
  5702 1)	Markdo
  5703 	1) 	Fixed defect PRX-573BNC "Preload() (little perf improvement)". The function
  5704 		now returns immediately if the preload list is not found.
  5705 	2)	Fixed defect FID-573GWT "LFFS stack size should take account of
  5706 		_DEBUG_RELEASE".
  5707 
  5708 2) 	Peter
  5709 	1) 	Extended the class CFatFormatCB in the FAT file system by adding the
  5710 		following new members:-
  5711 			TInt iNumberOfHeads;
  5712 			TInt iSectorsPerTrack;
  5713 		When formatting a FAT disk, these new members are set as part of 
  5714 		the function CFatFormatCB::InitializeFormatDataL() when formatting first
  5715 		commences. They are used to initialise the corresponding fields in the boot
  5716 		sector once the physical formatting of the disk has completed.
  5717 	2) 	Changes to FAT file system special formatting mode.
  5718 		The 'number of heads' and 'sectors per track'
  5719 		info. is read from the local drive caps. and written two the above
  5720 		two data members of CFatFormatCB.
  5721 
  5722 Version 0.01.275
  5723 ================
  5724 (Made by PeterS, 04/02/2002)
  5725 
  5726 1)	MarkCa
  5727 	1)	Fixed FID-562G4V (App can kill F32 by attempting to mount filesystem on
  5728 		unsupported drive.)  Changed CFatMountCB::MountL() and
  5729 		CFatFileSystem::DriveInfo() to check if running on supported local drive.
  5730 	2)	Added file system adding and mounting error checking to E32Main()
  5731 		for ESHELL.
  5732 	3)	Fixed FID-566G8P (Bug in comparison with "ELOCAL" in AddFileSystem) by
  5733 		changing CompareF() in TFsAddFileSystem::DoRequestL() to check for
  5734 		"ELOCAL.FSY" filename and extension.
  5735 
  5736 2)	Nicolas
  5737     	1)	Added new debugport command to eshell.	See E32 367
  5738 		release notes for details.
  5739 	2)	Fixed bug in gobble and setsize eshell commands which
  5740 		wrongly reported errors when using hexadecimal sizes.
  5741 
  5742 3)	Markdo	
  5743 	1)	Fixed defect BEN-4YRGKV "Ecom not recognising plugins once unplugged and
  5744 		replugged". RFs::Rename(), RFs::Replace(), and RFile::Rename() now have
  5745 		source and destination entries checked by extended notification mechanism.
  5746 
  5747 Version 0.01.274
  5748 ================
  5749 (Made by MarkCa, 15/01/2002)
  5750 
  5751 1) 	Peter
  5752 	1) 	Changes to FAT file system to add support for a
  5753 		special formatting mode. This
  5754 		formatting mode is selected using the TFormatMode: ESpecialFormat.
  5755 		Corresponding changes to the 'Format' command in
  5756 		ESHELL so that drives can be formatted in this mode from the shell by
  5757 		using the switch /s (e.g. 'FORMAT D: /S').
  5758 	2)	Migrated FAT file system optimizations implemented in
  5759 		the 6.0 release. This include2 the following changes:
  5760 		- 6.0 defect EDNMDON-537CZA "Directory creation in FAT causes unnecessary
  5761 		disk writes".
  5762 		- 6.0 defect EDNGLAY-53UCDG "Unnecessary flushing of the fat when writing
  5763 		to a file for the first time".
  5764 		- 6.0 defect EDNGLAY-53UCLA "Unnecessary metadata writes when creating entry
  5765 		in fat file system".
  5766 		- The #defines  _ABSOLUTE_LRU_SIZE _ and USE_TRUE_LRU_CACHE uncommented in
  5767 		SFAT\SL_CACHE.CPP so that a true lru cache of 32KB is used for metadata.
  5768 		- Modification to CFatMountCB::AddDirEntryL() so that end of directory
  5769 		marker only written if not already zero.
  5770 
  5771 Version 0.01.273
  5772 ================
  5773 (Made by AndrewJ, 12/12/2001)
  5774 
  5775 1)	Markdo
  5776 	1)	Fixed defect DON-4ZKD9H "File server does not fully support write
  5777 		protected media".
  5778 	2)	Fixed defect DON-53ZDXF "Build error in file server when _LOCKABLE_MEDIA
  5779 		not defined".
  5780 
  5781 2)	AndrewJ
  5782 	1)	Fixed JON-53BMJZ (RRawDisk de-references a null pointer when used on a 
  5783 		corrupt drive (due to forced a mount)) changed the behaviour of 
  5784 		RRawDisk objects so that they be prevented on a corrupt disk or one 
  5785 		that is being formatted. Only one RRawDisk object should be able to 
  5786 		access a mount at once. Similar behaviour has been implemented for 
  5787 		RFormat objects as well, they will obviously have access to corrupt 
  5788 		drives.
  5789 
  5790 3)	MarkCa
  5791 	1)	Fixed DON-4V7BUZ (KErrNoMemory cannot be returned on c:)
  5792 	2)	Fixed CFileCB::~CFileCB, which called iLock->Close() without checking
  5793 		if was successfully allocated.
  5794 
  5795 3)	PeterH
  5796 	1)	Integrated changes to DEF files from the mainline.
  5797 		Frozen exports are now marked with the R3UNUSED flag where appropriate.
  5798 		This is to support the thumb stub optimisation where the R3 register is
  5799 		use to generate a smaller import stub for a function if it isn't used to
  5800 		receive parameters.
  5801 
  5802 Version 0.01.272
  5803 ================
  5804 (Made by MichaelP, 20/11/2001)
  5805 
  5806 1)	MarkCa
  5807 	1)	Fixed PEN-52ZM5A (Function doesn't do what it says.)  Changed comment
  5808 		for IsSpace() in sfile\sf_utl.cpp.
  5809 	2)	Fixed FID-4W5BYE (Ambiguous error message in LFFS.)  Changed
  5810 		Inode::readBlock() to distinguish between CRC and media driver errors
  5811 		when reading a block.
  5812 	3)	Simplified media driver loading in F32 startup thread.
  5813 
  5814 2)	AndrewJ	
  5815 	1)	Fixed defect MAY-4ULHBH (B_OPEN crashes the file server on LFFS) by increaseing 
  5816 		the Log size in the lffs file system, note the size of the lffs dive on assabet
  5817 		has been reduced to 8Mb.
  5818 	2)	Fixed defect FID-537HQA (LFFS: increase reclaim thread stack size) by doubling 
  5819 		current stack allocation as suggested in the defect report.
  5820 
  5821 3)	Markdo
  5822 	1)	Fixed defect DON-4WXDHK "RFs::RemoveFileSystem does not return correct
  5823 		error value". KErrNone is now returned when a file system has been
  5824 		successfully removed.
  5825 	2)	Fixed defect THY-4WKD5P "gobble (in eshell) can delete existing files". If
  5826 		the file already exists then gobble fails but does not delete the file.
  5827 
  5828 Version 0.01.271
  5829 ================
  5830 (Made by Dennis, 26/10/2001)
  5831 
  5832 1)	MarkCa
  5833 	1)	Fixed 6.1 defect DON-52SC7L (Disk space notification does unnecessary
  5834 		checking for RFile::Write.)  Added TBool iFreeChanged instance variable
  5835 		to CMountCB.  TFsFileWrite::DoRequestL() sets this iff the file size
  5836 		has changed.  CSessionFs::Complete() uses the value stored in
  5837 		DiskSpaceInfo[iTheDrive.iDriveNumber].iFreeDiskSpace if the file
  5838 		size has not changed.
  5839 
  5840 Version 0.01.270
  5841 ================
  5842 (Made by ChrisM, 05/10/2001)
  5843 
  5844 1)	MarkCa
  5845 	1)	Fixed DON-4ZKDKK (Moving a directory leads to incorrect parent directory
  5846 		cluster number.)  Parent Directory Pointer FAT entry is updated at end
  5847 		of CFatMountCB::DoRenameOrReplaceL().
  5848 2)	Markdo
  5849 	1)	Fixed defect DON-4ZSLL9 "CMountCB::ControlIO cannot be called when
  5850 		RRawDisk subsession open". ControlIO can now be called when a RRawDisk
  5851 		or RFormat subsession is open.
  5852 	2) 	Fixed defect DON-52FJDQ "RFs::ReadFileSection() does not alway return
  5853 		correct data".
  5854 
  5855 
  5856 Version 0.01.269
  5857 ================
  5858 (Made by AndrewT, 31/08/2001)
  5859 
  5860 1)	RobertJ
  5861 	1)	Implemented a loader file names cache to speed up loading dlls & executables.
  5862 		Added sf_cache.cpp,sf_cfind.cpp & sf_cache.h. Extensively modified sf_ldr.cpp.
  5863 	2)	Implemented change request PGEN-4VXMEM "Load and run ROM executables from RAM"
  5864 
  5865 2)	Pete
  5866 	1)	Changed /F32/INC from IPR category A to category E (SC change request EJAN-4Z5GEA).
  5867 
  5868 Version 0.01.268
  5869 ================
  5870 (Made by Peter, 06/08/2001)
  5871 
  5872 1)	Markdo
  5873 	1)	Fixed defect DON-4YTBWB "Removing cf-card whilst formatting can crash the
  5874 		file server". 
  5875 	2)	Fixed defect HOH-4RGFJN "Scandisk doesn't like the way that we make
  5876 		directories". Each directory is now zeroed on creation.
  5877 
  5878 2) 	Pete
  5879 	1) 	Removed \f32\group\mnt.bat which was redundant.
  5880 	2) 	Addition of the function RFs::RemountDrive(TInt aDrive,const TDesC8* aMountInfo=NULL,TUint aFlags)
  5881 		
  5882 Version 0.01.267
  5883 ================
  5884 (Made by JonathanM, 17/07/2001)
  5885 
  5886 1) Andrew
  5887 	1) 	Migrating fix from 6.1/6.0 in fileserver where cancelling a move operation
  5888 		results in the wrong file being deleted and the corrupt/half copied version 
  5889 		left. (JON-4WAH8L.)
  5890 
  5891 Version 0.01.266
  5892 ================
  5893 (Made by Michael, 21/06/2001)
  5894 
  5895 1) MarkDo
  5896 	1)	Fixed defect OEL-4V2H8V "Disk notifications do not come in for devices
  5897 		with ramdrive".
  5898 	2)	Modified file server to allow requests to be handled when the
  5899 		non-critical password notifier is up. Changes to CServerTask,
  5900 		CAsynNotifier and the parsing functions. Introduction of 
  5901 		CNonCriticalNotifier and TFileServerHung classes. Modified
  5902 		TDriver::HandleCriticalError() in fat file system so that password
  5903 		notifier is only brought up if user notification set. See defect
  5904 		DON-4XNK65 (File server requests are not handled when a password
  5905 		notifier is up).
  5906 	3)	Introduced additional commands to CFatMountCB::ControlIO and
  5907 		TFsControlIo::DoRequestL to allow testing of 2).
  5908 	4)	Modified RUNTESTS. This can now take two additional arguments 
  5909 		with the new syntax:
  5910 
  5911 		runtests <script> <dir> <timeout> <args>
  5912 
  5913 		<timeout> is the timeout period in minutes. <args> is passed into
  5914 		all the test processes created. Also introduced #defines to allow
  5915 		no timeout to be used, runtests to exit on the first error and for
  5916 		the batch file to be repeatedly read. Introduced to test 2).
  5917 
  5918 2)	MarkCa
  5919 	1)	Modified \sfat\sl_fsy.cpp to or in KMediaAttHasPassword when a
  5920 		media is locked.  This is part of e32 fixes EDNHLJT-4WZGTD and
  5921 		EDNHAAO-4WZFYR.
  5922 	2)	Fixed EDNDBEY-4W5EM6 (Secure MMC password not remembered) by
  5923 		using absolute filename for password file in f32fsys.h.
  5924 	3)	Implemented CR PSCE-4VMP3K to set hard limit for RAM drive.
  5925 		CFatMountCB::Enlarge() checks against limit, and CFatMountCB::VolumeL()
  5926 		caps size.
  5927 
  5928 Version 0.01.265
  5929 ================
  5930 (Made by Carlos, 31/05/2001)
  5931 
  5932 1)	Nicolas
  5933 	1)	Changed runtests.exe so it displays the duration of
  5934 	  	the tests in seconds.
  5935 
  5936 2)	Markdo
  5937 	1)	Fixed defect DON-4VWCWG "Windows does not like the way we make some dos
  5938 		entry names".
  5939 	2)	Enabled LFFS tracing to be turned on via RFs::SetDebugRegister().
  5940 		Use /t switch with trace command for text shell.
  5941 
  5942 3)	Tim Band
  5943 	1)	Deprecated CompareFilenames function and changed the function that used
  5944 		it back to CompareC
  5945 Version 0.01.264
  5946 ================
  5947 (Made by Pete, 10/05/2001)
  5948 
  5949 1)	MarkCa
  5950 	1)	Added base support for store LFFS optimization.  New function Drive()
  5951 		added to RFile.
  5952 
  5953 Version 0.01.263
  5954 ================
  5955 (Made by Nicolas, 04/05/2001)
  5956 
  5957 1)	Nicolas
  5958 	1)	Merged 6.1 release branch back into the mainline.
  5959 
  5960 Version 0.01.262
  5961 ================
  5962 (Made by Dennis, 20/04/2001)
  5963 
  5964 1)	RobertJ
  5965 	1)	Fixed defect EDNMHEY-4FEKYU Searching for "Dll Preload List" takes
  5966 		too long.
  5967 
  5968 2)	AndrewJ
  5969 	1)	Changed F32.iby so it only includes the default e32strt.exe if 
  5970 		CUSTOM_ROM is not defined.
  5971 	2)	Removed refrences to the BASE_ROM definition as an include option as 
  5972 		it is now obsolete.
  5973 
  5974 3)	Pete
  5975 	1) 	Fixed SCE-4VJJ32 "F32\SLFFS should be IPR category A, not category E"
  5976 
  5977 Version 0.01.261
  5978 ================
  5979 (Made by RobertJ, 26/03/2001)
  5980 
  5981 1)	MarkCa
  5982 	1)	Fixed EDNJHAS-4KFR5G (File handle mis-management crashes the kernel)
  5983 	2)	Removed spurious debug in ShellCommand::(Lock|Unlock|Clear)().
  5984 
  5985 2)	Markdo
  5986 	1)	Fixed bug EDNMDON-4KUCTK "Locked multimedia card can panic file server".
  5987 		Return value of KErrBadHandle from password notifier is now handled
  5988 		correctly.
  5989 
  5990 3)  	Andrew
  5991 	1)	Fixed JON-4URH39 Format problem for segments count greater than 100
  5992 		on LFFS
  5993 	2)	Fixed TOD-4RWEHL KErrNoMemory problem in FindWildByDir()
  5994 
  5995 4)	MarkCa
  5996 	1)	Modified StartupThread() in sf_main.cpp to scan for media drivers
  5997 		instead of explicitly loading them by name.
  5998 
  5999 Version 0.01.260
  6000 ================
  6001 (Made by Morgan, 08/01/2001)
  6002 
  6003 1)	Morgan
  6004 	1)	Made the loader cope with DLLs with no imports
  6005 
  6006 2)	Markdo
  6007 	1) 	Fixed defect DON-4TXKUB "TEntry needs copy c'tor and =operator".
  6008 	2) 	Fixed defect THE-4UBE55 "Corrupted FAT and cross-contaminated
  6009 		files after file truncation". Seek index is now cleared in the
  6010 		correct way.
  6011 
  6012 Version 0.01.238
  6013 ================
  6014 (Made by Morgan, 09/04/2001)
  6015 
  6016 1) 	Nicolas
  6017 	1)	Fixed bug in ESHELL/HEXDUMP introduced when switching to Unicode
  6018 		(the right part of the ASCII dump is now correct).
  6019 
  6020 2)	Andrew
  6021 	1) 	Fixed defect FID-4UZLMW Enable controlio in UREL builds
  6022 	2)	Fixed defect CHM-4TSNF3 file server can not cope with invalid file names
  6023 	3)	Fixed defect CHM-4URFMZ	server panics when scanning max length files
  6024 
  6025 3)	RobertJ
  6026 	1)	Fixed defect EDNMHEY-4FEKYU Searching for "Dll Preload List" takes
  6027 		too long.
  6028 
  6029 4)	Pete
  6030 	1) 	Fixed SCE-4VJJ32 "F32\SLFFS should be IPR category A, not category E"
  6031 
  6032 
  6033 Version 0.01.237
  6034 ================
  6035 (Made by Will Ramsay, 03/04/2001)
  6036 
  6037 1)	Backported change from Morgan to 6.2
  6038 	1)	Made the loader cope with DLLs with no imports
  6039 
  6040 Version 0.01.236
  6041 ================
  6042 (Made by MarkCa, 20-03-2001)
  6043 
  6044 1) 	Markdo
  6045 	1)	Fixed bug EDNMDON-4KUCTK "Locked multimedia card can panic file server".
  6046 		Return value of KErrBadHandle from password notifier is now handled
  6047 		correctly.
  6048 
  6049 2)  	Andrew
  6050 	1)	Fixed JON-4URH39 Format problem for segments count greater than 100
  6051 		on LFFS
  6052 	2)	Fixed TOD-4RWEHL KErrNoMemory problem in FindWildByDir()
  6053 
  6054 
  6055 Version 0.01.235
  6056 ================
  6057 (Made by Nicolas, 27-02-2001)
  6058 
  6059 1)	Markdo
  6060 	1) 	Fixed defect DON-4TXKUB "TEntry needs copy c'tor and =operator".
  6061 	2) 	Fixed defect THE-4UBE55 "Corrupted FAT and cross-contaminated
  6062 		files after file truncation". Seek index is now cleared in the
  6063 		correct way.
  6064 	3)	Fixed defect HAR-4UDN92 "Calling RFs::NotifyChangeCancel without
  6065 		first calling RFs::NotifyChange crashes the file server".
  6066 	
  6067 2)	MarkCa
  6068 	1)	Fixed EDNJHAS-4KFR5G (File handle mis-management crashes the kernel)
  6069 	2)	Removed spurious debug in ShellCommand::(Lock|Unlock|Clear)().
  6070 
  6071 
  6072 Version 0.01.234
  6073 ================
  6074 (Made by Pete, 19-01-2001)
  6075 
  6076 1) Pete
  6077 	1)	Merged in version R1.3 of Log Flash File System (LFFS) - released
  6078 		by ENEA. Release notes for additional features this provides:-
  6079 
  6080 		New features:
  6081 		-	Retry of failed erase operations. (Compensates for faulty hardware)
  6082 
  6083 		Corrected problems:
  6084 		-	Unable to mount in an unusual situation when power down during
  6085 			write caused write failure of two specific bits. The two
  6086 			"outdated" or "transaction start" bits were required to match for
  6087 			mount to succeed.
  6088         	-	Bad behaviour related to allocation of media space.
  6089         	-   	Several minor bugs.
  6090 		This fixes defect FID-4RZGU4 "Power loss can corrupt LFFS filesystem".
  6091 	2)	Fixed defect FID-4R9MPF "LFFS doesn't obey the rules for RFormat".
  6092 	3)	Fixed defect FID-4QVF5C "Reduce heap & stack size for LFFS reclaim thread".
  6093 	4)	Fixed defect FID-4STGGU "LFFS CRC function can be optimized".
  6094 	5) 	Fixed defect FID-4RTE6Q "Make F32 auto-mount LFFS under WINS".
  6095 	6) 	Fixed defect FID-4RDE2S "Source code change required for mounting non-FAT filesystem as local"
  6096 
  6097 Version 0.01.233
  6098 ================
  6099 (Made by RobertJ, 13-12-2000)
  6100 
  6101 1) Morgan
  6102 	1)	Loader speed improvements.  Dll's that are already loaded in the
  6103 		system are loaded using information available from the kernel,
  6104 		rather than going to disk.
  6105 
  6106 2) Markdo
  6107 	1)	Fixed defect EDNRFID-4KZGXR "ESHELL Gobble command should put
  6108 		real data in the file". Gobble now fills file with 0xef. New
  6109 		eshell command SETSIZE introduced which sets size of file but
  6110 		does not fill. The file is created if it does not exist.
  6111 	2)	Fixed defect HOH-4RDLVN "RFs::GetDir reports KErrCorrupt if only
  6112 		one file is corrupt". This fix only applies to the fat file
  6113 		system. 
  6114 	3)	Fixed defect HOH-4RGEXH "Corrupt on CF card when OOM/Low on Mem".
  6115 		Free cluster count in fat file system is now calculated from
  6116 		clusters available.
  6117 	4)	Fixed defect HOH-4RGF97 "RFs::NotifyChangeCancel(TRquestStatus&)
  6118 		can fail in Debug builds".
  6119 	5)	Fixed defect HOH-4RGFCJ "Renaming long filenames causes a Kernel
  6120 		Panic".
  6121 	6)	Fixed defect EDNRFID-4NGJCT "Bad cast in LFFS loses significant
  6122 		bits on >16Mb flash".
  6123 	7)	Fixed defect EDNRFID-4PYF2E "Change priority of LFFS background
  6124 		thread".
  6125 	8)	Modified fat table caching so that dirty array is used when cache
  6126 		is written to. When flushing only sectors marked as dirty are
  6127 		written to disk. These changes required additional pure virtual
  6128 		functions to be added to CDataCache class. This feature can be 
  6129 		enabled/disabled using #define _USE_DIRTY_FIXED_CACHE.
  6130 	9)	Introduced two new #defines in \F32\SFAT\SL_CACHE.CPP:
  6131 		_ABSOLUTE_LRU_SIZE
  6132 			allows absolute lru cache size to be set in CLruCache
  6133 			class.
  6134 		_USE_TRUE_LRU_CACHE
  6135 			allows true lru caching to be used in CLruCache class. At
  6136 			present fifo caching used.
  6137 		Both #defines are commented out awaiting further benchmarking.
  6138 	10)	Introduced disk space notification. Client can now be notified when
  6139 		the free space for a drive crosses a threshold specified by the
  6140 		client.
  6141 	11)	Modified initialisation when file server passed a handle to an
  6142 		existing subsession object. The data member iTheDrive is now set
  6143 		for the session. This is necessary for disk space notification.
  6144 		
  6145 3) RichardF
  6146 	1)	Added disk space notification to LFFS filesystem. This adds a
  6147 		notification from the background thread after completing a
  6148 		reclaim or roll-forward operation.
  6149 
  6150 	2)	Added a new ControlIo function to LFFS for testing disk
  6151 		space notification. CIO_BACKGROUND_NOTIFY_DISK_SIZE allows
  6152 		test code to force a value into the reclaim thread. The next
  6153 		notification from the reclaim thread will use this value instead
  6154 		of the real disk space. This is one-shot so subsequent
  6155 		notifications will report real disk space.
  6156 
  6157 
  6158 Version 0.01.232
  6159 ================
  6160 (Made by Nicolas, 19-10-2000)
  6161 
  6162 1) Pete
  6163 	1)	Modified the file server so that it now attempts to
  6164 		load MMC Media driver (MEDMMC.PDD) rather than Compact Rom Media
  6165 		driver (MEDCRM.PDD) on startup.
  6166 
  6167 1) Nicolas
  6168 	1)	Modified ESHELL "DEBUG" command so it can launch the new GDBSTUB.
  6169 
  6170 
  6171 Version 0.01.231
  6172 ================
  6173 (Made by MarkCa, 29/09/2000)
  6174 
  6175 1)	Markdo
  6176 	1)	Fixed bug EDNDKNT-4NVNBN "Behaviour of RFormat::Next() has changed
  6177 		since ER5". Extended change notification request when drive is locked
  6178 		is now handled in same way as when path is not found.
  6179 
  6180 
  6181 Version 0.01.230
  6182 ================
  6183 (Made by Dennis, 13-09-2000)
  6184 
  6185 1) William
  6186 	1)	In SF_LDR.CPP, use User::Free(anIdle) instead of delete anIdle since
  6187 		anIdle is a TAny* and there is no destructor which could be called.
  6188 	2)	Replace the non-debugging uses of _L() with _LIT() in SF_LDR.CPP
  6189 
  6190 2) Dennis
  6191 	1)	Added code to ESTART to restore the modifiable HAL attributes from file
  6192 		\System\Data\HAL.DAT. This is loaded from any drive in the usual search
  6193 		order.
  6194 	    
  6195 Version 0.01.213
  6196 ================
  6197 (Made by RobertJ, 20-07-2000)
  6198 
  6199 1) Markdo
  6200 	1)	Added patch from ENEA to stop LFFS entering read-only mode
  6201 		incorrectly.
  6202 	2)	Added patch from ENEA to fix LFFS failure to delete file from root
  6203 		when disk is full.
  6204 
  6205 Version 0.01.212
  6206 ================
  6207 (Made by RobertJ, 29-06-2000)
  6208 
  6209 1 Markdo
  6210 	1)	Fixed defect EDNDBAR-4KDK8H (TKeyDir::Compare should use
  6211 		TDesC::CompareC, not TDesC::CompareF). A new exported function 
  6212 		CompareFilenames(const TDesC& aFileName1,const TDesC& aFileName2)
  6213 		has been added to the file server. This function is only used in
  6214 		TKeyDir::Compare.
  6215 
  6216 Version 0.01.211
  6217 ================
  6218 (Made by Dennis, 22-06-2000)
  6219 
  6220 1) Morgan
  6221 	1)	Fixed EDNABAN-4AEECH.  Made the Loader notice the KNoCallEntryPoint
  6222 		flag when loading executables from Ram.
  6223 
  6224 2) Dennis
  6225 	1)	Made ESTART call HAL to ensure that HAL's memory is allocated.
  6226 
  6227 Version 0.01.210
  6228 ================
  6229 (Made by Markdo, 07.06.2000)
  6230 
  6231 1)	Markdo
  6232 	1)	Merged in changes made to \F32\SLFFS\ on lffs acceptance branch.
  6233 	2)	Fixed defect EDNMDON-4KGM6E (Hung file server does not correctly deal
  6234 		with session that has been killed).
  6235 	3)	Fixed defect EDNMDON-4LSEXD (File server panics if scandrive called
  6236 		at startup).Changes to ensure scandrive called correctly in startup
  6237 		thread.
  6238 
  6239 2)	MarkCa
  6240 	1)	Implemented bug fix EDNMDON-4J2EWK in \f32\sfat\sl_file.cpp.
  6241 
  6242 Version 0.01.209
  6243 ================
  6244 (Made by Alastair 23.5.2000)
  6245 
  6246 
  6247 1)	Alastair
  6248 	1)	Removed changes made in version 207 to enter and leave the kernel
  6249 		critical section around calls to Win32's LoadLibrary() function, now
  6250 		that E32 is calling Dll entry points rather than leaving this up to
  6251 		the Windows operating system to do.
  6252 
  6253 
  6254 Version 0.01.208
  6255 ================
  6256 (Made by MarkCa, 16/05/00)
  6257 
  6258 1)	Markdo
  6259 	1)	Removed compiler warnings.
  6260 
  6261 Version 0.01.207
  6262 ================
  6263 (Made by Morgan, 7/4/2000)
  6264 
  6265 1)	MarkCa
  6266 	1)	Minor changes to ETSHELL\TS_COM.CPP in lock, unlock and clear commands
  6267 		to print command information.
  6268 
  6269 2)	Markdo
  6270 	1)	Mmc security features disabled. To enable define _LOCKABLE_MEDIA
  6271 		in \E32\INC\E32SVR.H.
  6272 	2)	Changes to remove (some) compiler warnings.
  6273 	3)	Added reserved virtual function in CMountCB.
  6274 
  6275 3)	Alastair
  6276 	1)	Added code to enter the kernel critical section before the Win32 call
  6277 		to LoadLibrary() in \f32\sfile\sf_ldr.cpp and leave it afterwards.  This
  6278 		is in order to avoid deadlock with NT Service Pack 5 where the LoadLibrary()
  6279 		call is deadlocked with some other thread, probably one which has the 
  6280 		Kernel critical section and is waiting on an internal NT lock for the
  6281 		library to finish loading.  This change that under WINS/WINC libraries 
  6282 		can't make any calls which will require the kernel critical section, such
  6283 		as kernel executive calls, in their entrypoints when EDllProcessAttach and
  6284 		EDllThreadAttach is passed as the aReason parameter.
  6285 	2)	Added RDebug::Print statement so that the name of a library which fails
  6286 		to load is reported to the Output window in the Debugger.
  6287 
  6288 4)	Pete
  6289 	1)	Modified file server and FAT file system to use
  6290 		UseHal::DriveInfo() to determine whether to implement a rugged file
  6291 		system.
  6292 	2)	Added latest version of Log Flash File System (LFFS) - released with 4th
  6293 		candidate version (R1.2) of LFFS.
  6294 	3)	Added #define _DEBUG_RELEASE to F32\INC\F32DBG.H to allow debugging
  6295 		in release builds.
  6296 	4) 	Added the debug functions RFs::DebugNotify() required for LFFS testing.
  6297 
  6298 
  6299 Version 0.01.206
  6300 ================
  6301 (Made by Dennis, 23.03.2000)
  6302 
  6303 1)	MarkDo
  6304 	1) 	Implemented RFs member functions LockDrive,UnlockDrive and ClearPasword.
  6305 		Added corresponding virtual functions to CMountCB class which return
  6306 		KErrNotSupported. Overrode these functions in CFatMountCB class.
  6307 	2)	Changes to TDrive functions dealing with the mounting of a device. If
  6308 		disk access returns KErrLocked then asynchronous notifier brought up
  6309 		requesting password.
  6310 	3)	Added exported WriteToDisk(const TDesC& aFileName,const TDesC8& aBuf)
  6311 		function in file server. Used to write buffer to root of default drive.
  6312 	4)	Modified file server startup code so that file KMediaPWrdFile is used to
  6313 		initialise mmc controller password store.
  6314 	5)	Appended L to RestartActiveScheduler(CSessionFS*) function name. This is
  6315 		no longer exported from the file server. Removed RestartActiveScheduler()
  6316 		function.
  6317 	6)	Modified CAsyncNotifier class. Function added to call extended notifier.
  6318 		RestartActiveScheduler now called from within member functions.
  6319 	7)	Modified TDriver class. If CFatMountCB::Remount returns KErrLocked then
  6320 		attempt made to unlock card.
  6321 	8)	Fixed bugs EDNGASR-4GUL9U and EDNGASR-4GSES9. TFileText now checks for 
  6322 		Unicode byte order mark and paragrah separator. TFileText::Seek is longer
  6323 		const and clears it read buffer.
  6324 		
  6325 
  6326 2)	MarkCa
  6327         1)	\F32\ETSHELL\TS_COM.CPP
  6328 	        Changed lock, unlock and clear commands to use actual RFs functions.
  6329 		\F32\SFILE\SF_STD.H
  6330 		Defined datatypes for delayed writer thread.
  6331 		Added EMainStartupWriteToDiskSemaphore to TFsFault.
  6332 		\F32\SFILE\SF_DISK.CPP
  6333 		Implemented async thread for so file server can write data to file.
  6334 		\F32\SFILE\SF_MAIN.CPP
  6335 		Created global semaphore for queuing delayed writes in startup thread.
  6336 
  6337 3)	Pete
  6338 	1) 	Added the debug function RFs::DebugNotify() required for LFFS acceptance testing.
  6339 		
  6340 Version 0.01.205
  6341 ================
  6342 (Made by RobertJ 20-03-00)
  6343 
  6344 1)	MarkCa
  6345         \F32\ETSHELL\TS_COM.CPP
  6346         Added ShellFunction::(Lock|Unlock|Clear) functions.
  6347         Included functions in CShell::iCommand[] array.
  6348 	
  6349         \F32\ETSHELL\TS_STD.H
  6350         Added ShellFunction::(Lock|Unlock|Clear) prototypes.
  6351         Increased ENoShellCommands from 24 to 27.
  6352 
  6353 Version 0.01.204
  6354 ================
  6355 (Made by MarkCa 03-03-00)
  6356 
  6357 1)	MarkCa
  6358 	\F32\INC\F32FILE.H	Additional RFs prototypes
  6359 	\F32\INC\MESSAGE.H	EFs((Lock|Unlock)Drive|ClearPassword)
  6360 	\F32\SFSRV\CL_CLI.CPP	RFs::((Lock|Unlock)Drive|ClearPassword)
  6361 	\F32\SFILE\SF_FUNC.H	TFsLockDrive, TFsUnlockDrive, TFsClearPassword
  6362 	\F32\SFILE\SF_MAIN.CPP	CSessionFs::ServiceL dispatch cases
  6363 	\F32\SFILE\SF_SES.CPP	TFs((Lock|Unlock)Drive|ClearPassword)(DoRequestL|Initialise) stubs
  6364 
  6365 Version 0.01.203
  6366 ================
  6367 (Made by Dennis, 14-02-2000)
  6368 
  6369 1)	Dennis
  6370 	1)	Replaced most UserHal:: calls with corresponding HAL:: calls (if they
  6371 		exist).
  6372 2)	Mark
  6373 	1)	Added debug function RFs::ControlIo(TInt aDrive,TInt aCommand,
  6374 		TAny* aParam1,TAny* aParam2). Originally added for LFFS
  6375 		acceptance testing. Can be used as debugging tool for file
  6376 		system by overriding virtual CMountCB::ControlIO().
  6377 	2)	Added debug tool to fail writes to disk in TDriver class. Write
  6378 		failure info is stored in CFatMountCB and set via RFs::ControlIo().
  6379  		On write failure a specified error value can be returned or the
  6380 		machine reset.
  6381 	3)	Added scandrive utility for fat file system. Checks drive for
  6382 		specific errors and corrects them. Does not run on internal ram
  6383 		drive. Called at file server startup on Linda platforms.
  6384 	4)	Ruggedised fat file system. If iIsRugged flag in CFatFileSystem
  6385 		set then in the event of power failure fat/metadata will be in
  6386 		a valid state if the scandrive utility is run immediately after.
  6387 		iIsRugged flag set for Linda platforms and can also be set/unset
  6388 		using RFs::ControlIo().
  6389 	5)	Changed CRamFatTable::MemCopy to ensure ram drive is locked before
  6390 		returning from this function.
  6391 
  6392 
  6393 Version 0.01.202
  6394 ================
  6395 (Made by Dennis, 19th January 2000)
  6396 
  6397 0)	Use with E32(255)
  6398 
  6399 1)	Dennis
  6400 	1) 	Removed calls to EUSER functions which no longer exist.
  6401 
  6402 2)	Alastair
  6403 	1)	Removed MARM, SARM, ARM3 and SARM3 configurations from BLD.INF.
  6404 
  6405 3)	Pete
  6406 	1)	Change to FAT file system raw disk read/write. Required due to E32
  6407 		change where TBusLocalDrive Read(), Write() Format() functions
  6408 		use a TInt64 rather than a TInt to specify position within the drive.
  6409 
  6410 
  6411 Version 0.01.201
  6412 ================
  6413 (Made by Morgan, 3/12/99)
  6414 
  6415 0)	Use with E32(253)
  6416 
  6417 1)	Mark
  6418 	1)	Changes to CRomMountCB::RawReadL(),CRomMountCB::ReadSectionL()
  6419 		and CFatMountCB::ReadSectionL(). RThread object is now set to
  6420 		handle of client. Fixes er5u bugs EDNPSCE-4C6JBG and
  6421 		EDNMDON-4C7CHN.
  6422 
  6423 2)	Morgan
  6424 	1)	Removed 256 character limit on command lines
  6425 		Changed CSessionLoader::LoadProcess to understand new RLoader
  6426 		RMessage with extra command line parameter.  See E32(253).
  6427 
  6428 
  6429 Version 0.01.200
  6430 ================
  6431 (Made by Simon)
  6432 
  6433 1)	Mark
  6434 	1)	Merged in changes from ER5v134 that fixed bug MDON-484D9G
  6435 		'32Mb Ram results in corrupt Ram Drive'.
  6436 	2)	Merged in changes from ER5v134 that fixed bug MDON-484CRH
  6437 		'64Mb Ram drive cannot be used'.
  6438 	3)	Modified CFatFileSystem::DriveInfo so that TDriveInfo::iDriveAtt
  6439 		is set here.
  6440 
  6441 
  6442 Version 0.01.158
  6443 ================
  6444 (Made by Anonymous)
  6445 
  6446 1)	Pete
  6447 	1)	Added Log Flash File System (ELFFS.FSY) - 1st alpha.
  6448 
  6449 
  6450 2)  Malcolm
  6451 	1)	Added estart to the build.  This is a placeholder for the
  6452 	  	variant specific estart.exe that will run the product specific
  6453 	  	startup.  If BASE_ROM is specified when building roms then
  6454 	  	f32.iby selects e32strt.exe rather than estart.exe for placing
  6455 	  	in the rom as estart.exe, as e32strt is the dummy
  6456 	  	implementation for base text roms.
  6457 		
  6458 		EStart is now started by the FS rather than ewsrv.exe, and
  6459 		only from z:
  6460 
  6461 
  6462 Version 0.01.157
  6463 ================
  6464 (Made by Mark, 16/09/99)
  6465 
  6466 1)	Mark
  6467 	1)	Fixed bug EDNMHAN-4AFMWT (The internal drive is called "Inte").
  6468 	2)	Fixed bug EDNMDON-4BPC5M (F32 tracing can reset machine).
  6469 	3) 	Fixed bug EDNMMIR-4BBNVD (RFs::ReadFileSection fails on Unicode ROMS).
  6470 
  6471 Version 0.01.156
  6472 ================
  6473 (Made by Morgan, 28/8/99)
  6474 
  6475 1)	Pete
  6476 	1)	Changes to allow proper media change notification on platforms with
  6477 		more than one PC Card socket. The file server now requests media change
  6478 		notfication on each socket, rather than just socket 0. (This requires an
  6479 		associated change to e32 introduced in E32 release ???).
  6480 
  6481 2)	Dennis
  6482 	1)	Modified F32.IBY to allow ROMs to be built with ARM4/ARMI/THUMB code.
  6483 
  6484 3)	Alastair
  6485 	1)	Removed narrow frozen .DEF files.
  6486 	2)	Re-frozen all .DEF files in new format so that the C++ name
  6487 		appears with the mangled name for all exports and windiff can be
  6488 		used to compare frozen .DEF files with generated .DEF files.
  6489 
  6490 
  6491 
  6492 Version 0.01.155
  6493 ================
  6494 (Made by Alastair, 2.8.99)
  6495 
  6496 SOURCE-ONLY RELEASE
  6497 Built with MSVC6
  6498 
  6499 CHANGES TO RELEASABLE
  6500 1)	Alastair
  6501 	1)	F32 now releases zip files for ARMI, ARM4 and THUMB in the same style as
  6502 		it's other releasables, and no longer produces a MARM zip file.  To use
  6503 		these releasables it's necessary to use E32TOOLP version 120 and the new
  6504 		GCC compiler.
  6505 		This change is academic since the release is source-only and has been
  6506 		built with the old gcc compiler.
  6507 
  6508 2)	Alastair
  6509 	1)	Updated BLD.INF to work with the new GCC compiler and changes to
  6510 		E32TOOLP version 120.
  6511 
  6512 	2)	Changed ESHELL attrib command to use slightly less stack so that it
  6513 		compiles under MSVC6.
  6514 
  6515 Version 0.01.148
  6516 ================
  6517 (Made by Kal Patel 22 July 1999)
  6518 
  6519 	Rebuilt with latest E32.
  6520 
  6521 
  6522 Version 0.01.147
  6523 ================
  6524 (Made by Dennis 13.7.1999)
  6525 
  6526 1)	Alastair
  6527 	1)	Added dopcvs.pl and lock.pl to GROUP directory for use with MNT.BAT.
  6528 	2)	Added fetcher definition file, F32.FTC, to the group directory.
  6529 
  6530 2)	Mark
  6531 	1)	Fixed ER5 bug EDNWROS-45WGVY(Can't execute 8.3 program from CF card
  6532 		under Unicode).
  6533 	2) 	Fixed ER5 bug EDN028229(Unicode shell doesn't display disk name
  6534 		correctly). Volume name is limited to ascii characters with a max
  6535 		length of 11, both for narrow and unicode builds.
  6536 	3)	Replaced relevent Win32 function calls with calls to euser.dll
  6537 		exported functions that return a pointer either to 'W' Win32
  6538 		function or euniw.dll wrapper function.
  6539 
  6540 3)	Dennis
  6541 	1)	Increased stack size of ESHELL from 8K to 16K. This is because it
  6542 		blows an 8K stack in the unicode build.
  6543 	2)	Modified code to remove some compiler warnings with the new GCC
  6544 		compiler. Some warnings still remain ("taking address of temporary")
  6545 		which seem nontrivial to fix.
  6546 	3)	Modified code in SFAT\SL_MNT.CPP (CFatMountCB::CountFreeClustersL)
  6547 		which crashes when built with the new compiler due to attempting a
  6548 		16-bit data access at an odd address. The code now explicitly does two
  6549 		separate byte accesses.
  6550 	4)	Modified ESHELL to print the full exit code if a process terminates
  6551 		with any other code than KILL 0.
  6552 	5)	Added test launcher program RUNTESTS.EXE. Syntax is
  6553 
  6554 		runtests <script> <dir>
  6555 
  6556 		where <script> is the name of the test script (eg e32auto.bat) and <dir>
  6557 		is the directory in which the test executables reside. If <dir> is
  6558 		omitted it defaults to Z:\TEST. The test script is assumed to reside in
  6559 		the same directory as the test EXEs unless a full path is specified for
  6560 		<script>.
  6561 
  6562 
  6563 Version 0.01.146
  6564 ================
  6565 (Made by Alastair, 9.6.99)
  6566 
  6567 1)	Alastair
  6568 	1)	Building this version of F32 requires E32TOOLP version 108+.  It's
  6569 		advisable to build your component with E32TOOLP version 108+ if you're
  6570 		using this version of F32 since import libraries are only released in
  6571 		the MARM release and WINS debug directories.
  6572 	2)	Changed zips of releasables put onto the network. There is now one zip
  6573 		file for each platform.  There is also a zip file for exported header
  6574 		files.  Hence, The contents of S:\f32\zip includes
  6575 			export.<ver>, wins.<ver>, marm.<ver> and winc.<ver>.
  6576 		The files within these zip files now also have full pathnames so ensure
  6577 		you unzip them into the root of your EPOC drive with any flags required
  6578 		to recreate the directory structure.
  6579 	3)	Added new command, MNT CHECKREL, to check that all releasables are
  6580 		present before doing an MNT PUTREL.
  6581 		Before doing MNT CHECKREL or MNT PUTREL call BLDMAKE -v RELFILES to
  6582 		create the lists of releasables.
  6583 	4)	Split EFSRV.DLL under WINC into EFSRV.DLL and EFILE.DLL as under WINS.
  6584 		Removed hacks in the build system associated with munging EFSRV.DLL and
  6585 		EFILE.DLL together under WINC.  EFSRV.DLL loads EFILE.DLL when required,
  6586 		as under WINS.
  6587 	5)	Specified second uids in ELOCAL.MMP and EFAT.MMP as 0 so that these FSY-
  6588 		specific uids are set by makmake instead.
  6589 	6)	Replaced all B[plat].PRJ files for use with BLDMAKE with BLD.INF in
  6590 		accordance with ER5u bldmake changes.
  6591 	7)	Removed all E*.REL files from GROUP directory and changed MNT.BAT so that
  6592 		MNT PUTREL looks for .REL files generated by BLDMAKE instead.  Updated
  6593 		BLD.INF accordingly.
  6594 	8)	Removed EVALID.PL and EVALID.BAT from GROUP dir now that this version
  6595 		of EVALID is being released as part of E32TOOLP.
  6596 	9)	Updated MNT GETBLD to fetch the SDMODELS component which replaces the
  6597 		SWINS component that E32 used to release.
  6598 	10)	Remove XFILE.MMP - it's no longer required now that libraries can be
  6599 		built separately.  Note that libraries must be build before other
  6600 		releasables because of mutual exporting between some F32 DLLs.
  6601 
  6602 
  6603 
  6604 Version 1.02.145
  6605 ================
  6606 (Made by Malcolm, 14th May 1999)
  6607 
  6608 Malcolm	 
  6609 		 1)  Changed usage of KRomHeaderLinAddr to
  6610 		     UserSvr::RomHeaderAddress().  This requires a recent E32
  6611 		     > 181 to work.
  6612 
  6613 Version 1.02.140
  6614 ================
  6615 (Made by Mark, 5th May 1999)
  6616 
  6617 1)	Pete
  6618 	1)	Enabled a file system to be mounted on EDriveW for WINS.
  6619 
  6620 2)	Mark
  6621 	1) 	Added DismountFileSystem(..) and FileSystemName(..) functions to class RFs.
  6622 	2)	Moved public member data in CMountCB, CFileCB, CDirCB, and CFormatCB to
  6623 		protected and provided relevant inline functions.
  6624 
  6625 Version 1.02.133
  6626 ================
  6627 (Made by Mark, 31th March 1999)
  6628 
  6629 1)	Mark
  6630 	Implemented fix to defect EDNGDAE-46FPNU in CServerFs::TheSessionHasDied(..).
  6631 	
  6632 
  6633 Version 1.02.132
  6634 ================
  6635 (Made by Jonathan, 23rd February 1999)
  6636 
  6637 1)	Jonathan, Simon
  6638 	1)	Boilerplated source.
  6639 
  6640 2)	Alastair
  6641 	1)	Fixed bug EDN874266 
  6642 		"I think Epoc COnnect is trying to access my A drive on Win 98"
  6643 		by not looking for a dll preload list on all drives under __WINC__.
  6644 	2)	Changed MNT PUTSRC to use T:\Tools\Zip.exe rather than
  6645 		T:\Tools\PKZip.exe.
  6646 	3)	Changed MNT GETREL to get the WINC debugging releaseables for DEB and
  6647 		UDEB builds.
  6648 	4)	Moved \F32\INC\INCC.PRJ to \E32\GROUP\INCC.REL and changed MNT.BAT so
  6649 		this .REL file is treated in the same way as all the other .REL files.
  6650 	5)	Updated validation process to use William's new EVALID.BAT (added to
  6651 		F32\Group pro tem.).
  6652 
  6653 
  6654 Version 1.02.131
  6655 ================
  6656 (Made by Mark, 10th February 1999)
  6657 
  6658 1)	Mark
  6659 	1)	Removed extra debug diagnostic checking added in v129. CFatMountCb::
  6660 		CheckIndirectionTableL(..) left in although not called.
  6661 	2)	Fixed defect EDN760586 so that TDrive::IsFileOpen(..) checks that a
  6662 		matching file name is on same drive.
  6663 	3)	Fixed defect EDN781415 by adding check in CFatMountCb::DoFindL(..) that
  6664 		aDosEntryPos is not past end of root directory.
  6665 	4)	Fixed defect EDN621729 so that RFs::NotifyChange(..) cannot fail.
  6666 		The return type of these functions is now void instead of int.
  6667 
  6668 
  6669 Version 1.02.130
  6670 ================
  6671 (Made by Pete, 3rd February 1999)
  6672 
  6673 THIS RELEASE OF F32 REQUIRES E32 163 OR LATER
  6674 
  6675 1)	Pete
  6676 	1)	Changed over to use the TBusLocalDrive class rather than TLocalDrive
  6677 		for local drive access. This in turn required converting calls to
  6678 		TBusLocalDrive::Caps() to take a TLocalDriveCapsBuf parameter rather
  6679 		than a TLocalDriveCaps.
  6680 
  6681 2)	Mark
  6682 	1)	Removable FAT formatted drives (ie CF cards) larger than or equal to
  6683 		16Mb in size are now formatted with a 16bit FAT rather than a 12bit
  6684 		FAT.
  6685 
  6686 
  6687 Version 1.02.129
  6688 ================
  6689 (Made by Jo, 29th January 1999)
  6690 
  6691 1) Morgan
  6692 	1)	Fixed an OOM bug in the loader (FindAndLoadDll(...))
  6693 
  6694 2) Jo
  6695 	1)	Added extra debug diagnostic checking to detect RAM drive inconsistencies
  6696 	2)	Changed the order of operations in CRamFatTable::FreeClusterListL() so the
  6697 		RAM drive is not shrunk until the clusters referencing it have been 		deallocated.
  6698 
  6699 	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.
  6700 
  6701 	4)	Modified the DoRequest() function of TFsRequest so any fileserver operations that leave are caught and dealt with appropriately.
  6702 
  6703 	5)	Various concomitant modifications to CSessionFs Process() and CServerTask functions to deal with the change in 4)
  6704 
  6705 
  6706 Version 1.02.128
  6707 ================
  6708 (Made by Morgan, 27th January 1999)
  6709 
  6710 1) Jo	
  6711 	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.
  6712 
  6713 	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.
  6714 
  6715 	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.
  6716 
  6717 	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.
  6718 
  6719 
  6720 Version 1.02.127
  6721 ================
  6722 (Made by Jo, 19th January 1999)
  6723 
  6724 1) Jo	
  6725 	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.
  6726 
  6727 	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.
  6728 
  6729 	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.
  6730 
  6731 	4)	The global RestartActiveScheduler() functions were modified to behave safely in cases where the fileserver session has closed.  
  6732 
  6733 	5)	Fixed a bug in RFs::Rename (SFILE\SF_NBS) which prevented extended fileserver notification requests completing.
  6734 
  6735 	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.
  6736 
  6737 	7)	Some modification to cleanup routines in class CServerTask (SFILE\SF_TASK) in the light of changes to RestartActiveScheduler.
  6738 
  6739 	8)	Added function ParseNotificationPath() to SFILE\SF_UTL to allow wildcarded fileserver notification requests as described in 6).
  6740 
  6741 2) Morgan
  6742 	1)	Added Dll-preloading functionality to F32 startup.  List the Dll's to be
  6743 		loaded at start-up in the file "\System\Data\Dll Preload list" located
  6744 		on any drive.  Filenames listed should be fully qualified, although it
  6745 		will attempt to load unqualified names using the usual search paths.  The
  6746 		comment delimiter for this file is ';'.
  6747 		
  6748 
  6749 Version 1.02.126
  6750 ================
  6751 (Made by Jonathan, 12th January 1999)
  6752 
  6753 THIS RELEASE OF F32 REQUIRES E32 160 OR LATER
  6754 
  6755 1) Jo
  6756 	1)	Fixed defect EDN911803 "Rename creates duplicate file" which was due
  6757 		to the VFAT entry of the original file not being deleted when the
  6758 		new filename was FAT.
  6759 
  6760 	2)	Minor modification to ESHELL (\ETSHELL\TS_COM.cpp) so that the REL
  6761 		build of ESHELL does not stop TRACE from setting the F32 tracing
  6762 		flags.
  6763 
  6764 	3)	Minor additions to \SFAT\SL_MNT.cpp to add extra checking for
  6765 		uninitialised CSessionFs pointers that could permeate down and lead
  6766 		to access violations when TDriver::ReadCritical() and
  6767 		TDriver::Write() functions are called.
  6768 
  6769 2) Morgan
  6770 	2)	Fairly major overhaul of the loader to make it clean up after
  6771 		itself. Handles created by the kernel for library creation are now
  6772 		placed into The Loader's process. The handle is only transferred to
  6773 		the client when the load has successfully completed.
  6774 		This allows the loader to keep track of all the libraies it has
  6775 		created, and therefore allows it to clean up after itself on
  6776 		failure.
  6777 
  6778 
  6779 Version 1.02.125
  6780 ================
  6781 (Made by Jo, 21st December 1998)
  6782 
  6783 THIS RELEASE OF F32 REQUIRES E32 159 OR LATER
  6784 
  6785 1) Alastair
  6786 	1)	Removed BLD.BAT, CLEAN.BAT and PREPARE.BAT from Group\Li.prj.
  6787 
  6788 2) Morgan
  6789 	1)	Fixed a bug that was stopping RAM-loading of libraries that statically
  6790 		linked to Exes.
  6791 
  6792 3) Jo
  6793 	1)	Fixed an eshell bug to improve the Copy function.  Removed edlin
  6794 		from eshell.  Modified the Hexdump command to allow the user to
  6795 	  	quit.
  6796 
  6797 	2)	Removed the extraneous file sr_rom.s from \f32\srom\
  6798 
  6799 
  6800 Version 1.02.124
  6801 ================
  6802 (Made by Jo, 8th December 1998)
  6803 
  6804 1) Jo
  6805 	
  6806 	1)	Fixed defect EDN 128786
  6807 		Previously, if a notification request was made on a non existent
  6808 		path, the notification request was rejected with error KErrNotFound.
  6809 		Now the request is submitted (if the path is valid eg with no
  6810 		illegal	characters) and the client is notified upon creation of such
  6811 		a path.
  6812 
  6813 	2)	Fixed defect EDN 879377
  6814 		TFindFile::FindWildByPath() now checks that the path submitted is
  6815 		not NULL before attempting to dereference it.
  6816 
  6817 	3)	Modified the handling of client requests in SFILE\SF_MAIN.
  6818 		Release 120 removed the multitudinous global functions DoParseFsxxx
  6819 		and DoFsxxx and replaced them with a set of classes derived from the
  6820 		interface class MFsRequest (SFILE\SF_FUNC.H).
  6821 
  6822 	These changes had some performance implications on the fileserver - the
  6823 	current modifications have now improved the performance for local
  6824 	fileserver operations.
  6825 	The changes required minor modifications to a couple of functions in
  6826 	class CServerTask, some changes to class CSessionFs, and the
  6827 	introduction of a new class TFsRequest. BC is not affected except
  6828 	internal to F32.
  6829 
  6830 
  6831 Version 1.02.123
  6832 ================
  6833 (Made by Jo, 1st December 1998)
  6834 
  6835 1) Morgan
  6836 	1)	Added Uid matching to Dll and Exe loaders. See E32 release note 157.1.1
  6837 	2)	Implemented a more intelligent Dll Loader that continues to search
  6838 		for matching dlls if the first (or subsequent) attempt fails.
  6839 		SF_LDR.CPP and SF_IMAGE.CPP
  6840 	3)	Removed the E32Image class from the public header F32IMAGE.H.  The
  6841 		E32ImageHeader and friends remain.
  6842 	4)	SARMBERIP
  6843 
  6844 2) Jo
  6845 	1)	Fixed EPOC software problem SW1-29 "Local/System Filetime confusion - WINC"
  6846 		Changes to SFILE\SF_FILE,SF_NBS; SFAT\SL_DIR,SL_MNT; SWINS\ELOCAL	
  6847 	
  6848 		The file timestamps are now stored as UTC times in line with Win32. 
  6849 		File times are converted transparently between local and UTC times as
  6850 		necessary (so no adverse effect on eg the Shell) but WINC now gets the
  6851 		system time it expects and can deal with it accordingly.
  6852 		Obviously, any existing files stored on CF card will now be reported with
  6853 		incorrect timestamps if their last modification local time differed from
  6854 		GMT.  This also required a E32 fix (see E32 release note 157.2.1).
  6855 
  6856 	2)	Modification to SFAT\SL_VFAT to fix a problem with the way UNICODE builds
  6857 		cope with legal DOS file names.
  6858 
  6859 	3)	Modification to SFAT\SL_FMT and SFAT\SL_STD to allow F32 to get the correct
  6860 		number of hidden sectors as reported by E32 (TLocalDriveCaps).  This will
  6861 		fix Epoc Software Problem SW1-44 and Bluebell defect SW1-412 where 
  6862 		WinCE machines rejected EPOC formatted CF cards.  
  6863 		
  6864 3)	Alastair
  6865 	1)	Added ESHELL.EXE to GROUP\EWINS.REL and ESHELL.PDB to GROUP\EWINSDB.REL.
  6866 	2)	Changed code loading patch ldds from C:\system\libs\ to check that the
  6867 		third UID is KPatchLddUid (0x100000cc), and added KPatchLddUidValue to
  6868 		SFILE\SF_MAIN.CPP.
  6869 	3)	Fixed minor ESHELL bug.
  6870 	4)	Removed references to all bldmake-generated batch files from LI.PRJ
  6871 		files containing them, and updated MNT.BAT so that directories \BWINC,
  6872 		\BVC4 and \BVC4WINC are not archived (they contain nothing but
  6873 		bldmake-generated files anyway).  This means that to build F32 from
  6874 		source bldmake must always be called first to generate the batch files,
  6875 		and ensures these batch files are more likely to be up-to-date.
  6876 	5)	Changed targettype in ELOCAL.MMP and EFAT.MMP from DLL to FSY.  Removed
  6877 		FSY.DEF from BWINS, BMARM and BSARM directories.
  6878 	6)	Updated SFILE\SF_LDR.CPP in accordance with changes to E32 157's
  6879 		MapEmulatedFileName() function.
  6880 
  6881 
  6882 Version 1.02.122
  6883 ================
  6884 (Made by Jonathan, 27th October 1998)
  6885 
  6886 N.B. WINS DEB/UDEB will only work with E32 156 OR LATER.
  6887 
  6888 1) Dennis
  6889 	1)	Reintroduced debug/release interoperability by synchronising DEF files
  6890 		between WINS REL and DEB builds.
  6891 2) Jo
  6892 	1)	Modified SFAT\SL_VFAT to generate an acceptable DOS shortname for
  6893 	  	UNICODE long filenames.
  6894 	2)	Made the vendor ID in the bootsector more generic - changed from
  6895 	  	"PSIONPLC" to "EPOC".
  6896 
  6897 3) Alastair
  6898 		1) Added the following Unicode Uid values
  6899 			KFileSystemUidValue		0x100039df
  6900 			KFileServerUidValue		0x100039e3
  6901 			KFileServerDllUidValue	0x100039e4
  6902 		2)	Updated .MMP files in accordance with the UNICODE plan.
  6903 		3)	Changed MNT.BAT to get E32TOOLP version 096.
  6904 
  6905 
  6906 Version 1.02.121
  6907 ================
  6908 (Made by Morgan, 20th October 1998)
  6909 
  6910 NB: REQUIRES E32 VERION 155 OR LATER
  6911 
  6912 (1) Jo
  6913 
  6914 1) Fixed EPOC software problem SW1-199 "Narrow build DLLs not seen on UNICODE machine"
  6915 
  6916 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).  
  6917 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).
  6918 Modification to CFatDirCB::ReadL() (SFAT\SL_DIR) and CFatMountCB::DoFindL() (SFAT\SL_MNT) to allow UNICODE to recognise and deal with these files.
  6919 
  6920 2) Fixed EPOC software problem SW1-253 "TFileText::Write() has wrong prototype"
  6921 Added const to the prototype - now TInt TFileText::Write(const TDesC& aDes)
  6922 
  6923 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)
  6924 
  6925 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.  
  6926 
  6927 5) Fixed a bug in the global function NumberOfVFatEntries() (in SFAT\SF_UTL)
  6928 
  6929 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.
  6930 
  6931 2)	Alastair
  6932 	1)	Changed dllLoader() function in \F32\SFILE\SF_LDR.CPP to allow
  6933 		the Emulator to run from anywhere.  The function no longer
  6934 		searches the Epoc search path under WINC if libraries aren't found
  6935 		in the Win32 search path.  Under WINS this function now
  6936 		passes an Epoc path rather that a full Win32 path to E32 to
  6937 		fix Epoc Software problem SW1-153 "Allow applications to
  6938 		simulate running from C: or D: on WINS".
  6939 	2)	Removed \F32\SFILE\SF_WINS.CPP.  This file provided
  6940 		functionality to map Epoc filenames to Win32 filenames.  The 
  6941 		functionality has been improved and is now provided by
  6942 		new EUSER function MapEmulatedFileName().  Since this version of F32
  6943 		calls MapEmulatedFileName() it requires E32 version 152 or above.
  6944 	3)	Various minor WINS/WINC fixes and reorganisation.
  6945 	4)	Incorporated \F32\SWINC\ELOCWINC.CPP into
  6946 		\F32\SWINS\ELOCWINS.CPP to isolate WINS/WINC differences and
  6947 		make them easier to maintain.  ELOCWINS.CPP now uses
  6948 		MapEmulatedFileName() to do its Epoc->WINS drive mapping.
  6949 	5)	Corrected WINS base address in line with the Notes document
  6950 		and added 0x66000000 for EFSRV.DLL.
  6951 	6)	Symbianised copyright information appearing in the text shell.
  6952 
  6953 
  6954 Version 1.02.120
  6955 ================
  6956 (Made by Jo, 18th September 1998)
  6957 
  6958 A number of modifications and additions to F32 for this release.  First release post-ER4.
  6959 
  6960 1) Jo
  6961 
  6962 (1) Fixed EPOC Software problem SW1-160.  
  6963 	
  6964 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()
  6965 
  6966 (2) Fixed Bluebell defect SW1-728
  6967 	
  6968 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.
  6969 		
  6970 (3) Fixed EPOC Software problem SW1-132
  6971 
  6972 RFs::DoGetDirL() was ignoring the return value from its call to CDir::Sort()
  6973 It now inspects the value and leaves if an error occurred.	
  6974 
  6975 (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.	
  6976 
  6977 (5) Fixed Series 5 problem SW1-764 "F32 over-allocates clusters"	
  6978 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.
  6979 
  6980 (5) Fixed Series 5 problem SW1-770 "Can't handle the last root directory entry"
  6981 The root required the last entry to be an end-of-directory entry.  Removed this requirement.
  6982 
  6983 (6) Fixed Series 5 problem SW1-842 "TInt Write() does not work as documented"
  6984 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.
  6985 	
  6986 (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).  
  6987 
  6988 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).  
  6989 
  6990 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).
  6991 	
  6992 (8) Implemented RFs functions GetLongName() and GetShortName for UNICODE builds.
  6993 
  6994 (9) Implemented EPOC proposal SW1-52 "File Server function to read from a file regardless of the lock state"	
  6995 RFs now supplies function ReadFileSection() to allow F32 clients to read bytes from any position in the file, regardless of its lock state.
  6996 
  6997 (10) Implemented EPOC proposal SW1-91 "Extend file server change notification"
  6998 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).  
  6999 	
  7000 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.  
  7001 
  7002 These changes required some modification to the CSessionFs class (BC not affected except internal to F32).
  7003 
  7004 (11) Implemented EPOC proposal SW1-92 
  7005 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).
  7006 
  7007 (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.
  7008 
  7009 (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.
  7010 
  7011 (14) Made a change to the way F32 handles each client request in SFILE\SF_MAIN.  
  7012 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.
  7013 
  7014 (15) Added some Set/Get functions to classes CFatMountCB() and CServerTask to reflect data encapsulation therein.
  7015 
  7016 
  7017 
  7018 Version 1.02.115
  7019 ================
  7020 (Made by Jo, 29th July 1998)
  7021 
  7022 1) Jo
  7023 	Re-release of F32 114 with correct build version number in \INC\F32VER.H
  7024 	and correct E32,E32Tools and E32ToolP build version numbers (in \GROUP\MNT.bat)
  7025 	
  7026 	F32 release will now validate.
  7027 
  7028 
  7029 Version 1.02.114
  7030 ================
  7031 (Made by Jo, 17th July 1998)
  7032 
  7033 1) Jo
  7034 	1) Fixed EPOC Software Problem SW1-12.  F32 previously assumed that the name of
  7035  	DLLs to which an executable links, were embedded in the import data as a Unicode 			
  7036 	string - in reality the data is ASCII text.  This was causing executables to fail 		
  7037 	to load from RAM on Unicode builds.  
  7038 	After consultation with the internationalisation team, F32 is to be modified in
  7039 	stages to resolve this problem.  This release marks completion of the first 	
  7040 	stage - F32 has now been modified to restrict Dlls to 8 bit names. 
  7041 	
  7042 	Executables may now be loaded from RAM on Unicode builds.  There has, in
  7043  	effect, been no	change to 8 bit builds.
  7044 
  7045 
  7046 Version 1.02.113
  7047 ================
  7048 (Made by Jo, 14th July 1998)
  7049 
  7050 1) Jo
  7051 	1) Fixed BluebellDefects bugs SW1-587 and SW1-620 by ensuring that the iSession 	   	   	   	   	   
  7052 	   data member of CServer task is initialised for each session. (\SFILE\SF_TASK)
  7053 	
  7054 	2) Added extra function DestroyTaskThread() to class CServerTask to clean up
  7055 	   iSessionThread and iMessageSemaphore when session is closed.  Also modified 
  7056 	   CServerTask::TaskThreadFunction() code to use iTheDrive->iDriveMutex mutex
  7057 	   to protect data when fileserver operates asynchronously (\SFILE\SFTASK)
  7058 
  7059 	3) Numerous small modifications to DoParseFsXXX functions to determine
  7060 	   whether a remote mount is present and thus whether to call fileserver
  7061 	   functions asynchronously. (\SFILE\SF_DEBUG,SF_DIR,SF_DRV,SF_FILE,SF_FMT,
  7062 	   SF_MAIN,SF_NBS,SF_RAW,SF_SVR,SF_SYS).  These changes have been stress tested
  7063 	   by a new test which will be permanently added to the F32Test suite
  7064 	   (to be released separately).
  7065 
  7066 2) William
  7067 	
  7068 	1) Changes to ESHELL (\ETSHELL\TS_EDSHL) to fix EPOC Software Problem SW1-103 
  7069 	   Other improvements to ESHELL as follows:	
  7070 
  7071 		a) Decoded kernel faults are shown as "PLAT 9" rather than "9 PLAT"
  7072 
  7073 		b) You can run an exe with funny arguments without getting bitten by the 		   .bat file processing, e.g. "apprun a\b\c"
  7074 
  7075 
  7076 
  7077 
  7078 
  7079 
  7080 Version 1.02.112
  7081 ================
  7082 (Made by Morgan, 23rd June 1998)
  7083 
  7084 1) Jo
  7085 	1) Fixed bugs SW1-363, 376, 413, 414, 427, 453 by ensuring that the TDrive
  7086 	   data member of CSessionFs is fully updated for each new session.
  7087 	2) Added some extra code to ensure full initialisation of the CSessionFs data
  7088 	   members of CFatMountCB, CFixedCache and CFileShare.  Removed the unused
  7089 	   and unnecessary CSessionFs data member in CFormatCB.
  7090 
  7091 2) Morgan
  7092 	1) Fixed a batch file CD bug in ESHELL
  7093 	2) Fixed some bugs in the remote file system support.  Mostly
  7094 	   indescriminate handle orphaning, OOM behaviour errors, and
  7095 	   some other weirdnesses.
  7096 	3) Simplified some code, removed some unecessary indirections,
  7097 	   and reduced the size of the session classes.
  7098 
  7099 
  7100 Version 1.02.111
  7101 ================
  7102 (Made by Pete, 10th June 1998)
  7103 
  7104 1) Dennis
  7105 	1)	Changed occurrences of TSimpleArray<T> and TPointerArray<T> to
  7106 		RArray<T> and RPointerArray<T> following renaming in E32.
  7107 
  7108 2) Petteri
  7109 	1)	Changed LDRPATCH.MMP
  7110 
  7111 3)	Alastair
  7112 	1)	Changed sfile\sf_main.cpp so that patches are loaded automatically
  7113 		after a warm reset. The code will attempt to load, in name order,
  7114 		any files in directory "C:\System\Libs\" as logical device drivers
  7115 		if they have the logical device driver second uid, the extension
  7116 		".SYS" and the "System" file attribute.
  7117 	2)	Changed ELOCAL.FSY so that the initial default path for WINC
  7118 		programs is the current directory rather than C:\.
  7119 	3)	Changed CLocalFileCB::IsRomDrive() to return EFalse under WINC so
  7120 		that WINC programs can write to drive Z:.
  7121 	4)	Removed macro EXPORT_IF_NOT_WINC_C from various files where it had
  7122 		failed to fulfil it's duty in stopping certain functions being
  7123 		exported in WINC builds (WINC EFSRV.DLL effectively combines the
  7124 		functionality of WINS dlls EFSRV.DLL and EFILE.DLL, but shouldn't
  7125 		export functions that WINS EFILE.DLL does). Hacked MNT.BAT instead
  7126 		so that WINS-built EFSRV.LIB is released for WINC builds, so that
  7127 		WINC and WINS builds of EFSRV.DLL remain binary compatible.
  7128 	5)	Changed MNT.BAT so that MNT GETBLD gets the tools required for building.
  7129 
  7130 4)	Jo
  7131 
  7132 	1)	Fixed EPOC32 software problem SW1-56 to prevent a file being turned into
  7133  		a directory.
  7134 		In SFile\SF_FILE DoFsFileSet(): Added ValidateAtts() to bring it into
  7135  		line with DoFsFileSetAtt()
  7136 
  7137 	2)	Fixed EPOC32 software problem SW1-30
  7138 		SFSRV\CL_FIND TFindFile::DoFindInDir() no longer returns KErrNone when
  7139  		an inaccessible network drive returns KErrAccessDenied.
  7140 
  7141 	3)	Fixed EPOC32 software problem SW1-91
  7142 		SFAT\SL_FMT CFatFormatCB::DoFormatStepL() now writes a media descriptor
  7143 		byte to the start of the second FAT as well as the first FAT.
  7144 
  7145 	4) 	Fixed Series 5 software problem SW1-278
  7146 		in SFSRV\CL_FMAN so hidden files may now be deleted by CFMan::Delete()
  7147 
  7148 
  7149 Version 1.02.110
  7150 ================
  7151 (Made by Morgan, 14th May 1998)
  7152 
  7153 1) Dennis
  7154 	1) Changes to allow for multiple ROM root directories for use with
  7155 	   multiple-variant ROMs.
  7156 	2) Changed occurrences of CArray* to TSimpleArray.
  7157 
  7158 2) Morgan
  7159 	1) Fixed Bluebell defect SW1-56
  7160 	2) Minor fixes to ESHELL to correct error reporting
  7161 	3) Fixed Series 5 defect SW1-878
  7162 
  7163 3) Basher
  7164 	1) Made the file server asynchronous
  7165 
  7166 
  7167 ================
  7168 Big version number increment to skip over Liffey Lavender release.
  7169 ================
  7170 
  7171 Version 1.02.096
  7172 ================
  7173 (Made by Jonathan, 8th May 1998)
  7174 
  7175 1) Alastair
  7176 	1) Changed MNT.BAT so that MNT GETRELE32 no longer gets the
  7177 	   debugging information releasables for RELEASE builds.
  7178 	2) Changed MNT.BAT to retrieve E32TOOLS 091 and E32TOOLP 091.
  7179 
  7180 2) Matthew
  7181 	1) Changed text shell to use the KConsFullScreen constant, so it can
  7182 	   be run on small-screen machines. This requires E32 124 or above.
  7183 
  7184 3) Jo
  7185 	1) Change to DoListOpenFiles() in SFILE\SF_FILE, to align each TEntry 
  7186        in the list along a 4 byte boundary.  
  7187 	   The bug came to light when running F32tests in WINC.
  7188 
  7189 	2) Minor cosmetic changes to the text shell code following a code review.
  7190 
  7191 
  7192 Version 1.02.095
  7193 ================
  7194 (Made by Graham, 16th February 1998)
  7195 
  7196 1) Graham
  7197         1)      Removed debug/release interoperability from
  7198                 WINS/WINC. Reverted to 092-style .DEF files.
  7199                 
  7200 
  7201 Version 1.02.094
  7202 ================
  7203 (Made by Dennis, 12th February 1998)
  7204 
  7205 1)	Dennis
  7206 	1)	Debug/Release interoperability take 2: Synchronised DEF files for
  7207 		WINS/SARM/SARMBE builds.
  7208 
  7209 Version 1.02.093
  7210 ================
  7211 (Made by Jonathan, 10th February 1998)
  7212 
  7213 1)	Alastair
  7214 	1)	Changed mnt getrel so that it doesn't attempt to get the non-existent
  7215 		.PDB files for release builds.
  7216 
  7217 2)	Dennis
  7218 	1)	Added dummy exported debugging functions to release build to facilitate
  7219 		debug/release interoperability.
  7220 
  7221 Version 1.02.092
  7222 ================
  7223 (Made by Jonathan, 27th January 1998)
  7224 
  7225 1) Jonathan
  7226 	1)	Don't format drive C: in StartupThread unless it's a RamDrive.
  7227 
  7228 Version 1.02.091
  7229 ================
  7230 (Made by Alastair, 26th January 1998)
  7231 
  7232 1) Morgan
  7233 	1)	Range checking implimented on import ordinals.  The import stub of
  7234 		a function ordinal that is not exported by the relevent Dll is
  7235 		fixed up to point to a paniking function.
  7236 
  7237 	2)	Loader no longer does a FindByPath while searching for Dlls when no
  7238 		path is supplied.
  7239 
  7240 	3)	TFindFile returns KErrNoMemory on OOM.
  7241 
  7242 2) Alastair
  7243 	1)	Moved build system over to MAKMAKE.  The batch files for building F32 are
  7244 		created by e32tools's BLDMAKE.  From the GROUP directory, type BLD or CLEAN
  7245 		or PREPARE without any arguments for help on how to use the new batch
  7246 		commands.  MAKMAKE has not yet been applied to the build system for MISA or
  7247 		MX86.  CLEAN.BAT uses NMAKE to do its cleaning, so a PREPARE.BAT
  7248 		needs to have been done first.  PREPARE.BAT will make the makefiles and
  7249 		build the working directories.
  7250 
  7251 	2)	Renamed freeze files from .FRZ to .DEF, including CONSMARM.FRZ, CONSMISA.FRZ
  7252 		and CONSWINS.FRZ.
  7253 
  7254 	3)	Removed WINS_UID statements from all source files.
  7255 
  7256 
  7257 3) Jo
  7258 	
  7259 	1)	Fixed SW1-623.
  7260 		ESHELL no longer forces the command line into uppercase.  The shell 
  7261 		no longer calls the console T_TSHELL (it now calls it ESHELL for 
  7262 		consistency). 
  7263 
  7264 	2)	Various cosmetic fixes.
  7265 		For example, when in a subdirectory, the prompt is now the correct
  7266 		drive:path> rather than drive:path\>.
  7267 
  7268 	3)	Improved batch file processing.
  7269 		This includes searching for autoexec.bat at startup in the order
  7270 		y,x,...,b,a then z rather than just looking at the default drive.
  7271 		Other improvements include fixing the bug that caused problems when
  7272 		blank lines were present in the batch file, and making changes to allow
  7273 		a drive change in the batch file.
  7274 
  7275 	4)	Various changes to the TShellCommand functions in class ShellFunction.
  7276 		For example, the addition of an ATTRIB function, the alteration of
  7277 		COPY, GOBBLE, RENAME and MOVE to allow spaces in the file/directory
  7278 		names and a fix to RD.
  7279 
  7280 	5)	A recursive dependency checker for Dlls/Exes.
  7281 		This rushes through statically linked libraries checking that each 
  7282 		is available and that the Uids are correct.  The checker is called 
  7283 		automatically if CShell::RunExecutable fails, to give more information 
  7284 		than the "Not Found" and "Not Supported" messages that were obtained 
  7285 		previously.  The checker has also been added to class ShellFunction
  7286 		and thus may be used directly as a TShellCommand function:
  7287 		CHKDEPS [Executable or Dll Name].
  7288 		
  7289 	6)	Better decoding of kernel faults and panics.
  7290 		The Ctrl-Fn-R dialogue now only shows the last exception information 
  7291 		as a raw hex number if the reset reason was a Kernel exception. 
  7292 		For kernel faults and kernel panics it now prints the category which is
  7293 		obtained by decoding the exception information.
  7294 
  7295 
  7296 Version 1.02.090
  7297 ================
  7298 
  7299 1) Dennis
  7300 	1)	Set the session path for gTheLoaderFs to C:\ when the loader connects
  7301 		to the file server.
  7302 
  7303 
  7304 Version 1.02.089
  7305 ================
  7306 
  7307 1) Matthew
  7308 	1)	Added code so that loading of the window server, or opening files, is
  7309 		done only from rom when Hal::StartupReason() returns EStartupSafeReset.
  7310 		This is particularly for the SB variant, where C: persists across even
  7311 		cold resets. The user must reset the machine to get out of this
  7312 		state. Changes to:
  7313 			sfile\sf_dat
  7314 			sfile\sf_main
  7315 			sfile\sf_file
  7316 
  7317 2) Alastair
  7318 	SARM
  7319 	1)	Integrated Single-process code into f32 source.
  7320 		Build commands are mnt sarm, sarmall, sarmrel etc.  There are no
  7321 		releaseables and no facilities for building test programs.  SARM builds
  7322 		use the "__SINGLE__" macro for distinguishing Single-process-specific 
  7323 		code.  Work directories are \epoc32\build\f32\sarm\[build] and
  7324 		\epoc32\release\sarm\[build].  SARM makefiles are generated into
  7325 		\f32\bsarm using perl to process makefiles from \f32\bmarm as a 
  7326 		temporary measure prior to the use of makmake for creating f32 
  7327 		makefiles.
  7328 			Changes to \bsarm\*, \group\mnt.cmd, \sfat\sl_mnt, \sfile\sf_ldr.
  7329 
  7330 3) Dennis
  7331 	1)	Modified loader to read data section linear address from iDataBssLinearBase
  7332 		for ROM-loaded EXEs and to read KImageFixedAddressExe flag for RAM-loaded EXEs.
  7333 	2)	Added calls to UserSvr::UnlockRamDrive() and UserSvr::LockRamDrive() to
  7334 		implement RAM-drive protection.
  7335 	3)	Loader now keeps file server session (gTheLoaderFs) open all the time, instead
  7336 		of connecting at the start of every load operation and disconnecting at the end.
  7337 	4)	Files changed:
  7338 		inc\	f32image.h
  7339 		sfat\	sl_disk.cpp, sl_fat.cpp
  7340 		sfile\	sf_main.cpp, sf_ldr.cpp, sf_image.cpp, sf_ses.cpp
  7341 
  7342 4) Morgan
  7343 	1)	Added some stuff in the loader to deal with Dll data.
  7344 
  7345 
  7346 Version 1.02.088
  7347 ================
  7348 (Made by Morgan, 22nd September 1997)
  7349 
  7350 1) Basher
  7351     1)  UniCode Fix: f32file.h, KEntryArraySize=0x200 to 0x200*sizeof(TText)
  7352     2)  UniCode Fix: \f32\sfat\sl_mnt.cpp so that this strips "." from the
  7353         end of a given file/dir names. eg.(SUBDIR.).
  7354     3)  Modified following test codes for UniCode builds:
  7355         \f32\tfsrv\t_nmbs
  7356         \f32\tfsrv\t_file
  7357         \f32\tfsrv\t_fman
  7358         \f32\tfsrv\t_dirs
  7359         \f32\tfsrv\t_gdir
  7360         \f32\tfsrv\t_parse
  7361 
  7362 2) Morgan
  7363 	1)	See \F32\PATCH\RELEASE.TXT
  7364 
  7365 
  7366 Version 1.02.087
  7367 ================
  7368 (Made by Jonathan, 5th September 1997)
  7369 
  7370 1) Dennis
  7371     1)	Fixed SW-21.
  7372 	Modified E32Image::LoadDlls() to call UserSvr::ExeAddDependency()
  7373 	instead of UserSvr::DllAddDependency() when an EXE is found to depend
  7374 	on a DLL which is already in the loaded DLL array.
  7375 
  7376 2) Morgan
  7377 	1) Updated LDRPATCH.LDD.  See \F32\PATCH\RELEASE.TXT for details.
  7378 
  7379 
  7380 Version 1.02.086
  7381 ================
  7382 (Made by Jonathan, 26th August 1997)
  7383 
  7384 1) Pete
  7385 	1) Fixed problem where FAT file system was setting the lru
  7386 	cache maximum segment count to -1 on machines where free ram was less
  7387 	than 1Mb. This meant that all segments where deleted from the
  7388 	segment queue resulting in a panic on the first read of the ATA drive.
  7389 
  7390 2) Morgan
  7391 	1) Improved wildcard substitution for Copy-and-Rename operations.
  7392 	2) Fixed SW1-385.  CFileMan now recurses into hidden and system
  7393 	   directories when KEntryAttHidden and KEntryAttSystem specified.
  7394 	3) Fixed SW1-121.  WINC F32 now keeps up with drives substed after
  7395 	   F32 started.  A side effect of the fix is accesses to drives that
  7396 	   are unused now returns KErrPathNotFound, rather than KErrNotReady.
  7397 	   This fix applies to WINC only.
  7398 	4) Added test code.
  7399 
  7400 
  7401 Version 1.02.085
  7402 ================
  7403 (Made by Morgan, 1st August 1997)
  7404 
  7405 1) Dennis
  7406         1) Fix for loading a dll which is itself in a circular chain
  7407            of dependency.
  7408 
  7409 2) Graham
  7410         1) Updated minor version number to 02.
  7411 
  7412 
  7413 Version 1.00.084
  7414 ===============
  7415 (Made by Morgan, 1st August 1997)
  7416 
  7417 1) Fixed SW1-160 - Duplicate filenames when cut and pasting V1.0 files
  7418 2) Fixed SW1-340 - Don't put in DLL-to-DLL links when one of the files is an EXE
  7419 
  7420 
  7421 Version 1.00.083
  7422 ===============
  7423 (Made by Morgan, 27th July 1997)
  7424 
  7425 1) Added T_DLOCL test program
  7426 2) Fix from Jal to remove memory leak on media change
  7427 3) '\000' added to list of illegal characters in filenames to fix SW1-53
  7428 4) Added LDRPATCH.LDD.  See \F32\PATCH\RELEASE.TXT
  7429 5) Modified E32Image::LoadDlls() to remember the address of each library
  7430    loaded and to pass information back to the kernel so that it can build up
  7431    a tree structure showing which DLLs are dependent on which.
  7432    Fixes CSW3-1559, CSW3-1560, CSW3-1530, SW1-91, SW1-155, SW1-158
  7433 
  7434 
  7435 Version 0.01.082
  7436 ===============
  7437 (Made by Morgan, 16th July 1997)
  7438 
  7439 1) Increased the maximum size of the loader heap to fix SW1-82
  7440 
  7441 
  7442 Version 0.01.081
  7443 ===============
  7444 (Made by Jal, --rd July 1997)
  7445 
  7446 1) --
  7447 
  7448 
  7449 Version 0.01.080
  7450 ================
  7451 (Made by Jal, 23rd June 1997)
  7452 
  7453 1) Removed check for the existance of the fileserver (fix 7 below) from WINS builds
  7454 
  7455 
  7456 Version 0.01.079
  7457 ================
  7458 (Made by Jal, 23rd June 1997)
  7459 
  7460 1) SW3-688 Max number of root dir entries on the internal disk has been doubled.
  7461 
  7462 2) SW3-1370 Caught KErrArgument in CActiveSchedulerFs::Error()
  7463 
  7464 3) SW3-1475 All uppercase alphanumeric chars are allowed as 8.3 filenames
  7465 
  7466 4) SW3-1003 Lowercase chars are not allowed in 8.3 filenames
  7467 
  7468 5) SW3-1056  Accessing unavailable partitions on a cf-card returns KErrNotReady instead of KErrCorrupt
  7469 
  7470 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.
  7471 
  7472 7) SW3-1360 Check that the fileserver does not exist before creating it.
  7473 
  7474 8) SW3-1194 Disk error notifiers should not appear spontaneously.
  7475 
  7476 9) SW3-850 Renaming a directory into a subdirectory of itself returns KErrInUse instead of KErrAccessDenied
  7477 
  7478 10) SW3-854 Attempts to open files on read only media in EFileWrite mode fail with KErrAccessDenied
  7479 
  7480 11) SW-3870 RFs::NotifyChangeCancel will not get failed in debug mode
  7481 
  7482 Version 0.01.078
  7483 ================
  7484 (Made by Jal, 3rd June 1997)
  7485 
  7486 1) SW3-948 Added checksum to VFAT
  7487 
  7488 Version 0.01.077
  7489 ================
  7490 (Made by Jal, 28th May 1997)
  7491 
  7492 1) SW3-142 Added change to minimise wear on cf-cards
  7493 
  7494 Version 0.01.076
  7495 ================
  7496 (Made by Jal, 27th May 1997)
  7497 
  7498 1) SW-4369 Added EDirDescending flag to sort.
  7499 	
  7500 	This determines whether directories are sorted in the order A-Z or Z-A.
  7501 	Files are sorted according to the EDescending flag.
  7502 
  7503 2) SW-5243 The loader thread no longer has system attributes
  7504 
  7505 3) SW3-768 Another fix to asynchronous notification.
  7506 
  7507 4) SW-4260 UNC filename support - changes from SimonB
  7508 
  7509 	This is an unapproved change but has absolutely no effect whatsoever on any
  7510 	build except WINC and I'm told it is essential for the nautilus project.
  7511 
  7512 Version 0.01.075
  7513 ================
  7514 (Made by Jal, 21st May 1997)
  7515 
  7516 1) Commented out some useless ldr debug printfs. (debug mode only)
  7517 
  7518 2) SW3-687 
  7519 
  7520 	Fixes to asynchronous notification.
  7521 
  7522 Version 0.01.074
  7523 ================
  7524 (Made by Jal, 21st May 1997)
  7525 
  7526 1) All attempts to access a mount while it is being formatted return KErrInUse
  7527 
  7528 2) When Password::IsEnabled() returns ETrue EWSRV.EXE is only searched for on drive Z:
  7529 
  7530 3) Morgan, Fixed SW3-329
  7531    The loader now sets the iFilename and iRootName as it is capitalised on the drive.
  7532 
  7533 4) The notifier triggered by an error while writing is now partially asynchronous.
  7534 
  7535 	All calls to the fileserver will be failed with KErrInUse except ::Close() methods
  7536 	and RFs::NotifyChange and RFs::NotifyChangeCancel.
  7537 
  7538 5) The volumename is now treated as a zero terminated string.
  7539 
  7540 Version 0.01.073
  7541 ================
  7542 (Made by Jal, 15th May 1997)
  7543 
  7544 1) Fixed .TXT defect
  7545 
  7546 2) TParse::AddDir(aName) returns KErrBadName if aName contains a path delimiter
  7547 
  7548 3) Directories are always sorted by name.
  7549 
  7550 4) TFindFile searches for files in drive order Y-A,Z
  7551 
  7552 5) The windowserver is also searched for in the above drive order.
  7553 
  7554 6) The drive attributes returned by RFs::DriveList now take into account substituted drives.
  7555 
  7556 7) Morgan
  7557 	Passed the path of the main loadee in all calls to FindDll().
  7558 
  7559 Version 0.01.072
  7560 ================
  7561 (Made by Jal, 8th May 1997)
  7562 
  7563 1) Morgan
  7564 	Fixed Dll and Exe RAM loading problems SW-4476 and SW-4800 when
  7565 	used with E32(105).
  7566 	DPlatLibrary::Loaded() is called on all statically linked libraries
  7567 	during a load.  Previously some were missed out if Dlls further down
  7568 	the link chain pulled in new unseen libraries.
  7569 	CSessionLoader::LoadProcess now writes back the TLoaderInfo to the
  7570 	client even if the load fails.  This provides more information to
  7571 	allow client side code to cleanup if necessary.
  7572 
  7573 2) Jal
  7574 	1) Sort by type sorts by both the 2nd and 3rd uids - then by name
  7575 
  7576 	2) Fixed source of corruption in directory creation
  7577 
  7578 	3) Added mount check before flushing information when closing a file
  7579 
  7580 	4) Fixed problem with SetNotifyUser spotted by Doug	
  7581 
  7582 Version 0.01.071
  7583 ================
  7584 (Made by Jal, 30th April 1997)
  7585 
  7586 1) Fixed 4121 -  "Asynchronous Writes of zero bytes completes twice"
  7587 
  7588 2) Fixed 2696 - All localised text has been moved to ELOCL.DLL
  7589 
  7590 3) Optimised CFileMan::Move to rename if the files reside on the same drive.
  7591 
  7592 4) Fixed 4362 4367 and 4555 - MaxLength folder names can be created 
  7593    and corruption will not occur.
  7594 	
  7595 	There are still problems in this area. 
  7596 
  7597 5) Fixed 4256 - Volume label will default to ""
  7598 
  7599 6) Fixed 4486 - All files are sorted by uid2
  7600 
  7601 7) Fixed 4352 - Uids are sorted lowest -> highest. 
  7602 
  7603 	Uid2==0 is treated as special case and listed last.
  7604 
  7605 
  7606 Version 0.01.070
  7607 ================
  7608 (Made by Jal, 19th April 1997)
  7609 
  7610 1) Fixed 3812 - The startcluster of a file is written to disk as soon as it is allocated.
  7611 
  7612 2) Fixed 3462 - PsiWin 1.1 + long filenames in Z: no longer cause fileserver termination.
  7613 
  7614 3) Fixed 3755 - The EFSRV.LIB that WINC releases is copied from the WINS build.
  7615 
  7616 4) Fixed 3756 - ELOCAL.FSY in WINC links by ordinal
  7617 
  7618 5) Fixed 3757 - All frz files are up to date.
  7619 
  7620 6) Removed KUidExe from eshell
  7621 
  7622 	UIDS
  7623 	====
  7624 	
  7625 	eshell.exe		UID1 = 0x1000007a
  7626 	efile.exe		UID1 = 0x1000007a	UID2 = 0x1000008c	UID3 = 0x100000bb
  7627 	elocal.fsy		UID1 = 0x10000079	UID2 = 0x1000008f	UID3 = 0x100000d6
  7628 	(efat.fsy		UID1 = 0x10000079	UID2 = 0x1000008f	UID3 = 0x100000d6) // wins only
  7629 	efsrv.dll		UID1 = 0x10000079	UID2 = 0x1000008d	UID3 = 0x100000bd
  7630 
  7631 	KExecutableImageUid	 = 0x1000007a
  7632 	KDynamicLibraryUid	 = 0x10000079
  7633 
  7634 	KServerProcessUid	 = 0x1000008c
  7635 	KFileSystemUid		 = 0x1000008f
  7636 	KSharedLibraryUid	 = 0x1000008d
  7637 	
  7638 	KFileServerUid		 = 0x100000bb
  7639 	KLocalFileSystemUid	 = 0x100000d6
  7640 	KFileServerDllUid	 = 0x100000bd
  7641 
  7642 7) Fixed 3053 - Incorrect filesystem loading.
  7643 
  7644 	As suggested by Geert, the code has been changed to invoke 
  7645 	the loader directly.
  7646 
  7647 8) Fixed 3758 - Check uid1 before loading filesystem.
  7648 
  7649 9) Fixed 3786 -  The 'Not enough power' notifier will only appear once.
  7650 
  7651 Version 0.01.069
  7652 ================
  7653 (Made by Jal, 19th April 1997)
  7654 
  7655 1) Fixes to the WINC loader.
  7656 
  7657 2) Updated Notifier to new values returned by Eikon. Fixes SW-3667
  7658 
  7659 3) Added KUidExe to eshell.
  7660 
  7661 4) Generally improved security of RFormat. Fixes SW-3574
  7662 
  7663 	If a file, or directory is open RFormat::Open returns KErrInUse.
  7664 	While a disk is being formatted any attempt to open a file or directory will
  7665 	return KErrInUse.
  7666 
  7667 Version 0.01.068
  7668 ================
  7669 (Made by Jal, 16th April 1997)
  7670 
  7671 1) Fixed SW-2760 (Reading from a text file gives KErrEof too early)
  7672 
  7673 2) Fixed format defect
  7674 	
  7675 	After a media changed, format gave a spurious error.
  7676 
  7677 3) Removed assert from RFs::NotifyChangedCancel fixing SW-3316
  7678 
  7679 4) Relaxed attribute setting restrictions
  7680 
  7681 	Attempting to set the directory attribute on a file (or viceversa) will have no effect rather 
  7682 	than causing an error. This allows code such as file.SetAtt(att,~att); to be written.
  7683 	Setting and clearing the same attribute is still panicked.
  7684 
  7685 5) Fixed SW-3183, Copy doesn't preserve read-only status of file
  7686 
  7687 6) Fixed SW-3143, CFileMan::Copy() to wild card destination drops the character after the dot
  7688 
  7689 7) Removed notification on writing to the start of a file.
  7690 
  7691 	This generated too many spurious notifications when files were being copied.
  7692 
  7693 8) Removed notification on creation of temporary files to reduce the amount of scanning done by the shell.
  7694 
  7695 9) Fixed SW-3032, Unknown files should be listed last
  7696 
  7697 10) All arm releasables are petraned and use the new UID scheme.
  7698 
  7699 11) Added notifications when write fails due to bad power and for any other failures.
  7700 
  7701 Version 0.01.067
  7702 ================
  7703 (Made by Graham, 9th April 1997)
  7704 
  7705 1) Morgan
  7706 	1) TLoaderInfo changes for UID support
  7707 
  7708 
  7709 Version 0.01.066
  7710 ================
  7711 (Made by Jal, 9th April 1997)
  7712 
  7713 1) GetDir behaviour changed - hidden or system files will not be listed unless you ask for them.
  7714 
  7715 	KEntryAttNormal|KEntryAttDir - List files & directories that are not hidden or system 
  7716 	KEntryAttNormal - List files only that are not hidden or system
  7717 	KEntryAttDir|KEntryAttMatchExclusive - List dirs only that are not hidden or system 
  7718 	KEntryAttHidden|KEntryAttSystem|KEntryAttNormal|KEntryAttDir- List all files & directories
  7719 	KEntryAttHidden|KEntryAttSystem|KEntryAttNormal- List all files only
  7720 	KEntryAttHidden|KEntryAttSystem|KEntryAttDir|KEntryAttMatchExclusive- List all dirs only
  7721 
  7722 2) Frozen file server defs
  7723 
  7724 3) Fixed defect spotted by JeremyW that allowed open files to be deleted.
  7725 
  7726 4) TFindFile now also returns the file's uid.
  7727 
  7728 5) Added notification on writing to the start of a file to catch changes to the uid.
  7729 
  7730 6) MkDirAll checks that a disk is mounted before returning any other errors.
  7731 
  7732 Version 0.01.065
  7733 ================
  7734 (Made by Jal, 2nd April 1997)
  7735 
  7736 1) Loaded compact rom media driver
  7737 
  7738 2) Made iArray protected in CDir
  7739 
  7740 3) Added a synchronous alert when a write is interrupted.
  7741 
  7742 	This is only a provisional solution but seems reasonably stable.
  7743 	It will hang on pressing "CTRL-SHIFT-ALT S" which causes the window server to 
  7744 	attempt to dump the screen to a file but is otherwise ok.
  7745 
  7746 	It is important that the threads which are needed to display the alert dialog 
  7747 	do not trigger it. RFs::SetNotifyUser(EFalse) can be used to prevent the dialog
  7748 	from being displayed.  
  7749 
  7750 Version 0.01.064
  7751 ================
  7752 (Made by Jal, 31th March 1997)
  7753 
  7754 1) Jal
  7755 
  7756 	1) Tweak to drive naming
  7757 
  7758 	2) Added notification on media change
  7759 
  7760 	3) Brought .FRZ files upto date
  7761 
  7762 2) SimonB
  7763 	
  7764 	1) Removed dependency on MSVCRT from EFILE and ELOCAL
  7765 
  7766 
  7767 Version 0.01.063
  7768 ================
  7769 (Made by Jal, 23th March 1997)
  7770 
  7771 1) Optimised delete
  7772 
  7773 2) Added drive naming functionality.
  7774 
  7775 	TInt RFs::GetDriveName(TInt aDrive,TDes& aName) const;
  7776 	TInt RFs::SetDriveName(TInt aDrive,const TDesC& aName);
  7777 
  7778 3) Fixed media change bug  
  7779 
  7780 Version 0.01.062
  7781 ================
  7782 (Made by Jal, 19th March 1997)
  7783 
  7784 1) Completed protection against corrupt data
  7785 
  7786 2) Fixed bug whereby folders with trailing spaces could be created.
  7787 
  7788 3) Fixed SW-1251
  7789 
  7790 	TFileText::Read reading a record into a buffer length of the same
  7791 	length returned KErrTooBig
  7792 
  7793 4) Fixed SW-1265
  7794 
  7795 	Changed the behaviour of TFileText::Read as suggested by
  7796 	Howard.
  7797 
  7798 5) Removed checks that power is ok. SW-1618
  7799 
  7800 6) Added TBool RFs::IsValidName(const TDesC& aName)
  7801 
  7802 	Checks whether aName contains any illegal chars.
  7803 	
  7804 7) Added TUint8* RFs::IsFileInRom(const TDesC& aName)
  7805 	
  7806 	Convenience function to save "Open file, seek, close" being
  7807 	performed every time the address of the start of a file is needed.
  7808 
  7809 8) RFs::SetEntry and RFs::SetModified can now alter directory times on WINS (they always worked on the rack)
  7810 
  7811 	Problem spotted by DominicP and fixed by SimonB
  7812 
  7813 Version 0.01.061
  7814 ================
  7815 (Made by Jal, 14th March 1997)
  7816 
  7817 1) The return value of MkDir has been changed creating a folder with the name of an existing file.
  7818 
  7819 	MkDir attempting to overwrite a file returns KErrAccessDenied
  7820 	MkDir attempting to overwrite a directory returns KErrAlreadyExists
  7821 
  7822    Attempting to create a file with the name of an existing folder returns KErrAccessDenied.
  7823    Attempting to create a file with the name of an existing file returns KErrAlreadyExists.
  7824    (This is behaviour has not changed)
  7825    
  7826    Fixes SW-727
  7827 
  7828 2) Added KEntryAttMatchExclude to allow more versatile directory listings.
  7829 	
  7830 	KEntryAttMatchExclude|KEntryAttReadOnly excludes all read only entries from the directory listing.
  7831 	KEntryAttMatchExclusive|KEntryAttReadOnly just list read only entries
  7832 	KEntryAttNormal list all entries except directories, hidden and system entries.
  7833 
  7834 3) Attempting to remove a directory set as read only will return KErrAccessDenied
  7835 
  7836 	Fixes SW-1399
  7837 
  7838 4) CFileMan::Copy and Move return KErrAlreadyExist if  source == target	
  7839 
  7840 5) Fixed WINS filedate defect SW-1350
  7841 
  7842 6) Added conversion of WINS error ERROR_INVALID_DRIVE to KErrNotReady (for SimonB)
  7843 
  7844 7) Added some protection against corrupt data making the filesystem panic or go into loops, more to follow.
  7845 
  7846 Version 0.01.060
  7847 ================
  7848 (Made by Jal, 7th March 1997)
  7849 
  7850 1) Fixed RFs::Replace
  7851 
  7852 2) Fixed RmDir
  7853 
  7854 Version 0.01.059
  7855 ================
  7856 (Made by Jal, 5th March 1997)
  7857 
  7858 1) CFileMan::Rename allows the case of filenames to be changed
  7859    Fixes SW-820 (again)
  7860 
  7861 2) Added thread name generation to allow asynchronous CFileMen to be run simultaneously.
  7862 
  7863 3) CFileMan::RmDir sends notification messages to the observer for each entry removed.
  7864 
  7865 4) Fixed caching problem with cf-cards SW-207
  7866 
  7867 5) Added iExtraInfo to CFileMan::Rename from SiamakM
  7868 
  7869 6) Changes to TShell from William Roberts
  7870 
  7871 	XREPRO - to run repro with [Y/N] confirmation
  7872 	
  7873 	Reports the build in the startup message
  7874 
  7875 7) Fixed memory leak when CFileMan::Copying multiple identical files. (Diagnosed by Siamak)
  7876 
  7877 8) Fixed 'double delete' bug in Loader that causes an exception under low mem conditions (Fix by Morgan)
  7878 
  7879 Version 0.01.058
  7880 ================
  7881 (Made by Jal, 3rd March 1997)
  7882 
  7883 1) Stopped RFile::Rename allowing the new name to contain wildcard chars
  7884 
  7885 2) RFs::Rename, RFs::Replace and RFile::Rename allow the case of filenames to be changed
  7886    Fixes SW-820
  7887 
  7888 3) RFs::NotifyChange(ENotifyEntry, ...) only notifies when an entry has been added or deleted.
  7889    RFs::NotifyChange(ENotifyAll, ...) triggers a notification when any changes are made.
  7890    Fixes SW-803 and SW-540
  7891 
  7892 4) Added a NotifyChange at the successful close of a format.
  7893    Fixes SW-936.
  7894 
  7895 5) Fixed WINS filedate format
  7896 
  7897 	When viewed from command prompt the filedates were 1 year too old 
  7898 
  7899 6) RFs::Replace preserves the filedate
  7900    Fixes SW-426
  7901 
  7902 Version 0.01.057
  7903 ================
  7904 (Made by Jal, 26th Feb 1997)
  7905 
  7906 1) Bug fix to dismount/remount of cf-cards reported by Pete.
  7907 
  7908 Version 0.01.056
  7909 ================
  7910 (Made by Jal, 24th Feb 1997)
  7911 
  7912 
  7913 1) Morgan
  7914 	Added sanity checking to the loader
  7915 
  7916 1) Jal
  7917 	More testcode + fixes to RRawDisk
  7918 	
  7919 	RRawDisk is opened on a mount rather than a drive
  7920 
  7921 
  7922 Version 0.01.055
  7923 ================
  7924 (Made by Jal, 19th Feb 1997)
  7925 
  7926 1) Fixed CFileMan::Rename defects SW-169 SW-171 and SW-177
  7927 
  7928 Version 0.01.054
  7929 ================
  7930 (Made by Jal, 13th Feb 1997)
  7931 
  7932 1) Made ESortByUid sort each uid group alphabetically
  7933 
  7934 Version 0.01.053
  7935 ================
  7936 (Made by Jal, 12th Feb 1997)
  7937 
  7938 1) Added an ESortByUid code to TEntryKey
  7939 
  7940 	This will allow directory entries to be grouped according to UID.
  7941 	- Unfortunately the ordering of files within the uid group is arbitrary.
  7942 
  7943 Version 0.01.052
  7944 ================
  7945 (Made by Jal, 10th Feb 1997)
  7946 
  7947 1) Error return codes for file reads and writes:
  7948 
  7949 	READ ERRORS
  7950 	===========
  7951 
  7952 	// Returns KErrNone - success
  7953 	// Returns KErrNotReady - non-critical error
  7954 	// Returns KErrCorrupt - an illegal read is detected
  7955 	// Returns KErrBadPower - power too low to attempt read
  7956 	
  7957 	WRITE ERRORS
  7958 	============
  7959 
  7960 	// Returns KErrNone - success
  7961 	// Returns KErrNotReady - non-critical error
  7962 	// Returns KErrCorrupt - an illegal write is detected
  7963 	// Returns KErrBadPower - power too low to attempt write
  7964 	// Returns KErrAbort - critical write failure
  7965 
  7966 	NOTES
  7967 	=====
  7968 
  7969 	A critical error can only occur if power completely fails without warning AND a write 
  7970 	to the cf-card is in progress AND the card is removed before power is reapplied.
  7971 
  7972 	A critical error means there is the possibility of corruption that cannot be repaired
  7973 	by retrying the write operation.
  7974 
  7975 	A non-critical error means that the application can ask the user to rectify the fault, 
  7976 	eg: apply power or replace the disk and then retry the operation.
  7977 
  7978 
  7979 2) Implemented renaming of open files
  7980 
  7981 3) Some directory handling optimisations
  7982 
  7983 4) Bug fix to WINC DriveInfo from SimonB
  7984 
  7985 Version 0.01.051
  7986 ================
  7987 (Made by Jal, 2nd Feb 1997)
  7988 
  7989 Jane:
  7990 
  7991 1) Fixed Unicode ARM builds which had rotted with the type-safe linking.
  7992 
  7993    IMPORTANT - could I encourage everyone to release Unicode release and debug variants
  7994    so that even if it doesn't work, we can measure the size of the Unicode ROM.
  7995 
  7996 Jal:
  7997 
  7998 1) Added an active object to restart the loader should it ever die fixing SW-47
  7999 
  8000 2) The following chars are now illegal within filenames:
  8001 
  8002    < > : " / |
  8003 
  8004    This preserves compatibility with WINS and fixes SW-246
  8005 
  8006 3) RFile::Flush only flushes the files size.
  8007 
  8008    This is a requirement in order to safeguard Store integrity.
  8009    All entry attribute changes are written directly to disk.
  8010 
  8011 4) CFileMan return value changed:
  8012    
  8013    Aborting a CFileMan operation now returns KErrCancel instead of KErrAbort.
  8014    KErrAbort must be reserved for informing applications that a user has decided to abort a write.
  8015 
  8016 Version 0.01.050
  8017 ================
  8018 (Made by Jal, 24th January 1997)
  8019 
  8020 Jal:
  8021 
  8022 1) Added an RFs::GetDir variant that matches by TUidType
  8023 
  8024 	IMPORT_C TInt GetDir(const TDesC& aName,const TUidType& anEntryUid,TUint anEntrySortKey,CDir*& aFileList) const;
  8025 	Null uid's may be used as 'wildcards'
  8026 
  8027 2) Added an RDir::Open variant that matches by TUidType
  8028 
  8029 	IMPORT_C TInt Open(RFs& aFs,const TDesC& aMatchName,const TUidType& aUidType);
  8030 	This was introduced to support the above GetDir function but may be useful to others.
  8031 	Files read from the directory are selected based on aMatchName and the uids.
  8032 
  8033 3) New TFileManError errorcode
  8034 
  8035 	If no files are processed by an operation it returns KErrNotFound and the TFileManError
  8036 	is set to ENoFilesProcessed.
  8037 
  8038 	eg: If a copy matches no files it will return KErrNotFound.
  8039 
  8040 4) Started alloc failure checking - debug build only (see test code)
  8041 
  8042 5) Changed definition of TVolumeInfo.iSize on the ramdrive
  8043 
  8044 	After discussion with SimonB the ramdrive iSize = the potential size of the ramdrive.
  8045 	ie current actual size + free memory
  8046 
  8047 6) TParse no longer automatically strips leading spaces
  8048 
  8049 	The VFAT standard allows filenames to have leading spaces.
  8050 	Trailing spaces are still stripped.
  8051 
  8052 	eg: _L("   file   . ext") is a good filename.
  8053 
  8054 7) Bug fixes
  8055 	
  8056 	Various fixes to bugs found by testing in low memory situations.
  8057 
  8058 
  8059 Version 0.01.049
  8060 ================
  8061 (Made by Jal, 10th January 1997)
  8062 
  8063 1) Morgan,
  8064 		1) Increased the stack size for the LoaderThread because it
  8065 		   was exploding on the X86 version.
  8066 		2) Added Memory Alloc Failure tools and a cleanup stack to the
  8067 		   loader.
  8068 		3) Fixed the loader so it behaves under low memory
  8069 		   conditions and added alloc failing test code (T_LDR) for the
  8070 		   X86 platform.
  8071 		4) Fixed a bug that was allocating too much ram for an Image's
  8072            code chunk.
  8073 		5) Put in a fix so that device drivers can be loaded from RAM.
  8074            Problems arise because device drivers link directly to
  8075 		   EKERN.EXE and the loader verifies all exporting libraries
  8076 		   are DLLs, (which EKERN.EXE is not).
  8077 
  8078 2) Graham
  8079                 1) Made relocatable static data changes appropriate for
  8080                    our real-time needs.
  8081 
  8082 Jal:
  8083 
  8084 1) Fixed HA-297.
  8085 
  8086 	CFileMan::Move cleans up after failure.
  8087 
  8088 2) Fixed HA-299
  8089 
  8090 	CFileMan::Copy detects cyclic copies
  8091 
  8092 3) Fixed HA-301
  8093 
  8094 	CFileMan::SetAsynchronous has been removed.
  8095 	All asynchronous functions require a TRequestStatus which is used to logon to the thread.
  8096 
  8097 4) Minor changes to api
  8098 
  8099 	RFormat::Open argument changed from TFormatMode to TUint
  8100 	RFormat::Next argument changed from TPckBuf<TInt>& to TInt&
  8101 	CFileMan NewCopy,NewMove etc have replaced the old functions 
  8102 	Made recursive CFileMan::Rename illegal due to problems renaming across directories
  8103 	Removed CFileMan::SetRecursiveSearch and added a switch ERecurse.
  8104 	Renamed CFileMan::BytesTransferred to BytesTransferredByCopyStep
  8105 	Removed CFileMan::Logon and CFileMan::LogonCancel
  8106 	TFindFile::FindByPath now requires a TDesC* to save 512 bytes of stack space
  8107 
  8108 5) Removed aRelPath argument from CDirScan::SetScanData
  8109 
  8110 6) Added TScanDirection to CDirScan
  8111 
  8112 	EScanDownTree starts at the top of a directory tree scanning each layer in turn.
  8113 	EScanUpTree starts from a leaf directory and works upwards.
  8114 
  8115 7) Fixed SW-55
  8116 
  8117 	CDirStack::PushL cleans up its argument on failure.
  8118 	
  8119 8) Fixed HA-241 - Added TParsePtr and TParsePtrC classes
  8120 
  8121 	To save stack space TParsePtr allows the TParse functionality to 
  8122 	be used without	copying a buffer to an intermediate TParse.
  8123 	TParsePtr takes a TDes& which is manipulated by the usual TParse functions.
  8124 	TParsePtrC takes a TDesC& and the AddDir() or PopDir() functions cause a panic.
  8125 
  8126 9) Fixed HA-298 & HA-412
  8127 
  8128 	CFileMan::RmDir uses the callbacks before deleting files/directories.
  8129 
  8130 10) Fixed HA-271
  8131 
  8132 	CFileMan::Copy overwrite option bug fixed
  8133 
  8134 11) TFileText::Read returns KErrEof 
  8135 
  8136 	This is necessary to distinguish the case of reading an empty line from
  8137 	hitting the end of the file. 
  8138 	
  8139 12) Changes to file size are flushed to disk before a seek backwards is made.
  8140 
  8141 	This is a requirement for Store.
  8142 
  8143 13) Fixed HA-413
  8144 
  8145 	CFileMan error reporting capabilities have been enhanced.
  8146 	TFileManError gives details about the cause of the error and
  8147 	GetCurrentTarget gives the name of the target of the operation.
  8148 
  8149 14) Enabled the ramdisk to access memory directly.
  8150 	
  8151 15) Moved occurances of TEntryArray onto the heap to help prevent out of stack space problems
  8152 
  8153 16) Changed the error returned by RFile::Create from KErrInUse to KErrAlreadyExists 
  8154 	when the conflicting file is open.
  8155 
  8156 17) Additional shell commands
  8157 
  8158 	TRACE [0xFFFFFFFF] [/f] [/l] [/s]
  8159 
  8160 		/f - turn on Fat filesystem debugging information
  8161 		/l - turn on Loader debugging information
  8162 		/s - turn on fileServer debugging information
  8163 		0xFFFFFFFF - set E32 debug info mask
  8164 		
  8165 		TRACE 0 - turns off all debugging information.
  8166 	
  8167 	DEFPATH [string]
  8168 
  8169 		Set default path to "string". No argument returns the current default path
  8170 
  8171 18) RFs functions that can act on directories as well as files have been made more user friendly.
  8172 
  8173 	Rename, Entry, SetEntry, GetShortName and GetLongName will automatically handle 
  8174 	directory arguments such as _L("C:\\System\\") which previously needed to be passed
  8175 	without the trailing backslash.
  8176 
  8177 19) RFs::SetEntry and RFile::SetAtt panic if attributes KEntryAttDir or KEntryAttVolume are set or cleared
  8178 	A check is also carried out for attempting to clear and set the same attributes in the same call.
  8179 
  8180 20) CFileMan callbacks have been removed in favour of a Mixin class as recommended by MartinT.
  8181 
  8182 Version 0.01.046
  8183 ================
  8184 (Made by Jal, December 21st 1996)
  8185 
  8186 1) Fixed cf-card bug.
  8187 	
  8188 	Cf-card data was being corrupted as the card filled > 170k. However, due to 
  8189 	internal caching of good data the corruption does not appear until after the 
  8190 	card is remounted - which allowed test code to pass.                
  8191 
  8192 Version 0.01.045
  8193 ================
  8194 (Made by Matthew, December 13th 1996)
  8195 
  8196 This release is binary compatible with 044
  8197 
  8198 1) Matthew
  8199         1) Fixed HA-298 (CFileMan::RmDir() callbacks not called).
  8200 2) Morgan
  8201         1) Fixed HA-311
  8202 
  8203 Version 0.01.044
  8204 ================
  8205 (Made by Graham, December 9th 1996)
  8206 
  8207 This release is binary compatible with 042
  8208 
  8209 1) Graham
  8210         1) Made changes to the PS function in ESHELL.EXE which had
  8211            become bugged due to the changes to MatchF() in E32 075.
  8212 
  8213 2) Morgan
  8214         1) Bug fix in the loader:  The last linked in DLL was being ignored
  8215            by the library load finalisation code.
  8216            
  8217 3) Simonb
  8218         1) Moved the WINC file server over to the new WINS compatable E32
  8219         2) Changed loader code so WINC can load Dll's from anywhere
  8220         3) Added new ELOCAL for WINC in the SWINC directory. This
  8221            doesn't map drives or mess around with ROM inttracacies.
  8222         4) Removed from sf_wins DriveMapping
  8223 
  8224 
  8225 Version 0.01.042
  8226 ================
  8227 (Made by Graham, November 28th 1996)
  8228 
  8229 1) Matthew
  8230 	1) Changd lots of functions retuning TInts to identical functions returning
  8231 	   TBools.
  8232 
  8233 	2) Changed Wins UID scheme. See E32 release notes.
  8234 
  8235 2) Andrew Thoelke
  8236 	1) Fixed bug in the code in the fat filing system to expand the lower portion of
  8237        the seek index when the file shrunk.
  8238 
  8239 
  8240 Version 0.01.041
  8241 ================
  8242 (Made by Jal, November 20th 1996)
  8243 
  8244 ** Almost binary compatible with 039
  8245 ** Format has changed. If you do any disk formatting your code will need attention
  8246 ** Otherwise the release is entirely binary compatible.
  8247 
  8248 1) Improved caching
  8249         
  8250         There is now a global cache shared between all Mounts as a 
  8251         least recently used list of sector sized segments.
  8252 
  8253 2) Fixed MkDir Bug
  8254         
  8255         MkDir on the root now returns  KErrAlreadyExists instead of
  8256         KErrBadName
  8257 
  8258 3) Fixed HA-268 access violation from CFileMan::Delete
  8259 
  8260 4) Format overhauled
  8261 
  8262 	Format functionality now complies with the SDK.
  8263 	Open returns a 'count' which is decremented to zero by repeated calls to Next.
  8264 	EFullFormat fills the entire disk with 0xFF before formatting.
  8265 	EQuickFormat makes only the minimum changes needed for the disk to appear formatted.
  8266 	EHighDensity and ELowDensity are ignored.
  8267 
  8268 5) WINS Z: emulation bug fix
  8269 
  8270 	Opening a file on Z: with mode EFileWrite now returns KErrAccessDenied in both
  8271 	wins and arm builds. (Reported by DuncanS)
  8272 
  8273 6) Added a cluster index to RFile to improve seek times
  8274 
  8275 7) Cached the location of the last directory visited
  8276 
  8277 8) TFileText recognises \r\n as a line terminator
  8278 
  8279 9) Added overwrite option to:
  8280 	
  8281 	CFileMan::Copy 
  8282 	CFileMan::Rename
  8283 	CFileMan::Move
  8284 
  8285 10) KErrInUse is returned when access to a file is not granted because someone else is using it.
  8286 	KErrAccessDenied is returned if write privileges are requested on a readonly file.
  8287 	KErrInUse is returned preferentially to KErrAccessDenied.
  8288 
  8289 Version 0.01.040
  8290 ================
  8291 (Made by Graham, November 8th 1996)
  8292 
  8293 1) Alastair
  8294         1) Introduced process status mode, entered by typing "ps".
  8295            help information while in the mode is displayed by typing
  8296            "?" or "h", and the mode can be exited by pressing "q".
  8297            This command is used to display the current state of
  8298            O/S resources such as threads, processes, chunks etc.
  8299 
  8300 
  8301 Version 0.01.039
  8302 ================
  8303 (Made by Jal, November 6th 1996)
  8304 
  8305 ** Binary compatible with 038 **
  8306 
  8307 1) Fixed defect preventing ARM Debug booting on 8MB machines.
  8308 
  8309 2) Fixed defect in RFile::SetSize reported by Geert.
  8310 
  8311 Version 0.01.038
  8312 ================
  8313 (Made by Jal, October 26th 1996)
  8314 
  8315 1) Minor changes to API
  8316 
  8317 	KWildAny and KWildChar replaced by KMatchAny and KMatchOne
  8318 
  8319 	TOpenFileScan::Owner removed
  8320 
  8321 	NewSetErrorCondition -> SetErrorCondition, after deleting the old function
  8322 
  8323 	TFindFile::File returns a TDesC& instead of a TParse
  8324 
  8325 	+ others
  8326 
  8327 2) Changed internal variables in TParse from TInt8 to TUint8
  8328 
  8329 3) Changed the text shell TRACE command to take a hex number rather
  8330    than ON and OFF. You can now turn on debug using eg: TRACE FE7F.
  8331    See K32STD.H for list of KTRACE_OPT values which can be set for
  8332    different levels of debug information available from E32
  8333 
  8334 Version 0.01.037
  8335 ================
  8336 (Made by Jal, October 18th 1996)
  8337 
  8338 ** This release is binary compatible with 036 **
  8339 
  8340 1) BugFix: CF cards are now mounted as they are inserted.
  8341 
  8342 2) Fixed Protea B2 HA-192: Open files can no longer be deleted
  8343 
  8344 3) BugFix: Stopped zero length reads on a CF cards reporting an error.
  8345 
  8346 4) Fixed Software defects HA-247: WINS build converts ERROR_DISK_FULL to KErrDiskFull
  8347 
  8348 5) Fixed Protea B2 HA-201: 
  8349 	
  8350 	Only C, D, E, F, and G appear as local drives on TDriveList.
  8351 	NB: E, F and G are available as partitions on a CF-Card.
  8352 
  8353 6) Added wildcard file location to TFindFile
  8354 
  8355 7) Fixed bug in EShell. Del with no arguments deletes no files.
  8356 
  8357 8) Added a count to the SetErrorCondition function.
  8358 
  8359 	To preserve binary compatibility I had to make it a new function NewSetErrorCondition
  8360 	which will be renamed when the old function is deleted after an unfreeze.
  8361 
  8362 9) Added another callback to CFileMan.
  8363 
  8364 	CallBackDuring() is called while copying files. A return value of ECancel will stop the
  8365 	copy, EContinue to carry on.
  8366 
  8367 10) Added BytesTransferred() function to CFileMan.
  8368 
  8369 	This function is to support the smooth increment of progress bars during a file copy.
  8370 	BytesTransferred should be called within a CallBackDuring().
  8371 
  8372 11) CF-cards format has been changed again. They can now be freely transfered between protea
  8373 	and your PC.
  8374 
  8375 12) Some optimisations to RFile::Seek. More to follow.
  8376 
  8377 13) The loader has moved into a thread that is continuously running. This should
  8378 	prevent problems caused by the interaction between the loader and the undertaker.
  8379 
  8380 
  8381 Jane
  8382 1)  Fixed a few places where code assumed KErrGeneral==KNotFound
  8383 
  8384 Version 0.01.036
  8385 ================
  8386 
  8387 1) Morgan
  8388         Changes to EPOC platform:
  8389         1) Fixed RAM loading of statically linked libraries:  A DLibrary
  8390            of a statically linked DLL is now created relative to the newly
  8391            created process.
  8392            Also, the call to UserSvr::LibraryLoaded for each library is delayed
  8393            until all Dlls are loaded so that the code chunk is not protected
  8394            before the loader is able to fix-up the imports and entrypoints.
  8395            And, the DllRefTable of a library/exe is updated for all of its
  8396            imported DLLs, not just the ones that have not already been 'seen'
  8397            further up the load chain.
  8398            
  8399         2) Added 4 Uids (for Uid1) that are checked for EXEs and DLLs at load time:
  8400            KNarrowDebugUid, KNarrowReleaseUid, KWideDebugUid, KWideReleaseUid.
  8401         
  8402         3) Added type safe linking for statically linked DLLs.  The libraries 3rd
  8403            Uid is encoded in the DLL's export name.  eg. TEST[12345678].DLL would
  8404            link to TEST.DLL and the 3rd Uid would be verified to be 0x12345678
  8405            when it was loaded.
  8406 
  8407         4) Change to E32ImageHeader and TLoaderInfo data structures to add
  8408            iPriority member.
  8409 2) Jal
  8410         1) *.* matches all filenames, with or without extensions.
  8411 
  8412         2) TOpenFileList is implemented. 
  8413         
  8414         Calling TOpenFileList::Next returns a CFileList of files 
  8415         opened by one RFs session.
  8416 
  8417         3) Fixed Notify bug. Multiple sessions can now be notified of
  8418            file changes.
  8419         
  8420         4) Various changes to CFileMan.
  8421         
  8422         All operations are now implemented and allow recursion through 
  8423         subdirectories.
  8424 
  8425         5) Bug fix to WINS RFs::SetEntry.
  8426 
  8427         Setting the time on a read only file gave KErrAccessDenied
  8428         - spotted by Dominic.
  8429 
  8430 Version 0.01.035
  8431 ================
  8432 (Made by Jal, September 27th 1996)
  8433 
  8434 1) Added an ESortNone option to TEntryKey.
  8435 
  8436         Any code that relied on ESortByName == 0 will be broken by
  8437         this change. 
  8438 
  8439 2) SteveG:
  8440     1) Added DEBUG command to the E32 text shell which starts the GDB stub. Type
  8441        debug <filename>. The stub, D_GDB.EXE, must be present in Z:\SYSTEM\LIBS
  8442        and should be after EUSER.DLL and before anything you are debugging
  8443        in the ROM obey file. D_GDB will live in Z:\SYSTEM\PROGRAMS in
  8444        future, but for now problems may occur if it is not in LIBS.
  8445        
  8446     2) Fixed a few bugs in the shell to do with running executables when supplying
  8447        paths from different drives or directories.
  8448 
  8449 Version 0.01.034
  8450 ================
  8451 (Made by Jal, September 23rd 1996)
  8452 
  8453 1) Local drive attributes are initialized even if a disk is not present.
  8454 	
  8455 	- TDriveList will now contain entries for all local drives.
  8456 	- TDriveInfo.iType is set to EMediaNotPresent if the drive doesn't contain a disk.
  8457 	
  8458 2) Changes to CFileMan.
  8459 
  8460 	By default CFileMan provides synchronous functions. 
  8461 	Call SetAsynchronous(ETrue) to make CFileMan operate asynchronously within a low priority thread.
  8462 	An optional callback function is checked after each successfully completed or 
  8463 	failed operation and should return retry, continue or abort.
  8464 	
  8465 3) Bug fix: Under WINS drive C: now returns the correct media attributes.
  8466 
  8467 4) TDriveUnit added to F32FILE.H from BillB.
  8468 
  8469 5) Bug fix: TFindFile no longer panics if its RFs session cannot connect. 
  8470 	
  8471 	A connected session is passed in during construction.
  8472 
  8473 6) Bug fix: EShell Type command opens files with mode EFileShareAny
  8474 
  8475 7) A change to the bootsector format means any cf-cards formatted by release 033 will not be recognised.
  8476 
  8477 Morgan
  8478 1) Extended Library and Process loading in line with E32.
  8479 2) Added more library loading test code.
  8480         
  8481 Version 0.01.033
  8482 ================
  8483 (Made by Jal, September 11th 1996)
  8484 
  8485 1) Initial path moved to C: on all platforms.
  8486 
  8487 2) Bug fixed: NTFS Uid streams can now be read.
  8488 
  8489 3) Bug fixed: Code no longer attempts to read a UID from a file with length < sizeof(TCheckedUid)
  8490 
  8491 4) EShell now has a fully functional single line editor - thanks to SteveG
  8492 
  8493 5) TParse changed:
  8494 
  8495 	The path and extension are now inherited regardless of drives.
  8496 
  8497 6) KErrDiskFull is now returned when you run out of disk space.
  8498 
  8499 7) All WINS drives are now hidden by default.
  8500 
  8501         WINS drives may be accessed by using environment variables.
  8502 
  8503 SimonB
  8504 
  8505 1) Created a new MAK file in BWINC - EFSRV. This contains both client and server side of the file server code.
  8506 
  8507 2) Changes to initialisation code, with the removal of the dependancy on k32Std.h !
  8508 
  8509 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__
  8510 
  8511 4) MNT file changes in parallel with e32.
  8512 
  8513 Version 0.01.032
  8514 ================
  8515 (Made by Jal, September 7th 1996)
  8516 
  8517 1) Jane
  8518 	1) Added environment path & system directory searching for exe loading
  8519 
  8520 	2) Added environment path searching for dll loading, and improved
  8521        WINS loading scheme to cope with new scheme for C: and Z:
  8522 
  8523 2) Jal
  8524 
  8525 	1) The directory that represents drive C: under WINS will default to
  8526 	the current drive. Similarly, the current drive will be used if the drive
  8527 	is omitted from an environment variable value.
  8528 
  8529 	2) CFileMan::Copy and Move have been implemented and will handle
  8530 	wildcards.
  8531 
  8532 	3) Bug fixed - RDir::Open no longer returns an error if the directory
  8533 	is empty.
  8534 
  8535 	4) Added TDriveNumber, an enum to enumerate drives.
  8536 
  8537 	5) Implemented RFs::Replace(anOldName,aNewName);
  8538 		
  8539 		The code is equivalent, for most purposes, to
  8540 		
  8541 		Delete(aNewName); // ignore error
  8542 		Rename(anOldName,aNewName); // pay attention to error
  8543 		
  8544 		The critical difference is that the function is atomic. That is, it avoids 
  8545 		the caller having to worry about the case of the Delete succeeding and the Rename failing.
  8546 
  8547 	6) Added functionality to TFindFile::FindByPath
  8548          
  8549 			If the path does not specify a drive letter all drives are
  8550 	searched in turn from A -> Z.
  8551 
  8552 	7) The real FAT and ROM filesystems may be added under WINS for
  8553 	testing purposes.
  8554 
  8555 		test.Next(_L("Mounting FAT filesystem"));
  8556 		r=TheFs.AddFileSystem(_L("EFAT"));
  8557 		test(r==KErrNone);
  8558 		r=TheFs.MountFileSystem(_L("Fat"),EDriveY);
  8559 		test(r==KErrNone || r==KErrCorrupt);
  8560 		if (r==KErrCorrupt)
  8561 			FormatFat();
  8562 		test.Next(_L("Mounting ROM filesystem"));
  8563 		r=TheFs.MountFileSystem(_L("Rom"),EDriveX);
  8564 		test(r==KErrNone);
  8565 
  8566 	(Code taken from T_SCAN.CPP)
  8567                 
  8568 	8) Initial default path is set to Z: on all platforms.
  8569 
  8570 Version 0.01.031
  8571 ================
  8572 (Made by Jal, August 29th 1996)
  8573 
  8574 1) ROMFILE.BIN and IRAMLDRV.BIN have been superseded by a new system 
  8575    on the WINS platform.
  8576 
  8577 	C: now shows the files in C:\Epoc32\WINS\C
  8578 	Y: has disappeared forever.
  8579 	Z: now defaults to C:\Epoc32\WINS\Z
  8580 
  8581 	Those who live on D: or have a very good reason to use a 
  8582         different path can set an environment variable _EPOC_DRIVE_? 
  8583         (where ? is the drive letter). eg:
  8584 	
  8585 	set _EPOC_DRIVE_C=D:\Epoc32\WINS\C
  8586 	set _EPOC_DRIVE_Y=C:\MY_Y_DRIVE
  8587 
  8588 2) RFs::IsRomAddress is not supported by the new system and will
  8589    be removed after the api is unfrozen.
  8590 
  8591 Version 0.01.030
  8592 ================
  8593 (Made by Jane, August 26th 1996)
  8594 
  8595 1)  Jane and Jal
  8596 	Various mnt.cmd and bld.cmd bug fixes for the new directory scheme.
  8597 
  8598 2) Morgan
  8599 	Various WINC build problem fixes for the new directory scheme
  8600 
  8601 Version 0.01.029
  8602 ================
  8603 (Made by Jane and Jal, 17 August '96)
  8604 
  8605 1) Fixed bug in RFs::Delete - corrupted disk when size > 0.5MB
  8606 
  8607 2) Stopped bad relocations warnings from being triggered by EShell
  8608 
  8609 3) Added EFSRVD.DEF to \F32\BWINS\LI.PRJ
  8610 
  8611 4) RFile::ChangeMode(TFileMode aMode) added.
  8612 
  8613 	Allows the share mode of a file to be toggled between EFileShareExclusive and EFileShareReadersOnly.
  8614 	Passing any other value returns KErrArgument.
  8615 	KErrAccessDenied is returned if a file has multiple readers and aMode==EFileShareExclusive or if the 
  8616 	file share mode is EFileShareAny.
  8617 
  8618 5) Fixed "md" bug in Shell.
  8619 
  8620 6) Added functions to allow access to short (8.3) filenames. 
  8621    (For use by people trying to talk to primative 16bit windows apps ie: Psiwin)
  8622 	
  8623 	RFs::GetShortName(const TDesC& aLongName,TDes& aShortName);
  8624 	- Gets the short name associated with the VFAT aLongName
  8625 	- aLongName must include the full path to the file if it differs from the sessionPath
  8626 	RFs::GetLongName(const TDesC& aShortName,TDes& aLongName);
  8627 	- Gets the VFAT version of aShortName
  8628 	- aShortName must include the full path to the file if it differs from the sessionPath
  8629 	
  8630 7) The WINS filesystem now returns long filenames as we now have an alternative method for accessing short ones.
  8631 
  8632 8) Renamed RFileText to TFileText and removed obselete close method.
  8633 
  8634 9) Changed function names:
  8635 	
  8636 	const TParse& CDirScan::RelPath() -> TPtrC CDirScan::AbbreviatedPath()
  8637 	const TParse& CDirScan::AbsPath() -> TPtrC CDirScan::FullPath()
  8638 	void CDirScan::SetScanDataL(...) changed TEntryKey to TUint
  8639 	TPtrC CFileBase::RelPath() -> TPtrC CFileBase::AbbreviatedPath()
  8640 	TPtrC CFileBase::AbsPath() -> TPtrC CFileBase::FullPath()
  8641 	void CFileMan::Attribs(const TParse& aFileName,TUint anAttributes) -> Attribs(const TParse& aFileName,TUint aSetMask,TUint aClearMask)
  8642 	void CFileMan::Copy(const TParse& aName,const TParse& aNewPath) -> Copy(const TParse& aName,const TDesC& aNewPath)
  8643    	void CFileMan::Locate(const TParse& aName,const TDesC* aSearchPath=NULL); has been removed.
  8644 	void CFileMan::LocateByPath(const TParse& aName,const TDesC* aSearchPath=NULL); has been added, but not implemented
  8645 	void CFileMan::LocateByDir(const TParse& aName); has been added, but not implemented
  8646 
  8647 10) Added api for TOpenFileScan. (not yet implemented)
  8648 
  8649 	This class allows the user to iterate through the files that are currently open.
  8650 	Calling Next creates a CEntryList (a typedef of CDir) of the files opened by a thread.
  8651 	The owner of the files listed is returned by calling Owner().
  8652 
  8653 11) Added api for function RFs::Replace (not yet implemented) as proposed.
  8654 
  8655 	TInt RFs::Replace(const TDesC& anOldName,const TDesC& aNewName);
  8656 
  8657 12) Added RFs::IsRomAddress
  8658 
  8659 
  8660 13) Added api for RFs::GetNotifyUser and RFs::SetNotifyUser (not implemented)
  8661 
  8662 	If NotifyUser == ETrue the user is automatically requested to replace a CF card whenever necessary.
  8663 	If NotifyUser == EFalse an error is returned to the caller - a file may be marked corrupt if a write failed.
  8664 
  8665 	Details:
  8666 	When attempting a read a check is made to ensure the disk is available. If it is not already present in a drive the
  8667 	user is asked to replace the disk. The request is repeated until the user complies or aborts the read. In this case 
  8668 	an KErrAbort is returned.
  8669 	If the disk is removed while writing data the user is requested to replace the disk and warned that failing to do so
  8670 	will result in the loss of data. If the user aborts the write the file is marked corrupt and KErrAbort is returned.
  8671 
  8672 Version 0.01.028
  8673 ================
  8674 (Made by Graham, 27 July '96)
  8675 
  8676 1) Ported B_GEN.CPP and fixed the bugs it showed up.
  8677 
  8678 2) Made more changes to the shell.
  8679 	
  8680 	Invalid switches should no longer cause a panic
  8681 	Batch files and executables can be run without specifying the .XXX extension.
  8682 
  8683 3) TInt RFs::CheckDisk(const TDesC& aDrive) method added.
  8684 
  8685 	Returns KErrNone or an error is the disk is corrupt.
  8686 
  8687 4) void RFs::SetErrorCondition(TInt anErrorCode) method added
  8688 
  8689 	Causes calls to the fileserver to fail with error anErrorCode. (anErrorCode==KErrNone clears the failure mode)
  8690 	- Only available in the debug build.
  8691 
  8692 5) Operations on the ROM such as write to file, create new directory etc now return KErrAccessDenied instead of KErrNotSupported
  8693 
  8694 6) Compression for the internal ram drive has been implemented.
  8695 
  8696 Version 0.01.027
  8697 ================
  8698 (Made by Graham, 02 July '96)
  8699 
  8700 
  8701 1) VFAT has been implemented
  8702 	
  8703 	Strings of upto 255 chars in length may be used as file or directory names.
  8704 	This has enabled us to produce the first tested Unicode release of the 
  8705 	fileserver for some time.
  8706 
  8707 2) Fixed NT time <-> TTime conversion
  8708 	
  8709 	MarkT reported a 1hr discrepancy between files listed from a dos box
  8710 	and files listed in the shell.
  8711 
  8712 3) Notify has been implemented
  8713 
  8714 	RFs::Notify allows programs to automatically update file information as changes occur.
  8715 
  8716 4) Change to TSeek
  8717 	
  8718 	OLD :: enum TSeek {EAddress,EStart,ECurrent,EEnd};
  8719 	NEW :: enum TSeek {ESeekAddress,ESeekStart,ESeekCurrent,ESeekEnd};
  8720 
  8721 5) The FAT is now cached
  8722 
  8723 6) Directory entry bug fixed:
  8724 
  8725 	Directories with > 26 entries corrupted the FAT
  8726 
  8727 7) Rename checks for duplication of file names. Rename across directories is implemented.
  8728 	
  8729 	The error returned if a rename across drives is attempted has been changed to KErrArgument.
  8730 
  8731 8) Improvements to the shell from Matthew:
  8732 
  8733 	Wildcards and a new destination can now be specified in Copy.
  8734 	Delete also accepts wildcards.
  8735 	Various bug fixes.
  8736 
  8737 9) Fixed bug HA-162 in RDir asynchronous read
  8738 	
  8739 	RDir::Read(TEntry& anEntry,TRequestStatus& aStatus) <- old
  8740 	RDir::Read(TPckg<TEntry>& anEntry,TRequestStatus& aStatus) <- new
  8741 
  8742 Jane -
  8743 
  8744 1) RAM loader code changed to support new E32Image format (E32TOOLS 029 and later.)
  8745 
  8746 	IMPORTANT NOTE - You must now update to the latest version of E32TOOLS. This
  8747     version of E32/F32 is incompatible with versions of tools pre 029.
  8748 
  8749 2) Added limited support for search paths in RAM loading of DLLs. More will be added with an additional
  8750    search path parameter in the client interface.
  8751 	
  8752 Version 0.01.026
  8753 ================
  8754 (Made by Graham, 31 May '96)
  8755 
  8756 1) Graham
  8757 
  8758         Fixed bug in loader with EXE files which import from more
  8759         than one DLL.
  8760 
  8761 2) Jal
  8762         Fixed UID bug. Uids were being read all the time regardless
  8763         KEntryAttAllowUid.
  8764 
  8765 3) Made GetDir sort using CompareF instead of just Compare.
  8766 
  8767 Version 0.01.025
  8768 ================
  8769 (Made by Graham, 30 May '96)
  8770 
  8771 1) Implemented RFileText.
  8772 	
  8773 	RFileText::Read reads a terminated line of text into a descriptor
  8774 	RFileText::Write writes the descriptor data to the end of the file and adds a terminator
  8775 	RFileText::Seek seeks to either the start or end of a file or panics.
  8776 	- after J-Day this will change to TFileText as the close method is not required.
  8777 
  8778 2) Changes to TShell (from DW) that display more information if a process panics.
  8779 
  8780 3) Implemented TFindFile
  8781 	
  8782 	TInt TFindFile::FindByPath(const TDesC& aFileName,const TDesC& aPathList);
  8783 	- Looks for aFileName then searches the semicolon delimited aPathList.
  8784 	TInt TFindFile::FindByDir(const TDesC& aFileName,const TDesC& aDir);
  8785 	- Looks for aFileName in directory aDir on all drives - the default drive is searched first.
  8786 	TInt TFindFile::Find()
  8787 	- Searches the next drive or member of the pathlist.
  8788 	void TFindFile::File()
  8789 	- Returns the last file found
  8790 	Return values are KErrNone or KNotFound
  8791 
  8792 4) Added change suggested by SimonB to WINS filesystem (HA-154)
  8793 
  8794 5) Modification to Uid behaviour under WINS at the request of GeertB:
  8795 	
  8796 	A check for a uid at the start of a file is made when the NTFS :UID stream is not present.
  8797 
  8798 6) Fixed bug HA-152. The name of the file generated by RFile::Temp now specifies the drive.
  8799 
  8800 7) Fixed bug HA-139. The archive file attribute is now set when:
  8801 	
  8802 	The file is created or replaced.
  8803 	The file is written to.
  8804 
  8805 Version 0.01.024
  8806 ================
  8807 (Made by Graham, 24 May '96)
  8808 
  8809 
  8810 1. Rename bug fixed - spotted by DominicP
  8811 
  8812 2. Implemented Uids.
  8813 
  8814    If RFs::GetDir is called with KEntryAttAllowUid selected the
  8815    entrylist will contain UID information if it is present.
  8816    All calls to RFs::Entry will return UID information.
  8817    The WINS ELOCAL.FSY implements uids as an NTFS filestream "UID"
  8818    associated with the file.
  8819 
  8820    WINS uid filestreams may be created and read using the tool e32uid.exe
  8821 
  8822 3. Created new directory TMAN for non-standard tests that must be run manually.
  8823 
  8824 4. Changed implementation of RFile::Write
  8825 
  8826    All clusters required for a write are allocated 
  8827    before data is written.
  8828 
  8829 5. The mode argument of RFile::Create and RFile::Replace is
  8830    now automatically ored with EFileWrite.
  8831 
  8832 6. GetDir on the root directory of an empty floppy in a: no longer
  8833    returns an error.
  8834 
  8835 7. Jane
  8836 	Added support for RAM loading of dlls and exes. Currently entrypoints
  8837     are called in the same manner as for ROM exes and dlls, i.e. only once
  8838     for a process attach, and never for a thread attach/detach, or a process
  8839     detach. 
  8840 
  8841 
  8842 Version 0.01.023
  8843 ================
  8844 (Made by Jal, 9 May '96)
  8845 
  8846 JAL:
  8847 
  8848 1). Changed RFile::Read() to not return KErrEof.
  8849 
  8850 Version 0.01.022
  8851 ================
  8852 (Made by Colly, 6 May '96)
  8853 
  8854 Colly:
  8855 
  8856 1). T_RCOUNT.EXE would fail if it was run from the command line
  8857     as T_RCOUNT without the .exe extension. This was because the
  8858     program tried to open itself. Fixed this with a hack since the
  8859     O/S was at fault not returning the full path name and leaving
  8860     off the extension .exe
  8861 
  8862 2). F32MSG.H was incorrectly namedas it is a private header file.
  8863     Renamed to message.h.
  8864 
  8865 3). Added some inline functions to f32file.h which meant a new
  8866     header file f32file.inl. So remember to update all dependencies.
  8867 
  8868 Jal:
  8869 
  8870 1). Arguments to GetDir changed from aFileList to anEntryList -
  8871     the former was misleading as the entries listed could be either
  8872     files or directories.
  8873 
  8874 2). CDirScan added. This provides functionality for traversing a
  8875     directory structure. CDirScan::SetScanData sets the root of the
  8876     structure. CDirScan::Next returns the directory contents. Repeatedly
  8877     calling next will move through the directory structure. See the
  8878     test code T_SCAN.CPP for an example.
  8879 
  8880 3). TShell: Matthew has made a few changes to replace explicit numbers
  8881     with meaningful constants. CShell now owns a CConsoleBase* instead of
  8882     subclassing CConsoleTextWin - as suggested by DW.
  8883 
  8884 4). As requested by KevinD:
  8885     RFile::Read returns KErrEof if it cannot read any more data.
  8886 
  8887 5). Stub functionality has been added for:
  8888     CFileMan - active object support for functions that are recursive
  8889                or can take a wildcard.
  8890     CFileBase - base class for CFileMan
  8891     RFileText - read/write \cr\lf delimited text records from a file.
  8892     RRawDisk -  allow direct disk access, no other resources can be open
  8893                 during direct access
  8894     RFs::ListOpenResources - returns a list of the currently open resources
  8895     RFs::ListOpenFiles - returns a list of the currently open files.
  8896     TFormatMode::EQuickFormat - just resets the FAT table and root directory
  8897 
  8898     I'm still looking at ways to test for server side alloc heaven from
  8899     client side test code. Hence some provisional debuging facilities
  8900     have been added:
  8901         RFs::ServerHeapMarkStart();
  8902         RFs::ServerHeapMarkEnd();
  8903         RFs::ServerHeapFailNext(TInt aCount);
  8904     Further functions to simulate Read/Write, low battery etc failures
  8905     are under discussion.
  8906 
  8907 6). Added automatic formatting of the RAM drive to the startup sequence.
  8908 
  8909 7). Added Universal identifiers to TEntry
  8910 
  8911         TEntry::operator[](TInt anIndex) const;
  8912         TEntry::IsUidPresent(TUid aUid) const;
  8913         TEntry::IsUidValid() const;
  8914         
  8915 8). mnt.cmd:
  8916 
  8917     Added %_F32VER% as the second parameter of all recursive
  8918     getXXX calls to fix defect HA-121 reported by DavidW
  8919 
  8920 9). RFs::GetDir(const TDesC& aName,TUint anEntryAttMask,TUint anEntrySortKey,CDir*& anEntryList,CDir*& aDirList)
  8921 
  8922     Changed argument name aFileList to anEntryList to reduce confusion as
  8923     reported in defect HA-90 by SimonC. anEntryList can contain either
  8924     files, directories or both depending on anEntryAttMask. eg:
  8925         anEntryAttMask=KEntryAttMaskSupported => list all entries
  8926         anEntryAttMask=KEntryAttDir|KEntryAttMatchExclusive => list directories only
  8927         anEntryAttMask=KEntryAttNormal => list files only
  8928 
  8929 10).Shell Copy Command: Will not change the time stamp to fix HA-109
  8930     reported by SteveG
  8931 
  8932 Version 0.01.021
  8933 ================
  8934 (Made by Graham, 24 April '96)
  8935 
  8936 1)  Fixed exception generated when trying to access a non-existent drive. 
  8937     (Reported by Brendan as defect HA-108)
  8938 
  8939 2)  Add to .OBY files
  8940     file=c:\work\emarm\elocald.fsy sys\elocald.fsy
  8941 
  8942 3)  Renamed T_FORMAT to T_MISC as it includes many simple, general tests as
  8943     well as formatting.
  8944 
  8945 4)  RFs::MkDir trying to create a root directory on a mounted drive:
  8946     MkDir(_L("\\")); or MkDir(_L("\\PROG")); will now return KErrAlreadyExists.
  8947     If the drive is not mounted the return value could also be
  8948     KErrNotReady or KErrCorrupt.
  8949         
  8950 5)  RFs::RmDir when trying to delete a root directory returns KErrInUse.
  8951 
  8952     In general, not ready errors, corrupt media, etc are given priority
  8953     over other errors.
  8954 
  8955 6)  KDefaultDrive=KMaxTInt, the previous value was zero. This allows
  8956     simplification of drive numbering. Now A: has value 0, B: =1 etc
  8957 
  8958 7)  Split the fat file system off into its own dll. In WINS this is called
  8959     EFAT.FSY because the local filesystem is NT. For other platforms the
  8960     fat filesystem is named is ELOCAL.FSY. NB: .OBY files will need to
  8961     add the extra line: file=c:\work\emarm\elocald.fsy sys\elocald.fsy
  8962 
  8963 8)  Deleted obselete file F32Locl.cpp from SWINS directoryrCorrupt.
  8964 
  8965 Version 0.01.020
  8966 ================
  8967 (Made by Graham, 8 April '96)
  8968 
  8969 1) Jal,
  8970         Run test programs on X86 and ARM platforms.
  8971 
  8972 	MkDir acts only on the path presented by its argument and will
  8973 	ignore any filename.
  8974 	eg:
  8975 	MkDir(_L("C:\\PROG1\\PROGDATA.TXT")); will create a PROG1
  8976 	directory. 
  8977 	MkDir(_L("C:\\PROG1\\"); is exactly equivalent to the above.
  8978 	MkDir(_L("C:\\PROG1"); will return KErrBadName
  8979 	Similar changes have been made to RmDir() and RDir::Open().
  8980 	This change should be made consistently across all directory
  8981 	oriented functions - please report any I miss.
  8982 
  8983 	TParse Set(aName,aRelated,aDefault):
  8984 	aName of the form "xxx\yyy" now returns KErrBadName
  8985 	Any name that contains a '\' is treated as a path and therefore
  8986 	must start with a '\'
  8987 	Set(_L("\\xxx\\yyy"),NULL,_L("C:\\BBB")); returns a drive "C:"
  8988 	path "\xxx\" name "yyy"
  8989 
  8990 	RFile::Commit has been renamed to Flush
  8991 
  8992 	GetDir functionality should now be consistent across rom, fat and
  8993 	local drives:
  8994 	GetDir(Path_Ignoring_Name,Selection_Flags,Ordering_Flags,FileList)
  8995 	GetDir(Path_Ignoring_Name,Selection_Flags,Ordering_Flags,FileList,DirList)
  8996 	eg:
  8997 	GetDir(_L("C:\\"),NULL,NULL,aFileList); lists files only from the
  8998 	root directory into aFileList
  8999 	GetDir(_L("C:\\"),KEntryAttDir,NULL,aFileList); lists all files
  9000 	and directories excluding hidden and system files
  9001 	GetDir(_L("C:\\"),KEntryAttMaskSupported,NULL,aFileList); lists
  9002 	everything except the volume entry.
  9003 	GetDir(...,...,...,...,aDirList) aDirList lists all directories
  9004 	in addition to the above functionality.
  9005 
  9006 	TParse:: if aName or aRelated overrides the aDefault drive the
  9007 	rest of the default information
  9008 	is considered invalid and the default is treated as the root path
  9009 	_L("\\");
  9010 	eg:
  9011 	TParse.Set(_L("World"),&_L("Y:"),&_L("X:\\HELLO\\.EXT"));
  9012 	produces a fullname _L("Y:\\World");
  9013 
  9014 
  9015 Version 0.01.019
  9016 ================
  9017 (Made by Morgan, 18 March '96)
  9018 
  9019 1). Matthew,
  9020 	Redesigned the text shell to allow it to be more easily
  9021 	maintained. Also added support for batch files.
  9022 
  9023 2). Jal,
  9024 	An implementation of TPlatDrive from PeteS. Enables F32 to read and
  9025 	write to a fixed length file on C: via TLocalDrive.
  9026 	Added code to TBool P::Initialise() to initialise the
  9027 	TPlatDrive array.
  9028 
  9029 
  9030 Version 0.01.018
  9031 ================
  9032 (Made by Morgan, 23 Feb '96)
  9033 
  9034 1).
  9035 	Updated to work with E32 build 054.
  9036 
  9037 2). Matthew
  9038 	Uses the new versions of CServer and CSession.
  9039 	Improved the test shell: added TYPE and HEXDUMP commands, made CD
  9040 	remember the current directory for each drive, and added extra
  9041 	switches, including '/?'.
  9042 
  9043 3). Jane
  9044 	Fixed bug in F32 loader (not completing with correct error status)
  9045 	- now when you try to run a non-existant app you get a helpful
  9046 	little "File Not Found" error message.
  9047 
  9048 
  9049 Version 0.01.017
  9050 ================
  9051 (Made by Morgan, 29 Jan '96)
  9052 
  9053 1).	Updated to work with E32 build 053.
  9054 
  9055 2).	Removed all trace of old date/time classes.
  9056 
  9057 3). Added a GETSRC verb to MNT.CMD
  9058 
  9059 
  9060 Version 0.01.016
  9061 ================
  9062 (Made by Matthew, 16 Jan '96)
  9063 
  9064 1). Matthew
  9065 	Updated to work with E32 build 52, including partial conversion to
  9066 	the new date/time classes.
  9067 
  9068 
  9069 Version 0.01.015
  9070 ================
  9071 (Made by Matthew, 21 Dec '95)
  9072 
  9073 1). Updated to work with E32 build 051.
  9074 
  9075 2). Jane
  9076 	Added support for dll and device loading under EPOC.
  9077 
  9078 
  9079 Version 0.01.014
  9080 ================
  9081 (Made by Matthew, 12 Dec '95)
  9082 
  9083 1). Geert
  9084 	Updated to work with the new definition of TBool in E32 build
  9085 	050. See the E32 release notes for information on these changes.
  9086 
  9087 2). Jane
  9088 	Added cleanup verb to build system.
  9089 
  9090 3). Matthew
  9091 	Improved test shell to run test programs on EPOC, and added a
  9092 	few DOS-esque commands (try HELP).
  9093 
  9094 
  9095 Version 0.01.013
  9096 ================
  9097 (Made by Matthew, 21 Nov 1995)
  9098 
  9099 1). Updated to work with E32 build 049.
  9100 
  9101 Version 0.01.012
  9102 ================
  9103 (Made by Colly, 30 Oct 1995)
  9104 
  9105 1). Updated to work with E32 build 048
  9106 
  9107 2). Added builds for the Arm version in \f32\bmarm.
  9108 
  9109 3). Added support to load DLLs.
  9110 
  9111 Version 0.01.011
  9112 ================
  9113 (Made by Colly, 9 Oct 1995)
  9114 
  9115 1). Updated to work with E32 build 047
  9116 
  9117 2). The file server was not synchronising its startup with the kernel
  9118 	properly. Fixed.
  9119 
  9120 Version 0.01.010
  9121 ================
  9122 (Made by Colly, 2 Oct 1995)
  9123 
  9124 1). Updated to work with E32 build 046
  9125 
  9126 2). b_rand.cpp now compiles and runs in unicode builds. May thanks to
  9127 	Geert for fixing this.
  9128 
  9129 3). Added the basic text windows shell. The source is in \F32\TSHELL
  9130 
  9131 4). Added the loader server to support EPOC/32 builds.
  9132 
  9133 5). For EPOC/32 builds, made the file server scan for a window server
  9134 	in \SYS directories called WSERV?.EXE. It will load the correct
  9135 	window server according to the build of the file server being
  9136 	executed, i.e. WSERV.EXE, WSERVD.EXE, WSERVU.EXE and WSERVUD.EXE.
  9137 	It is also presumed that the window server will scan for a shell
  9138 	in \SYS directories. The shell is epected to be called SHELL?.EXE.
  9139 
  9140 6). Added RFs::AddFileSystem() and RFs::RemoveFileSystem(). These
  9141 	functions allow file systems to by dynamically added and removed.
  9142 
  9143 7). The ROM filing system was not opening files with the archive bit set
  9144 	as normal files. Fixed.
  9145 
  9146 8). Added the text shell to the group.
  9147 
  9148 9). If a drive was not ready and a file or directory was opened on it no
  9149 	error was reported even though ity had failed.
  9150 
  9151 10).The ROM file system was not reporting the size of files correctly.
  9152 
  9153 Version 0.01.009
  9154 ================
  9155 (Made by Colly, 30 Aug 1995)
  9156 
  9157 1). Updated to work with E32 build 045
  9158 2). Added the ROM file system for WINS. This will load a file
  9159 	in \E32SYS\ROMFILE.BIN as the ROM filling system. This file
  9160 	can be built with the E32ROM.EXE building tool or the T_ROMG.EXE
  9161 	test program. Note that	under WINS DLLs and EXEs cannot be loaded
  9162 	from the ROM filing system. For unicode the file ROMFILEU.BIN is
  9163 	generated. T_ROMG.EXE wants the path name of a directory as its
  9164 	argument. The contents of the sepcified directory become the root
  9165 	of the ROM file system. T_ROMG.EXE will include all sub-directories
  9166 	of the specified directory. Note that the ROM file system will
  9167 	appear as drive Z:.
  9168 3). First release of EPOC32/X86 version of the file server and ROM
  9169 	file system.
  9170 
  9171 Version 0.01.008
  9172 ================
  9173 (Made by Colly, 23 Aug 1995)
  9174 
  9175 1). Updated to work with E32 build 044
  9176 
  9177 Version 0.01.007
  9178 ================
  9179 (Made by Colly, 21 Aug 1995)
  9180 
  9181 1). All DLLs now link by ordinal.
  9182 2). Updated to work with E32 build 043
  9183 
  9184 NOTE
  9185 
  9186 	All test now pass in all builds. i.e. The file server is now working
  9187 	in release builds.
  9188 
  9189 Version 0.01.006
  9190 ================
  9191 (Made by Colly, 25 July 1995)
  9192 
  9193 1). Completed implementation of CDir::Sort().
  9194 2). RFile::Seek() was not supporting EAddress seek type properly. Fixed.
  9195 3). Moved the .MAK files to \F32\BWINS so the .PDB debug databases get
  9196 	full pathnames to the source files.
  9197 4). Fixed the file server bug which was causing the server to crash when
  9198 	closing the connection to the server.
  9199 
  9200 Version 0.01.005
  9201 ================
  9202 (Made by Colly, 20 July 1995)
  9203 
  9204 1). Upgrade to support E32 build 040.
  9205 2). Use the new build strategy using nmake
  9206 3). Pick up E32 headers from \E32INC
  9207 4). Unicode versions of the file server are now working.
  9208 5). Changed the RFile::Read() function to take an argument of
  9209 	TEntryArray which is a new CDT to hold a packed array of entries.
  9210 	TEntryArray just has Count() and operator[] so that it is
  9211 	"LIKE" the CArray classes. Althought the read packed entries functions
  9212 	are public they are really intended for use by the RFs::GetDir()
  9213 	functions. i.e. Use RFs::GetDir() in preference.
  9214 6). The CDir class is now implemented as are the RFs::GetDir()
  9215 	functions. CDir::Sort() still needs to be implemented.
  9216 NOTES
  9217 	b_rand.cpp does not compile in Unicode.
  9218 
  9219 Version 0.01.004
  9220 ================
  9221 (Made by Colly, 23 June 1995)
  9222 
  9223 1). Fixed a number of the functions which should have been const to
  9224 	be const.
  9225 2). Changed to work with build 039 of E32.
  9226 
  9227 Version 0.01.003
  9228 ================
  9229 (Made by DavidW, 19 May 1995)
  9230 
  9231 1). Rebuilt on my PC and re-released so that EFSRVD.DLL doesn't want
  9232 to import _adjust_fdiv from MSVCRT20.DLL (that function doesn't seem
  9233 to exist in that DLL on PCs at work!)
  9234 
  9235 Version 0.01.002
  9236 ================
  9237 (Made by Colly, 17 May 1995)
  9238 
  9239 1). Fixed a bug in RFile.Temp() which was not returning the name
  9240 	of the temporary file properly.
  9241 2). Converted the test program B_RAND.CPP.
  9242 3). Added test program T_LOCK.CPP
  9243 4). Fixed a bug in locking overlapped regions.
  9244 5). Changed T_FSRV.CPP to use O: rather than Z:
  9245 6). Recording the size of compnents in the release history.
  9246 
  9247 Comp     Date   Bld  .text   .bss .rdata  .data .idata  Total
  9248 ===== ========= === ====== ====== ====== ====== ====== ======
  9249 EFSRV 17-Mar-95   2  17502   1312    332    152   5414  23400
  9250 
  9251 Version 0.01.001
  9252 ================
  9253 (Made by Colly, 9 May 1995)
  9254 
  9255 1). First release.
  9256 
  9257 	Started with the design for the file server, had it reviewed and
  9258 	implemented it all in just two weeks.
  9259 
  9260 	The main header file is F32FILE.H.
  9261 
  9262 	The header file F32FSYS.H is for the use of implementers of file
  9263 	systems which are used by the file server.
  9264