Mod: IPS made easier to kill from tasklist or by closing the IPS window. This is done because of the high number of bad TCP/IP stack available and some of them can hang IPS.
Fix: Some drives would not show in directory listing and/or was not CD-able.
Mod: A/B drives also scanned for listing.
Mod: SITE RADM LIST changed to SITE RADM LIST SOCKETS.
New: SITE RADM LIST SERVICES added.
Mod: SITE ADMIN commands changed to SITE RADM command and output changed to be easier read by computers for all SITE RADM commands.
Mod: All SITE RADM commands need at least 4 characters specified.
Mod: SITE EWHO (in standard rxOnSite script) removed. Internal WHO command improved to display additional info for administrative users. Layout changed for normal users also.
Mod: Returning 550 response when trying to RETR a directory. Was 450 before.
Fix: Huge number of minor bugs fixed.
New: Config variables added, see example main.cfg file.
New: Server will receive and queue message which should be forwarded.
New: Message id inserted into "Received:" line.
Mod: All paths which should refer to the local file system are now correctly specified with backslash. All other paths are specified using foreward slash. WARNING: This mean you have to convert you [ACCESS] section to use backslashes instead of foreward slashes.
Mod: scr\* directory divided into multiple subdirectories by default, this means that the old standard FTPd scripts are moved into scr\ftpd\*.
New: All system read only variables are now available from within SMTPd and POP3d also. See updated list.
Mod: Corrected some errors in the documentation files.
New: Written about the user files in the setup documentation file.
New: Service parameter ClientAddress to control access from different client addresses.
New: FEAT command implemented (rfc2389).
New: SITE RADM LIST command to allow monitor type apps to view users with activity.
Mod: Security related; 5 seconds delay added if there is a password mismatch.
Mod: Security related; PORT command to IP other than clients will no long accept ports below 1024.
Mod: SITE ADMIN EXEC (in standard rxOnSite script) changed to SITE EXEC for compability with other FTP servers. Command is also improved to do the work in the current directory.
Mod: SITE ADMIN WHO (in standard rxOnSite script) changed to SITE EWHO.
New: DisableEA and DisableDircount service variables added.'
Mod: Removed popups for empty drives. You don't need to have AUTOFAIL=YES in CONFIG.SYS anymore.
Fix: Incorrect LogFlag for RMD.
Fix: For some reason ABOR was disabled. It is not enabled again.
Fix: MDTM command could crash IPS.
Fix: SMTPd would have when receiving a message.
Fix: SMTPd could hang when two messages was received at the exact same 1000th of a second. I did not run into this, just found it in my code.
New: "Received:" line added to header of messages.
Fix: rxOnConnect now working properly.
New: Proper logging added.
New: RexxHook rxOnCommand implemented fully.
New: Commands DELE, LIST, NOOP, PASS, QUIT, RETR, RSET, STAT, TOP, USER, UIDL and APOP implemented fully.
New: RexxHooks rxOnCommand, rxOnConnect and rxOnUser implemented fully.
New: APOP need a new setting; APOPSecret in the user files to work. This should contain an uncryptet version of the APOP secret (password). If no APOPSecret is found the service will disable the APOP command for this user. The implementation of APOP may change later.
Fix: Connection to TELNETd crashed IPS.
New: IPS compiled with Virtual Pascal 2.0 beta 3.
New: Windows NT support (Windows 95/98 is not supported).
Fix: Some bugs introduced in v0.70b2 regarding SITE command.
Fix: Listing directories with dates outside the 1-12 range crashed IPS.
New: ABOR command implemented.
New: Directories checked for read-only attributes before allowing remove.
New: APPE command implemented.
New: Listing directories on first level (eg. drive letters) will not show correct date (if available) and space used on the drive.
Mod: MDTM now returns seconds as well.
Mod: Some previously unknown bug was found and fixed during the Windows NT porting process.
(No changes)
Mod: Tried with various compiler/linker optimizing but that mostly lead to strange bugs on Warp 3 machines.
Fix: Bug in exception handler.
Mod: Major changes on variable implementation, please check the documentation and included example files. All variable names has changed and some new are added. The method to access variables are no longer %varname% but %(varname).
Fix: Serious bug leading to many unused sockets.
Mod: Method of opening data connection changed slightly.
Fix: Error handling of bad data connections improved.
New: Resume on STOR supported.
Fix: Remove of directories was not possible.
New: REIN command implemented.
Fix: ETA on SITE WHO not always correct, could even kill IPS.
New: Default local data port finally used.
New: Added support for a "-" in front of the password to avoid multiple-line responses.
New: rxOnCommand RexxHook called before processing of all commands, this Hook can return 0 or a modified command line.
Mod: All RexxHooks lost their *Par setting in the group config file. Also, the Cmd at the end is removed.
New: MinFreeSpace service variable added. Number of free MBytes needed to accept new files.
Fix: Login was accepted even if OnUser rejected it. Only some badly written ftp clients would allow this.
Fix: Lots of bugs is fixed which I forgot to write down.
New: Better example message files and RexxHooks, thanks to Mario Gaucher for all the help.
Fix: Local mail delivery completely bugged.
Fix: Not sending "good bye" response after QUIT command.
Fix: Some minor bugs fixed, still only alpha/preview code.
Mod: Log format changed again.
Fix: REST log entry missing parameter.
Fix: Log entry from "startips.cmd" incorrectly formatted.
Fix: Date change was processed completely wrong in logging.
Fix: DebugFlag of 1 incorrectly logged the entered passwords.
New: Using undocumented "soabort" API call to kill bad sockets.
Mod: Error logging to "ips.log" improved.
New: Optional "ClientStack" parameter in "ipsgroup.cfg" to manually control memory allocation for client threads.
New: "SITE ADMIN SHUTDOWN" added.
Fix: Sockets not always closed correctly after a OnConnect rejection.
New: "startips.cmd" checking status if "ips2upd.exe" before upgrading.
Fix: It was possible to set idle time-out higher than TimeoutMax with SITE IDLE command.
Mod: Dynamic max file handle implementation failed sometimes, now set high number at start instead.
Mod: SITE WHO show speed of transfers, and speed is also logged.
Fix: SITE commands now logged.
Mod: SITE PASS cannot be enabled for Anonymous or Administrator users.
Mod: SITE IDLE overrides TimeoutMax if Administrator.
New: Optional "MaxBandwidth" in user files, this override the one in the service setup.
Mod: Services section in ips.cfg is gone, IPS searches for sub-directories under the "cfg\" directory for groups and a group configuration file within the directory with the same name as the directory itself with ".cfg" at the end. This is it old ipsgroup.cfg file. Services are setup in these configuration files.
New: SITE LANG [language-id] enable different response languages, ipsftp.e is renamed to ipsftp for default language.
Mod: Internal layout change to use more common code for the various services.
Mod: UserDirectory and GroupDirectory settings moved to the new GLOBAL section in group config file.
Mod: All RXCMD and RXPAR settings moved from response text file into group configuration file.
New: ACCESS section in user files implemented, this is always scanned before the ACCESS section in the group config file.
Mod: Default directory "info" file changed from ".dirinfo" to ".message".
New: "msg" directory introduced as default placement of multiple-line responses, two example files included as well.
Mod: Format of language files changed.
New: Old log files automatically compressed and put in history directory. You need zip in your path for this to work.
New: Data connections will be attempted against default port if no PORT or PASV command are used.
Fix: SITE ADMIN KILL was broken, dunno when.
Mod: All internal SITE commands can be abbreviated, also commands
are no longer converted to uppercase before sent to scripts.
Mod:
Uncontrolled shutdown refused and logged.
Fix: A lot of minor (and some major) bugs in the Idle and Stability Monitor code fixed thanks to help by Zadig- on IRC.
New: SITE PASS [password] and userfile/[USER].ChangePassword=[0|1]
Fix: Many small bugs fixed.
Mod: Log file format changed.
Mod: Distribute .ZIP includes a lower level "ips2" directory.
Fix: "startips.cmd" did not work as expected.
Fix: Not showing multiple-line responses.
Fix: Connections rejected by OnCONNECT not terminated correctly.
Mod: "bin\password.exe" can now be used in two modes: "password [password]" or "password [old] [oldcrypted] [new]".
Mod: Multiline response setting in "cfg\ipsftp.e" can now take "*.cmd" files and run them as RexxHooks as well. These are then called with only two parameters, socket and response_id. They can return a filename to display.
Fix: HideIfNoAccess flag in "cfg\ipsgroup.cfg" did not work correctly.
New: "bin\ch*" utils refreshed, and ls port added.
Fix: Not implemented ftp commands returned a "Server error ..." response.
Mod: Stability monitor changed to be nicer.
New: Icon's,
setup.cmd script and some other improvements.
Fix: Normal logout finally fixed.
New: SITE ADMIN MONITOR [idle] command.
Fix: PASV response returned wrong address on multiple-homed sites.
New: Runtime errors written to main log file for better error detection.
New: %_ftp.usr.anon%, %_ftp.usr.admin% variables.
New: Included new OnSITE and OnCONNECT example script.
New: %_ftp.cmdsock.prev%, %_ftp.cmdsock.next% variables.
New: RexxHook functions added: ipsLog( socket, str ), ipsVar( socket, str ), ipsSay( socket, str ).
Mod: All RexxHooks changed, check your config against new examples.
New: Passwords encrypted, use bin\password.exe to generate passwords for the user files.
New: First ExtendedAccess flags implemented.
Mod: cfg/* tree moved to doc/cfg/* in distribution archive to
avoid users overwriting their configuration. Also, bin/ips2.exe is
now distributed as bin/ips2upd.exe which will allow you to unpack
this and further releases directly and upgrade by just doing a SITE
ADMIN RESTART.
New: %_ftp.configfile%, %_ftp.configsection%
variables.
New: SITE WHO command (this was in the previous beta also).
Mod: Console debug toggle moved from D to Alt+D.
Fix: One more bug in my socket toolbox.
Fix: Wrong response on unknown user login.
New: Stability monitor checked by other threads, if it blocks of more than 15 minutes IPS/2 will restart. This give IPS/2 two way stability monitoring.
New: Multiple drives feature completed, will now list active drive-letters as directories. I was thinking of implementing this as volume labels, but that was too much work. Drive A: and B: are not scanned or listed.
Fix: Timing error in bandwidth limited.
New: Changed code to use my Timer tool-kit which support timing over longer periods.
Mod: _ftp.sent, _ftp.sentkb, _ftp.recv and _ftp.recvkb variables are for current session.
New: _ftp.usr.sent, _ftp.usr.sentkb, _ftp.usr.recv and _ftp.usr.recvkb vaiables added.
Mod: EAs support disabled for TVFS drives, please let me know if a TVFS upgrade with better support for EAs comes aloong.
New: SITE ADMIN KILL [socket] and SITE ADMIN RESTART commands.
Mod: Most log stamps and command responses rewritten. This also include more accurate responses.
Mod: Characters higher than decimal 127 accepted at end of commands.
New: XCUP, XCWD, XMKD, XPWD and XRMD command finally accepted.
New: Simple HELP command implemented.
New: MODE command implemented, only Stream mode supported.
New:
_ftp.curpath variable.
New: REXX hooks. The following hooks are defined: OnConnect, OnUser, OnSite, OnRetr, OnStor and OnPass (for anonymous login only). Please check your "ipsftp.e" file.
New: Counting sub-directories for LIST output.
New: FTP configuration variable "HideIfNoAccess" can be set to 0 or 1. If set to 1 nothing without access will be shown on LIST or NLST output, however this setting do slow down these commands and are not recommended on busy sites.
Fix: RETR and STOR incorrectly returned a 550 message instead of a 450 message.
New: Added work-around for TVFS bugs with EAs and disk identification. This may not work 100%.
New: Bandwidth limiting implemented. Check "ipsgroup.cfg". This feature will limit the transfer speed of files sent _to_ users only.
Fix: LogFlag not honored by some commands.
Fix: Incorrect
receive and send flags used on some machines.
HTTP, SMTP and POP3 protocols.
Fixed bug: Connection closed just after connect.
Fixed bug: Strange access, was displayed correctly by ls, but not reported correct to other functions.
ftpcmd.txt list what access needed for what command.
Cleaned access system for all reported bugs and some, it actually was a lot of them
Better configuration example included.
Finally got path masks
in the [ACCESS] section right.
REXX hooks.
Access rules (like the system in zftpd).
Minor misspellings at various locations, please find more of them.
Added console "debug" routines, press D to toggle.
Added SITE IDLE command.
Fixed missing parameter in log stamp from TYPE command.
Added RNFR and RNTO rename commands.
Added WelcomeFile variable in ipsgroup.cfg.
USER and PASS command give error message if already logged in.
Looking up hostname for log file. (I had forgot about this)
REXX hooks.
Access rules (like the system in zftpd).
Fixed "" user response on non existing user.
Written better readme file.
Changed files in doc/ to .html.
I had messed up the bits in the rwx accessed, now fixed.
Implemented EA support. It is now possible to set rights using
ch* style UNIX utilities.
Last memory leak in ftp client object
fixed, current memory leakage is 0 bytes. :)
Rename commands.
SITE commands.
Some semi multiple-disk feature implemented. You will be able to set the standard RootDirectory empty and change between /d, /e etc. but you will not be able to change to /. This could confuse some ftp clients.
Idle time-out activated, added Timeout variable in ipsgroup.cfg.
Added logging to all completed ftp functions.
Fixed the memory leak in the previous release, this was not done for debug purposes at first.
Fixed/improved various small code segments.
Fixed %% in SYST response.
Passive mode activated.
Rename commands.
SITE commands.
Fixed some bugs from previous preview release.
Most commands
activated.
Passive mode.
Rename commands.
Some logging.