#  This is manual page in Perl POD format. Read more at
#  http://perldoc.perl.org/perlpod.html or run command:
#
#     perldoc perlpod | less
#
#  To check the syntax:
#
#     podchecker *.pod
#
#  Create manual page with command:
#
#    pod2man PAGE.N.pod > PAGE.N

=pod

=head1 NAME

proclint - Lint procmail rc files for proper syntax

=head1 SYNOPSIS

  proclint [options] <procmail *.rc files>

=head1 OPTIONS

=over 4

=item B<-h, --help>

Display short help.

=item B<-i, --includerc>

Scan and possibly list files included in code with INCLUDERC
statements.

=item B<-I, --noinclude>

Do not scan INCLUDERC references (default).

=item B<-l, --list>

List lines in the procmail recipe files.

=item B<-L, --nolist>

Do not list lines, except for errors (default).

=item B<-p, --procmailrc>

Check $HOME/.procmailrca

=back

=head1 DESCRIPTION

Check procmail rc files for proper syntax, recipe nesting, etc. The
output consists of: C<LINE-NUMBER:FLAG:DEPTH: text>. FLAG is one of:

    R  recipe
    C  condition
    A  action (redirect, '!', or pipe, '|')
    F  folder
    =  assignment
    +  continuation
    E  *line may be erroneous*

DEPTH indicates the depth of the recipe nesting and is shown only
when greater than zero.

=head1 BUGS

There are many bugs. E.g. multiline handling is not done (continued
strings). Please regard the output as advisory only. Patches are welcome
as there is nobody developing proclint as of 2007-01-12.

=over 4

=item *

Program does not understand comments after environment variable
assignments.

=item *

Program does not complain when mail is being delivered to mailboxes in
a directory which does not exist.

=item *

Extraneous locallockfile settings are not detected.

=back

=head1 STATUS CODES

Program returns non-zero in case problem is found.

=head1 ENVIRONMENT

None.

=head1 FILES

None.

=head1 SEE ALSO

procmail(1)

=head1 AUTHORS

Program was written by Alan K. Stebbens <aks@sgi.com>.

This manual page was written by Jari Aalto <jari.aalto@cante.net>.
Released under license GNU GPL v2 or (at your option) any later
version. For more information about license, visit
<http://www.gnu.org/copyleft/gpl.html>.

=cut
