Postfix QMQP server support
===========================

Postfix has preliminary server support for the QMQP protocol, so
that Postfix can be used as a backend for the Ezmlm-idx mailing
list manager. This support includes the qmqp-source and qmqp-sink
programs for protocol stress testing.

Turning on the Postfix QMQP service
===================================

To enable QMQP server support on an existing Postfix system you
have to add the following line to /etc/postfix/master.cf:

628       inet  n       -       n       -       -       qmqpd

A "postfix reload" command is necessary to enable the service.

Postfix QMQP server access control
==================================

By default, the QMQP server does not accept mail from any client.
This is because the QMQP server relays mail to any destination
(the "protocol" has no provision to reject specific recipients).

To authorize QMQP clients, edit /etc/postfix/main.cf and specify
a list of client patterns.

qmqpd_authorized_clients = client, client, ...

Example:

qmqpd_authorized_clients = $mynetworks

A list pattern specifies a host name, a domain name, an internet
address, or a network/mask pattern, where the mask specifies the
number of bits in the network part.  When a pattern specifies a
file name, its contents are substituted for the file name; when a
pattern is a type:name table specification, table lookup is used
instead. This allows you to administer the trusted clients in LDAP
or regular expression maps, both of which are probably overkill.

Patterns are separated by whitespace and/or commas. In order to
reverse the result, precede a non-file name pattern with an
exclamation point (!).

Setting up ezmlm-idx to use Postfix QMQP support
================================================

Note: you still need qmail to feed the messages INTO ezmlm-idx.
Postfix presently only supports distribution of mailing list traffic
FROM ezmlm-idx.

http://www.ezmlm.org/faq-0.40/FAQ-4.html#ss4.19 describes how to
make ezmlm-idx work over QMQP.

The following is based on hearsay. Do not ask Wietse how to make
ezmlm-idx work. Wietse does not have the time to personally install
and play with every mailing list manager.

1 - You must list QMQP servers with numerical IP address.  Hostnames
    do not work. This means you cannot DNS-based load balancing to
    spread the load over multiple QMQP servers.

2 - QMQP support is incomplete with ezmlm-idx-0.40.

  - ezmlm-send will use QMQP if you specify the undocumented -Q
    command-line option in your .qmail-listname file.

  - ezmlm-get will use QMQP if the file qmpqservers/0 exists.

  - ezmlm-moderate does not support QMQP. This is not a problem
    if you only use unmoderated mailing lists.
