TCP_TABLE(5)                                         TCP_TABLE(5)

NAME
       tcp_table - Postfix client/server table lookup protocol

SYNOPSIS
       postmap -q "string" tcp:host:port

       postmap -q - tcp:host:port <inputfile

DESCRIPTION
       The  Postfix  mail system uses optional tables for address
       rewriting or mail routing. These tables are usually in dbm
       or db format. Alternatively, table lookups can be directed
       to a TCP server.

       To find out what types of lookup tables your Postfix  sys-
       tem supports use the postconf -m command.

       To   test  lookup  tables,  use  the  postmap  command  as
       described in the SYNOPSIS above.

PROTOCOL DESCRIPTION
       The TCP map class implements a very simple  protocol:  the
       client  sends  a  request, and the server sends one reply.
       Requests and replies are sent as one line of  ASCII  text,
       terminated  by  the  ASCII  newline character. Request and
       reply parameters (see below) are separated by  whitespace.

REQUEST FORMAT
       Each request specifies a command, a lookup key, and possi-
       bly a lookup result.

       get SPACE key NEWLINE
              Look up data under the specified key.

       put SPACE key SPACE value NEWLINE
              This request is currently not implemented.

REPLY FORMAT
       Each reply specifies a status code and text. Replies  must
       be  no  longer  than 4096 characters including the newline
       terminator.

       500 SPACE text NEWLINE
              In case of a lookup  request,  the  requested  data
              does  not exist.  In case of an update request, the
              request  was  rejected.   The  text  describes  the
              nature of the problem.

       400 SPACE text NEWLINE
              This   indicates   an  error  condition.  The  text
              describes the nature of  the  problem.  The  client
              should retry the request later.

       200 SPACE text NEWLINE
              The request was successful. In the case of a lookup
              request, the text contains an  encoded  version  of
              the requested data.

ENCODING
       In  request  and  reply  parameters, the character %, each
       non-printing character, and each whitespace character must
       be  replaced  by  %XX, where XX is the corresponding ASCII
       hexadecimal character value. The hexadecimal codes can  be
       specified in any case (upper, lower, mixed).

       The  Postfix  client always encodes a request.  The server
       may omit the encoding as long as the reply  is  guaranteed
       to not contain the % or NEWLINE character.

SECURITY
       Do  not  use  TCP lookup tables for security critical pur-
       poses.  The client-server connection is not protected  and
       the server is not authenticated.

SEE ALSO
       regexp_table(5) format of regular expression tables
       pcre_table(5) format of PCRE tables
       cidr_table(5) format of CIDR tables

BUGS
       Only the lookup method is currently implemented.

       The  client  does  not hang up when the connection is idle
       for a long time.

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

                                                     TCP_TABLE(5)