LSTOWN-L Archives

LISTSERV List Owners' Forum

LSTOWN-L

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Topic: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Eric Thomas <[log in to unmask]>
Wed, 22 Jan 1997 16:52:02 +0100
text/plain (1269 lines)
       Description of the changes for release 1.8c of LISTSERV(R)
       ----------------------------------------------------------
             Copyright 1996,1997 L-Soft international, Inc.

                           January 20th, 1997

*************************************************************************
************************** List owner's notes ***************************
*************************************************************************

The release  notes for version 1.8c  of LISTSERV(R) have been  split into
two documents:  list owner's notes  and LISTSERV maintainer's  notes. The
present list owner's notes describe all the changes that list owners need
to be  aware of, although  in some cases list  owners may be  impacted by
changes described in the LISTSERV maintainer's section. For instance, the
availability  of  a  new  systemwide   option  may  prompt  the  LISTSERV
maintainer to make a change affecting all the lists on the LISTSERV host.
Thus, list owners are advised to read the maintainer's notes as well.

**************
* Highlights *
**************

- New database functions (available for both VM and non-VM versions) with
  the same degree of functionality as the original VM database functions,
  and a more user-friendly syntax.

- (non-VM) Web archive  interface allowing users to  browse list archives
  interactively.  This  includes a  WWW  interface  to the  new  database
  functions with online help.

- "Hands off"  bounce processing  allowing for accurate,  fully automated
  removal of undeliverable addresses without the list owner having to see
  a single  bounce again.  This is accomplished  through the  delivery of
  individually  addressed list  FAQs tagged  with a  special marker  that
  uniquely identifies the recipient.

- Support  for  "notary" delivery  error  format  (RFC1891 et  seq),  the
  oncoming Internet standard for delivery errors.

- The INDEX subscription option is now available for non-VM systems and a
  new GETPOST  command (also available  under VM) has been  introduced to
  facilitate the retrieval of individual postings.

- (non-VM) Enhanced, hierarchical file  server functions with sub-catalog
  support.  The  LISTSERV  administrator  can  now  create  catalogs  for
  individual lists,  delegating file management operations  to individual
  list owners.

- Improved spam detector and spamming counter-measures.

- Support for  "super-lists", allowing  the hierarchical  organization of
  related lists without any cross-posting or duplication.

- New  SUBJECTHDR  subscription  option and  "Subject-Tag="  list  header
  keyword to insert the  list name (or any other word)  in the subject of
  all messages coming from the list, on a per-subscriber basis.

- Comprehensive, 40-page user's guide and shorter "quick start" guide now
  available online.

- Per-subscriber daily message quota.

***********************************
* Documentation: New user's guide *
***********************************

A new, 40-page user's guide is now available online. A plain text version
is included with  the 1.8c update, replacing the old  "INFO GENINTRO" and
"INFO PRESENTATION"  documents. A  shorter, "quick  start" guide  is also
available as  "INFO QUICKSTART".  You can  also FTP a  copy of  these new
manuals from  FTP.LSOFT.COM, CD DOCUMENTS.  The files are available  in a
variety  of word  processing  formats -  check the  FTP  server for  more
information.

*************************************
* Usability: New database functions *
*************************************

Version 1.8c introduces a new set of database functions, available on all
supported operating  systems. These new database  functions were designed
to be more functional and easier to use than the old (VM) implementation,
and include a WWW interface (coupled to the web archive interface). Under
VM, the  old and new database  functions coexist and share  the same data
files, with slightly different syntax and capabilities. The new functions
will be faster in most cases and should be used whenever possible.

For more  information about  the new database  functions, please  see the
User's guide.

The following checklist gives a brief overview of the differences between
old and new database functions:

- Searches are  initiated using  the new SEARCH  command, rather  than by
  submitting a DATABASE  SEARCH job. The syntax of the  SEARCH command is
  virtually identical to that of the SEARCH clause in database jobs. This
  command automatically produces an  index and, where applicable, context
  information showing  the search  words as they  appear in  the posting.
  Context information  is not available  for keyword searches  (eg SEARCH
  xxx WHERE SENDER  CONTAINS JACK), or for negative  searches (SEARCH NOT
  XYZ  IN xxx  -  all  the postings  containing  XYZ  have actually  been
  excluded, so you will never find XYZ in them).

- There is  a new operator, NEAR,  which is the default  for the "locate"
  clause. In  other words, SEARCH  JOE SMITH IN  XYZ-L looks for  JOE and
  SMITH close to each other. You  can still use AND explicitly. Note that
  'a NEAR b  NEAR c' is defined as  '(a NEAR b) AND (b NEAR  c)', so this
  new operator is not fully commutative.

- While (on  VM) you can  use the new  SEARCH command to  search non-list
  databases,  such as  BITEARN or  PEERS, you  cannot currently  retrieve
  edited results with the GETPOST command for these databases. You should
  continue to use the old database functions for non-list databases.

- The new  SEARCH command will  only display up to  100 hits. To  get the
  next 100  hits, use a SINCE  clause or an item  range qualifier: SEARCH
  xxx IN XYZ.9182- will display all hits with

****************************************************************
* Usability: New GETPOST command and INDEX subscription option *
****************************************************************

The  INDEX subscription  option is  now available  on non-VM  systems. In
addition,  a new  command,  GETPOST,  has been  added  to facilitate  the
retrieval of  individual messages  from the archives.  The syntax  of the
GETPOST command is:

             GETPOST listname itemrange1 <itemrange2 <...>>

See  the User's  guide for  a more  detailed description  of the  GETPOST
command.

Note  to VM  list owners:  depending on  the configuration  of your  host
server, you  may notice  a slight  change in the  format of  the messages
returned to  subscribers who use  the INDEX subscription option.  This is
because LISTSERV now  uses the GETPOST command in  conjunction with INDEX
subscriptions, as this  is more efficient than the database  jobs used in
the previous version.

********************************************
* Usability: "Hands off" bounce processing *
********************************************

Delivery  error  notices (commonly  called  "bounces")  are probably  the
single largest  obstacle to the  effective operation of mailing  lists by
non-technical list  owners. Any public list  with more than a  handful of
subscribers is bound  to be plagued with a number  of daily bounces, many
of which were written by and for technical experts and make absolutely no
sense to the Internet  novice. It may not even be  clear what message and
above all  what susbcriber the  bounce is  referring to. More  often than
not,  novice list  owners  end  up discarding  all  these bounces  unread
(usually by sending them to a separate account whose mail is never read),
because they simply do not know what to do to correct the problem.

Unfortunately, this is not a good  situation at all. Here is what happens
for each invalid address in a mailing list:

1. The server  hosting the mailing list, not knowing  that the address is
   invalid, attempts  to deliver the  message. This first  delivery costs
   just as much as a delivery to any other address.

2. The target host  must then create a delivery error  notice and send it
   back  to the  server  hosting the  mailing list.  This  is usually  an
   expensive  operation  that,  when  multiplied  by  hundreds  of  daily
   occurrences,  can slow  down  the  target server.  While  this may  be
   "someone  else's  problem", on  the  Internet  a "good  neighbour"  is
   expected not to cause other sites  to waste undue resources. Just like
   in real life, people do not speak highly of "bad neighbours", and this
   is a factor to consider if the lists are run for PR purposes.

3. The server  hosting the list undergoes the resource  cost of receiving
   this delivery error, and routing it to LISTSERV for processing.

4. LISTSERV determines that this is a  delivery error in a format that it
   is unable  to decode,  and forwards  it to the  list owner  for manual
   processing.

5. The server hosting the list delivers the message to the list owner.

All told, the resource  cost at the host site for a  bad address is about
4-5 times higher  than for a working  address. This means that  if a list
should accumulate 20% of bad addresses through lack of bounce processing,
the cost of running the list will be roughly doubled, and the capacity of
the server will  be halved. Since bad  addresses do not go  away on their
own, the  number of bad  addresses just  keeps increasing with  time, and
what  initially looked  like a  minor and  perfectly acceptable  resource
surcharge quickly turns into a serious capacity problem.

The solution  to this problem  is automatic bounce processing,  where the
computer processes  the bounces without human  intervention. LISTSERV has
had automatic bounce  processing since 1992, however this  process is not
100% accurate, owing mainly  to the lack of a standard  for the format of
delivery error messages (there is now an IETF standards-track document at
the "Proposed  Standard" stage, but  to date  only a handful  of products
have implemented it).

To improve the accuracy and effectiveness of automatic bounce processing,
LISTSERV can now  optionally take a more active role  in the detection of
invalid addresses. In  addition to reacting to incoming  bounces, some of
which are  unfortunately not intelligible to  computer programs, LISTSERV
can also be directed to "probe"  the mailing list at regular intervals by
sending  an  individually addressed  FAQ  (or  similar document)  to  the
subscribers. This FAQ contains a special marker which uniquely identifies
the subscriber,  making it possible  for LISTSERV to determine  that mail
for this particular subscriber is  bouncing, even when the delivery error
message itself  is otherwise  totally unintelligible.  Upon receipt  of a
bounced probe message, LISTSERV will  schedule the delivery of additional
probes to the failing address, at  an appropriate and controlled rate, to
monitor  the   address  over  the   period  of  time  requested   in  the
"Auto-Delete=" keyword for the list.  Thus, bounced probes are acted upon
with exactly the same degree of  leniency as ordinary delivery errors. By
sending additional  probes as the  need arises, LISTSERV  can effectively
monitor bouncing addresses  even on low-volume lists where  there may not
be more than a few messages per week.

To  enable active  monitoring, the  list  owner must  take the  following
steps:

1. Obtain  permission from  the LISTSERV administrator,  if you  were not
   already using  the "Renewal="  feature. Probes  incur the  same system
   overhead  as a  renewal message,  and are  in fact  implemented as  an
   option to  the "Renewal="  keyword. Since this  overhead can  be quite
   significant on  some operating  systems or configurations,  you should
   obtain permission  from the LISTSERV administrator  before proceeding,
   especially if yours is a large list  or if you know that the mail host
   is overloaded. The  LISTSERV administrator may also be  able to advise
   you  on the  appropriate frequency  (typically monthly)  for the  list
   probes.

2. Retrieve  and customize  the PROBE1 administrative  message, replacing
   its  contents  with  a  FAQ,  mini-newsletter,  or  other  appropriate
   message. This step  is optional; the default PROBE1  template is fully
   functional, if uninteresting. The new &DAYSEQ(n) feature (described in
   the  updated list  owner's guide)  can  be used  to create  "rotating"
   collections of FAQs that are both more informative and less "annoying"
   to the subscribers than a monthly FAQ that is always the same.

3. Add  a "Renewal=" keyword to  the list header, specifying  the "Probe"
   option. For instance,

   * Renewal= Yes,Monthly,Probe

   directs LISTSERV to  probe the subscribers on a  monthly basis. Please
   refer  to  the  list  owner's  manual  for  more  information  on  the
   "Renewal=" keyword.

These steps  do not affect  the delivery of  bounces to the  list owners.
That is, you  can activate list probing without  suppressing the delivery
of unparseable bounces to your account. If  on the other hand you do want
to completely delegate bounce processing  to LISTSERV, you should perform
the following step:

4. Change the "Auto-Delete=" keyword in the list header to read:

   * Auto-Delete= Yes,Full-Auto

   (as  opposed  to  "Yes,Semi-Auto"   or  "Yes,Manual").  When  used  in
   conjunction with active probing, this will direct LISTSERV to suppress
   the delivery of all bounces to the list owners.

It is  not possible to  suppress bounce delivery without  enabling active
probing, because  the accuracy of  passive bounce processing is  too low.
While this  varies widely from  one system to  another, or even  from one
list to  another on a  given system, passive bounce  processing typically
catches between  50% and  80% of  bad addresses.  Active probing,  on the
other hand, should have an accuracy in excess of 99%.

Supported mail servers
----------------------

Because LISTSERV  receives its  incoming mail  (including bounces  and in
particular the special probe bounces)  from the mail server servicing the
SMTP port of the machine on which LISTSERV is running, active probing may
not  work with  all mail  servers, or  may require  you to  upgrade to  a
certain revision level, as follows:

- VM: active probing is supported with all versions of LMail(TM).

- VMS: active  probing is supported  with version 1.1a of  LSMTP(TM), and
  with  all  versions  of  MX  that  include  support  for  the  LISTSERV
  interface. PMDF(R) users should create  a dedicated domain for LISTSERV
  (such  as LISTSERV.XYZ.COM)  and add  a  rewrite rule  to redirect  all
  traffic for  that host  to the  LSV channel.  This also  simplifies the
  creation of  new lists (with this  setup, it is no  longer necessary to
  define PMDF aliases for the lists).

- unix: the current versions of sendmail are not compatible with the list
  probe,  however  a  patch  is   available  from  FTP.LSOFT.COM  in  the
  LISTSERV/unix/Contrib directory  to implement the necessary  changes to
  sendmail.

- Windows: active  probing is  supported with version  1.1a of  LSMTP and
  with all versions of the SMTP listener.

In  mixed environments  where one  mail product  processes incoming  mail
while another is responsible for  outgoing mail, the incoming mail server
is the one that determines whether active probing is supported.

Users  of version  1.0a of  LSMTP will  need to  upgrade to  version 1.1a
before enabling active  probing, regardless of the  operating system they
are using. L-Soft has decided to  release 1.1a as a free upgrade, however
you must  still obtain  a (free)  1.1a license  key through  normal sales
channels before installing the new version.

Performance considerations
--------------------------

Probing has the same  impact on the host server as  renewal, and the same
considerations apply. In particular:

- If the  server (or network)  is already overloaded, you  should refrain
  from using probing until suitable resources are available.

- You should  never activate probing or  renewal on a large  list without
  first checking with the LISTSERV administrator.

- You should  avoid using "Renewal=" specifications  which force LISTSERV
  to process all  renewals on a particular day. If  you order LISTSERV to
  probe 30,000 people on a specific  day, it will comply, but service may
  be impacted. Using less specific syntax options (such as "3-Monthly" as
  opposed to a  series of explicit dates) makes it  possible for LISTSERV
  to spread the probing activity over  a period of time. Thus, instead of
  probing 30,000 people every 30 days,  it can instead probe 1,000 people
  every day, with much reduced impact on the host system.

- The first  time you  activate probing  or renewal  for a  large one-way
  list, most  of the subscribers  are likely  to be overdue  for probing,
  especially if the list was imported from  a database via a bulk ADD. In
  this case it is best to  change the "Renewal=" keyword during a weekend
  or other period of reduced activity.

***********************************************************************
* (non-VM) Usability: Enhanced file server functions and sub-catalogs *
***********************************************************************

The  file  server  functions  have  been  enhanced  in  version  1.8c  to
facilitate  the management  of  file catalogs  (see maintainer's  release
notes), allow  users to manipulate  files using the file  naming syntaxes
they  are used  to (DOS/Windows,  unix,  VMS or  VM), and  allow for  the
creation  of   "sub-catalogs"  whose  management  can   be  delegated  to
individual list owners.

Support for popular file naming conventions
-------------------------------------------

To make the file server  functions more intuitive to non-technical users,
LISTSERV now accepts file specifications in a variety of popular formats.
This means  users can use  the file  naming conventions of  the operating
system they are used  to, and do not need to learn a  new way to refer to
files. For instance, the file NEXT.MEETING  in the WG3 sub-catalog can be
accessed as:

- /wg3/next.meeting

- \wg3\next.meeting

- WG3:NEXT.MEETING

- WG3:[000000]NEXT.MEETING

- WG3:<000000>NEXT.MEETING

- NEXT MEETING WG3

Note  that  this file  can  also  be  accessed as  NEXT.MEETING  (without
specifying the WG3 directory) unless there are several files by that name
in the LISTSERV file system.

LISTSERV will reply using the same  syntax convention, as the users would
expect it.

Overview - delegating file management authority
-----------------------------------------------

The sub-catalog enhancement allows the LISTSERV administrator to delegate
file management  authority in  a controlled  and secure  manner. Multiple
list owners can be given the  authority to maintain their own sub-catalog
in  a  predefined   directory.  With  the  LISTSERV-ISP   add  on  (under
development), a quota can be imposed on the directory in question.

The procedure works as follows:

1. The LISTSERV administrator creates  the sub-catalog and identifies the
   directory where the  files will be stored, and the  person(s) who will
   be in charge of managing it ("catalog owners").

2. The  catalog owners  use  the GET  and PUT  commands  to update  their
   catalog and register  new files in their directory. Each  file has its
   own GET  and PUT  file access  codes, allowing  the catalog  owners to
   further delegate the  management of individual files  to third parties
   ("file owners").

3. The  file owners manage  the files in question  using the GET  and PUT
   commands. Authorized users  can then retrieve the files  using the GET
   command.

Creating a sub-catalog
----------------------

To create a sub-catalog, the LISTSERV administrator edits the file called
SITE.CATALOG (or  site.catalog under  unix) in LISTSERV's  main directory
(the directory where SYSTEM.CATALOG/system.catalog  is located - refer to
the list owner's guide for more information). A sub-catalog is defined as
follows:

TEST.CATALOG   /home/lists/xyz/test.catalog  ALL [log in to unmask]

(1)            (2)             (3)           (4) (5)

Notes:

(1) The name must end in '.CATALOG', but otherwise it can be anything. In
    particular, there does not need to be a list by that name.

(2) This is the directory where  ALL the files defined in the sub-catalog
    will  be  stored. DO  NOT  USE  LISTSERV'S  MAIN DIRECTORY  FOR  THIS
    PURPOSE! The catalog owner will be given FULL ACCESS to all the files
    in this directory, so make sure  to create a new, empty directory. If
    the sub-catalog is  being set up for  a list owner, it may  be a good
    idea  to put  the  list  archives and  the  sub-catalog  in the  same
    directory.

(3) A  file name must be  provided for the sub-catalog  file itself. This
    name, however, does not need to match (1).

(4) This  file   access  code  controls   the  authority  to   INDEX  the
    sub-catalog. This  will also be the  default GET access code  for all
    the files registered in the sub-catalog.

(5) This file  access code defines the catalog owner(s)  and default file
    owner(s) for all the files in the sub-catalog.

Note  that  there is  no  need  to  reboot  LISTSERV after  updating  the
SITE.CATALOG file.  Also, bear in mind  that you are responsible  for the
OS-level security of  the directory you create for the  catalog. The file
access  codes in  SITE.CATALOG  only affect  operations  that go  through
LISTSERV; it is your responsibility to  make sure that other users of the
computer  are given  the appropriate  access level  to any  directory you
create for LISTSERV's purposes.

Updating the sub-catalog
------------------------

Once the  sub-catalog is created,  the catalog owner(s) can  register new
files using the following procedure (in  this example, it will be assumed
that the sub-catalog is called TEST.CATALOG):

1. Send  a GET TEST.CATALOG  command to LISTSERV  (or, if the  catalog is
   brand new, start from an empty file).

2. Register new file(s) in the catalog (see below).

3. Use the PUT TEST.CATALOG PW=XXXX command to store the updated catalog.

Alternatively, if the  catalog owner has an account on  the LISTSERV host
system and write access to the directory associated with the sub-catalog,
the file  can be edited  directly. Note however  that, in that  case, the
LISTSERV-ISP quota system  will be inoperative as it has  no control over
disk accesses which do not go through LISTSERV itself.

The format of sub-catalogs is similar to that of SITE.CATALOG:

MY.FILE        my.file                      ALL [log in to unmask]
(1)            (2)                          (3) (4)

Notes:

(1) This defines the name of the file as seen by LISTSERV users. That is,
    the command to retrieve the file will be 'GET /test/my.file' (or 'GET
    TEST:MY.FILE',  'GET MY  FILE  TEST',  and in  most  cases just  'GET
    MY.FILE').

(2) This defines the  name of the actual disk file  where the contents of
    MY.FILE will be stored. Normally, you should specify the same as (1),
    or just  an equal sign  (LISTSERV will  then substitute the  name you
    provided for  (1)). However,  in some  cases you may  want to  make a
    particular file available  under multiple names. This can  be done by
    registering multiple  files (ie multiple  values for (1)),  and using
    the same (2) value every time.

(3) This file access code determines who can order the file through a GET
    command. See the list owner's guide for more information.

(4) This file access code determines who can update the file with the PUT
    command. See the list owner's guide for more information.

Note: (2) defaults  to the value of  (1), and (3) and (4)  default to the
GET and PUT access codes of  the sub-catalog itself, respectively. So, in
most cases a sub-catalog entry will be as simple as:

MY.FILE

Additionally, comment  lines (starting with  an asterisk) or  blank lines
can be interspersed with file  definitions. These comments will be echoed
when the  sub-catalog is indexed (see  below), in sequence with  the file
definitions. For instance, your catalog could read:

*
* Files for the XYZ sub-project
*
XYZ.AGENDA
XYZ.BUDGET
XYZ.PROPOSAL-1
XYZ.PROPOSAL-2

Indexing the sub-catalog
------------------------

If TEST.CATALOG is defined as:

TEST.CATALOG   /home/lists/xyz/test.catalog  xxx [log in to unmask]

Any user who matches the 'xxx' file access code is authorized to issue an
INDEX  TEST command  to  get  a formatted  version  of  the catalog.  For
compatibility  with older  versions of  LISTSERV, GET  TEST.FILELIST will
produce the same results. If there is  a mailing list called TEST, a list
of the archive files will also be appended automatically.

Sub-directories
---------------

Sub-directories may be created within a sub-catalog, allowing files to be
partitioned hierarchically up to an unlimited depth. See the list owner's
guide for more information.

*************************************************
* (non-VM) Usability: New web archive interface *
*************************************************

Version  1.8c introduces  a WWW  archive interface  that allows  users to
browse and search  list archives (the LISTSERV  maintainer controls which
lists are  or are not  visible through  this interface). Postings  can be
organized by  date, by  topic or  by author, and  a search  function with
online help is  provided. URLs in the text of  the postings are displayed
as  'live'  hyperlinks.  LISTSERV's   WWW  interface  has  the  following
advantages over "hypermail" style web archiving:

- The information on the web is always up to date. New postings are shown
  as soon as they are received.

- The postings can be organized in the manner that best suits the reader:
  by date, by  author, by topic, with or without  table of contents, with
  or without showing the author, etc.

- Only one copy of the information is kept, and in particular there is no
  need to  create an individual HTML  file for each posting.  This design
  allows the interface  to scale up gracefully to lists  with hundreds of
  thousands of archived postings,  which would otherwise require hundreds
  of thousands  of individual HTML  files, wasting disk space  (each file
  takes up  at least one disk  block) and stressing the  file system past
  reasonable limits.

- The search  forms can be  used to  create search requests  matching all
  postings in the  last X days. The resulting URL  can then be bookmarked
  and reloaded on a regular basis.

- List owners  can customize the  main page  for their lists  without any
  intervention by  the LISTSERV maintainer,  by updating one of  the mail
  templates for their list. The  LISTSERV maintainer can customize common
  pages  and  header/trailer  HTML  statements by  updating  system  mail
  templates.

To take advantage  of this new interface, you must  first ensure that the
"Notebook=" options for your list  are compatible with the WWW interface.
In most cases, you will not have  to do anything, but certain options are
incompatible  with the  use  of the  WWW  interface and  may  need to  be
changed:

- The archive frequency  must be WEEKLY, MONTHLY or  YEARLY. SEPARATE and
  SINGLE  notebooks  are  not   supported.  L-Soft  generally  recommends
  converting  lists with  SINGLE notebooks  to YEARLY  unless there  is a
  compelling reason to have all the messages in exactly one file.

- For optimal performance, the archive  frequency may need to be adjusted
  to produce an "adequate" number of topics and messages in each archival
  period. The definition of "adequate" depends on your users, the kind of
  equipment they have,  and how they connect to the  Internet. As a rule,
  home  users will  prefer a  larger number  of smaller  archives whereas
  office  users with  large screens  and T1  or better  connectivity will
  tolerate a larger table of contents.

- The archives must  be public as there is no  userid/password control in
  the web archive interface.

- On most  systems, the directory  in which  your list archives  are kept
  must be  specified in absolute  rather than  symbolic form, or  the WWW
  interface  may not  be able  to access  it. Symbolic  form is  when the
  directory  name is  a  single letter,  for  instance "Notebook=  Yes,L,
  Monthly,Public" ("L"  is the  directory specification). In  most cases,
  your list header will read "Notebook=Yes,E:\LISTS\XYZ-L,Monthly,Public"
  and you will not have to worry about this.

You must then ask the LISTSERV maintainer to enable your list for the WWW
interface. This may  require the installation of a web  server and of the
WWW  interface  code itself.  You  can  then  modify the  WWW_INDEX  mail
template to customize  the main archive page for your  list. See the list
owner's guide for more information on customizing mail templates.

*************************************
* Usability: Improved spam detector *
*************************************

The spam detector has been improved in version 1.8c, as follows:

- The spam detector  is now able to  catch the first few copies  of a new
  spam  (in  most  cases).  Previously,  dozens of  copies  (out  of  the
  thousands sent by the spammer) would  be let through before enough data
  was collected to identify the posting as a spam.

- The number of  spam alert messages sent to the  LISTSERV maintainer has
  been reduced to one per offender.

- The  spam database  is trimmed  more aggressively,  saving storage  and
  processing time for sites with lots of mailing lists.

- The algorithms  have been  generally refined  and improved,  making the
  spam detector  react more promptly  and more accurately.  New detection
  techniques have been introduced.

There are two  major changes that list  owners need to be  aware of: spam
quarantine and "anonymous" spam alerts.

Spam quarantine
---------------

One of  the most arduous  problems the spam detector  has to face  is the
accurate detection  of the first few  copies of the spam.  When the first
copy reaches  the first LISTSERV server  worldwide, it is just  a posting
like any  other. It will take  repeated occurrences of this  same posting
for  LISTSERV to  realize that  it  is in  fact  a spam.  However, it  is
desirable to  block this very  first copy as well,  and this can  only be
accomplished by  introducing a  delay in  the processing  of "suspicious"
messages. This "quarantine"  gives the spam detector some  time to gather
the necessary evidence to determine if the  message is a spam or not. The
default value is 10 minutes, and can be changed by adding:

* Loopcheck= Spam-Delay(xxx)

in the list header (the value is in minutes). The LISTSERV maintainer can
also change  the system default  by adding  a SPAM_DELAY variable  to the
LISTSERV configuration with the desired  value (also in minutes). A value
of zero disables this new feature.

The default  value of  10 minutes is  adequate in most  cases; it  can be
lowered on  fast, large, active servers  and may need to  be increased on
servers with chronical backlogs. Currently, LISTSERV determines whether a
message is suspicious or not based  on the sender's posting history. This
however  may  be  changed  in  future versions  to  further  improve  the
efficiency of the spam detector.

"Anonymous" spam alerts
-----------------------

On  occasion, you  may  receive  a spam  alert  from  LISTSERV where  the
offender's e-mail  address is replaced  with the word  "anonymous". These
alerts  are generated  by  new detection  algorithms  where, for  various
reasons,  it may  sometimes  be desirable  to hide  the  identity of  the
potential  offender, usually  because there  is  a fair  chance that  the
posting is  in fact legitimate for  the particular lists to  which it was
posted (for  instance because these  lists were configured to  tolerate a
high degree of  cross-posting). In this case, information  about the text
of the  message may be released  and ultimately lead to  a spamming alert
that will block  further copies of this same message,  while the identity
of the poster remains hidden.

****************************************
* Usability: Spamming counter-measures *
****************************************

The spamming  industry has changed  radically since the inception  of the
LISTSERV  spam detector  in 1Q95.  While basement  spam companies  remain
mostly unchanged, a number of  larger companies have emerged, with enough
financing  to  purchase their  own  high-end  servers  and T1  or  better
Internet  connectivity. Instead  of  targeting mailing  lists and  usenet
groups, these companies  use their own hardware and leased  lines to send
mass-mailings  directly  to  the  users'  mailboxes.  The  LISTSERV  spam
detector  cannot filter  these messages  because they  do not  go through
LISTSERV at all.  The e-mail addresses, however, are  often obtained from
mailing lists. A  number of changes have been introduced  in version 1.8c
to  make it  more difficult  for  spammers to  collect information  about
existing  lists  or  e-mail  addresses.  Other changes  may  need  to  be
introduced  by the  list owner,  possibly  after a  discussion among  the
members of the list; these are described in this section as well.

LIST GLOBAL now requires a search string
----------------------------------------

The  most popular  source of  list information  among spammers,  at least
where LISTSERV is concerned, was  the LIST GLOBAL command, which returned
a conveniently formatted list of all the public LISTSERV lists. With over
10,000 public lists (DEC96), this file is now over 1M in size and exceeds
the message size limits of most Internet providers. It is too large to be
printed and  read sequentially, and  most requestors do not  realize that
the file they are ordering is going  to be that large. By April 1996, the
postmaster at LISTSERV.NET  was receiving several complaints  a day about
the "bad surprise" of having had one's mailbox crammed with "this useless
junk" and losing  important mail due to a "mailbox  full" error. The LIST
GLOBAL  command was  then  changed (initially  only  on LISTSERV.NET)  to
require a search string of at least three characters, and since then only
about a couple dozen complaints have  been received from users who wanted
the full listing. About half of them  later turned out to be spammers. By
and large,  the users reacted positively  to this change, which  has been
incorporated in  version 1.8c. Note  that the list  of lists can  also be
searched interactively through the  CataList(SM) search engine, available
(among others) at:

                 http://www.lsoft.com/lists/listref.html

The CataList  actually offers  more information  than LIST  GLOBAL, being
based on  the full LISTS database  (of which LIST GLOBAL  is an excerpt).
The CataList engine has built-in restrictions to prevent abusive use.

LISTS command now restricted to local users
-------------------------------------------

Another popular  method for collecting information  about available lists
was to  send a LISTS  commands to individual LISTSERV  (and non-LISTSERV)
sites. While this required more programming work for the spammer, it also
gave better  results as  the LISTS  command would  also list  local lists
("Confidential= Service"),  which outnumber  public lists 3:1.  The LISTS
command has  been changed in version  1.8c to only return  information to
local users, ie  users whose hostname matches one of  the patterns in the
LOCAL configuration  variable. Typically, if  the server is running  on a
machine  called  LISTSERV.XYZ.EDU,  the  LOCAL variable  will  have  been
defined as *.XYZ.EDU. This allows any  user in the XYZ.EDU domain to send
a LISTS command to the server, while preventing spammers from getting any
useful information. To clarify:

- This change has no impact on local users, who can still access the same
  information as before. It may  be necessary for the LISTSERV maintainer
  to review the setting of the  LOCAL configuration variable to make sure
  that all local domains are properly identified.

- This change  prevents non-local users from  obtaining information about
  local  ("Confidential= Service")  lists.  This  change will  completely
  protect local lists from spam (both  direct and indirect) as there will
  be no way for the spammers to get information about them.

- "Confidential= Yes" lists remain completely hidden as before.

- Non-local users must now use the LIST GLOBAL command or the CataList to
  search for public lists of interest.

The LIST GLOBAL  command was also changed  so that you can  no longer ask
for a list of all the lists  hosted on a particular server, as this would
defeat the purpose of the LISTS command change.

"Review=" now defaults to "Private"
-----------------------------------

The default setting  for the "Review=" command was  changed from "Public"
to  "Private",  to  make  it  more difficult  for  spammers  to  retrieve
subscriber e-mail addresses.  The list owner may of  course override this
change by explicitly adding a "Review=" keyword to the list header.

L-Soft  recommends reviewing  the  setting of  the  "Review=" keyword  to
determine whether it adequately meets  your spam-protection needs. If the
list is  confidential (or  at least  local, ie  "Confidential= Service"),
"Review= Private"  ought to be  sufficient to prevent the  addresses from
being "stolen" by spammers, as it is very difficult to find out about the
existence of the  list. For a public list, "Review=  Owner" might be more
appropriate.

Compilation copyright
---------------------

The LIST GLOBAL  command now inserts a copyright statement  at the top of
the returned listing, as follows:

-------------------------------------------------------------------------
                Copyright 1996 L-Soft international, Inc.

L-Soft  international, Inc.  owns the  copyright to  this compilation  of
Internet  mailing lists  (the "Compilation")  and hereby  grants you  the
right  to  copy  the  enclosed   information  for  the  sole  purpose  of
identifying, locating and  subscribing to mailing lists  of interest. Any
other  usages   of  the   Compilation,  including,   without  limitation,
solicitation, tele-marketing,  "spamming", "mail-bombing"  and "spoofing"
are strictly prohibited.
-------------------------------------------------------------------------

A "compilation copyright" is a  copyright that applies exclusively to the
compilation  (directory,  list, etc)  on  which  the copyright  is  being
asserted,  as  opposed  to  the  works listed  in  the  compilation.  For
instance, you could decide to make a list of all the records published by
pop singers born in  Alaska from 1963 to 1964. You  would then be allowed
to assert  a copyright on this  compilation, so that nobody  could use it
without your permission. This does not,  of course, mean that you own the
rights to any of the records in  question, or that they may not appear in
other people's  compilations of  pop records. It  just means  that people
cannot copy  your compilation without your  permission. Similarly, L-Soft
does not claim any  ownership rights to any of the  lists present in LIST
GLOBAL. The copyright  applies solely to the information  that the server
is returning when you send the LIST GLOBAL command.

Without a  copyright statement, anyone  was able  to use the  LIST GLOBAL
data  for any  purpose,  including  spamming, mail-bombing,  subscription
spoofing, and  so forth. Many of  these activities, while harmful  to the
Internet community,  are arguably not unlawful  under many jurisdictions.
At any rate,  the use of the  LIST GLOBAL data in  conjunction with these
activities  would not,  in itself,  have broken  any laws.  Consequently,
people would  be allowed  to sell the  LIST GLOBAL data  in a  variety of
formats adapted to,  say, popular spamming programs, and  this would have
constituted  a  perfectly  legal  (and thus  unstoppable)  activity.  The
copyright statement  makes it possible to  challenge the use of  the LIST
GLOBAL  data  independently  from  the legality  of  activities  such  as
spamming or subscription spoofing.

Conclusion
----------

The spamming counter-measures introduced in version 1.8c will provide the
following benefits to LISTSERV users:

- Local  ("Confidential= Service")  lists will  become totally  immune to
  both  direct and  traditional spamming,  as it  will be  impossible for
  spammers  to  find  out  about  their  existence  through  programmable
  methods. Note that local lists whose existence became known to spammers
  prior to the installation of 1.8c  may remain exposed. However, all new
  lists will be protected.

- Public lists (especially those created  after the installation of 1.8c)
  will become much more resistant to spamming attacks, as it will be very
  difficult for  the spammers to  gain knowledge of their  existence. The
  increased "Review="  protection will  also make it  harder for  them to
  collect membership data.

The dynamics of the spamming industry are simple: reach as many people as
possible, at a minimal cost. Direct mailings were not attempted until the
LISTSERV spam  filter and  the usenet "cancelbots"  significantly reduced
the number of people who could be reached with the much cheaper list/news
spamming methods.  The counter-measures  introduced in version  1.8c will
significantly  increase the  spammers'  costs  for collecting  membership
lists or  other information  about LISTSERV  lists (and  especially local
lists), making  other targets comparatively attractive.  Spamming is only
cost  effective when  the  cost  of acquisition  of  a particular  e-mail
address  is significantly  less than  with traditional  (mundane) mailing
list brokering. Hiring  people to surf the web in  search of local lists,
then pose  as an  interested party and  try to talk  the list  owner into
being  allowed to  join  the list  is a  slow,  unreliable and  expensive
process - there  are over 30,000 local LISTSERV lists  with an average of
only 75  subscribers each. Running  a simple  program on a  standard full
usenet feed, on the other hand, is  and will remain a very cost effective
way to acquire massive amounts of  e-mail addresses in a very short time.
It is unlikely that spammers will  hire armies of "list investigators" to
engage  in arguably  fraudulous  misrepresentations to  collect a  couple
million e-mail addresses when they can  get better results legally with a
$2000 PC reading usenet news 24h a day.

***************************************************************
* Usability: MIME digests and other MIME-related enhancements *
***************************************************************

Version 1.8c introduces  support for MIME digests, that  is, list digests
formatted according to the specifications  of the Internet MIME standards
(RFC1521/1522  et  seq).  These  digests  coexist  with  the  traditional
(RFC1153) LISTSERV digests. Individual  subscribers can select which type
of digest they wish to receive, and  the list owner can set a default for
the  list.  In  addition,  when  the list  owner  did  not  indicate  any
preference through the  "Default-Option=" keyword, LISTSERV automatically
activates MIME  digests for SUBSCRIBE  requests received from  users with
MIME-capable  mail  readers.  This  effectively makes  MIME  digests  the
default option while  ensuring that users who do not  have a MIME-capable
mail reader are not sent a digest that they cannot decode in a convenient
way.

The advantages of MIME digests over traditional ones are:

- Full support for all MIME enhancements: national/8-bit characters, file
  transmission, multimedia attachments, etc.

- Advanced mail  client support  (in some mail  products) for  the digest
  function.  Typically,  opening  the  digest will  display  a  table  of
  contents showing all the available  messages in the digest. Clicking on
  one  of the  messages will  then  open it  in a  separate window.  More
  advanced functions (threading,  sorting, etc) may be  available in some
  mail clients.

The disadvantages are:

- The MIME digest format is harder to read when using a mail client which
  has no  special support for MIME  digests. In this case,  it is usually
  preferable to switch back to the traditional digest format (see below).

- Some users actually dislike the way their mail client provides specific
  support for mail digests. Some clients, for instance, immediately burst
  MIME  digests  into  a  collection   of  messages,  which  are  entered
  individually into the  user's in-box. While this may seem  to be a good
  idea at first,  it means that discarding a digest  may actually require
  hundreds of messages to be discarded individually.

Users who would rather continue to receive traditional digests can send a
SET  *  NOMIME command  to  LISTSERV  to  indicate their  preference  for
traditional digests for  all the lists they are  currently subscribed to.
This  command  does not  have  any  effect  on  regular (MAIL)  or  INDEX
subscriptions and  thus can  be safely  wildcarded. Similarly,  users who
subscribed prior  to the  installation of 1.8c  but would  rather receive
MIME  digests can  do so  with a  SET *  MIME command.  Again, this  only
affects digest subscriptions and  will not cause non-digest subscriptions
to switch to digested mode.

List owners can add "Default-Options= MIME"  to the list header to select
MIME digests  as the default  digest option  for all new  subscribers. As
usual,  this keyword  has  no  effect on  existing  subscribers (use  SET
listname MIME FOR *@* to change existing subscriptions). Please note that
the MIME option  only indicates a preference in the  event that the users
should  switch  to  digest  mode  on  their  own.  Use  "Default-Options=
MIME,DIGEST" to add all new subscribers  with MIME digests (as opposed to
MAIL or INDEX). Conversely, "Default-Options= NOMIME" indicates that MIME
digests should  only be activated  when explicitly requested by  the user
(through the SET listname MIME command).

While currently its  only effect is to indicate a  preference for MIME vs
traditional  digests,  the MIME  subscription  option  may, in  a  future
version, control new MIME-related functionality.

Finally, MIME  fields are now always  written to the list  archives, even
when "Notebook-Header= Short" is in effect.

****************************************
* Usability: Support for "super-lists" *
****************************************

In order  to facilitate the  organization and management  of hierarchical
mailing   list  structures   (such  as   lists  mirroring   the  internal
organization of  a business  unit), version  1.8c introduces  support for
"super-lists" ("super" as in the  opposite of a "sub-list"). A super-list
is a container list that automatically  includes all the subscribers in a
pre-defined  set of  sub-lists, recursively.  Super-lists can  be created
hierarchically to any depth.

The LISTSERV administrator creates a super-list in the same manner as any
other list,  and inserts  a "Sub-lists="  keyword in  the list  header to
identify the  list as a  super-list and provide  a list of  the sub-lists
whose membership  information should be inherited  automatically. All the
sub-lists in question must be on  the same machine as the super-list. For
security reasons,  only the LISTSERV  administrator is allowed to  add or
modify the "Sub-lists=" keyword.

In most respects, a super-list behaves  exactly like an ordinary list. It
has its own list owner, its own list archives, its own set of list header
keywords,  and  so  forth.  It  is even  possible  to  subscribe  to  the
super-list directly, assuming the  "Subscription=" keyword allows it. The
only difference between  a super-list and a regular list  is what happens
when  you post  to it.  With the  super-list, the  membership of  all the
sub-lists  is  added  (recursively)  to  the  list  of  people  who  have
subscribed to the  super-list itself, and duplicates  are suppressed. The
posting is  then processed  normally, archived  based on  the "Notebook="
keyword in the super-list, and so forth.

As noted above, users can subscribe  to the super-list directly, and this
is in  fact an important aspect  of the operation of  super-lists. If you
are subscribed to the super-list itself, the subscription options used to
deliver "super-messages" to  you are taken from your  subscription to the
super-list,  just like  with any  other list.  For instance,  if you  are
subscribed to the super-list with the NOMAIL option, you will not receive
any  super-message,  even if  you  are  also  subscribed  to one  of  the
sub-lists  without the  NOMAIL  option. By  subscribing  directly to  the
super-list and setting the NOMAIL option,  you are indicating that you do
not wish  to receive  any of  the messages posted  to the  super-list and
explicitly overriding any subscription options in the sub-lists.

When you are subscribed to multiple  sub-lists, but not to the super-list
itself, LISTSERV uses the following rules to determine which subscription
options should be used for super-messages:

1. NOMAIL  subscriptions are ignored.  You will get the  super-message if
   you have an active (non-NOMAIL) subscription to at least one sub-list.
   The rationale for  this rule is that posting to  the super-list should
   be  equivalent  to posting  to  each  and  every sub-list,  minus  the
   duplicates. When  posting to  all the  sub-lists, a  single non-NOMAIL
   subscription would be sufficient for  the user to receive the message,
   and consequently  the message should  be delivered when posted  to the
   super-list. The only  way not to receive postings  from the super-list
   is to subscribe to the super-list directly and set yourself to NOMAIL.

2. The DIGEST  and INDEX options are ignored and  internally converted to
   MAIL. The rationale is as follows:

   - In most cases, super-lists will  be used for administrative messages
     or for  announcements, rather than for  active, ongoing discussions,
     which would typically be carried out on the smaller sub-lists. Thus,
     it seems  improper to  inherit the  DIGEST or  INDEX options  from a
     high-volume  discussion  sub-list  and  apply  it  to  a  low-volume
     announcement super-list.

   - This  rule can  be applied  consistently regardless  of the  way the
     super-list is configured. If the DIGEST  or INDEX options were to be
     retained when possible, there would  still be cases where they would
     have to  be changed to NOMAIL  because the super-list does  not have
     list archives  or does not  allow digests. This lack  of consistency
     would make  it more difficult  for non-technical users to  work with
     super-lists.

   - Similarly, super-lists will normally  be deployed to avoid duplicate
     messages, ie  in situations where  users are subscribed  to multiple
     sub-lists, possibly with different options for each list. Inheriting
     the  DIGEST and  INDEX  options would  require  additional rules  to
     control  the  behaviour  of  the   super-list  in  the  presence  of
     conflicting  subscription  options (sub-list  A  set  to DIGEST  and
     sub-list B set to INDEX or MAIL).

   To receive  super-messages in DIGEST  or INDEX format, the  users must
   subscribe to the super-list directly and set the appropriate option.

Topics, if defined, are evaluated on a per-list basis. That is, for every
sub-list  (and for  the  super-list as  well,  if appropriate),  LISTSERV
determines whether the  topic of the message is one  that the user wanted
to  see. If  not, it  acts as  if the  user were  not subscribed  to this
particular list. This mechanism works very well if all the sub-lists have
the same set of topics (or at least a well-defined set of common topics).
Collections of sub-lists  with widely different sets of  topics should be
avoided as there  is no reasonable way to make  super-list topics work in
this context.

Please refer  to the 1.8c list  owner's guide for more  information about
super-lists.

*************************************************
* Usability: New SUBJECTHDR subscription option *
*************************************************

The new SUBJECTHDR  subscription option directs LISTSERV to  add the name
of the  list in  the "Subject:"  field of every  posting coming  from the
list:

  Subject: [XYZ-L] Question about ink mixing

With some  mail programs, this can  make it much easier  to sort messages
coming from the  list, for instance by using special  filters to save all
the messages from  a particular list to a designated  folder. Replies are
handled  automatically to  avoid inserting  multiple copies  of the  list
name.

Like all other  subscription options, SUBJECTHDR can be turned  on or off
by individual subscribers, or by the list owner on behalf of any (or all)
subscribers. The  list owner can  also define  a default value  using the
"Default-Options=" keyword.

By default,  LISTSERV will  insert the  name of the  list in  the subject
field. In  some cases,  this may  not be  the most  appropriate solution,
especially if the list  name is very long. The list  owner can change the
text of the insert using the "Subject-Tag=" keyword:

  * Subject-Tag= FE

This is particularly useful for groups of related mailing lists.

**********************************************
* Usability: Support for parallel moderation *
**********************************************

In some cases, it may be useful  to have a team of moderators working "in
parallel" on the same messages, for instance when it is critical that the
messages be approved or rejected as soon as possible. In this case, it is
counter-productive to have LISTSERV assign each message to a moderator in
the usual  round-robin fashion;  instead, all the  moderators need  to be
sent a copy  of the message, and  each of them should be  able to approve
any message, without however causing duplicate copies to be posted to the
list. This is now possible, using the following keyword syntax:

* Send= Editor,Hold
* Moderator= All,moderator1,moderator2,...

If the moderator  list starts with the word "All",  approval requests for
incoming messages  are sent to  all the listed moderators.  Any moderator
can then approve the message  using the normal OK confirmation procedure.
If several moderators attempt to approve  the same message, the first one
will succeed and subsequent requests  will fail, stating that the message
was not found (because it was deleted after being approved and posted).

It is  also possible  to use "Moderator=  All" without  "Send= ...,Hold",
allowing the  moderators to edit  the messages before reposting  them. In
this case, however, a separate synchronization mechanism needs to be used
to avoid duplicates,  as two moderators are unlikely to  make exactly the
same edits to the message. Even if LISTSERV were able to identify the two
submissions as  being the same  message, it would  not know which  one to
choose over the other.

**************************************************
* Usability: Support for anonymous subscriptions *
**************************************************

The SUBSCRIBE command has been enhanced to support the following syntax:

                      SUBSCRIBE listname ANONYMOUS

(as usual, the command is not case sensitive)

This indicates that  the subscriber wishes to join  the list anonymously,
ie  without  specifying  a  name.  The  CONCEAL  subscription  option  is
automatically  set,   granting  the  subscriber  the   maximal  level  of
protection available.

An existing  subscription can  be made anonymous  by sending  a SUBSCRIBE
listname ANONYMOUS command. This will both  delete the name from the list
and set  the CONCEAL option.  An anonymous  subscription can be  made non
anonymous by  sending a  SET listname NOCONCEAL  command and  a SUBSCRIBE
command with the desired name.

In  addition,  when  a  list operates  with  "Default-Options=  CONCEAL",
LISTSERV no  longer requires  or expects  a name to  be specified  on the
SUBSCRIBE command. If  a name is provided, it is  accepted and entered in
the list file, as before. If, however, no name was supplied either on the
SUBSCRIBE  command  or   in  the  mail  headers,   LISTSERV  accepts  the
subscription  (instead of  replying with  a description  of the  expected
syntax) and makes it anonymous.

*****************************************************
* Usability: Per-subscriber daily message threshold *
*****************************************************

The syntax of  the "Daily-Threshold=" keyword has been  extended to allow
the specification  of a  second, per-subscriber daily  message threshold.
For instance,

* Daily-Threshold= 100,10

indicates that subscribers are allowed to  post up to 10 messages per day
each. The  11th and following  messages are  returned to the  sender, who
will have  to resend  them on  the following  day in  order to  have them
posted.  The list  owner  and editors  are exempt  from  this quota.  The
default per-subscriber message quota is infinite.

The implementation  of the  global daily threshold  (100 messages  in the
present example)  is unchanged from  the previous version: the  101th and
following  messages are  queued instead  of being  returned, and  will be
automatically reprocessed when  the list owner sends a  FREE command. The
decision to return messages exceeding  the per-user threshold (instead of
queuing them) was  based on the design objectives for  this new function,
which were to provide a simple mechanism to educate outspoken subscribers
and  make them  understand  the need  to keep  their  contributions to  a
reasonable volume. Queuing the messages  would have encouraged a "It will
go through  when it goes through"  attitude and ultimately resulted  in a
situation where the postings from hyperactive subscribers are distributed
several days after they are  written, confusing the other subscribers and
raising questions  about unexplained  mail delays  and problems  with the
host system. Returning  the message while requiring  a retransmission, on
the other  hand, provides  instant feedback to  the hyperactive  user and
requires a  conscious choice as  to which  postings should be  resent the
next day.

*****************************************
* Usability: Miscellaneous enhancements *
*****************************************

- By default,  the bottom banner  is no  longer appended to  every single
  message when composing a digest. Instead,  a single copy is included in
  the digest preamble. Please note that some digestification programs and
  mail readers may not show the digest preamble at all, and that frequent
  readers may  skip the preamble  out of habit.  In general, there  is no
  guarantee  that the  bottom banner  will be  read at  all unless  it is
  included on  each and  every message  in the digest.  To revert  to the
  previous behaviour (bottom  banner on each and every  message), add the
  special "Bottom_banner" option to your "Digest=" keyword, as in:

  * Digest= Yes,Monthly,Bottom_banner

  The top banner  is always included on  each and every message  as it is
  normally used to insert a one-line copyright statement.

- LISTSERV now  decodes MIME messages  sent to the LISTSERV  address (but
  not those sent  to the list addresses) before processing  them. In most
  cases, this  will allow correct  processing of LISTSERV  requests which
  used to  be rejected  by 1.8b,  for instance  because they  were base64
  encoded. In some cases, however, it can lead to LISTSERV rejecting MIME
  messages  with   proprietary  text-like   formats  when   the  requests
  previously happened to work. LISTSERV  requests should be sent in plain
  text format whenever possible.

- "OK"-style confirmation  messages can  now be tailored,  on a  list per
  list basis, using the new CONFIRM1 mail template.

- LISTSERV now  keeps track  of subscription  dates. This  information is
  displayed by the  QUERY command, when it is available.  Since users who
  subscribed  before the  installation  of  1.8c do  not  have any  known
  subscription date, this information is not always present.

- When parsing list headers, LISTSERV now recognizes e-mail addresses and
  processes them using  a slightly different parser,  which preserves the
  case  of the  left-hand  side of  the address  and,  for BITNET  sites,
  removes any superfluous '.BITNET' suffix  on the right-hand side. Thus,
  it is no longer necessary to use double quotes to register a lower-case
  address in the list header.

- The mail template processor now supports HTML-like variable closure, in
  addition  to  the  traditional   LISTSERV  closure  (both  methods  are
  supported concurrently; there is no need to select one over the other).
  Here are examples with traditional and HTML closure:

  Traditional: For more information, please send mail to &EMAIL or call
               &PHONE.

  HTML:        For more information, please send mail to &EMAIL; or call
               &PHONE;.

  Previously, HTML  writers who used  HTML closure conventions  would not
  get the expected results. This change makes it easier for webmasters to
  get the desired results the first time.

- New mail template variables: &LITE, &ISODATE, &DAYSEQ(n). &LITE has the
  value 1  when running the new  LISTSERV Lite product, and  0 otherwise.
  This variable can  be used to write generic templates  that account for
  the differences between the two products. &ISODATE returns today's date
  in  ISO  format,  ie  yyyy-mm-dd.  &DAYSEQ(n) is  used  to  create  FAQ
  templates  with rotating  topics  and  is described  in  the 1.8c  list
  owner's guide.

- The  "Renewal=" keyword  now supports  "xx-Daily" as  a valid  interval
  specification. While  the use of intervals  of less than a  week is and
  remains inadvisable, FAQ templates with rotating topics may require the
  selection of a very precise renewal interval (for congruence purposes),
  which was  not possibly with  "xx-Weekly" granularity. Please  refer to
  the list owner's guide for a discussion of rotating FAQ support.

- The QUERY ... WITH command now supports topic selection. Examples:

  QUERY XYZ-L FOR *@* WITH TOPICS: ADMIN FORUM

  -> Shows all members subscribed to both ADMIN and FORUM topics.

  QUERY XYZ-L FOR *@* WITH TOPICS: -ADMIN

  -> Shows all members not subscribed to the ADMIN topic.

  QUERY XYZ-L FOR *@* WITH TOPICS: ADMIN -TEST

  -> Shows all members subscribed to the ADMIN topic, but not to the TEST
     topic.

- The "List-Address=" keyword now allows the 'username' part (ie the name
  of the list)  to be redefined. Previously, only the  host name could be
  changed.  It  is  important  to  note  that  the  only  effect  of  the
  "List-Address="  keyword  is to  change  the  way the  list  identifies
  itself in list postings, command replies, etc. It does not instruct the
  mail system to  create forwarding entries to support the  new name, nor
  does it  establish the  specified name  as an alias  for the  list (use
  "List-ID="  for this  purpose). In  general,  you should  not use  this
  keyword without first consulting with the LISTSERV maintainer.

- LISTSERV now  requires confirmation  (through the "OK"  mechanism) when
  commands are sent through  a WWW browser, even if they  apply to a list
  whose  security  level  or  "Subscription=" keyword  does  not  require
  confirmation. This change was made both to avoid abuse and because many
  occasional  WWW users  do not  know their  e-mail address  or enter  it
  incorrectly, whereas people who use  e-mail regularly do of course have
  a working e-mail address in their configuration.

-------------------------------------------------------------------------
CataList is a service mark of L-Soft international, Inc.

LISTSERV is a registered trademark licensed to L-Soft international, Inc.

LSMTP is a trademark of L-Soft international, Inc.

LMAIL and L-SOFT are trademarks of L-Soft international.

PMDF is a registered trademark of Innosoft International, Inc.

Unix is a registered trademark of X/Open Company Limited.

DEC and VMS are trademarks of Digital Equipment Corporation.

Windows is a trademark of Microsoft corporation.

All other trademarks, both marked and not marked, are the property of
their respective owners.
-------------------------------------------------------------------------

ATOM RSS1 RSS2