STPServerDoc.tioga
Rick Beach, June 17, 1985 9:39:03 am PDT
Spreitzer, September 4, 1985 5:25:00 pm PDT
Michael Plass, December 30, 1985 3:26:33 pm PST
STPSERVER
CEDAR 6.0 — FOR INTERNAL XEROX USE ONLY
STPServer
© Copyright 1985 Xerox Corporation. All rights reserved.
Abstract: The STPServer is a Cedar program that allows your machine to be used as a simple file server.
Created by: Michael Plass
Maintained by: Rick Beach <Beach.pa>
Keywords: file server, STP, file transfer, file translation
XEROX  Xerox Corporation
   Palo Alto Research Center
   3333 Coyote Hill Road
   Palo Alto, California 94304

For Internal Xerox Use Only
1. STP Server Operation
Basics
An STPServer accepts certain file transfer requests from other machines. During normal operation whenever it accepts a transfer connection, an iconic viewer is created that lets you know what is going on; if you ignore the icon, it will go away when the connection closes. Alternatively, you can open the viewer to see the requests that are being made, and who is responsible.
When retrieving files through an STPServer, it is a good idea to use "copy -c"; otherwise only an attachment is made, and you are relying on the STPServer to be available when the file is actually opened.
Access Control
The STPServer uses a very simple-minded access control scheme. Any grapevine-authenticated user is allowed to list directories. Read access is controlled by the local file
[]<>STPServer.readAccess
create access is controlled by the local file
[]<>STPServer.createAccess
anyone with an RName listed in this file will be allowed to read (retrieve) files. The list may contain group names, e.g., CedarUsers^.pa.
Name Mapping
The STPServer will perform substitutions between the names it speaks to its clients and the names it speaks to FS. The STPServer keeps a list of pairs [remoteFrag, localFrag: ROPE], such that whenever a remoteFrag appears in a file name it is speaking to its client, the corresponding localFrag appears in the name it is speaking to FS. This is good for making a random Cedar workstation into one of the real servers behind some pseudo-server. The list of pairs is found in your user profile, under STPServer.NameMappings: TokenList ← NIL. For example, to make your machine a real server for directory Fubar of pseudo-server Bazola, copy []<>Fubar> ← [Bazola]<Fubar>*, and have the profile entry:
STPServer.NameMappings: <Fubar> <>Fubar>
File Translation
STPServer may be used to perform certain kinds of file translations, by asking for a file with a pseudo-name that specifies both the translation desired and the input file name. For example, suppose there were a machine named Favor that was running STPServer. To obtain a plain text rendition of a Tioga document [Indigo]<abc>xy.z, a user would retrieve the file
[Favor]<TextFromTioga>Indigo>abc>xy.z
and would get the result of doing a WritePlain on [Indigo]<abc>xy.z. For the translation services, the access control of the input file is used.
The file translation services are primarily for non-Cedar users on the network who would like to get a usable form of a file that is in a format parochial to the Cedar environment.
Since the actual file sizes cannot be known, in general, without actually doing the translation, the list operation estimates the size of the translated file by rounding the size of the untranslated file up to a multiple of 1000.
The "create" time for a translated file is invented by adding one second to the create time of the untranslated file.
Current File Translation services:
TextFromTioga — Translate Tioga file to unformatted text file.
2. STPServer Command
name STPServer:
syntax
STPServer <option>*
where <option> may be one of the following:
start (or on) - enable the STP server
stop (or off) - disable the STP server
loose - enable promiscuous writing by any user
tight - disable promiscuous writing (default)
mute - disable logging and display of progress icons
vocal - enable logging and icons (default)
translate - enable file translation service (default)
noTranslate - disable file translation service
description
Control the STPServer by starting or stopping it,
examples
STPServer start
enable the STP server
STPServer stop
disable the STP server
STPServer start loose mute
enable a promiscuous STP server that does not log its transactions
warnings
obviously, use the promiscuous options in only controlled situations.
stop/undo
use the stop option to disable an STPServer.