The scache(8) server maintains a shared multi-connection
cache. This information can be used by, for example, Postfix
SMTP clients or other Postfix delivery agents.
The connection cache is organized into logical destination
names, physical endpoint names, and connections.
As a specific example, logical SMTP destinations specify
(transport, domain, port), and physical SMTP endpoints
specify (transport, IP address, port). An SMTP connection
may be saved after a successful mail transaction.
In the general case, one logical destination may refer to
zero or more physical endpoints, one physical endpoint may
be referenced by zero or more logical destinations, and
one endpoint may refer to zero or more connections.
The exact syntax of a logical destination or endpoint name
is application dependent; the scache(8) server does
not care. A connection is stored as a file descriptor together
with application-dependent information that is needed to
re-activate a connection object. Again, the scache(8)
server is completely unaware of the details of that
information.
All information is stored with a finite time to live (ttl).
The connection cache daemon terminates when no client is
connected for max_idle time units.
This server implements the following requests:
-
- save_endp ttl endpoint endpoint_properties file_descriptor
-
Save the specified file descriptor and connection property data
under the specified endpoint name. The endpoint properties
are used by the client to re-activate a passivated connection
object.
-
- find_endp endpoint
-
Look up cached properties and a cached file descriptor for the
specified endpoint.
-
- save_dest ttl destination destination_properties endpoint
-
Save the binding between a logical destination and an
endpoint under the destination name, together with destination
specific connection properties. The destination properties
are used by the client to re-activate a passivated connection
object.
-
- find_dest destination
-
Look up cached destination properties, cached endpoint properties,
and a cached file descriptor for the specified logical destination.