MAT - MAC ATP TRANSFER (PROGRAM AND DAEMON)

This directory contains the sources for the UNIX and Mac side of a
simple "Mac ATP Transfer" program.  You end up with two programs:

'matd' is the UNIX 'mat' daemon.  It calls a library of ATP functions
to receive and process ATP transactions from the Macs.  The daemon
does authentication, forking, etc.

'mat.rsrc' is the Mac program.  It has a simple window for text
messages and menus to select 'get' or 'put' transfers.  Stdfile
dialogs are used.  When it first comes up (or if you later pull
down 'file/new host&user') a dialog box prompts for hostname,
username, and password (the password is in a TextEdit box so tiny
that it doesnt give anything away).

Note that you have to have our Stanford Ethernet AppleTalk gateway
(seagate) to use this.  The gateway takes AppleTalk datagrams and
translates them into IP/UDP datagrams, so that no UNIX kernel mods
are necessary to speak AppleTalk (only a user level library).

Between a Mac and our VAX 750 (4.2 bsd) we see about 120K baud
on reads and 70K baud on writes (timed with a ramdisk on the Mac
side).  The ATP protocol is more efficient during reads because
of the multiple response packets it allows.

While useful as an example, the main reason we did 'mat' was to
test out our UNIX and Mac ATP libraries and the protocol translating
function of the seagate.  The UNIX library is certainly not 
complete.  It currently supports only 'server' usage;  the
corresponding 'client' calls should be added.  You would also
want to write some support for the Name Binding Protocol.

We are shortly going to insert the library calls into an external
file system (courtesy of John Seamons).  Other uses you might
try:  (1) have your Macs spool documents or pictures to a UNIX
daemon that hands them off to Imagen laserprinter postprocessors.
(2) write an interface to the mail system that allows sending
and receiving pictures (and speech?) inside your Internet mail.


FILES in this directory:

Makefile	'make' input file
README		this file
atalk.h		general appletalk header file (mac and unix)
atalk.c		atalk library (mac)
atalku.c	atalk library (unix)
atalku.h	atalk library header file (unix)
mat.c		mat main program (mac)
mat.h		mat 'protocol' definitions (mac and unix)
mat.rc		resource file for mat (mac)
matd.c		mat daemon (unix)
skel.c		toolbox skeleton application called by mat (mac)


----
All material Copyright (C) 1985, Stanford University.
May be used, but not sold, without permission.
