WARNING: This is (still) a BETA Version !!! Use at own risk !!! Hello, This is Release XXXXX of YFtp. Look at the end of this file to see what's new. YFtp is a graphical FTP-Client. Some of its features include: - Yftp now supports term ! (in a seperate binary release, see below !) - filesize in the browser. - a persistent directory cache, that lasts between sessions - automatic reconnect after lost connection - reget !! - directories and README's have higher priority than filetransfers (filetransfers are interrupted, when these have to be transferred) - U can set a default dir for every ftphost (e.g. /pub/next) - Only directories that have been modified are retransferred, when the cache times out. - NEW: A Services menu entry !! For example, if Jolly writes in comp.sys.next.announce about his new toy: "This program can be found on ftp.informatik.uni-muenchen.de in /pub/comp/platforms/next/Tools/workspace/FastConsole.0.02.NIH.bs.tar.gz " just: - select that line - choose from the menu Services->Yftp->Get and Yftp will login to that host, get the file and you can try it out :) - several other nice stuff, which is too small to mention here Changes since 0.447 - Processes Panel shows the queue of transfers - Kill Button to Abort the current transfer - "ask for password" option when doubleclicking host Bugs fixed since 0.447 - crashes when downloading many files at once - NLST failed - rereading large directories caused it to crash - crash when "timeout (900 seconds): closing control connection." Some of the non-features (or not-yet-features) are: - interrupting filetransfers sometimes doesn't work (hell knows why) - Still no nice preferences. - Still no 'put file' How to use: After you start the program, you see a list of default ftphosts. You can add hosts to the list, remove and rename them, and, most important, login to them :) (You can login to as many hosts as you want at the same time, but if you login to the same host more than once, the display isn't updated correctly. Have to fix that. And please, don't start Yftp twice ! You may corrupt your cache and configuration data if you do) Clicking login brings up a login panel. Here you can enter the userid and password, you want to use for the ftp transfer. Password is entered invisible. Or you can just use the default setting, which is "ftp" for the username, and "yourusername@" for the password. You can also change the default login for this host. Please remember, that the default password you set is stored unencrypted on disk, which is generally not a good idea. The password you enter for login (not the dafult) isn't stored anywhere. (at least, that's what I tell you :) If you don't trust me, look at the source) After this you get a window with a big browser in it. In the statusline, you will probably see something like "Connecting to xxx.xxx.xxx.xxx". After Yftp has connected to the ftpserver and logged in successfully, it transfers the root directory and displays it. You can now browse through the whole directory structure of the server. Every directory is only transferred once, and then put into the cache. There are three different arrows that indicate directories: thin black : you have never visited this directory before, it will be transferred, when you select it. normal NeXT arrow : this dir is already in the cache, nothing will be transferred, when you click on it. double arrow : this dir is already in the cache, but probably out of date, so it will be retransferred when clicked. In addition there can be two icons in front of every file. The gray square one means, this file is in the queue of those to be transferred, and the round one means, this file is new or has changed (after a cache refresh). This is very useful with the 2_WEEKS_NEW directory on peanuts :) If you doubleclick a file, it will be copied to the local harddisk, and "open"ed afterwards. If you select one or more files, and then press GET, the files will only be copied, but not opened. If you doubleclick directories, they will be transferred, whether they are in the cache or not. Directories (and files with README in its name) have generally priority over normal files. When a filetransfer is in progress, and directory should be listed, the transfer is interrupted, and resumed afterwards. MainMenu: "set local path" allows you to choose a local directory, where the ftp files are saved. "set remote path" remembers the current remote working directory, so when you later connect to that same host again, you will end up in the same directory. Other odd stuff: When the connection somehow breaks, or is lost, YFtp tries to reconnect and resume the filetransfer. (up to three times) The double arrow (for directories) actually represents two cache states. It appears after the cache date for the directory times out (which is defined by UPDATETIMEOUT in FtpDirectory.m and is currently set to three hours) This doesn't mean, that the whole directory is retransferred every three hours ! First the modification date of the remote dir is compared to the one in the cache, and only when they differ, its acually transferred. (because the modification date is only accurate to the minute, it can happen, that you miss modifications that appeared directly after you transferred the directory. If you think this happened, you can manually retransfer it. In any case, a directory is automatically retransferred after 2 weeks (FORCEDUPDATETIMEOUT)). Services and such: When you use the Services Get command, Yftp tries to find out what file and hostname you want in the following way: First it tries the kind used by WWW, URL like "ftp://ftp.next.com/pub/NextAnswers", then it tries the old form most people use, like "ftp.uu.net:/pub/linux" and then it looks for filename and hostname seperately just somewhere in the text. Dont rely on Yftp to figure out for you what you want, select as few text as possible, the parser is actually very stupid and creates funny hostnames, when presented with too strange texts. Term: If you want term support, you either have to recompile the application with term enabled (see below) or email me. It's not compiled in anymore, because most people don't need it, and it makes the distribution a lot bigger. I have been told, It_Just_Works(TM). It shouldn't break anything for people who don't have term. But I have seen some strange crashes, and I don't know why. I assume term isn't threadsafe, but I don't know about it. The term people didn't answer my question till now, so if anybody would like to investigate this any further, I would appreciate it. Compilation: The newest version of Yftp can always be found on ftp.cis.uni-muenchen.de:/pub/yoda/. If you want to compile Yftp for yourself, you need MiscKit and term(optional) installed. MiscKit is available on: cs.orst.edu:/pub/next/sources/objects/MiscKit1.2.6.tar.gz sonata.cc.purdue.edu:/pub/next/submissions/MiscKit1.2.6.tar.gz ftp.et.byu.edu:/pub/next/misckit/MiscKit1.2.6.tar.gz ftp.informatik.uni-muenchen.de: /pub/comp/platforms/next/Developer/objc/misckit/MiscKit1.2.6.s.tar.gz or whatever version is the newest. Yftp now uses term. If you want to compile with term, you have to change two things: - define TERM in FtpSubThread.m - add the libtermnet.a library to the project. Thanks to (in no specific order): Scott Hess for DirPanel Jayson Adams for NiftyMatrix NeXT for making this wonderful black computer and then dropping it somebody unknown on the net for the icon Trey Matteson(NeXT) for the Graph example Gatorftp for making me want to write this program Gene Roddenberry for Star Trek Jolly and other people on the net for suggestions and help Don Yacktman and all the other people for MiscKit (esp. MiscCircularSlider) soon H. Scott Roy for IconKit :-) My Mother for being there And all other intelligent lifeforms in the galaxy (are there any ?) And: If you have any comments, suggestions, bug reports, or unused 100$ bills flying around, they are greatly appreciated !! Have fun, and may the force be with you ! yoda@cis.uni-muenchen.de (Marc Guenther) ---------
These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.