This is netkit-ftp-0.16. This package updates netkit-ftp-0.10. If you're reading this off a CD, go right away and check the net archives for later versions and security fixes. Contents: ftp Client program for the ftp protocol. Requires: Working compiler, libc, and kernel. libreadline (GNU readline library) is optional but recommended. If you use it, you will need a recent ncurses or libtermcap as well. Security: This client contains a fix for a buffer problem in passive mode handling. It also containts some somewhat-kludgy fixes for problems that can arise doing mget from a hostile or compromised ftp server. Consequently, earlier versions should not be used. Note: To compile ftp with readline support you'll need a copy of the readline library installed. If you don't have it, get readline-2.0 (or higher) from ftp.gnu.org. You'll probably need to apply the enclosed patch, or ftp will have problems with ^C handling. Installation: Patch your readline library if necessary. Do "./configure --help" and decide what options you want. The defaults should be suitable for most Linux systems. Then run the configure script. Do "make" to compile. Then (as root) do "make install". Save a backup copy of any mission-critical program in case the new one doesn't work, and so forth. We warned you. DEC Alpha: Compaq were kind enought to make available their C compiler for the Alpha, you can down load this for free from http://www.unix.digital.com/linux (At time of document 25/11/1999) this package has been compiled and tested with this compiler as with the GNU compiler. To compile this from source simply issue CC=ccc ./configure cc: Info: cmds.c, line 175: In this statement, the unsigned expression "len" is being tested to see if it is greater than zero. This might not be what you intended. (questcompare2) if (len > 0 && line[len - 1] == '\n') ------------^ cc: Info: cmds.c, line 2163: In this statement, accessing the address of an array element that is exactly one beyond the end of the array might not be what you intended. (subscrbounds2) while (tmp != macbuf+MACBUF_SIZE) { -----------------------------^ cc: Info: cmds.c, line 57: This top level include file appears to be unused. (unusedtop) #include /* for PATH_MAX */ -^ cc: Info: ruserpass.c, line 215: In this statement, accessing the address of an array element that is exactly one beyond the end of the array might not be what you intended. (subscrbounds2) while (tmp != macbuf + MACBUF_SIZE) { -----------------------------------------------^ cc: Info: ruserpass.c, line 230: In this statement, accessing the address of an array element that is exactly one beyond the end of the array might not be what you intended. (subscrbounds2) if (tmp == macbuf + MACBUF_SIZE) { --------------------------------------------^ Bugs: Please make sure the header files in /usr/include match the libc version installed in /lib and /usr/lib. If you have weird problems this is the most likely culprit. Also, before reporting a bug, be sure you're working with the latest version. If something doesn't compile for you, fix it and send diffs. If you can't, send the compiler's error output. If it compiles but doesn't work, send as complete a bug report as you can. Patches and fixes are welcome, as long as you describe adequately what they're supposed to fix. Please, one patch per distinct fix. Please do NOT send the whole archive back or reindent the source. Be sure to send all correspondence in e-mail. Postings to netnews will not be seen due to the enormous volume. Please don't report known bugs (see the BUGS file(s)) unless you are including fixes. :-) Mail should be sent to: netbug@ftp.uk.linux.org Note: please see http://www.hcs.harvard.edu/~dholland/computers/netkit.html if you are curious why it's been so long since the last NetKit release. (The short version is that I gave things to some other people, who let them kind of slide.) I do not currently plan to continue maintaining NetKit; I am doing this release and perhaps one or two more, and then I intend to give the source tree to Red Hat or some similar organization for long-term maintenance. David A. Holland 12 December 1999