[comp.text.tex] Mail Server in Stuttgart

JL2@DHDURZ1.BITNET (Rainer Schoepf) (05/30/91)

DANTE, the german speaking TeX users group is pleased to announce
a mail-based service for its software archive at Stuttgart. [Many
thanks to Piet van Oostrum, Utrecht, for providing the extended mail
server software.]

sich Sachen bestellen kann. [Vielen Dank an Piet van Oostrum, Utrecht,

<warning>
  We are still testing the mail server. That means that we do not
  guarantee for uninterrupted service. It may be that the server does
  not work for a weekend or so. If you don't get a response, try
  again. If this happens several times, complain.
</warning>

The mail server's address is: <mail-server@rusmv1.rus.uni-stuttgart.de>

Complaints to <texinfo1@rusmv1.rus.uni-stuttgart.de>.

Here's how to do it:

         How to use the RUS Mail Server
         =================================

The RUS Mail Server can be reached at e-mail address
"mail-server@rusmv1.rus.uni-stuttgart.de". If your mailer doesn't
understand domain addresses, try a nearby gateway like "mcsun" or
"uunet".

When the Mail Server receives a message, It reads the mail headers
to determine the requester's address. If a "Reply-To:" header is
found, the indicated address is used. If not, it uses the address as
specified in the "From:" header.

The message body is scanned for server commands. Every line in the
message should contain a valid server command.

A report is sent to you by return mail. Any requests will be handled
as soon as the load of the server system permits.

    NOTE: The mail server is still under development. Things
    may -and will- change in the future.

The Server's Archives
=====================

RUS maintains a number of archives, which are accessible via the mail
server. You may also try to use anonymous FTP to access the archives at
"rusmv1.rus.uni-stuttgart.de" [129.69.1.12].

Files are stored in the archives in one of the following formats:

Plain: normal ASCII text.

Shell Archive: ASCII files which can be unloaded using the
    Unix sh(1) program.
    Shell Archives have names ending in ".shar".

Compressed: 16-bit compression using the compress(1) utility.
    Compressed files have names ending in ".Z".

Tar: standard UNIX tar(1) format.
    Tar archives have names ending in ".tar".

Compressed Tar: compressed tar archive.
    Compressed tar archives have names ending in ".tar.Z".

Arc: standard "arc" format.
    These files have names ending in ".arc".

Zoo: standard "zoo" format.
    These files have names ending in ".zoo".

When requesting a file you do not have to specify the format-specific
extension. A request for a file "foo" will automatically be changed to
"foo", "foo.tar", "foo.shar", "foo.Z", "foo.tar.Z", "foo.arc" or "foo.zoo"
whichever is available.

The file "INDEX" contains a list of the top-level directories in the archives.

Every subdirectory mentioned there has in it a file called "ls-lR.Z"
contains a compressed directory of all the files in that directory
tree. This file is updated daily. The file is in Unix directory format.
If you are not familiar with Unix, the following should give you a clue:
Entries are of the form:

./ATARI-ST:
total 184
-rw-r--r--   2 atari    archive    37201 Apr 25 20:33 INDEX
drwxr-xr-x   2 atari    archive     1024 Mar 14 15:15 doc

This means this piece is from the directory ATARI-ST. The first file is the
file INDEX, which is 37201 bytes long and made on April 25, 20:33 local time.
Most directories have a file INDEX giving some more information about its
contents.
The last line starts with a 'd', signifying that it is a directory. The
contents of the directory will be specified furtheron in the file. If you
want to get e.g. the file bombs.arc from the doc directory you have to ask
for ATARI-ST/doc/bombs.arc (i.e. the slash character '/' separates
directories and files in a complete file specification).

Command Syntax
==============
A command consists of a keyword (verb), followed by zero or more
arguments, depending on the command. Command verbs may be specified in
all uppercase letters, lowercase or whatever mixed case. In other
words: case is not significant in command verbs. Case *IS* significant
in command arguments. Parts between [ ] are optional.
Empty lines are ignored.

The following commands are understood by the server:

BEGIN
-----
    Begin processing. All commands and errors before this command
    are forgotten. Use this if your mailer inserts garbage.

PATH <address>
--------------
    The return address used by the server is set to the indicated
    <address>. This must be a valid address by which you can be
    reached. It may contain a domain-based address.
    Use this command if you are not sure that the return addresses
    generated by your mail system are reliable.

END or EXIT
-----------
    The remainder of the message is ignored. This can be useful if a
    .signature is appended to the message.

LIMIT <number>
--------------
    Specify the maximum number of bytes which may be sent in a single
    mail message. Transfers exceeding this amount will be split
    before sending.
    The amount may be specified in Kbytes, e.g. "30K".
    The default value is 64K.
    NOTE: setting the limit will only affect "send" and "resend"
    commands following this command.
    NOTE: due to mailer overhead, it is possible that the size of the
    mail which reaches you will (slightly) exceed this limit.

UU[ENCODE]
--------
    The requested items will be uuencoded before sending. Because most
    archives are binary files, they are always encoded before sending.
    Currently, uuencoding is the default. This will change in future,
    when the excellent vvencode/vvdecode programs become publicly
    available.
    Use "send uudecode" to obtain the uudecode/uuencode programs.
    NOTE: setting the encoding will only affect "send" and "resend"
    commands following this command.

XX[ENCODE]
--------
    The requested items will be xxencoded before sending. Because most
    archives are binary files, they are always encoded before sending.
    Xxencoding uses only letters, digit, + and - for encoding. This
    encoding survives more inter-network translations than most others.
    Use "send xxdecode" to obtain the xxdecode/xxencode programs.
    NOTE: setting the encoding will only affect "send" and "resend"
    commands following this command.

BTOA
----
    The requested files will be encoded using "btoa". Btoa encoded
    files are smaller than uuencoded files, but not everyone can
    handle btoa encoded files yet.
    Use "send btoa" to obtain the btoa/atob coding programs.
    NOTE: setting the encoding will only affect "send" and "resend"
    commands following this command.

SEND <item>
-----------
    The specified <item> is looked up in the server archives. If
    found, it will be sent to you by e-mail. Multiple items may be
    specified with one SEND command. If <item> is a directory, a
    listing of the directory will be sent, rather than the directory
    itself (but see the description of the PACK command).
    NOTE: the names of the <item>s are case sentive! On Unix a file
    within a directory is given as dir/file.

RESEND <item> <part> [<part>...]
--------------------------------
    Re-send the indicated <part>s of this item. This is useful if not
    all parts of a multi-parts transmission did arrive correctly.
    When re-transmitting, the encoding and limit used must be
    identical to those of the original transmission.

PACK <archive>
--------------
    This command tells the server that directories should be sent as
    archives. If you give this command, all subsequent SEND commands
    that specify a directory will cause the directory (together with
    all its subdirectories) to be sent as an archive. This is only
    allowed when the directory contains no more than 2MB of files.
    <archive> must be one of:
        tar - for a compressed tar file
        arc - for an arc file (each subdirectory will be sent as a
              separate arc file)
        zoo - for a zoo file

LAST <n>
--------
    Send a list of all files that have been changed or added during the
    last <n> days. The list is similar to a directory listing, but only the
    size, date, time and filename are given.

INDEX
-----
    This is equivalent to "send INDEX".

HELP
----
    This command gives a short list of server commands.

TEST
----
    This command is for testing. No files will be sent if you use
    this, but a confirmation message will be sent to the return path as
    determined from the mail headers or the "path" command.  You may
    use this to find out if your address is valid, and to check the
    status of your request.

Sample Mail Server Report
=========================

Sending:

    path JL2@DHDURZ1.bitnet
    btoa
    send INDEX unpack.pl
    resend soft/INDEX 2 3 4
    send foo
    end

will generate the following report:

    Date: Mon, 27 May 91 18:46:37 -0100
    From: mserv@rusmv1.rus.uni-stuttgart.de (RUS Mail Server )
    Message-Id: <9105271946.AA26919@rusmv1.rus.uni-stuttgart.de>
[1] To: JL2@dhdurz1.bitnet
    Subject: Your request

    RUU CS Mail Server 1.20
    Processing mail headers ...
[2] Return address: "Rainer Schoepf<JL2%DHDURZ1.BITNET@RUSVM1.rus.uni-stuttgart.

    Processing message contents...

    Command: path JL2@DHDURZ1.bitnet
[3] => Return address: "JL2@DHDURZ1.bitnet"

    Command: btoa
    => Encoding = btoa

    Command: send INDEX unpack.pl
    => Send: INDEX
    => Send: unpack.pl

    Command: resend soft/INDEX 2 3 4
    => Resend: soft/INDEX, parts 2,3,4

    Command: send foo
    => Send: foo

    Command: end
    => Okay

    Your message has been processed.
    The following requests have been queued:

      request    format (uncoded size) encoding limit remarks
      -------    --------------------- -------- ----- -------
[4]   INDEX      Plain (3K)            plain
      unpack.pl  Plain (4K)            btoa       64K
      soft/INDEX Plain (1189K)         btoa       64K Parts 2,3,4 only
      foo        File not found                       Request skipped

    These requests will be sent to you as soon as the load of
    the server system permits. Usually this will be within 24 hours.

        Server hints:
         - "send unpack.pl" will send you a perl script to unpack multi-part
           transfers.
         - "send btoa" will yield a ".shar"-file with the btoa/atob programs.
         - "send uudecode" will yield a ".shar" with uudecode/uuencode.
     - "send xxdecode" will yield a ".shar" with xxdecode/xxencode.
     - "send compress" will yield a ".shar" with compress/uncompress.
       The above ".shar"-files are sent unencoded, of course.
     - "send HELP" will yield a document with more info on how to use
       the server.

    Mail Server finished.

As you can see, the return mail is sent to the address [1] indicated
by the PATH command [3]. If the PATH command were not issued, the
address from the message header [2] would have been used.
In the list of requests [4] the format and the size of the files are
shown. Note that the size is the size *before encoding*!
Finally, the request "foo" could not be found and is skipped.

Some time later the following mails will arrive:

    From                Size      Subject
    ------------------- --------- ----------------------------------
    RUU CS Mail Server   73/4301  "INDEX (complete) ascii"
    RUU CS Mail Server   96/7394  "unpack.pl (complete) btoa encoded"
    RUU CS Mail Server  829/65453 "soft/INDEX (part 2 of 4) btoa encoded"
    RUU CS Mail Server  829/65453 "soft/INDEX (part 3 of 4) btoa encoded"
    RUU CS Mail Server  325/25578 "soft/INDEX (part 4 of 4) btoa encoded"

Files which are sent in parts have all pieces clearly marked as such:

    ------ begin of INDEX -- btoa encoded -- part 2 of 4 ------
    #(_0M#C)R-&3BEIu9#I[oEFn;50r5kb6%CJq%=NMgE3in`tMpnX0rOEYPWNM...
    =69S\PiSodA"*lArTZ.-(g6DL2A6_5>DMuFV/&S7H/]XEgLe(l@e;-Rqr:iZ...
    ...
    ...
    $`eP&iGea"a#e[F!oeo1r@U/FP;::i"V)j_EW+.(U*&IrTJ+u'9=$MY7s*CC...
    uI=a5*Wj^#1LD,&>MZKY@H1_a9QE$$4[+?[ePhh"h2Ub"/a,(ES*ZH"nK"6d...
    ------ end of INDEX -- btoa encoded -- part 2 of 4 ------

Unpacking
=========
You may obtain the following packages from the server:

    btoa      btoa/atob support programs
    uudecode  uuencode/uudecode support programs
    xxdecode  xxencode/xxdecode support programs
    compress  compress/uncompress support programs

These packages are send unencoded, in "shar" format.

If you have Larry Wall's "perl" program, you can retrieve the program
"unpack.pl" from the server. This will help you in unpacking the
mails.
By the way: the server software is also written in perl.

For questions, information and remarks:

         Barbara Burr        [infoadm@rusmv1.rus.uni-stuttgart.de]
         Rainer Schoepf      [texinfo1@rusmv1.rus.uni-stuttgart.de]

Revision level: 1.3 - Date: Oct 5, 1990

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Dr. Rainer Schoepf
DANTE-Koordinator fuer Server-Maschinen
Konrad-Zuse-Zentrum                         ,,Ich mag es nicht, wenn
 fuer Informationstechnik Berlin              sich die Dinge so frueh
Heilbronner Str. 10                           am Morgen schon so
D-1000 Berlin 31                              dynamisch entwickeln!''
Federal Republic of Germany
Email: <Schoepf@sc.ZIB-Berlin.de> or <Schoepf@sc.ZIB-Berlin.dbp.de>

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Dr. Rainer Schoepf
DANTE-Koordinator fuer Server-Maschinen
Konrad-Zuse-Zentrum                         ,,Ich mag es nicht, wenn
 fuer Informationstechnik Berlin              sich die Dinge so frueh
Heilbronner Str. 10                           am Morgen schon so
D-1000 Berlin 31                              dynamisch entwickeln!''
Federal Republic of Germany
Email: <Schoepf@sc.ZIB-Berlin.de> or <Schoepf@sc.ZIB-Berlin.dbp.de>

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Dr. Rainer Schoepf
DANTE-Koordinator fuer Server-Maschinen
Konrad-Zuse-Zentrum                         ,,Ich mag es nicht, wenn
 fuer Informationstechnik Berlin              sich die Dinge so frueh
Heilbronner Str. 10                           am Morgen schon so
D-1000 Berlin 31                              dynamisch entwickeln!''
Federal Republic of Germany
Email: <Schoepf@sc.ZIB-Berlin.de> or <Schoepf@sc.ZIB-Berlin.dbp.de>

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-