POSTMAP(1)

NAME
postmap - Postfix lookup table management

SYNOPSIS
postmap [-Ninrvw] [-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 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. The format of a lookup table input file is as follows:

•   Blank lines are ignored. So are lines beginning with `#'.

•   A table entry has the form

    key whitespace value

•   A line that starts with whitespace continues the preceding line.

The key and value are processed as is, except that surrounding white space is stripped off. Unlike with Postfix alias databases, quotes cannot 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. Options:

-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.

-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 non-zero if the requested information was not found.

-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  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.

-q key
    Search the specified maps for key and print the first value found on the standard output stream. The exit status is non-zero if the requested information was not found.

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

-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.

    When no file_type is specified, the software uses the database type specified via the 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.

BUGS
The "delete key" support is limited to one delete operation per command invocation.

ENVIRONMENT

MAIL_CONFIG
    Directory with Postfix configuration files.

MAIL_VERBOSE
    Enable verbose logging for debugging purposes.

CONFIGURATION PARAMETERS

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

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