Provided by: gnarwl_3.3-8_i386 bug

NAME

       gnarwl - GNU Neat Autoreply With LDAP

SYNOPSIS

       gnarwl [-h] [-c <cfgfile>] [-a <address>] [-s <address>]

DESCRIPTION

       gnarwl is an email autoresponder, intended to be a successor to the old
       vaction(1) program. Since a modern mailserver, usually serves  hundreds
       (or  even  thousands)  of  mailaccounts,  it  is  not  sensible to give
       (untrusted) users shell access so they may create/maintain the .forward
       file, required by vacation(1).

       With  gnarwl , all user-suplied data is stored within an LDAP database,
       so there are no per user ".forward" files (or  even  homedirs)  needed.
       Configuration is conveniently done via one systemwide configfile.

       Like the old vacation(1) program, gnarwl accepts incomming mail through
       stdin, and will send  outgoing  mail  via  an  external  MTA  (it  even
       maintains  basic commandline compatibility, so it may be used as a drop
       in replacement).

       Several gdbm databases are maintained, in order to make sure,  a)  mail
       does  not  bounce  back  and force between gnarwl and another automated
       MUA, b) mailing lists  will  not  be  bothered  and  c)  specifc  local
       addresses  may  never  produce  automatic  replies.  All these database
       files may be managed using the damnit(8) program.

OPTIONS

       -c <cfgfile>
              Use a different configfile than the one, compiled in.

       -a <alias>
              Force <address> as receiving address.

       -s <address>
              Force <address> as sending address.

       -h     Print usage information.

CONFIGURATION

       gnarwl typically uses one global  configurationfile,  but  a  per  user
       setup  is  also possible using the -c commandline switch. The following
       keywords are recognized in the configfile:

       map_sender <macroname>
              Binds a macroname (case insensitive), refering to the sender  of
              an incomming email. Defaults to "$sender".

       map_receiver <macroname>
              Binds   a   macroname   (case   insensitive),  refering  to  the
              receiver(s) of an incomming email. Defaults to "$receiver".

       map_subject <macroname>
              Binds a macroname (case insensitive), refering to the subject of
              an incomming email. Defaults to "$subject".

       map_field <ldapattribute> <macroname>
              Binds a macroname (case insensitive), refering to a field in the
              resultset, returned by the database. There are no  defaults  for
              this directive.

       server <address>
              Address of the databaseserver to query. Defaults to localhost.

       port <portnumber>
              Port, the LDAP server listens on. Defaults to 389.

       scope <base|one|sub>
              The scope used for searching the database. Default is "sub".

       login <string>
              Destinguished name to bind with to the LDAP database. Default is
              to bind anonymously.

       password <string>
              Password to use for binding to the LDAP database. If a  password
              is  required  to  access  the server, then the configfile should
              belong to the gnarwl user and have file permission 0400.

       base <destinguished name>
              Entrypoint  of  the  search.  There  is  no  default  for   this
              directive, it must be supplied by the administrator.

       protocol <0|2|3>
              Select  protocol  to  bind  to the ldapserver. The default is 0,
              which means "autodetect".

       queryfilter <ldap queryfilter>
              Search pattern to  match  against  the  database.  Defaults  to:
              "(&(mail=$recepient)(vacationActive=TRUE)".

       result <ldap attribute>
              The name of the attribute, that is to be taken as the emailbody.
              The content of this field will be pasted  in  between  the  data
              found via forceheader and forcefooter directives. Afterwards all
              remaining macros are expanded in the order of  declaration,  and
              the result will be piped through to the MTA.

       blockfiles <directory>
              The  directory, where gnarwl stores it’s blockfiles. These files
              are required to keep track on who was sent an  automatic  reply.
              Default is: "/var/lib/gnarwl/block/".

       umask <mode>
              What  permission  to  give  newly  generated database files. The
              default is 0600.

       blockexpire <number>
              How long (in hours) to block a certain  sender/recepient  combo.
              Default  is 48 hours. Setting <number> to 0 disables the feature
              (not recommended). No blockfiles are read/written in this  case.

       maxreceivers <number>
              Ignore incomming email, specifying too many receiving addresses.
              It does not matter, whether these are local or  not,  as  gnarwl
              doesn’t know domains. Default is 256.

       maxheader <number>
              Ignore  incomming  email  with  more  than this number of header
              lines. Lines are counted before unfolding them, so a folded line
              really counts as at least two lines. Default is 256.

       badheaders <filename>
              Path  to  a  database file, containing matching patterns for the
              mailheader.  If an entry stored in this file matches a  line  in
              the  header exactly, then this mail will be ignored by gnarwl is
              deactivated by default.

       blacklist <filename>
              Pointer to a database file, containing emailaddresses, gnarwl is
              not allowed to generate automatic replies for (useful to prevent
              automatic replies from addresses, which are  shared  by  several
              people). This feature is deactivated by default.

       forceheader <filename>
              Path  to  a text file, containing a standardized header, that is
              to be pasted in front of every outgoing mail. This  file  should
              end  with a single empty line. Otherwise it is assumed, that the
              users are allowed to continue the header and  will  provide  the
              separating  empty  line  themselves.   Default  is  not to force
              anything (that is: The user has to  supply  the  header  in  the
              "result" attribute).

       forcefooter <filename>
              Path  to  a text file, containing a standardized footer, that is
              to be appended at the end of every generated mail. Default is to
              not to force anything.

       mta <prog> [<args>]
              Specify  MTA for sending mail. It must be able to accept mail on
              STDIN.  Default is "/usr/sbin/sendmail".

       charset <encoding>
              LDAP stores text in unicode, which is ok, as  long  as  outgoing
              mail  doesn’t  contain any non ASCII characters. However, locale
              specific characters (like german  umlaute)  end  up  as  strange
              glyphs.  With  the  "charset" directive, gnarwl tries to convert
              these to the  correct  symbols.  The  <encoding>  argument  must
              contain  a string recognized by iconv(3).  Default is not to try
              to convert anything (assume  US-ASCII  charset  /  MIME  encoded
              mail).

       recvheader <string>
              A  whitespace  separated list of headers (case does not matter),
              which may contain receiving addresses. Defaults to: "To Cc".

       loglevel <0|1|2|3>
              Specifies  what  to  send  to  the  syslog.  A  higher  loglevel
              automatically  includes  all lower loglevels (see section syslog
              for more information).

SYSLOG

       Since gnarwl is not meant to be invoked by anything but the mailsystem,
       it’ll  never print out messages to the systemconsole, but logs them via
       syslog(3), using the facility "mail". A  log  line  is  always  of  the
       following format:

       <level>/<origin> <message>

       The <level> field indicates the severity of the message, it corresponds
       to the "loglevel" config directive. Possible values are:

       CRIT (loglevel 0)
              Critical messages.  gnarwl cannot continue and will die  with  a
              non-zero exit code. This usually causes the mailsystem to bounce
              mail.

       WARN (loglevel 1)
              A  warning.   gnarwl  can  will  continue,  but  not  with   the
              full/intended functionality.

       INFO (loglevel 2)
              Status  information.  A  message  in the INFO loglevel indicates
              normal behaviour.

       DEBUG (loglevel 3)
              Debugging information.  gnarwl will log a lot of information  on
              how mail is processed.

       The  <origin>  field gives a short hint about what caused the log entry
       in question, while <message>  contains  a  short  description  of  what
       actually happened.

AUTHOR

       Patrick Ahlbrecht <p.ahlbrecht@billiton.de>

SEE ALSO

       vacation(1), postfix(1), iconv(1), damnit(8), rfc822

FILES

       /etc/gnarwl.cfg
              main configuration file.

       /var/lib/gnarwl/.forward
              forward file for the mailsystem.

       /var/lib/gnarwl/blacklist.db
              gnarwl  won’t send an autoreply for anyone whose emailaddress is
              listed herin.

       /var/lib/gnarwl/badheaders.db
              gnarwl will ignore mail, it is able to match a  headerline  with
              an  entry  in  this  file. Case is significant, no wildcards are
              expanded.

       /var/lib/gnarwl/header.txt
              Standard header to paste in front of every outgoing mail.

       /var/lib/gnarwl/footer.txt
              Standard footer to append to every outgoing mail.

       /var/lib/gnarwl/block/*
              block files.

                                                                     GNARWL(8)