FlashFXP Forums ioFTPD v7.0.3 Released
 Tickets Search Today's Posts Mark Forums Read

 ioFTPD General New releases, comments, questions regarding the latest version of ioFTPD.

 Thread Tools Rating: Display Modes
 07-15-2009, 10:56 PM #1 Yil Too much time... FlashFXP Beta TesterioFTPD Administrator   Join Date: May 2005 Posts: 1,194 ioFTPD v7.0.3 Released Highlights: * Integrated support for "real" virtual filesystems into the core resolving logic. You can now fake out entire directory trees anywhere in the filesystem through TCL scripts. * VFS Admins are now more powerful. * 3 New/Modified site commands * 10 New/Modified .ini features * 8 New/Modified cookies * 2 new TCL vars and 10 New/Modified iTCL commands. * Fixed the "426 Connection closed: Overlapped I/O operation is in progress." annoying error. * Fixed several serious memory leaks causing server stability issues in some configurations. * Potentially fixed the "lockup" bug. * EXEC event anti-timeout feature. Latest Version: ioFTPD-v7.0.3.zip Source: ioFTPD-v7.0.0-src.zip Last edited by Yil; 10-06-2009 at 12:27 PM.
 07-15-2009, 11:06 PM #2 Yil Too much time... FlashFXP Beta TesterioFTPD Administrator   Join Date: May 2005 Posts: 1,194 Changelog Code: v7.0.0 Release Notes: 1) Files in \System: Changed : ioFTPD.[exe,pdb] - Version 7.0.0.0. Changed : tcl85t.[dll,pdb] - Version 8.5.2.7 (tcl version 8.5.7) Deleted : php4ts.dll, php.ini Changed : dbghelp.dll, symsrv.dll - version 6.11.1.404 Changed : ioFTPD.ini - summary of changes by section... [Network] : Added Ignore_Hostmask_Idents [Virtual_Dirs] : *New section*, after [VFS] section. [VFS_PreLoad] : *New section*, after [Virtual_Dirs] section [FTP_SITE_Permissions] : Added myinfo = !A * [Ftp] : Added LeechName [Threads] : Added Keep_Alive_Text, Create_Tcl_Interpreters, Debug_Tcl_Interpreters, Log_Exiting_Worker_Threads [Events] : Modified comments. (2 new events in doc\Events.txt) [Themes] : *Replace entire section* [HTTP_Service] : *deleted section* [Http] : *deleted section* [Http_Permissions] : *deleted section* 2) Directories in \lib: Replace entire tcl8 directory. Replace entire tcl8.5 directory (* see note below *). Added : reg1.2 directory Added : dde1.3 directory NOTE (*): if you have installed o-dog's nxTools temp fix you will have a \lib\tcl8.5\reg1.1 directory that I think should no longer be needed as I've included reg1.2, but you WILL need to keep the lib\tcl8.5\twapi directory. 3) Files in \text\ftp: (nearly everything changed, consider replacing entire dir and just saving your Welcome file customizations. A list of unchanged files is listed below) Added : MyInfo.[Header, Section, Totals, Footer] Changed : [AllDn, AllUp, WkDn, WkUp, MonthDn, MonthUp, DayDn, DayUp].Header [AllDn, AllUp, WkDn, WkUp, MonthDn, MonthUp, DayDn, DayUp].Body [AllDn, AllUp, WkDn, WkUp, MonthDn, MonthUp, DayDn, DayUp].Footer ClientInfo.[Common, Download, Idle, List, Login, Upload] ClientList.[Header, Download, Idle, List, Login, Upload, Footer] DeletedKick ExpiredKick GroupInfo.[Body, Header] GroupList.[Body, Header] TransferComplete UserInfo.[Header, Section, Totals, Footer] UserList.[Header, Body, Footer] Who.[Header, Download, Idle, List, Upload, Footer] Unchanged: Color, [GroupInfo, GroupList].Footer, LogIn, LogOut, SecureRequired, ServerClosed, UserList.Footer, Welcome 4) Delete the entire \text\http and \test\http2 directories. 5) Files in \doc: Added : Events.txt Changed : Cookies.txt, itcl.txt 6) Files in \source: Replace entire \include directory. ***** TODO ***** Changed : nxSearch.itcl *** Important security related changes: 7) VFS Admins ('V' flagged users) are now treated the same as Masters ('M' flagged users) with regards to VFS "private" directories [chattr 0]. Previously both were exempt from normal file and directory access checks, however private directories used to required VFS Admins to have explicit access before showing up in directory listings (just like all old non-M flagged users), and they were unable to modify the access list of those directories. This created a problem because VFS Admins can create, edit, and delete "private" directories, but if they forget to include themselves on the access list they become unable to modify it any further or even to see it! NOTE: By default the ioFTPD.ini file grants 'V' flagged users access to just 2 site commands not available to normal '1' flagged SiteOps: "site chown" to change file/directory ownership, and "site chattr" which allows direct symbolic link manipulation and "private" directory access control. It is unlikely that a user trusted as a VFS admin wouldn't also be a SiteOp but it isn't implied anywhere in the code. In fact all user account manipulation tests in the server only look for the '1' and 'M' flags. It should also be noted that by default the .ini file doesn't even allow a pure VFS Admin access to a lot of normal SiteOp commands so I would expect that VFS Admins are also SiteOps (i.e. 1V users). NOTE: The 'V' flag used to be required to create and edit symbolic links and this was most likely the reason some users/SiteOps would have this flag, but now people can use the "site symlink" command so there is no reason for SiteOps to be VFS Admins unless you expect them to have unlimited ability to manipulate files/directories just as M flagged users would be able to. Consider using: "site change .V flags -V" to remove the V flag from everyone and then re-apply it to only those you want. NOTE: This change along with the suggested granting of VFS Admins access to the "site rehash" and the "site shutdown" commands should remove the need for any Master accounts with remote access which is an important consideration. 8) VFS Admins are now subject to write (w) directory permission checks. This should solve the problem of VFS Admins being able to "complete" smaller sized .zip, .sfv, etc files and succeeding because they could ignore the fact that the zipscript marked them as read-only after verification and/or modification. This is also a safety feature to prevent accidentally deleting stuff. Since VFS Admins can just use site chmod to grant themselves write permissions it won't prevent them from deleting whatever they want, just make it less likely to goof up. The use of "site wipe" commands, however, will limit the impact of this change, but let me know what problems creep up and I can turn it into a configuration option if needed. It's possible this should also apply to M flagged accounts as well in the future. 9) Given the increased abilities of VFS Admin accounts a regular SiteOp can no longer create VFS Admins by giving a user (or themselves) the 'V' flag unless they are themselves also a VFS Admin or a Master. 10) Group directory/file permissions have changed. Previously if you were not the owner of a directory/file your primary group was compared to the group associated with the item and if it matched then group permissions controlled your access to the item. Now the entire list of groups you are a member of are searched for a match to the item. This would appear to allow more flexibility. 11) The way the server interprets directory modes (rwx) has changed. In a traditional UNIX environment a directory with read permissions (r) means a matching user could list the contents of the directory. A directory with execute permissions (x) means the user could enter or recurse through the directory. There are scenarios in standard UNIX environments where unlistable directories make sense as a way to hide directory trees but in the context of ioFTPD there isn't any need for that since the FTP supports private directories [chattr 0] which are far more powerful. Previously ioFTPD required read & execute permissions to list the contents of a directory, but only required read to traverse through a directory. This was a long standing bug since that should be controlled by the execute bit instead. Thus for all intents and purposes the execute bit offered no additional functionality. I have now formalized this "bug", so read permissions on a directory is all that is required to traverse or list a directory. I doubt anyone will even notice this change. On the other hand, this now frees up the execute bit for futher use and given that there are actually 3 execute bits (user/group/other) and that the execute bit is already overloaded on standard UNIX to identify set uid/gid (s) and/or sticky (t) attributes this leaves a variety of combinations that can be used to convey information to the user using standard (rwxst) attributes in directory listings. The execute bit never meant anything with regards to file execute permissions in ioFTPD since the server doesn't allow for executing processes through the server so we don't loose any functionality that way either. I anticipate using the execute bits for new future features such as the automatic space creation algorithm for full disks. If let's say the user execute bit is unset then the directory can be removed automatically to make room. Thus the default of permanent or temporary for new directories can be set using the Default_Directory_Attributes argument in the vfs and site chmod can be used to toggle it easily as well as through any script addons that may be loaded. By using "x" or "-" in the listing itself admins can easily see what is permanent and what could be deleted automatically just by looking at a normal directory listing. I don't believe using the write bit (w) is a good fit for this because zipscripts or users may choose to write protect "completed" directories but intend for them to be automatically freed later on. 12) New login error message. If your host/IP section of a hostmask entry matches but the ident response does not you will now receive a "Your user ident response did not match" error message provided Show_HostMask_Error is set to True in the .ini file. This should help user's diagnose their own invalid configurations easier. If Show_HostMask_Error is False then all anyone will ever see is the generic "Invalid Password" errors. *** Feature Losses: 13) COMPLETELY REMOVED HTTP support and the old PHP 4 libraries from the server. It's an FTP server not some crazy hybrid that nobody uses, is broken in several ways, and I'm not interested in supporting. *** Compatibility Issues: 14) Modified the TCL [mountpoints] command to return the name of the mountfile as the first list item which is then followed with the parsed output of the file as before. This allows scripts to call [mountpoints] without any arguments to figure out what the currently active mountfile is. *** New Features: 15) ioFTPD now creates a shared mutex using the same name as the ioFTPD window name which is defined in the .ini under "WindowName" in the [Threads] section. If this mutex fails to be acquired during startup then another ioFTPD server using the same WindowName is already running and this is not allowed so the server logs the error and pops up a dialog box if not running as a service. This should prevent the common problem of starting the server twice which is really annoying if 3rd party scripts using shared memory end up communicating with the wrong instance. 16) Rewritten EXEC event module now automatically switches to immediate (non-buffered) output after 30 seconds of an event not completing. This should help keep addons which didn't explicitely request non-buffered output but do print something at least every 2 minutes from having clients time out. 17) New ioFTPD.ini option (Keep_Alive_Text under [Threads]). The new EXEC event module can help with events take a long to complete and fail to provide some sort of output every minute or so. As a workaround you can now have the server output a single line to keep the client happy if nothing has been sent to the user within the last 90 seconds. If not defined then this feature is disabled. The default text output is the default prefix for the event, but if not defined or is empty this text will be used. Keep_Alive_Text = 200- 18) New transfer reply messages. Before: 150 Opening BINARY mode data connection for . After: 150 Opening BINARY mode data connection for (15000000 bytes) using SSL/TLS. It is also colorized: BINARY, ASCII, , bytes, and SSL/TLS can be independently colored in the theme. 19) New site command (site myinfo). This produces the same output as site uinfo (by default) but displays your own account information. Thus this command is made available to all users since they can only see themselves with it. 20) You can now use site readd * to raadd all deleted/expired users. 21) New user matching specifier (:). You can now search for users based upon their ratio. The format is ":" followed by the section number or blank for the default section 0 then ">", "<", or "=" for the operation you want and then the ratio to compare against: :[section]>ratio :[section] = A depth of 1 just means the directory itself, 2 would be the dir and all its immediate subdirs, etc. If you wish to resolve all paths defined here using a VFS file other than [Locations]/Default_Vfs then define a line like "VFS = ". During server startup only the server will create a number of temporary threads to parallelize the loading of the various mountpoints or directory trees. You can see the time it takes to do this by looking at the new ioFTPD.log entries during startup: PRELOAD: "begin" "..\etc\default.vfs" PRELOAD: "points=15" "..\etc\default.vfs" PRELOAD: "count=143" "..\etc\default.vfs" Begin is just so you get a timestamp in the logfile at the start, points is the number of mountpoints in the indicated VFS file that were loaded, and count is mountpoints plus the number of requested directories. If you wish the server to finish preloading all these directories before accepting connections, define the line "DELAY = TRUE". This is useful if you mount lots of networked folders with large fanouts and it takes minutes for the slowest to load and thus clients would time out the initial directory listings and have to reconnect. The only drawback is you'll have to start ioGUI later as the server won't take connections as soon as before. 26) New scheduler option (&PreLoad). This allows you to schedule the forced re-caching of the directories identified for pre-loading and the default mountpoints using any schedule if you want. 27) New ioFTPD.ini section ([Virtual_Dirs]). This section lets you define entirely virtual directory trees anywhere in the filesystem. The format for entries is as follows: = TCL
 07-16-2009, 04:14 AM #3 pointBreak Junior Member   Join Date: Nov 2004 Posts: 18 Looks great, thanks man!
 07-16-2009, 02:55 PM #4 FTPServerTools Senior Member FlashFXP Beta TesterioFTPD Scripter   Join Date: Sep 2002 Posts: 543 Source code?? I only see the usual sources... __________________ http://tinyurl.com/ftpservertools
 07-16-2009, 03:11 PM #5 Mave Member FlashFXP Registered UserioFTPD Foundation User   Join Date: Jul 2005 Posts: 43 Great!!! Amazing Job ioYIL wil it follow soon?
 07-16-2009, 04:02 PM #6 Yil Too much time... FlashFXP Beta TesterioFTPD Administrator   Join Date: May 2005 Posts: 1,194 FTPServerTools: Check the first post again, I added a link to v7 sources. Mave: I hope I'll get some time to work on ioYil now. A number of things I stuffed into the core should make life easier although some things like automatic free space creation still need to be done. I'm hoping that things like ioArgs will make things easier for scripters in general and hopefully a few more will show up
 07-16-2009, 04:05 PM #7 o_dog Senior Member   Join Date: May 2007 Posts: 692 why the changes in the itcl? __________________ ioNiNJA
 07-16-2009, 06:50 PM #8 Yil Too much time... FlashFXP Beta TesterioFTPD Administrator   Join Date: May 2005 Posts: 1,194 o_dog: You'll have to be more specific. There's a whole pile of new commands or options, including ioArgs which I think will really help you in dealing with filenames that contain []'s, etc and the other stuff is just plain useful. The only actual change was to [mountpoints] and being a relatively new command wasn't used by anybody but me so far so I don't think there's a single change that affects any running code.
 07-16-2009, 07:02 PM #9 o_dog Senior Member   Join Date: May 2007 Posts: 692 I use mountpoints....wonder if it broke it, I guess I'll notice. I don't really need ioArgs, the reason ioNiNJA doesn't support the filenames is not that it's hard to do, just that i never saw any point in it and don't really want it to support it. The more you adapat the scripts the more crap people do.... I meant all the changes to itcl, I didn't really see anything in there that couldn't be done by a script or a simple tcl proc (just looked through it real quick though). the freedisk thing for example works just fine with twapi as do most other things. I just don't see the point of adding more stuff to the core. __________________ ioNiNJA
 07-16-2009, 08:37 PM #10 Yil Too much time... FlashFXP Beta TesterioFTPD Administrator   Join Date: May 2005 Posts: 1,194 Hmm, I didn't realize the test dir I was using was so old (v0.7). I actually checked the source of Ninja to confirm it wasn't used but I guess v0.8 uses it. Here's a new release undoing that change to make things easier on people. ioFTPD v7.0.1 out, check first post for link.
 07-16-2009, 08:38 PM #11 Yil Too much time... FlashFXP Beta TesterioFTPD Administrator   Join Date: May 2005 Posts: 1,194 v7.0.1 out Code: v7.0.1 Release Notes: 1) Files in \System: Changed : ioFTPD.[exe,pdb] - Version 7.0.1.0. 2) Modified the TCL [mountpoints] command to return to original behavior of just returning the parsed mountpoints without the first element being the name of the file.`
 07-17-2009, 06:53 AM #12 isteana Senior Member   Join Date: Mar 2006 Posts: 110 did great job with 7.0 ! but as i told todo 3 features below 1. autowipe - delete latest release(by created order) when space running low beacuse warchive does not working perfect(long dir doesnt supporting to delete) 2. nuked cleaner - find nuked release from selected section and wipe it 3. chgadmin - should work instead of site change admingroup and site change flag +G
 07-17-2009, 10:52 AM #13 o_dog Senior Member   Join Date: May 2007 Posts: 692 nr 1 and 2 are not ioftpd features but script features, also there was a notimeout in changelog so you can set warchive not to timeout. __________________ ioNiNJA
 07-17-2009, 11:09 AM #14 Flow Senior Member FlashFXP Beta TesterioFTPD Foundation User     Join Date: Dec 2001 Posts: 306 Sweet, oh thanks Yil for still beeing around. You rock man. I think is time for me to make a update. Feel kinda outdated Im still looking farward for your ioYil addon script. When the release plan for that one? YS Flow __________________ Current setup: [Windows 7 PRO 32Bit] + [ioFTPD 7.7.2-STABLE] + [ioNiNJA.1.0.Beta1.2012-07-13] + [nxTools-v1.2.1]
 07-17-2009, 01:01 PM #15 isteana Senior Member   Join Date: Mar 2006 Posts: 110 o_dog: make sure warchive REALLY work with VERY LONG CHAR and that problem have nothing todo with ioftpd timeout you can watch it without ioftpd, the warchive pretty work with alone and if autowipe merge on core, it could be check disk space with REALTIME then it will faster than any script and no need scheduler to check to disk space to excute warchive need very short cycle for make stable free space but sometimes its useless crap becuase bandwidth is not regular on any site so i think to execute by sheduler is very bad way for any space tools working on core with REALTIME is much better Last edited by isteana; 07-17-2009 at 08:42 PM.

 Tags commands, fixed, memory, new/modified, tcl

 Thread Tools Display Modes Rate This Thread Linear Mode Rate This Thread: 5 : Excellent 4 : Good 3 : Average 2 : Bad 1 : Terrible

 Posting Rules You may not post new threads You may not post replies You may not post attachments You may not edit your posts BB code is On Smilies are On [IMG] code is On HTML code is Off Forum Rules
 Forum Jump User Control Panel Private Messages Subscriptions Who's Online Search Forums Forums Home FlashFXP     News     Frequently Asked Questions (FAQ)     General Discussion     Custom Commands     Language Translations     FlashFXP v5.x Public Beta     Website ioFTPD     ioFTPD         ioFTPD beta             ioFTPD General             Knowledge Base             International Help             Bug Reports             Suggestions         Scripting             ! New Scripts Announces & Updates             ! Requests             ! Other Scripts Support             ADDiCT's scripts             bounty's scripts             bounty's dZSbot             Caladan's scripts             Eggdrop             Harm's scripts             NeoXed's scripts             SnypeTEST's scripts             StarDog's scripts             St0rm's scripts             tuff's scripts             Web interface             WarC's scripts Donationware     Software Community Chatter     A little bit of everything     Programming     Lounge

All times are GMT -5. The time now is 10:19 PM.

 -- FlashFXP Default ---- FlashFXP Dynamic Width -- Mobile Archive - Privacy Statement - Top Parts of this site powered by vBulletin Mods & Addons from DragonByte Technologies Ltd. (Details)