                          Envoy Network Filesystems



The initial Envoy network filesystem is broken into two halves -- a client,
to access files on remote machines; and a server, to allow remote machines to
access local files.  The client and server portions of the filesystem may be
run separately or together, allowing for true peer-to-peer filesystem access.
Both the client and server include security -- a server will not allow a remote
client to create a remote mount unless the username and password pair passed
from the client  is authenticated.

Client

The client portion of the filesystem is implemented as a standard AmigaDOS
filesystem, and will be designed to translate DOS packets into Transactions.
Each remote filesystem to be accessed will be a volume on the client
filesystem.  Each mount specifies the machine on which to access files, as
well as the directory path to mount on that machine.  Each mounted volume
will create a Workbench icon -- allowing simple Amiga point-and-click access
to remote files and directories.  The user will not see any difference
between a network-mounted filesystem and, say, a hard disk (other than access
speed, depending on the CPU and network hardware being used).  Each remote
mount can automatically be created on system bootup - with no action required
of the user other than initial configuration.


Server

The server portion of the filesystem will translate Transactions initiated by
a remote client into actions taken on a local filesystem.  When a client attempts
to mount a filesystem,  a client-provided username and password pair must be
authenticated to allow access.  When any individual file or directory is
accessed, that user's user-id and any group-ids will be checked against bits
in the multi-user filesystem to determine what access, if any, will be allowed
to the specific file or directory.  The fileserver will be able to successfully
recover from most reboots by automatically re-establishing any mounts, locks,
open files, etc.

