POSTMAP(1)                                                          POSTMAP(1)

NAME
       postmap - Postfix lookup table management

SYNOPSIS
       postmap [-Nfinopruvw] [-c config_dir] [-d key] [-q key]
       [file_type:]file_name ...

DESCRIPTION
       The postmap command creates or  queries  one  or  more  Postfix  lookup
       tables,  or  updates an existing one. The input and output file formats
       are expected to be compatible with:

           makemap file_type file_name < file_name

       If the result files do not exist they will be  created  with  the  same
       group and other read permissions as the source file.

       While  the  table  update is in progress, signal delivery is postponed,
       and an exclusive, advisory, lock is placed  on  the  entire  table,  in
       order to avoid surprises in spectator programs.

INPUT FILE FORMAT
       The format of a lookup table input file is as follows:

       o      A table entry has the form

                   key whitespace value

       o      Empty  lines and whitespace-only lines are ignored, as are lines
              whose first non-whitespace character is a `#'.

       o      A logical line starts with  non-whitespace  text.  A  line  that
              starts with whitespace continues a logical line.

       The  key  and  value are processed as is, except that surrounding white
       space is stripped off. Unlike with Postfix alias databases, quotes can-
       not be used to protect lookup keys that contain special characters such
       as `#' or whitespace. The key is mapped to lowercase  to  make  mapping
       lookups case insensitive.

COMMAND-LINE ARGUMENTS
       -c config_dir
              Read  the  main.cf  configuration  file  in  the named directory
              instead of the default configuration directory.

       -d key Search the specified maps for key and remove one entry per  map.
              The  exit  status  is  zero  when  the requested information was
              found.

              If a key value of - is specified, the program reads  key  values
              from  the standard input stream. The exit status is zero when at
              least one of the requested keys was found.

       -f     Do not fold the lookup key  to  lower  case  while  creating  or
              querying a map.

       -i     Incremental  mode.  Read  entries from standard input and do not
              truncate an existing database. By default, postmap creates a new
              database from the entries in file_name.

       -N     Include  the  terminating  null character that terminates lookup
              keys and values.  By  default,  Postfix  does  whatever  is  the
              default for the host operating system.

       -n     Don't  include  the  terminating  null character that terminates
              lookup keys and values. By default, Postfix does whatever is the
              default for the host operating system.

       -o     Do  not release root privileges when processing a non-root input
              file. By default, postmap drops root privileges and runs as  the
              source file owner instead.

       -p     Do  not  inherit the file access permissions from the input file
              when creating a new file.   Instead,  create  a  new  file  with
              default access permissions (mode 0644).

       -q key Search  the  specified  maps  for  key and write the first value
              found to the standard output stream. The  exit  status  is  zero
              when the requested information was found.

              If  a  key value of - is specified, the program reads key values
              from the standard input stream and writes one line of key  value
              output for each key that was found. The exit status is zero when
              at least one of the requested keys was found.

       -r     When updating a table, do  not  warn  about  duplicate  entries;
              silently replace them.

       -u     Upgrade the database to the current version.

       -v     Enable  verbose  logging  for  debugging  purposes.  Multiple -v
              options make the software increasingly verbose.

       -w     When updating a table, do  not  warn  about  duplicate  entries;
              silently ignore them.

       Arguments:

       file_type
              The type of database to be produced.

              btree  The  output  file  is  a  btree file, named file_name.db.
                     This is available only on systems  with  support  for  db
                     databases.

              dbm    The output consists of two files, named file_name.pag and
                     file_name.dir.  This is available only  on  systems  with
                     support for dbm databases.

              hash   The  output  file  is  a hashed file, named file_name.db.
                     This is available only on systems  with  support  for  db
                     databases.

              Use  the  command postconf -m to find out what types of database
              your Postfix installation can support.

              When no file_type is specified, the software uses  the  database
              type   specified  via  the  default_database_type  configuration
              parameter.

       file_name
              The name of the lookup  table  source  file  when  rebuilding  a
              database.

DIAGNOSTICS
       Problems  and  transactions are logged to the standard error stream. No
       output means no problems. Duplicate entries are skipped and are flagged
       with a warning.

       postmap  terminates with zero exit status in case of success (including
       successful postmap -q lookup) and terminates with non-zero exit  status
       in case of failure.

ENVIRONMENT
       MAIL_CONFIG
              Directory with Postfix configuration files.

       MAIL_VERBOSE
              Enable verbose logging for debugging purposes.

CONFIGURATION PARAMETERS
       default_database_type
              Default output database type.  On many UNIX systems, the default
              database type is either hash or dbm.

       berkeley_db_create_buffer_size
              Amount of buffer memory to be used when creating a  Berkeley  DB
              hash or btree lookup table.

       berkeley_db_read_buffer_size
              Amount  of  buffer  memory to be used when reading a Berkeley DB
              hash or btree lookup table.

LICENSE
       The Secure Mailer license must be distributed with this software.

AUTHOR(S)
       Wietse Venema
       IBM T.J. Watson Research
       P.O. Box 704
       Yorktown Heights, NY 10598, USA

                                                                    POSTMAP(1)