Background for non-technical users: An "exit" is a program supplied by the customer to modify the behavior of a product (such as LISTSERV) in ways that the supplier of the product could not anticipate, or could not afford to support via standard commands or options. 

The product checks for the presence of the "exit" program and calls it on a number of occasions, called "exit points". In some cases, the "exit" program supplies an answer ("return code") to the main program, which adjusts its behavior accordingly. For instance, LISTSERV may ask an exit program "Is it ok to add JOE@XYZ.EDU to the ABC-L list?", and the program will answer yes or no, and possibly send a message to the user explaining why his subscription was accepted or rejected. In other cases, the "exit point" call is purely informative: the exit program gets a chance to do something, such as sending an informational message to a user, but does not return any answer. 

Because the exit is a computer program, it must be prepared by a technical person and installed by the LISTSERV maintainer. 

Contents:

4.1 What is a List Exit?

4.2 List Exit Points

4.3 Local Command Definition (non-z/VM)

4.4 SPAM_EXIT

4.5 A Practical Example: HAPPY99