SMM:08-82
Sendmail Installation and Operation Guide
11:hello there,
Note: neither requests nor replies end with CRLF.
The request consists of the database map name and the lookup key separated by a
space character:
<mapname> ' ' <key>
The server responds with a status indicator and the result (if any):
<status> ' ' <result>
The status indicator is one of the following upper case words:
OK
the key was found, result contains the looked up value
NOTFOUNDthe key was not found, the result is empty
TEMP
a temporary failure occured
TIMEOUT a timeout occured on the server side
PERM
a permanent failure occured
In case of errors (status TEMP, TIMEOUT or PERM) the result field may contain
an explanatory message.
Example replies:
31:OK resolved.address@example.com,
in case of a successful lookup, or:
8:NOTFOUND,
in case the key was not found, or:
55:TEMP this text explains that we had a temporary failure,
in case of a failure.
The socket map uses the same syntax as milters (see Section "X -- Mail Filter
(Milter) Definitions") to specify the remote endpoint, e.g.,
Ksocket mySocketMap inet:12345@127.0.0.1
If multiple socket maps define the same remote endpoint, they will share a single
connection to this endpoint.
Most of these accept as arguments the same optional flags and a filename (or a mapname for
NIS; the filename is the root of the database path, so that ".db" or some other extension appropriate
for the database type will be added to get the actual database name). Known flags are:
-o
Indicates that this map is optional -- that is, if it cannot be opened, no error is
produced, and sendmail will behave as if the map existed but was empty.
-N, -O
If neither -N or -O are specified, sendmail uses an adaptive algorithm to decide
whether or not to look for null bytes on the end of keys. It starts by trying both; if
it finds any key with a null byte it never tries again without a null byte and vice