logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

socketmap_table - Postfix socketmap table lookup client

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 Wietse Venema porcupine.org SOCKETMAP_TABLE(5)

Bugs

The protocol time limits are not yet configurable.

Configuration Parameters

socketmap_max_reply_size(100000) The maximum allowed reply size from a socketmap server, not including the netstring encapsulation.

Description

The Postfix mail system uses optional tables for address rewriting, mail routing or policy lookup. The Postfix socketmap client expects TCP endpoint names of the form inet:host:port:name, or UNIX-domain endpoints of the form unix:pathname:name. In both cases, name specifies the name field in a socketmap client request (see "REQUEST FORMAT" below).

History

Socketmap support was introduced with Postfix version 2.10. The socketmap protocol was published with Sendmail v8.13.

License

The Secure Mailer license must be distributed with this software.

Name

socketmap_table - Postfix socketmap table lookup client

Protocol

Socketmaps use a simple protocol: the client sends one request, and the server sends one reply. Each request and each reply are sent as one netstring object.

Protocol Limits

The Postfix socketmap client requires that replies are no longer than 100000 bytes (not including the netstring encapsulation). This limit can be changed with the socketmap_max_reply_size configuration parameter (Postfix 3.10 and later). The Postfix socketmap client enforces a 100s time limit to connect to a socketmap server, to send a request, and to receive a reply. It closes an idle connection after 10s, and closes an active connection after 100s. These limits are not (yet) configurable.

Readme Files

Use "postconfreadme_directory" or "postconfhtml_directory" to locate this information. DATABASE_README, Postfix lookup table overview

Reply Format

Replies must have the following form: OK<space>data The requested data was found. NOTFOUND<space> The requested data was not found. TEMP<space>reasonTIMEOUT<space>reasonPERM<space>reason The request failed. The reason, if non-empty, is descriptive text.

Request Format

The socketmap protocol supports only the lookup request. The request has the following form: name<space>key Search the named socketmap for the specified key. 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.

Security

This map cannot be used for security-sensitive information, because neither the connection nor the server are authenticated.

See Also

https://cr.yp.to/proto/netstrings.txt, netstring definition postconf(1), Postfix supported lookup tables 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

Synopsis

postmap-q"string"socketmap:inet:host:port:namepostmap-q"string"socketmap:unix:pathname:namepostmap-q-socketmap:inet:host:port:name<inputfilepostmap-q-socketmap:unix:pathname:name<inputfile

See Also