Explore NABS

Server

Introduction

LISTSERV was originally devised by the BITNET Information Centre (BITNIC) and was designed to act as a mailing list server whose function was to distribute electronic mail (also called e-mail) to users appearing in a mailing list. The server managed any number of these mailing lists, each one addressing a specific area of interest for network users and each having an independent set of list members. For example, para-psychologists who were interested in the topic of near-death-experiences could establish their own mailing list. Those users from across the network who wished to subscribe to this list could then do so by having their e-mail address added to it. The LISTSERV server would subsequently distribute a copy of any e-mail sent to this list to each of the list members. This service provided an extremely convenient means for the exchange of ideas and information between the members of any list since it was LISTSERV (and not individual users) who managed the distribution of e-mail to all final recipients. Users had only to send mail to the e-mail address of a list in order to communicate with any number of list members. This greatly simplified the task of sending e-mail to potentially very large audiences. The concept of mail distribution through a centralized server was termed mail explosion since a single piece of e-mail posted to a list resulted in multiple copies subsequently being sent out by the LISTSERV server, one to every list member.

The LISTSERV concept was later adopted and modified by Eric Thomas in a new version of the server called Revised LISTSERV. This LISTSERV server retained its primary function as a mail distribution agent and also added many new and powerful features. A major enhancement was the addition of a command processor to the Revised LISTSERV. With the original LISTSERV, all requests for subscription to or removal from mailing lists had to be processed on a user's behalf by the LISTSERV administrator. As the popularity of the server increased, this inevitably led to delays. The new server, however, allowed these and other commands to be sent directly to LISTSERV by the users themselves. This not only reduced the administrative overhead of the server but also ensured that the members of a list would be an up-to-date and interested audience. A more fundamental enhancement to Revised LISTSERV over its predecessor came in its operational design. This was made to accommodate the decentralization of the service. Decentralization meant that instead of there being one centralized LISTSERV server controlling all of the mailing lists, many of these servers were located across the network and managed their own, independent set of lists. This improved both the efficiency and robustness of the service by allowing users of LISTSERV to be subscribed to mailing lists managed by a number of different servers, all located at different computer sites. Even so, a high degree of inter-server cooperation was maintained which preserved the benefits of a centralized service. For example, a global sign-me-off-all-lists command sent to one LISTSERV would be automatically propagated to all the other LISTSERV servers on the network. Likewise, mailing lists at different LISTSERV servers could be peered together. Lists such as these would have the same name but each one would have a different membership. Mail sent to any one of these lists would automatically be distributed to the membership at each of its peers. This meant that a large mailing list could be split over one or more LISTSERV servers. Using a decentralized topology for LISTSERV also gave rise to the development of powerful mail distribution algorithms that significantly reduced the overall electronic mail traffic load on the EARN/BITNET network and which provided a fast and efficient service to all LISTSERV users.

In addition to its mailing list functions, LISTSERV was enhanced to maintain a database for each mailing list. These notebook databases (also called list archives) held a copy of every mail message that was distributed on a mailing list. Users could search for and retrieve old mail messages by using the database functions of LISTSERV. Besides notebook and other standard databases, LISTSERV could have any number of databases defined and maintained locally. Another function added to LISTSERV was that of a file server. This meant that the server could be used as a central file repository which could be interrogated and respond to retrieval requests from any user. LISTSERV users could also subscribe to files so that they would be informed of file updates or would automatically receive an updated copy of a file. The final function added to LISTSERV was that of an information server. This allowed users to receive up-to-date network information such as details of individual EARN/BITNET computer sites and the overall configuration of the network.

This guide describes how the LISTSERV server may be utilized by any network user. The four major functions of LISTSERV are summarized along with their corresponding commands. These commands are available for everyone and require no special LISTSERV command privileges. Commands which do require special privileges (that is, commands for list owners and LISTSERV administrators) are not included here. For a more detailed introduction to LISTSERV, send the command GET LISTPRES MEMO to your nearest (or any) LISTSERV server.

Sending Commands to LISTSERV

LISTSERV does not need to be on your own computer in order for you to be able to use it. All the servers reside on the EARN/BITNET network and are available to any users that can reach them. Once you are able to do this, you may then send them commands such as signing on or off various lists or any of the other commands described in this guide. There are three ways to communicate with LISTSERV servers: via e-mail, by interactive message and by file transfer. For detailed information about sending electronic mail, interactive messages and file transfers, see the DOC FILELIST, available from LISTSERV at node EARNCC. These three methods of communicating with LISTSERV are described below.

 

By E-mail

This is the primary, most common method of communicating with LISTSERV and can be employed by any user from any network. EARN/BITNET users will be able to send e-mail to LISTSERV servers since they are situated on the same network. Users on other networks must first ensure that they can reach the EARN/BITNET network where the servers reside. Contact your local support personnel if you do not know how to accomplish this. For LISTSERV to be able to read and understand any mail message, it must comply to a mailing standard called RFC822. This is an Internet document that defines the format and syntax of an electronic mail message. Contact your local support personnel to confirm that your e-mail complies to this standard if you are not sure.

Sending commands to LISTSERV via e-mail is not the same as sending mail to a mailing list. Command mail must be sent to the server itself (for example, LISTSERV at DEARN) and should contain a series of LISTSERV commands in its text. On the other hand, a mail message intended for distribution to the members of a mailing list should be sent to the name of that list (for example, the I-KERMIT list at DEARN). When a LISTSERV server receives e-mail, it will assume that it is command mail and will sequentially execute the commands found on each line in the mail. The results of these commands will then be e-mailed back to the sender. The address the server uses to return the command results will normally be the From: addressee in the command mail (that is, the original sender of the mail). Note that LISTSERV will ignore the contents of the Subject: mail header so make sure that your commands are in the body of the mail message and that you have only one command per line. Any blank lines that may be present in the body of the mail will be ignored. For example, if you wanted LISTSERV at EARNCC to execute the commands LIST and GET DOC FILELIST the body of your mail would look like this:

LIST
GET DOC FILELIST
and would be addressed to the userid LISTSERV at the node EARNCC. Besides returning command results, LISTSERV will also inform you of any unknown commands or syntax errors that were found in the command mail. A number of these errors will be tolerated and processing will be passed to the next command in sequence. However, should the error count pass a certain threshold, processing of the command mail will be stopped and any remaining commands will not be executed.

By Interactive Messages

In addition to sending commands to a LISTSERV server via e-mail, they can also be sent through interactive messages. This method is only available to EARN/BITNET users and not to users from other networks. Interactive messages provide perhaps the most convenient method for communicating with a LISTSERV server. Commands can be sent (one at a time) to LISTSERV which will then execute them and send a response to your screen. Note that for some LISTSERV commands (usually those that generate large quantities of output), results will be sent to you in a file. If this occurs, you will be informed by a message on your screen. Note that commands sent to LISTSERV via interactive messages must be addressed to the server itself and not to any mailing lists.

By File Transfer

For EARN/BITNET users, it is also possible to send commands to LISTSERV via NJE file transfer. It is not possible to use FTP or the file transfer systems of other networks to achieve this. Commands should be entered into a file or dataset using the same rules as described above for e-mail. The file may then be transferred to the LISTSERV server where you want the commands executed. The results will normally be returned to you by e-mail. Note that when you transfer command files to LISTSERV, they must be sent to the server itself and not to any mailing lists.

The Special LISTSERV Address

To facilitate communications with the LISTSERV servers on the EARN/BITNET network, a special LISTSERV computer node has been defined. This means that any EARN/BITNET user can address their commands to the userid LISTSERV at the special node LISTSERV. For example, VM/CMS and VAX/VMS users may send a LIST GLOBAL command to receive details on all LISTSERV mailing lists across the network by issuing the appropriate interactive message command. For VM/CMS users:

TELL LISTSERV AT LISTSERV LIST GLOBAL
For VAX/VMS users:
$ SEND LISTSERV@LISTSERV LIST GLOBAL
All non-EARN/BITNET users may address their command mail to the userid LISTSERV at the special node LISTSERV.NET. Note that if this node is not yet defined on your network, you may also try LISTSERV%LISTSERV.BITNET@CUNYVM.CUNY.EDU. For example, if you wanted to join the 3D-L mailing list that discusses 3D computer graphics but are not sure of the address of the LISTSERV server hosting this list. You could send a subscription request to either of the following addresses:
LISTSERV@LISTSERV.NET
LISTSERV%LISTSERV.BITNET@CUNYVM.CUNY.EDU
Your subscription request will be automatically forwarded on to the LISTSERV server hosting the 3D-L mailing list (in this case, at the computer node ARIZVM1 or arizvm1.ccit.arizona.edu).

You may also utilize the special LISTSERV address to send e-mail to any LISTSERV mailing list if you are unsure of its address. For example, if you wanted to send mail to the BITFTP-L mailing list to request a copy of the BITFTP product, you could do so by addressing your e-mail to BITFTP-L@LISTSERV.NET. It will automatically be forwarded to the list's real address (in this case, BITFTP-L@EARNCC.BITNET) when it reaches the LISTSERV node. The special LISTSERV address is particularly useful if you have signed off a list for a vacation period and you are unsure of its address when you come to resubscribe or if a list has been moved to a new location. Note that any backbone LISTSERV server can provide this service and if one is located conveniently to you, it should be used in preference to the the special LISTSERV address. Once a list's address has been established, it should be used for all future mail sent to that list.

LISTSERV Functions and Command Descriptions

LISTSERV can be broadly categorized into four functional areas. These are the mailing list, file server, database and informational functions. Each of these areas is described in detail in separate chapters. Each chapter contains a brief introduction and then goes on to describe the LISTSERV commands relevant to that function. The syntax of each command has been written using a particular format. Command names come first and are presented in upper- and lower-case characters. The upper-case portion of a command shows its valid abbreviation. Either this or the entire command name may be used. The command name is followed by its parameters which are used to supply additional information in the command. All parameters are fully explained in each command description. Those parameters that are surrounded by '< ... >' characters are optional and do not always have to be included with each command (although there will be times when they are needed). The '|' character shows a choice between one or more different parameters. Where it appears, you can select only one of the parameters listed at a time.

LISTSERV Command Keywords

This section describes the set of standard command keywords used in LISTSERV commands. Note, do not confuse these with database keywords, which are explained in the LISTSERV DATABASE Functions chapter. When LISTSERV receives any command, it first selects and verifies all the command keywords it contains. These are identified as the text immediately preceding an '=' (equal) symbol in a command. If a standard command keyword is found, it is checked and any errors cause the immediate termination of processing for that command. If a keyword is found but not recognised (that is, it is a non-standard keyword), LISTSERV assumes that it belongs to the overall command and it is passed over. Once standard keyword checking is complete, LISTSERV then checks the overall command for any errors. The standard LISTSERV command keywords are as follows:

 

PW= password
This keyword is used to specify a password in a command. If you have registered a personal password on a LISTSERV server, you will then have to validate certain commands by using the PW= command keyword in the command text. This feature is designed to prevent impostors from issuing commands while using your e-mail address. The use of passwords is strongly recommended for this reason. See the PW command in the section Commands for FILE SERVER Functions for details on registering personal passwords. Once you have registered a personal password at a LISTSERV server, you will be obliged to include the PW= command keyword in all commands where it appears as an option.

 

F= format
This keyword controls the file format (or internal file structure) in which files will be sent to you. If you are not a member of the EARN/BITNET network, then LISTSERV will always use the default file format of MAIL. Otherwise, the default file format is dependent upon the information held in the BITEARN NODES file regarding your computer. The BITEARN NODES file is a special network definition file used in the EARN/BITNET network. Any user may ask for a file format other than their default by specifying it in the F= command keyword in the commands where it appears as an option. Note that this will not permanently change your default file format, its effect is only for those commands where it is specified. Following is a list of file formats that are valid for all users:
XXE  UUe  MIME/text  MIME/Appl  MAIL
In addition, EARN/BITNET users may specify:
Netdata  Card  Disk  Punch  LPunch  VMSdump
Contact your local support personnel for more information about the file formats supported on your computer.

 

CLASS= class
This keyword controls the class of the spoolfile that will be sent to you. Valid file classes are composed of a single alphabetic character. Note that this option is relevant only to EARN/BITNET users but is of little relevance to the everyday LISTSERV user. It is used most commonly by client applications interfacing with LISTSERV to identify LISTSERV command output. This command keyword may be used with any command where it appears as an option.
What's New
  • Making Waves Podcast Episode 26: Carbon Fates, Dr. Erin Hotchkiss more
  • SFS Student Presentation Awards! more
  • In the drift just fell into your sampler! The Spring 2015 Newsletter is here! more
  • Making Waves Podcast Episode 14: Nitrogen Fixation in a Warming World, Dr. Jill Welter more
  • The President's Environment: What's New? more
  • Request to Increase Freshwater Science Access Fees more
  • Bridges Fact Sheet: Link into NEON more
BENTHOS News
  • Longtime SFS member and Oregon State University professor Dr. Norman Anderson passed away January 13, 2018.

    more
  • 4th International Symposium of the Benthological Society of Asia and 2nd Youth Freshwater Ecology School August 19-25, 2018

    more
  • 2018 Benthic Ecology Meeting (BEM) in Corpus Christi, Texas, USA: 28-30 March 2018.

     

    more
  • The deadline to submit proposals for AQUATROP Special Sessions or Symposiums is now November 17, 2017

    more
  • SFS joins CASS in condemning silencing of EPA scientists

    more

More SFS News...

Back to Top
NABS Logo
© 2015 Society for Freshwater Science
Membership Services:
(435) 797-9270 | sfsmembership@usu.edu