# TCP_TABLE(5) - man - phpMan

[TCP_TABLE(5)](https://www.chedong.com/phpMan.php/man/TCPTABLE/5/markdown)                             File Formats Manual                            [TCP_TABLE(5)](https://www.chedong.com/phpMan.php/man/TCPTABLE/5/markdown)



## 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 ta‐
       bles 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 system supports use the "**postconf** **-m**"
       command.

       To test lookup tables, use the "**postmap** **-q**" 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.

       Send and receive operations must complete in 100 seconds.

## REQUEST FORMAT
       The tcp_table protocol supports only the lookup request.  The request has the following form:

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

       Postfix will not generate partial search keys such as domain names without one or more subdo‐
       mains, network addresses without one or more least-significant  octets,  or  email  addresses
       without  the localpart, address extension or domain portion. This behavior is also found with
       cidr:, pcre:, and regexp: tables.

## 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.  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 en‐
              coded 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 purposes.  The client-server connection is
       not protected and the server is not authenticated.

## BUGS
       Only the lookup method is currently implemented.

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

## SEE ALSO
       [postmap(1)](https://www.chedong.com/phpMan.php/man/postmap/1/markdown), Postfix lookup table manager
       [regexp_table(5)](https://www.chedong.com/phpMan.php/man/regexptable/5/markdown), format of regular expression tables
       [pcre_table(5)](https://www.chedong.com/phpMan.php/man/pcretable/5/markdown), format of PCRE tables
       [cidr_table(5)](https://www.chedong.com/phpMan.php/man/cidrtable/5/markdown), format of CIDR tables

## README FILES
       Use "**postconf** **readme**___**directory**" or "**postconf** **html**___**directory**" to locate this information.
       DATABASE_README, Postfix lookup table overview

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

       Wietse Venema
       Google, Inc.
       111 8th Avenue
       New York, NY 10011, USA



                                                                                        [TCP_TABLE(5)](https://www.chedong.com/phpMan.php/man/TCPTABLE/5/markdown)
