"SfR Fresh" - the SfR Freeware/Shareware Archive

Member "HISTORY.TXT" of archive fsdext2.zip:


As a special service "SfR Fresh" has tried to format the requested source page into HTML format using source code syntax highlighting with prefixed line numbers. Alternatively you can here view or download the uninterpreted source code file. That can be also achieved for any archive member file by clicking within an archive contents listing on the first character of the file(path) respectively on the according byte size field.
    1 Version 0.17
    2 ============
    3 * Implemented QUERY8.3
    4 Query8.3 returns pure 8.3 path components for a given filename which
    5 may contain mixed (long filename and 8.3) path elements.
    6 This allows you start a win16 app by double clicking an icon with a long 
    7 filename attached (explorer will use Query8.3 to get a pure
    8 8.3 filename understood by the win16 applocation)
    9 * Implemented QUERYLONG_DIR
   10 Querylong_dir returns pure LFN path components for a given filename which
   11 may contain mixed (long filename and 8.3) path elements.
   12 This allows you to change directory on the command prompt using
   13 8.3 filenames. Command.com will query the long filename and display that.
   14 So, "cd \long_~11" will result in "q:\lost+found" as current prompt.
   15 * A space character is invalid in win16/dos apps, they are also
   16 converted to a _ character
   17 * Fixed bug in opening dot files (.elmrc etc)
   18 * Added a "relax" option (/r on the mount command line). This will
   19 force fsdext2 to skip the partition ID check in mounting.
   20 * If no drive letter is given on the mount's command line, it will
   21 use the first available drive (if any).
   22 * fixed bug in following links as cyclic links will crash the machine.
   23 Fixed it by imposing a limit on the depth of symbolic name resolving.
   24 * Allowed special files (block devices, character devices, pipes,
   25 named sockets and sym. links) to be opened for reading. Applications
   26 will read a onle line message such: Block device, major 23, minor 12
   27 * Allowed partitions to be unloaded via a /u option. For 
   28 example: "mount /u h:". Unloading is quite safe as fsdext2 will keep 
   29 track of the number of open files and whether or not it is currently 
   30 handling file system calls.
   31 * Added copyright statement and licence agreement.
   32 
   33 
   34 Version 0.16
   35 ============
   36 * support for FS_ENUMHANDLE (yet another way for an application
   37 to retrieve a file's attributes!). This caused cygnus' "ls" to
   38 display incorrect time/attributes for files. 
   39 * work-around for the following win95 feature:
   40 	If you type "dir \etc\pass*" then IFSMgr translates this
   41 	into "dir \etc\pass*.*" --> we don't see \etc\passwd
   42 Solution: if there is a wildcard (* or ?) just before a dot or 
   43 just after it, the dot is replaced by a ? (match any character)
   44 This is also the reason why "grep foo *" failed to search in
   45 files without an extention.
   46 * _all_ file system calls will use case insensitive filename
   47 matching (up until this version this was only done for findfirst/findnext
   48 calls). First a case sesnsitive (absolute match) will be tried, if that 
   49 fails, a case insensitive match is tried.
   50 
   51 
   52 
   53 Version 0.15
   54 ============
   55 * Fixed Fs_FileDateTime which not gave back the 
   56 last_modified timestamp of an open file (caused copy/xcopy
   57 to fail)
   58 * Fixed Fs_Seek which could not seek from END (caused pkzip 
   59 to fail uncompressing a file)
   60 * fixed bug in pattern matching
   61 * fixed bug in debug version which caused win95 to hang
   62 upon shutdown/reboot
   63 
   64 
   65 Version 0.14
   66 ============
   67 * fixed bug in TSD which incorrectly assigned the startsector
   68 of all ext2fs partitions in an extended partition to the 
   69 startsector of the first ext2fs partition in that extended
   70 partition. This caused f.e. hda7 and hda8 to be mapped on
   71 hda5.
   72 * made debug level dynamically configurable
   73 * made ffirst/fnext calls perform case-insensitive file
   74 name matching
   75 * fixed memory leak in ffirst
   76 * in ffirst/fnext calls, --> don't allow symbolic links 
   77 to be followed to directory entries due to possible recursion
   78 For example, /etc/inet is usually a sym. link to /etc (or . ?).
   79 
   80 
   81 
   82 
   83 
   84 Version 0.13
   85 ============
   86 * Changed the init order of the FSD --> IFSMgr routes mount
   87 requests to us first, prevent the FSD to crash in Win95 
   88 OEM2 (to be deteremined 15/06/97, one beta tester has succeeded)
   89 * changed layout when printing the partition table 
   90 * fixed bugs in FileSeek and FileClose
   91 * fsdext2 return device name for directory label
   92 * fixed bug in FsdVolInfo 
   93 * changed ffirst/fnext to return the device name as label
   94 
   95 
   96 Version 0.12
   97 ============
   98 * Changed the IOS registration which should prevent the FSDEXT2
   99 to crash in Win95 OEM2 (to be deteremined 17/02/97)
  100 * Allowed to follow links
  101 
  102 
  103 
  104 Version 0.11
  105 ============
  106 * Fixed partition handling
  107 * Fixed bug in ReadFile which causes always the first block
  108 to be read in a multiple-block read
  109 
  110 
  111 Version 0.1
  112 ===========
  113 * Initial version including block cache and directory entry
  114 cache.
  115 * Read only.
  116 
  117 
  118 
  119 
  120 
  121 
  122 KNOWN "BUGS"
  123 =========================
  124 * BUS master IDE device drivers will fail.
  125 * someone reported that his linux partition was marked as 93h
  126 (instead of the usual 83h). As a result fsdext2 wouldn't mount it.
  127 It could be due to the fact that lilo is installed on that partition.
  128 * There is a memory leak in 8.3 findfirst/findnext calls
  129 (FindContext cannot be passed as a pointer to SearchFile)
  130 * Failing a mount will not disassociate the drive letter. 
  131 * Sometimes FSDEXT2 reports EIDE drives as being SCSI drives.
  132 * There seems to exists something like extended linux partitions
  133 (id=85h). Have to get more info on this one.
  134 * After the unload support I noticed that most time the inode table 
  135 and block table are not empty after unloading a partition. I'm not 
  136 sure the above mentioned leak in the 8.3 ffirst/fnext call account 
  137 for all of these inodes and blocks haning around.
  138 
  139 
  140 
  141 THINGS THAT WILL NEVER (SEEMS TO) WORK
  142 ======================================
  143 * you cannot open files whose filename starts with a dot (f..e, ~/.elmrc)
  144 from a dos/win16 application. Win32 applications work fine. You can
  145 always use the "converted" filename of cource (_ELMRC)
  146 * Cygnus' "ls" still displays the wrong time stamps for directory
  147 entries, but so does it on my normal FAT and CD-ROM partitions.
  148 This seems to be a bug in "ls" I think.
  149 * On systems using two IDE controllers with each of them having
  150 one HD attached, FSDEXT2 names the second disk "hdb" instead of "hdc"
  151 There is no easy way (as a matter of fact I don't even know a
  152 difficult way:-)) to retrieve this controller information in win95.
  153 Eventhough there are plenty fields in the DCB structure which
  154 indicate controller info, using a debugger I noticed that these
  155 fields are not set for my three IDE drives.
  156 * I'd like to return the name of the file system (i.e., "ext2fs")
  157 a LEVEL 2 query. However, if I do so, Win95 will search for
  158 it as a label using ffirst/fnext. Since "ext2fs" does not exist 
  159 as a label these calls will fail. But then I cannot start a 
  160 program from the Linux drive, that is, if the current dir. is 
  161 g:\tmp" I cannot start "edit.com".
  162 
  163 
  164 TODO LIST:
  165 ==========
  166 * fix these TBlock and TInode "leaks"
  167 * fix hasfunc for objectname
  168 * cleanup block module
  169 * cleanup inode module
  170 * consider the leave the mutex in BlkGetBlock before
  171 *	reading the block from disk
  172 * allow recursive mounts
  173 * link superblocks together
  174 * asynchronous read
  175 * read ahead
  176 * honour the inode flags (secure delete etc)
  177 * sanity checks for dir entries
  178 * sanity checks for descriptors in superblock
  179 * disk paramaters over all mounted file systems 
  180 (after recursive mounts)
  181 * configurable caches
  182