#++
# NAME
#	tcp_table 5
# SUMMARY
#	Postfix client/server table lookup protocol
# SYNOPSIS
#	\fBpostmap -q "\fIstring\fB" tcp:\fIhost:port\fR
#
#	\fBpostmap -q - tcp:\fIhost:port\fB <\fIinputfile\fR
# DESCRIPTION
#	The Postfix mail system uses optional tables for address
#	rewriting or mail routing. These tables are usually in
#	\fBlmdb:\fR, \fBcdb:\fR, \fBhash:\fR, or \fBdbm:\fR format.
#
#	Alternatively, table lookups can be directed to a TCP server.
#	To test lookup tables, use the "\fBpostmap -q\fR" command as
#	described in the SYNOPSIS above.
# PROTOCOL DESCRIPTION
# .ad
# .fi
#	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
# .ad
# .fi
#	The tcp_table protocol supports only the lookup request.
#	The request has the following form:
# .IP "\fBget\fR SPACE \fIkey\fR NEWLINE"
#	Look up data under the specified key.
# .PP
#	Postfix will not generate partial search keys such as domain
#	names without one or more subdomains, 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
# .ad
# .fi
#	Each reply specifies a status code and text. Replies must be no
#	longer than 4096 characters including the newline terminator.
# .IP "\fB500\fR SPACE \fItext\fR NEWLINE"
#	In case of a lookup request, the requested data does not exist.
#	The text describes the nature of the problem.
# .IP "\fB400\fR SPACE \fItext\fR NEWLINE"
#	This indicates an error condition. The text describes the nature of
#	the problem. The client should retry the request later.
# .IP "\fB200\fR SPACE \fItext\fR NEWLINE"
#	The request was successful. In the case of a lookup request,
#	the text contains an encoded version of the requested data.
# ENCODING
# .ad
# .fi
#	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
# .ad 
# .fi
#	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), Postfix lookup table manager
#	regexp_table(5), format of regular expression tables
#	pcre_table(5), format of PCRE tables
#	cidr_table(5), format of CIDR tables
# README FILES
# .ad
# .fi
#	Use "\fBpostconf readme_directory\fR" or
#	"\fBpostconf html_directory\fR" to locate this information.
# .na
# .nf
#	DATABASE_README, Postfix lookup table overview
# LICENSE
# .ad
# .fi
#	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
#--*/
