
Well I did say alpha test :) So there ain't a proper doc. yet. Each bit
of code is commented at the top re. usage.

Bug-reports, ideas, praise, used notes,  to NaMLS-bugs@pierrot.demon.co.uk
please.

All the hot stuffs at the bottom :)

The files you get are, this txt plus

mail2news.c
mail2news     ; = rmail2uunews = mailbatch2uunews

Take a mail list convert it to a uunews hierarchy.

news2mail.c  
news2mail     ; = uunews2mail = rnewsbatch2mail

Take news group, and send it via mail to an address.

sendnews2mail.c
sendnews2mail ; = sendnews2mail

Get the followup from your newsreader, if it's a group created by my mail2news
then change the newsgroup to a To:

mail2newsbatch.c
mail2newsbatch; = rmail2newsbatch = mailbatch2rnewsbatch

Take a mail list, convert it to a newsbatch file, to be unbatched with
say rnews or dannews, use either this _or_ the above.
This is useful if you like XRef: and Stats: etc which DanNews will do
for you.

INSTALLATION is easy, just copy the exes to AmiTCP:bin.

Modify your current TIN_POST (or similar) variable. On my system it's

$TIN_POST=procnews.sh %s

procnews.sh, similar to the postnews script many people use, but I add
my sig in here as well.

.key art
.bra {
.ket }

addersig {art}               ; add the random sig
sendnews2mail {art}          ; sendmail

I also have the following

$POSTMAIL=sendmail -f $USER -t < %s 
$POSTNEWS=sendmail -f $USER -t mail2news@$NEWSSERVER < %s 

$POSTMAIL is the same as the $TIN_MAIL
$POSTNEWS is the same as the old $TIN_POST, and is the command used in
the old postnews script.

Add a couple of lines to your alias file, and a line to the newsgroups file
for each mail list, and go...

Oh yeah, and create the UUNews:newsgroup directory.

Or use the mailbatch option and just add a line to your newsgroups file,
then add the unbatch option to your disconnect script.

NB this is mail, mail does not get resent, you can't wind back a newsstamp
file, so if mail is lost by these progs you can't get it again. 
So I suggest you change your aliases to be something like

username: \username,"|rmail2news newsgroup"
newsgroup: \newsreply,\listreply@address

Where username is the name of the user on your machine that gets the mail
from the list, newsgroup is your local false newsgroup name, newsreply is
a user on your machine that will get a copy of all replies you send to the
group, and listreply@address is the To: address you're meant to use to
send to the list. 

TO DO

Modify the rmail stuff so that it will scan all mail for a user specified
and only extract mail from the list, other mail wil pass through to the
user as per normal. Means you don't need a different user for each mailing
list. Just a case of doing a scan for a specified To: line. The difficult
bit is how to deal with multiple mailing lists send to a single user all
in one pass rmail style...

Tidy up the code... Any hints welcome. (there's a lot of duplicate stuff
at the moment that can go, and I'm using some inappropriate string methods
is places). I'll probably end up combining all the various progs into one
large bit of code, and one exe that can have links made to it, names case 
insensitive of course :)

NB most of the code should be ANSI compatible, there will probably be some
SAS/C specific functions though. They will be going, as will any Amiga
specific calls.

STOP PRESS

A proper name :)

NewsAndMailListServ

Or that's what it's gonna become....

And more about installation. 

I had a clever idea last night, a couple actually, one was the name. 
The other was how to set up the initial test of these progs. I was going
to use the ListServ software, but then I thought, nah I'll do it with
this lot as a pseudo newsgroup....

So this is what I've set up in my aliases file, a lot of it's for future
expansion, and testing.

NaMLS@pierrot.demon.co.uk: NaMLS
NaMLS: \NaMLS
NaMLS-bugs@pierrot.demon.co.uk: NaMLS-bugs
NaMLS-bugs: NaMLS
NaMLS-error@pierrot.demon.co.uk: NaMLS-error
NaMLS-error: postmaster
NaMLS-request@pierrot.demon.co.uk: NaMLS-request
NaMLS-request: NaMLS
NaMLS-tester@pierrot.demon.co.uk: NaMLS-tester
NaMLS-tester: NaMLS
NaMLS-list@pierrot.demon.co.uk: NaMLS-list
NaMLS-list: NaMLS-group
NaMLS-group@pierrot.demon.co.uk: NaMLS-group
NaMLS-group: "|rmail2news NaMLS-group",\NaMLS-list,NaMLS-test1
NaMLS-test1@pierrot.demon.co.uk: NaMLS-test1
NaMLS-test1: < a list of testers addresses, easily expandable for now... >

And in my UULib:NewsGroups

NaMLS-group 7

So you send mail to the mailing list address, NaMLS-list@pierrot.demon.co.uk
my user NaMLS-list the mail, sends a copy to everyone in the group and gates 
it to the newsgroup NaMLS-group and send a copy to NaMLS-lists. I use the user
NaMLS to read this newsgroup and make replies/followups. Replies go to mailer,
followups go to NaMLS-group... That's the theory anyway. 

Your setups should be slightly different, 'cos we don't want you all running
the same mailing list... Change newsgroups as above, and add to your aliases
Where NaMLS-tester is the username you are using to test this stuff and receive
the "mailing list" (not necessarily the reader of the group). For now please
all use NaMLS-tester to receive stuff, that's who I'm going to send the
mailing list stuff too.

NaMLS-tester: "|rmail2news NaMLS-group",\NaMLS-tester
NaMLS-group: \NaMLS-list@pierrot.demon.co.uk,NaMLS-tester
NaMLS-error: postmaster

You may also want to add, assuming you're not using NaMLS-list as your user 
name, you can (probably:)

NaMLS: \NaMLS@pierrot.demon.co.uk
NaMLS-list: \NaMLS-list@pierrot.demon.co.uk
NaMLS-bugs: \NaMLS-bugs@pierrot.demon.co.uk

In your case, in theory, mail arrives for NaMLS-tester, a copy is sent to
them (for safety), and it's gated to UUNews:NaMLS-group. You then read the
group as per normal. Any replies are sent to the mailer, any followups go
via NaMLS-group on your machine to NaMLS-list@pierrot.demon.co.uk, and
hopefully then out to the rest of the group and a copy is sent to namls-tester
and a copy to the local newsgroup. Again it's not all really necessary,
but I want to be able to trace everything...

Anyway, just do it :) And then send me some email at
NaMLS-list@pierrot.demon.co.uk (just replying to this should do it...)

CONFUSED, I AM


/*
Take either stdio or argv[1] as input. Split it up every "^From ", adding
a Followoup-To: line based on any existing Newsgroups: line plus argv[1] and
replacing the Reply-To: by the From: line

argv[1] is necessary, it is the newsgroup name, you can process an existing
mailfile by doing either

mailbatch2newsbatch newsgroup filename batchfile

Use with stdin, 

type filename | rmail2newsbatch newsgroup batchfile

Use with stdin, put in your alias file

listusername: "| rmail2newsbatch newsgroup batchfile"

NB newsgroup must contain no . (these are of course not valid real group 
names, so can be placed in your newsgroups file. And newsgroup can not ne
the same as the listusername.

You can then use your favourite unbatcher, eg DanNews to unbatch the file.

To gate mail back from one of these false newsgroups, use my news2mail prog.

*/

/*
Take either stdio or argv[1] as input. Split it up every "^From ", adding
a Followoup-To: line based on any existing Newsgroups: line plus argv[1] and
replacing the Reply-To: by the From: line

argv[1] is necessary, it is the newsgroup name, you can process an existing
mailfile by doing either

mailbatch2uunews newsgroup filename

Use with stdin, 

type filename | rmail2news newsgroup

Use with stdin, put in your alias file

listusername: "| rmail2uunews newsgroup" 

NB newsgroup must contain no . (these are of course not valid real group 
names, so can be placed in your newsgroups file. And newsgroup can not ne
the same as the listusername.

To gate mail back from one of these false newsgroups, use my news2mail prog.

*/
/*
Take argv[3] as input, if it exist. Split it up every "^#! rnews " and if
argv[1] = Newsgroups: line in the article 
or if argv3[] doesn't exist then use argv[1] and check the UUNews: hierarchy
if there's a .last file go from there until .next each file 
    
sendmail -t argv[2]

argv[1] is necessary, it is the newsgroup name, you can process an existing
batchfile by doing 

newsbatch2mail newsgroup whoto filename

And a uunews: type hierachy with

uunews2mail newsgroup whoto

*/
/*
Take either stdio or argv[1] as input. 

Search for the Newsgroups: line

if newsgroup contains no . (these are of course not valid real group names,
so can be placed in your newsgroups file.) then convert that newsgroup
into a To: line and send the article with

If there are some real newsgroups then send the article using $NaMLSNEWS
(eg sendmail -f $USER -t mail2news@$NEWSSERVER < %s)

otherwsie use

$NaMLSMAIL (eg sendmail -f $USER -t < %s)

To use just create the two env vars above (you can probably copy them
from your TIN_MAIL and TIN_POST (or similar)). Then replace your TIN_POST
(or similar) with mail2news %s or mail2news <%s.

To gate mail from a maillist to one of these false newsgroups, use my
mail2news prog.

You will need an entry in your aliases file such as

newsgroup: listreplyaddress

This is the To: header on the incoming mail.

*/



Subject: Re: Further notes
Newsgroups: namls-group
References: <9507272358.AA00s32@pierrot.demon.co.uk>
Organization: ECL.net
Distribution: 

Terrance Richard Boyes (tez@pierrot.demon.co.uk) wrote:
: Well it seems to work.

: You'll probably notice you get lots of copies of the messages at the moment.
: 1 put directly in the newsgroup, and a copy by email when you post. And
: 1 to the newsgroup and a copy by email, when I send it out to the whole list.

: The email copies won't happen in real use (unless you want them too) 'cos
: it's just the way I've told everyone to set up the aliases for testing.
: You may want to do it this way, or use whatever method you normally use
: to store a copy of what you send.

: The copy that goes straight into the newsgroup can be avoided, again it's
: in the alias file, whether you'd want it or not is linked to the following...

: And the copy of what you send to the list and is sent to everyone by me may
: or may not happen dependant on the Mailing-List, some will send your
: contributions back, some won't.

: --  ~ Warning Random Fortune Sig follows ~ --
: Real Programmers don't write in FORTRAN.  FORTRAN is for pipe stress
: freaks and crystallography weenies.  FORTRAN is for wimp engineers who
: wear white socks.



Subject: Re: To-Dos
Newsgroups: namls-group
References: <9507281915.AA00s9e@pierrot.demon.co.uk>
Organization: ECL.net
Distribution: 

Terrance Richard Boyes (tez@pierrot.demon.co.uk) wrote:
: Currently I'm working on getting all the code into one file, and how to cut
: down on duplicated code. And making it all ANSI compatible.

: What I'll probably do is have it work something like this

: Read entire header, store important header lines, write the rest to a tmp
: file.
: Work out what we're meant to be doing with this article. Modify the
: appropriate header lines appending to the tmp file.
: Add any other necessary headers to the tmp file.
: Call the appropriate program for posting the article.

: v2 will have ListServ features added, v3 MailServ features, v4 encryption...

: Any other suggestions?

: --  ~ Warning Random Fortune Sig follows ~ --
: The English have no respect for their language, and will not teach
: their children to speak it.  -- G. B. Shaw


General , how it will work.

One piece of source code, call it the appropriate thing dependant on
what you want it to do.


First read entire header, all lines we're interested in get stored as
variables. Any we don't want get trashed, the rest get written to a temp
file. Then decide what prog. we are running. If a mail/list serv request
process the commands and use the appropriate reply addresses. If the
mail2news gateway stuff then faff with the newsgroups line :)

rmail2uunews needs a different user for each list, rlist2uunews will
process any number of mailing lists for each user, it uses the To: of
the header and a config file to decide what to do. Note this must be
a proper list done by a prog like ListServ that's To: is the listreplyaddress

The config file is also used to decide where to send replies to eg

PseudoGroup  List Reply Address
NaMLS-group: NaMLS-list@pierrot.demon.co.uk

If you want a local copy doing you need to add a Cc: line to the header
(many newsreaders will do this automatically if you set them up that way)
eg tin

with a 
Cc: NaMLS-list

And of course your aliases file will say

NaMLS-list: "|rmail2uunews NaMLS-group"

or if you get all mailing lists sent to one username

mail-lists: "|rlist2uunews"

Probably best to use rmail to send all stuff, so we need to ensure
complete headers, date: Message-Id: "From "?????

MailServer - with args works as Dom`s (plus any other mailserv info
retrieval type stuff)

AutoRespond,Away/Vacation,Bounce,Forward - synonyms for mailserver, but
no arg to tell it how to work is needed.

ListServ - works as ListServ3

Anon - sends anon mail out, record the sender so replies can come back.

RMail2News, MailBatch2News
RMail2NewsBatch, MailBatch2NewsBatch
UUNews2Mail, NewsBatch2Mail
SendNews2Mail

Other progs

NewMail, LostMail, BounceMail

AdderSig, MakerSig

Aminet Recent to Index

HeadClient / getids

SetUserEnv from passwd file

Config files, all the following in various circumstances.

Banned
General
various user based ones in each users home dir.

Config entries check local var, then Env:, then $HOME/configs then
UULib:NaMLS.config then UULib:config then S:config? ....

MailServer additional stuff

AutoRespond
Away/Vacation
Bounce
Forward
Notify ???



Subject: Re: Your HELP Request

Mailserver Help
===============

Here is a list of commands you can use with Mailserver. You will notice that
some commands have synonyms. In this case, you can use whichever synonym
you like.

DIR [directory]    Send a directory listing.
LIST [directory]

CD directory       Change the current directory.
CHDIR directory

GET filename       Have the file 'filename' in the current directory
SEND filename      ent to you by e-mail.

PARENT             Move to the parent directory of the current
CDUP               directory.

ROOT               Move to the root directory.

HELP               Send this file

QUIT               Do not accept any more commands.


Feel free to GET any of the files in the public directories..

Some Notes:

o  You can only get files from the Mailserver's public directories.
o  Binary files will automatically be uuencoded before being sent.
   They will therefore increase slightly in size when sent. Files are
   never split.
o  If you include Reply-To: line in the header of your message, files
   will be sent to the specified address. The confirmation slip sent
   with the files will contain the address of the person who requested it.
o  Some files may have a filenote attached to them.
o  All commands are logged.
o  Address all comands to mailserver@dynamo.demon.co.uk
o  Address any comments or suggestions to dom@dynamo.demon.co.uk
o  .info files are Amiga Workbench (TM) Icon files, and will probably
   be of no use to non Amiga users.




Peti's Amiga ListSERV help page (22 April 1994)
***********************************************

    You can subscribe or unsubscribe to any of  the  various  local  mailing
lists by sending email to <listserv@peti.GUN.de>.

The commands understood by the ListSERV program are:

    HELP
          Lists this file. This is also  sent  whenever  a  message  to
          ListSERV is received from which no  valid  command  could  be
          parsed.

    HELP listname
          Lists a brief description of the list requested.

    LIST [address]
          Lists all  mailing  lists  to  which  the  given  address  is
          subscribed. If you omit the 'address' the command will assume
          the mailbox is in the from line.

    INDEX
          Lists all the lists available for subscription.

    LONGINDEX
          Lists all the lists and their descriptions.

    ADD [address] listname
    DELETE [address] listname
          Adds or deletes  the  given  address  to  or  from  the  list
          specified. Mail is sent to the address given to  confirm  the
          add or delete operation.   If  you  omit  the  'address'  the
          command will assume the mailbox that is in the From: line  of
          the message. Note  that  SUBSCRIBE  is  a  synonym  for  ADD;
          UNSUBSCRIBE for DELETE.

    DELETE-ALL [address]
    UNSUBSCRIBE-ALL [address]
          Unsubscribes given address from all mailing  lists.  Mail  is
          sent the address given to confirm the deletions. If you  omit
          the 'address' the command will assume the mailbox that is  in
          the From: line of the message.

    FAQ [listname]
          Sends  a  list  of  "Frequently  Asked  Questions"  for   the
          appropriate  mailing  list.  If  the  listname  parameter  is
          omitted, a list of available FAQs is sent instead.


    A command must be the first word on each  line  in  the  message.  Lines
which do not start with a command word result in this file to be  sent.   If
no commands were found in the entire message,  that  message  is  completely
ignored. A single message may contain multiple commands; some  commands  may
result in a separate reply (namely FAQ, HELP) while others will  just  write
something to the logfile. You will always receive a response to any  command
found in the mail.


Files for each list, in the groups dir


`List'
     This file contains the list of subscribed addresses. Please take
     note that it must only contain the addresses. No comments or real
     names are allowed. List only one address per line and avoid blank
     lines. You should enter only your address here and let the rest
     handle the daemon.

`Description'
     The contents of this file will be used when an LONGINDEX or HELP
     <list> has been issued to the daemon. This should be a brief
     description of the purpose of the list.

`Introduction'
     This file will be sent to all new subscribers and should contain
     instructions about the list, for example: "Please do not post
     binaries to this list!"

`FAQ'
     This file can be used to maintain a list FAQ (frequently asked
     questions). If this file exists, it will be listed with the FAQ
     command of daemon and will be sent out with the "FAQ <list>"
     command. This file is not necessary, unlike than the previous
     files.

`Signature'
     Here you may design a small signature that is appended to every
     article posted to the list. I usually state the name of list and
     the address of the list managers here. You should preface the
     actual text with a few blank lines. If this file does not exist,
     no signature will be appended.

`Banned'
     Here you can ban certain addresses or pattern from issuing commands
     regarding this special list, for example ADD and DELETE. All
     AmigaDOS patterns are supported. You can specify one pattern per
     line.

     I usually use the following pattern per default:

          (~(#?@#?)|#?peti.GUN.de)

     This will ban any address that does not contain an at ("@") and
     every address that ends in "peti.GUN.de". Hence, it is impossible
     to subscribe local addresses to the list! I know it's sad but
     you'll always find people who try to subscribe one mailing list to
     another just to annoy you. This won't happen now!

   Okay, when you have edited all files, the script will terminate and
the list is set up and working. If you take a look at your alias file
now, you'll notice that all required aliases have been appended there.
You might want to modify them for certain purposes:

`test:: "|ListSERV:s/SendMailingList test"'
     Obviously, "test" is the address you can use to post to the list.
     If your machine is called "peti.GUN.de", the address of the list
     would be "test@peti.GUN.de". SendMailingList is another script
     that will be discussed later.

`test-error:: listserv-manager'
     This is the address bounces will be sent to. The mailing list
     software will set the envelope of the outgoing mail to
     <listname>-error rather then <listname> to prevent bounces from
     beeing sent back to the list, causing an infinite loop. Usually,
     "listserv-manager" is an alias for postmaster.

`test-admin:: listserv-manager'
     The admin address the list's administrators can be reached under.
     Although most users are not smart enough to use it (They prefer
     sending any question they have to the world-wide list usually.) it
     is a nice idea IMHO. You can list several addresses here in case
     several people are responsible for the list.

`test-request:: "|ListSERV:c/ListSERV test"'
     This address is a special case of the "listserv" alias. Since the
     list's name is stated on the commandline, all commands apply to
     this special list. This makes it easier for the user because a
     simple "ADD" is enough to subscribe to the list.


Brief summory of commands:   (ON THE SUBJECT LINE!)
---------------------------------------------------------------
Cmd: ACRONYM  {var} Looks up {var} for matching acronyms
Cmd: ALMANAC        Looks up today in history (weather, trivia, etc)
Cmd: AREA     {var} Looks up city, state, country, etc for telephone codes
Cmd: CALLNAME {var} Looks up ham radio call signs for person {var}
Cmd: CALLHELP       Returns suggestions on how to do ham radio lookups
Cmd: CALLSIGN {var} Looks up ham radio call sign {var}
Cmd: CALLZIP  {var} Looks up ham radio call signs in zip code {var}
Cmd: CHEF {msgbody} Bork Bork Bork!
Cmd: DIG {parms}    Internet "dig" program; complements nslookup (see below)
Cmd: FINDCD {search}Search throuch CD (music) catalog .. 
Cmd: FINGER {user}  Fingers {user} and mails you the results 
Cmd: GEEK           Returns the current Code of the Geeks
Cmd: JARGON {word}  Check the Hacker's Jargon File for a word (try PIZZA)
Cmd: LOAD           Shows load on InfoMania's Sun 
Cmd: MAN   {search} Returns the manual pages for whatever program
Cmd: NSLOOKUP{parms}Runs the name server lookup program (see below)
Cmd: PDIAL {search} Get or scan latest PDIAL publc access list
Cmd: PI             Returns several hundred digits worth of PI
Cmd: PING {site}    Tells our site to ping another site.
Cmd: ROOT2          Returns several hundred digits worth of SqrRoot(2)
Cmd: TOPTEN         Get the latest Top-Ten list (this is NOT a mailing list)
Cmd: WEATHER {parms}Returns weather, etc for North America (use WX -h)
Cmd: STATUS  {job#} Returns info on a specific job number for InfoMania!
Cmd: WEBSTER {word} Look up {word} in dictionay 
Cmd: WHOIS          Look up domain registration with the internet 
Cmd: WX {parms}     Returns weather, etc for North America (use WX -h)
----------------------------------------------------------------
Cmd: HELP           Shows help file

Note, that these files are available at ftp.netcom.com:/pub/jfesler/ ..
if you have ftp abilities, please use that method instead of the mail
server, as the overhead is far less.

Extra Notes:

ACRONYM {word or acronym}
  This function will check a server that contains many of todays often used
acronyms.  You can search for a word (ie, big, large, etc), or a specific
acronym.

ARCHIE {options}
  This function has been removed due to archie servers world wide 
failing.  The load caused by the failing archie servers has been 
unacceptable :-(.  Use the ARCHIE function to get info on where to send
email.

ALMANAC 
  This command "finger"s copi@oddjob.uchicago.edu to do it's dirty work.  A
lot of interesting information that changes from day to day is here.

AREA {city or country name, or telephone code}
  This function accesses a server which contains most, if not all, of the
telephone area codes and country codes around the world.  Example searches
would be AREA 916 or AREA NETHERLANDS.  Good way of finding out what area
code someone is in, also a good way of finding out where someone lives by
their telephone number.

CALLINFO
  Returns information about the ham radio call-sign lookup server
being operated via telnet callsign.cs.buffalo.edu 2000..

CALLHELP
  Returns help instructions on ways of narrowing down your searches with 
the ham radio functions.  It mentions how to limit by location, name, etc.

CALLNAME {partial name of ham radio operator}
  Looks up the ham radio call sign database for anybody with the name that
you specify.

CALLSIGN {ham call sign}
  Looks up a ham radio call sign, and tells you who it belongs to, where
they live, etc.  Handy if you hear an unfamiliar call over the radio.

CALLZIP {zipcode}
  Looks up all ham radio users for the zipcode that you specify.

CHEF {msg body}
  Thees veell cunfert yuoor messege-a budy tu meke-a it luuk 
leeke-a it ves perheps vreettee by zee Svedeesh Cheff, frum zee Mooppets.  
It cun teke-a uny sereeuoos text, und toorn it intu a rezeer hoomuooruoos 
ferseeun ooff zee ooreeginel.  Bork Bork Bork!

DIG {options}
 Runs the name service lookup program.  You may either specify options ont
he subject line, or may use the message body; in the second case, InfoBot
will pretend you were typing all of that stuff straight into dig. Mainly for
sysadmins who want to confirm their own name service daemons are working
correctly.  To get instructions on it's syntax, email man@infomania.com,
with a subject of "dig".


FINDCD {searchstring}
  This function allows you to search for your favorite author or
title through a catalog of CD's.  Only one search string is allowed per
search (hopefully, I'll make a _real_ program to handle this later).  An
example would be FINDCD Pink Floyd  or  FINDCD Dark Side.   Search results
will be limited to 40k; also, you'll get an advertisement at the end on how
to get the complete catalog via ftp, as well as how you can order some of
these CD's via a local merchant.  The rates are usually pretty decent
compared to the local stores, and this guy delivers.. :-)   The entire
catalog can be FTP'd from  ftp.netcom.org:/pub/recplace/ .. 

FINGER {user}
  This command will allow you to "finger" any user or site on the internet
that is fingerable.  The results will be sent back as email.  This is
primarilly for people who have only mail access to the internet; many good
things are available, but only by fingering various addresses.  For more
information, email infobot@infomania.com, subject: man finger

FX 
  If you want the latest copy of FX-UUCICO,along with any associated FAQ
files, etc, sent to your email address, use this command.  You will need a
copy of uudecode to interpret these messages.

GEEK
  This command returns the current version of the Code of the Geeks.


JARGON  {word}
  This command will check the Hacker's Jargon File v2.99 [April 1992], 
for the word you specify.  Most entries are of humourous nature.  One such
word you want to try is JARGON PIZZA ..
  If you do not specify a word, this function will return back an index of
all searchable keywords.  Use this if you are just browsing.

LOAD
  This command is useless for anyone who is not at Infomania.  Why it's made
public, I have no idea.  Really!

MAN {programname}
  This is an extremely redundant one.  Most people who have need for the man
pages, will have access to a "man" command on their system.  However, just
in case this proves useful to someone.. you can ask for man pages via email. 
A sample request would be MAN sz  to get help on the "sz" program.

NSLOOKUP {options} Runs the name service lookup program.  You may either
specify options ont he subject line, or may use the message body; in the
second case, InfoBot will pretend you were typing all of that stuff straight
into nslookup. Mainly for sysadmins who want to confirm their own name
service daemons are working correctly.  To get instructions on it's syntax,
email man@infomania.com, with a subject of "nslookup".

PDIAL {searchstring}    [Defaults to returning ENTIRE PDIAL list]
  This command will allow you to retrieve the latest PDIAL public access
list maintained by Peter Kaminski (kaminski@netcom.com).  If no options
specified, the entire list is sent back (circa 70k).  
  You ARE allowed to specify a search string, such as an areacode.  If
given, you will be given only the relavant providers related to the search. 
Ie, PDIAL 916 will return all 916 area providers.  PDIAL 212 SLIP will
return all SLIP providers in the 212 area code.  PDIAL NETCOM will return
info about netcom.com.
  Peter Kaminski has given his express permission to use his list via this
function.

PI 
  This function will return to you via email the value of PI, to several
hundred digits accuracy.  The resulting message will be approximately 20-30k
long.

PING
  Tells infomania.com to "ping" another site on the internet.  Useful for
administrators trying to make sure that their site is reachable when the
connections are questionable, ie after wide area route reconfiguration, etc.
(Note:  traceroute is _not_ available, please don't ask.  Sorry!)
To get instructions on it's syntax, email man@infomania.com, with
a subject of "ping". 

ROOT2
  This function will retiurn to you via email the value of the square root
of 2, to several hundred digits accuracy.  The resulting message will be
approximately 20-30k.

STATUS  {job number}      [This is only for customers of InfoMania]
  This function will allow you to check on the status of a scanning or
output job that we are doing for you.  You will see a journal log of who has
worked on your job, with any discertations that may have been made.  On
request and at no additional charge, this same information can be emailed to
you whenever we make an update to your job's journal.  Ask us for details, 
or write down your email address on your order form in the "Special
Instructions" box.

TOPTEN
  The David Letterman Top Ten List; sends back the latest list actually
broadcast by the television network.

WEATHER {abr}     
WX {abr}        
  Include a 3 letter city abbreviation, or a 2 letter state abbreviation. 
This works on USA and Canadien locations.  Specify WEATHER HELP or WX HELP
if you would like help instructions.  Various things from current conditions
and forcasts to ski reports and earthquake data are available.
 
WEBSTER {word}
  This command will allow you to look up any word in the English language. 
If you have a list of words, you may instead leave the {word} field blank,
and use the message body (one word per line,  _no_ blank lines).  If you can
not get the list method to work, go back to a single message per request.

WHOIS {options} {sitename}
  This command will run the standard "whois" client program, querying the
InterNic for the domain name registration information for the given site
name.  For more details, email infobot@infomania.com, subject "man whois".

HELP  
  You're reading it!


Mailserv

	HELP	(no arguments)		Lists this command summary.
	HELP	<topic>			Gives other (detailed) help.
		(Topics can be viewed with HELP HELP, and includes all
		 commands as well as some other items.)
		(Help in finnish with `APUA' command.)

	REPLY-TO return-mail-path	If you don't trust your mailer...
	  (Command aliases: REPLYTO, PATH)	(Fix your mailer!)
	  (If you have to use this KLUDGE, go asking for help on your
	   system malfunctions from your system managers!   Especially 
	   this is not for 'do a favour to a friend'-use..)

    For our internal mailing lists, some of which are available
    for everybody, most aren't...

	SUBSCRIBE <listname> <real name>	To join lists
	  (Command aliases: SUBS, SUB, SIGNON)

	UNSUBSCRIBE <listname>			To get out
	UNSUBSCRIBE *				To get out from every list
	  (Command aliases: UNSUB, SIGNOFF)

	LIST					To see list of lists

	REVIEW <listname>			To see members of list
	  (Command alias: REV)

	REVME ( * )				Check which lists you are on
						`*' to use fuzzy match.
	(+ some others for list owners..)

    Fileserver functions
	(HELP FILES      for complete document -- READ IT!)

	PARTSIZE	<sizeexpr>	Delivery partitioning mechanism.
	  (Command alias: SIZE)		(Default: 65k, max: 1M.  READ THE DOC!)

	PARTS		<part list>	If only few parts are needed for
	  (Alias: PART)			multipart request retry, this can
					be used to pick only that/those.

	MAILQUOTA	<sizeexpt>	Delivery limitation mechanism
					Default limit  1M -- 1 MB worth mail.

	ENCODER  <keyword>		Delivery encoding option
	  (Command alias: ENCODE)

	LOCATE <regexp-pattern>		Locate files by case insensitive
	  (Command alias: FIND)		regexp search.

	CHDIR	<path>			Change default directory to new one.
	  (Command alias: CD)

	PWD	(no arguments)		Show current default directory.
	  (Also CHDIR without argument)

	SEND filepath | dirpath		Sends a file/dirfull of files with
	  (Alias: SENDME)		present packing and encoding.

	PACK|SHOP|SHOPMARK	- not yet implemented
			UNDER DEVELOPEMENT - Can SegV at you!

    Archie interface
	ARCHIE <arguments>		A PROSPERO archie interface

	DIR  <ls args>			Gives directory listing.
	  (Command alias: LS)		Default is short format `ls'
					listing!  Not `ls -l' !
				UNDER NO CURCUMSTANCES REQUEST  "DIR -lR /"
				WHICH WILL TAKE VERY LONG TIME, AND GENERATE
				HUGE LISTING (long time: 10+ hours!)
				Request ready-made listing: "ls-lR.gz" if you
				want complete listing.. (Only 3 MB in size..)
				(It is packed with GNU-Zip.)



