NFTP : New File Transfer Protocol Client Version 1.22
Copyright (C) 1994-1998 Sergey Ayukov
NFTP manual (main part)
Starting from version 1.20,
detailed
information about development progress is also available.
VERSION HISTORY
- Version 0.1 (preview) 02 Feb 1995
-
First usable version. Used FTPAPI calls. Very slow; control connection messages
cannot be seen. Wasn't exposed to public, although available.
- Version 0.2 (preview) 19 Apr 1995
-
Got rid of FTPAPI. Full-scale socket programming of ftp control connection and
data transfers. Introduced bookmarks.
- Version 0.3 (preview)
-
Never showed to public. The last version compiled with IBM CSet++. See 0.4.
- Version 0.4 (preview) 25 May 1995
-
Nearly the same as 0.3, but compiled with emx 0.9a + gcc 2.6.3.
A handful of new features:
- logging in and out without restarting entire program;
- passworded entries in bookmark file;
- quick directory change: if you know where to go, you won't need to traverse
all intermediate dirs;
- various bug fixes.
- Version 0.5 (preview; close the beta stage) 16 Jul 1995
-
Bugfixes plus
- ability to work in any 80xXX mode (25 <= XX)
- online context sensitive help (press F1, Shift+F1)
- code reorganization
- some errors are handled (mostly login errors)
- directory sorting by name, size, date/time
- create directory on the remote, remove file(s) on the remote
- preserving date/time of files downloaded
- fast built-in file viewer
- ability to invoke any ftp server command
- better socket selecting scheme
Will not work after 31 Dec 1995
- Version 0.51 (preview; close the beta stage) 19 Jul 1995
-
I am sorry for releasing 0.5 so full of bugs... There was a lot of...
- fixed couple of awful bugs (memory corruption) resulting in core dumps etc;
- got rid of malloc (goodbye, flat memory space! welcome, 32-bit segments and
memory protection!)
- you can set nonstandard port in nftp.ini
- Version 0.52
-
Same as 0.51 but without 31 Dec limitation. Only to be distributed by
SAMS Publishing.
- Version 0.53 (beta) 21 Dec 1995
-
Nearly the same as 0.52 but limited to 30 March 1996.
- Version 0.60 (beta) 31 Mar 1996
-
I am a bit short on time; 0.53 expires today, so some new features weren't tested much.
Bugfixes and small improvements plus:
- reget (restarting transfers)
- uploading
- IP numbers can be used instead of host names
- "Q" and "S" work! you can skip files during transfer or stop download/upload
- more intelligent networking (fixes some problems with dynamic IP)
- changing local directory, viewing list of local files etc.
- ability to specify arbitrary port (not in bookmarks though)
- new bookmarks can be created with Insert key
- installation program
- documentation
- Version 0.70 (beta) 30 Apr 1996
-
Few bugfixes (including failing to recognize "hostname/directory" format
when specified in the command line) plus
- fixed nasty bug causing nftp to crash when viewing some
files with internal viewer -- thanks to Jose Ruiz who pointed
out to such file
- sort by extension
- much more error recovery; there should be no more situations when
nftp exits silently;
- improved sound signals; includes beep after successful login
(configurable)
- tables in this manual look much nicer now :-)
- firewalling support -- does not work yet
- remappable keys
- ability to specify download directory in NFTP.INI. NFTP will
change into that directory after start
- IBM TCP/IP ftpd for OS/2 is supported
- Windows NT ftpd is supported
- Windows 3.x WFTPD by Texas Imperial Software is supported
- Progress indicator in "view remote file" and during receiving of
directory listing
- You can now try to "chdir" to symbolic link
- "Parsed" directory view -- hit Ctrl-P and see
- National language support -- check out
NFTP home page
- Average transfer speed is now recorded in the history (.fls file)
- Russian version
- Chinese BIG-5 version
- Spanish version
- Version 0.71 (beta) 2 Jun 1996
-
Several bugfixes plus
- '*' inverts selection
- f8 deletes local directories
- Neologic FTPD is supported
- moving language-dependent strings into separate DLLs (thus greatly
reducing size of the package)
- (un)marking files by template (eg, '*.txt')
- Hungarian version
- German version
- Danish version
- Japanese version
- caching of viewed remote files
- downloading all marked files from all directories (alt-f5)
- Version 0.72 (beta) 6 Jun 1996
-
No new functionality. Fixed small mistakes in national language
translations. Added Norwegian version. Added missing ASCII and
Postscript manuals.
- Version 0.80 (beta) 12 Jul 1996
-
- Support for Neologic FTPD in UNIX emulating mode
- Support for PowerWeb FTPD
- Support for old (with DOS-like output) Windows NT ftp server
- F6 renames files/directories (on remote too)
- Alt-S saves listing of current directory into file
- left/right/ctrl-left/ctrl-right scroll remote/local directory listing
- symbols select files starting with these symbols
- complete firewalling support (a-la WS_FTP)
(wasn't completely tested)
- built-in fileviewer now has ability to save file and search for text
- retrieving directories/viewing files is now interruptable (with ESC)
- when anonymous login is denied, NFTP will retry after specified
amount of time
- Italian version
- Brazilian Portuguese version
- Version 0.81 (beta) 9 Aug 1996
-
Mostly bugfixes. Also
- Version 0.82 (beta) 15 Aug 1996
-
Fixed bug causing zerodivide when transferring small (<1000 bytes)
files and total size of batch transfer is larger than 1MB.
- NFTP now assumes that server has Unix-like LIST output when server OS
was not recognized.
- French version (provided as separate DLL).
- Version 0.83 (beta) 27 Sep 1996
-
I am very sorry -- releasing 0.82 with 1 Oct limit was a very stupid
idea because right now I am in process of completing my PhD. I hope
to return to work on NFTP in middle October or early November. There
are no differences between 0.82 and 0.83 except expiration date.
French version is now integrated into the package.
This version will live until 1 Feb 1997 (apparently I don't want to
disappoint you just when you're celebrating New Year ;-) I hope to
produce release (1.0) meantime.
- Version 0.90 (release) 30 Jan 1997
-
This version is essentially the same as 1.0; it will expire 1 Mar 1997
so you can use it while registering version NFTP (<smile>).
Many small bugfixes and much more improved error checking plus
- PM Clipboard support (shift-insert/ctrl-insert)
- Cursor is positioned correctly after deleting/creating/sorting/etc
- spacebar/tab switches are more consistent now
- PWD is no longer necessary
- history in the command prompts (somewhat poorly done; use up/down)
- Ctrl-Z is no longer transferred in ASCII mode
- completely redesigned bookmarks
- some kind of batch mode; see command-line arguments
- directories are now removed with RMD
- fixed problem with template marking (*.h* -> foo.h)
- view turns transfer mode back when completed
- case insensitivity in file searches
- fixed problems with NT servers
- you can get file from unreadable directory (alt-d)
- improved handling of numeric IP addresses
- fixed junk appearing in input fields sometimes
- folder for NFTP. Editing .bmk and .ini
- tab expanding in viewer
- password is no longer visible in some firewall configurations
- long strings in prompts
- ask to re-read remote directory after changes done to it
- ability to reverse initial sort order in NFTP.INI
- esc no longer causes problems during transfer if hit several times
- Bulgarian version
- Version 1.00 (release) 30 Jan 1997
-
Same as version 0.90 but requires registering to transfer files larger
than 500KB.
26 Feb 1997 was a black day in NFTP history. My hard drive (Quantum BigFoot
2.5GB) has died (only 3/4 sectors are readable). Latest NFTP sources
were lost; I was thrown to pre-1.00 level. After long and painful attempts
to read what is readable, much of the source code was restored, but I am
still not sure that every feature/bugfix of 1.00 has been recovered. The
result is version 1.02.
- Version 1.01
- SOCKS-capable version (was in limited distribution). Only binaries
survived the hard drive accident by pure chance.
- Version 1.02 (release) 16 Apr 1997
- Close to 1.01. Comparing to 1.00, it fixes great deal of small bugs
and adds ability to insert/edit bookmarks from inside NFTP (Insert/Ctrl-E).
- Version 1.03 (release) 18 Apr 1997
- The bug (probably in IBM VisualAge C++ compiler) prevented 1.02 from
working under Warp 3. This version is compiled with emx/gcc as usual.
Also fixed:
- now works through firewalls again (1.02 was broken because it always
tried passive mode)
- warning beep is issued when wrong values are entered while
editing/adding bookmark.
- Version 1.10 (beta) 21 Dec 1997
- Quite significant rewrite. The program is no longer multithreaded
which has greatly reduced complexity and eliminated number of obscure bugs.
The source code is highly portable now; OS-dependent part is only several
kilobytes. This would allow myself to port NFTP to other OSes if I will
want it. So far only Win32 port is planned but no work has been done yet.
National language support system is almost completely new; it now relies
on text files with message strings instead of DLLs. This allows to check
translations/layout/syntax very quickly and is also much more portable than
DLLs.
Among the new features are:
- Marking entire directory trees is possible. When starting transfer,
you are given a choice to put all files into one directory or reproduce
directory structure of the server. Use Alt-F5, as usual. Note: only
files in the subdirectories of current one will be transferred.
Mark directories with Insert.
Download only.
- NFTP is much more responsive now to transfer interruption commands.
- NFTP no longer issues useless CWD commands when changing to the
directory that was already cached.
- AutoReconnect -- NFTP will login automatically if connection has
been broken. You no longer have to worry about timeouts etc. Or you can
disconnect and leave NFTP idle, and when needed, NFTP will log in back
and do all requested things. May be I am not clear here...
- SmartAppend -- in batch mode (when transferring multiple
files) decision on whether to append/overwrite/skip is made based
on file date/time/size;
- autodownloading file descriptions (00index.txt etc.) and showing them
(a-la CuteFTP);
- during transfer, you no longer can look at control connection history
(was: Space key). Tell me if you really need this feature.
- Version 1.11 (release) 10 Jan 1998
- This release fixes numerous bugs found in 1.10.
Behaviour of 'auto-fetch-descriptions' has been changed a little;
automatic/manual loading is now switched with Ctrl-O.
'auto-fetch-descriptions=no' means that NFTP starts in "manual" mode.
Use Ctrl-O to switch it to automatic mode.
- Version 1.20 (release) 25 Feb 1998
- Minor bugfixes and interface improvements since 1.11.
- Win32 and Linux versions (beta quality)
- New keyboard defaults (old ones still work except several
keys listed in Keyboard Reference)
- F9 invokes editor on nftp.ini from inside NFTP and then
reloads nftp.ini
- Several new
Web pages, including
development
progress and plans
- Unisys A Series mainframe ftp server support
- NFTP should run OK at every window size, including large ones
(at least 70 columns and 15 rows are recommended)
- Version 1.21 (release) 5 April 1998
- Bugfixes since 1.20, plus FreeBSD and SPARC Solaris ports and
automatic nftp.ini update when upgrading to next version.
- Version 1.22 (release) 22 May 1998
- Bugfixes since 1.21, plus
- history feature (invoked by F2/Ctrl-E)
- new, unified scheme for screen output completely
eliminating snow effects in OS/2 and Windows versions
- job control has been significantly improved (Unix excluding FreeBSD)
- two mailing lists for announcements
and discussions
- enhanced installation script (Unix)
- working flags in bookmarks and history: "p" -- always use passive
mode for that site; "r" -- retry indefinitely; "f" -- inside firewall
- new option "start-prompt" in the nftp.ini: 1 -- to open anonymous
login prompt, 2 -- to open bookmark window, 3 -- to open history,
4 -- to open private login prompt
- Ukrainian translation
Sergey Ayukov
(asv@sai.msu.su)