README for ftp_lib V1.2

=========================
ftp_lib 1.2 (04/21/99)
=========================

files:

	README                - this file
	CHANGES               - change log

	ftp_lib.tcl           - FTP library package
	install.tcl           - installation program
	ftpdemo.tcl           - ftp_lib test program

	example/hpupdate.tcl  - ftp_lib example "homepage update"
	example/mirror.tcl    - ftp_lib example "directoy mirror"
	example/newer.tcl     - ftp_lib example "software update"
	
	docs/*html            - HTML manual pages

1. Introduction
===============

In order to speed up the update of homepage files on the FTP server of
my ISP, in spring of 1996 I looked for a useful solution. In those days 
I worked with Linux and used the Linux inside FTP tool.
As fan of Tcl/Tk 'expect' was my next choice. It is excelently
suitabled to control interactive processes like FTP sessions. 
A little bit more Tcl/Tk source and hpupdate 0.1 was ready, a script
for the automatical update of homepage files without subdirectories.

In the beginning of 1997 I was intense employed with RFC 959.
Simultaneous I played with the Tcl socket command. Thus the 
FTP library for Tcl was developed...


2. Overview
===============

The FTP Library Package extends tcl/tk with commands to support the 
FTP protocol. The library package is 100% tcl code, no extensions, no
C stuff. It is easily to include in programs with 

             package require FTP 1.2

Now everybody can write an own FTP program with an own GUI. It works
with Windows, UNIX, and also, but not tested on Mac. The ftp_lib
makes it comfortable and quick to create small tcl scripts for downloading
files or directory trees.

  Supports the following commands:

      FTP::Open <server> <user> <passwd>
      FTP::Close
      FTP::Cd <directory>
      FTP::Pwd
      FTP::Type <?ascii|binary?>        
      FTP::List <?directory?>
      FTP::NList <?directory?>
      FTP::FileSize <file>
      FTP::ModTime <file>
      FTP::Delete <file>
      FTP::Rename <from> <to>
      FTP::Put <local> <?remote?>
      FTP::Append <local> <?remote?>
      FTP::Get <remote> <?local?>
      FTP::Reget <remote> <?local?>
      FTP::Newer <remote> <?local?>
      FTP::MkDir <directory>
      FTP::RmDir <directory>
      FTP::Quote <arg1> <arg2> ...
      
This new Releases uses the new "fcopy" command to transfer binary data 
between two channels. There is also a version 0.4 of ftp_lib for
tcl7.6/tk4.2, which works stable using the undocumented command 
"unsupported0" for binary data transfer.


3. Installation
===============

If you do not have already installed Tcl/Tk 8.0, at first you must 
install it. Get it from the known locations and follow the 
installation instructions. 

Then type "./install.tcl" in the current directory. This runs a simple
installation GUI. The installation program allows you to change
the directory of the FTP library. The default directory is 
"/usr/local/lib" for UN*X and for WIN* the Tcl/Tk distribution directory. 

There is a small script in the current directory that demonstrates
the using of ftp_lib. It is called "ftpdemo.tcl".
Configure "ftpdemo.tcl" with your own ftp server/username/password entries
and run the demo. See the source of the script to understand the using
of ftp_lib. See also hpupdate, a further ftp_lib application.

For new releases of ftp_lib have a look at 

	http://home.t-online.de/home/Steffen.Traeger/tindexe.htm

<- B A C K


©Steffen Traeger
created: 04/25/99