View Single Post
Old 03-31-2007, 11:33 PM  
Too much time...
Join Date: May 2005
Posts: 1,194
Default ChangeLog Part 2

21) The executable file no longer needs to be named ioFTPD.exe which was
    required for the non-registered versions.  It has the original
    application icon again and now includes detailed build information.

22) The rename/move command on files or directories always works now.
    Doesn't matter if the move crosses physical drives.  To move directories
    you must have permission for every directory in the directory tree
    although access to every file is not required.  Permission/ownership
    for the moved directory is the same as the original.

23) New ioFTPD.ini option (DirectoryCache_Buckets).  You can now choose
    the number of buckets to use for the directory cache.  Previously you
    had 8 buckets and could set the max number of directories in each.
    Internally for each it kept a linked list of buckets in the order they
    were added and when space was needed it popped the oldest CREATED.  It
    also kept an array of pointers sorted by name for each bucket and would
    binary searched this array to locate entries.  The new defaults of 100
    buckets of 1000 depth instead of 8 and 1000 will obviously use more
    space if you have a very large server.  If memory is an issue for you,
    go back to 8/1000 or try 80/100, but I believe overall performance will
    be increased with the larger cache size.

24) The loopback address ( is now immune from banning because of
    too many reconnections.  Hehe, I managed to ban myself during testing :)

25) The chown -R option was broken when dealing with merged directories or
    mounted subdirectories.  I rewrote the whole traversal logic to be
    generic and support multiple commands.

26) Added the -R option to chmod so you can recursively change permissions.

27) chown/chmod now accept a simplified globber ([]'s don't act as globs)
    when specifying files/directories to change.  Thus you can now use:
      chown -R newuser *.txt
    to change the owner of every file ending in *.txt to "newuser" or
    if you leave off the -R just the *.txt files in the current directory.
    "*" matches all directories and files, but as a special case "*/" will
    only match directories.  Thus you can do something like:
      chmod -R 644 *
      chmod -R 755 */
    The first changes everything to 644 and the 2nd changes only directories
    to 755.  Way simpler than changing everything one by one.

28) The main logfile now has 3 new events:
      START "pid=123" "<cmdline used to start ioFTPD>"
      STOP "pid=123"
      SHUTDOWN "<user-who-issued-command>"

29) New "site free" command which shows you the free disk space under the
    current directory.  I know there is a cookie which could show this but
    nice to have anyway.  In the future might show combined free space of
    merged directories across multiple drives or free space of all drives
    on system with associated mountpoints for admins/vfs admins.

30) New "site space" command which when used on a directory will show you
    the total number of files/subdirectories in the entire directory tree
    as well as the total disk space used.

31) Access checks have been changed to disallow viewing or access to NTFS
    hidden files/folders and important system files.  The one exception
    being drive letters which are actually flagged hidden & system.  As
    I documented in the default.vfs file it's still probably a bad idea
    to mount drive letters directly but this should prevent a number of
    potential security issues.

32) New ioFTPD.ini option (Hide_Xfer_Host).  You can now choose to hide
    the hostname/ip of transfers in the xferlog.
Yil is offline