172 Chapter 11. Emailas blocking spam and managing email lists, that can then be turned off or on by using commentcharacters in the user’s .procmailrc file.For example, lines in a user’s .procmailrc file may look like this:MAILDIR=$HOME/MsgsINCLUDERC=$MAILDIR/lists.rcINCLUDERC=$MAILDIR/spam.rcIf the user wants to turn off Procmail filtering of their email lists but leave spam control in place,they would comment out the first INCLUDERC line with a hash mark character (#).• LOCKSLEEP — Sets the amount of time, in seconds, between attempts by Procmail to use a partic-ular lockfile. The default is eight seconds.• LOCKTIMEOUT — Sets the amount of time, in seconds, that must pass after a lockfile was lastmodified before Procmail assumes that the lockfile is old and can be deleted. The default is 1024seconds.• LOGFILE — The file to which any Procmail information or error messages are written.• MAILDIR — Sets the current working directory for Procmail. If set, all other Procmail paths arerelative to this directory.• ORGMAIL — Specifies the original mailbox, or another place to put the messages if they cannot beplaced in the default or recipe-required location.By default, a value of /var/spool/mail/$LOGNAME is used.• SUSPEND — Sets the amount of time, in seconds, that Procmail pauses if a necessary resource, suchas swap space, is not available.• SWITCHRC — Allows a user to specify an external file containing additional Procmail recipes,much like the INCLUDERC option, except that recipe checking is actually stopped on the referringconfiguration file and only the recipes on the SWITCHRC-specified file are used.• VERBOSE — Causes Procmail to log more information. This option is useful for debugging.Other important environmental variables are pulled from the shell, such as LOGNAME, which is thelogin name; HOME, which is the location of the home directory; and SHELL, which is the default shell.A comprehensive explanation of all environments variables, as well as their default values, is availablein the procmailrc man page.11.4.2. Procmail RecipesNew users often find the construction of recipes the most difficult part of learning to use Procmail. Tosome extent, this is understandable, as recipes do their message matching using regular expressions,which is a particular format used to specify qualifications for a matching string. However, regularexpressions are not very difficult to construct and even less difficult to understand when read. Addi-tionally, the consistency of the way Procmail recipes are written, regardless of regular expressions,makes it easy to learn by example. To see example Procmail recipes, refer to Section 11.4.2.5 RecipeExamples.Procmail recipes take the following form::0 ú flags û : ú lockfile-nameû* ú special-condition-characterû üú condition-1û* ú special-condition-characterû üú condition-2û* ú special-condition-characterû üú condition-Nûúspecial-action-characterû %ú action-to-performû