Listproc 6.0 (and probably later versions) do a few things to stop
your problem of duplicate messages going to a list:
- it keeps the last 500 (I think) Message-IDs sent to each list, and
also sent to listproc itself (administrative requests). If a new
message comes in with the same Message-ID as a previous message,
listproc routes the message to the list owner or system manager.
But some systems give the same Message-ID to more than one message
(yes, this is wrong) and listproc rejects those too... I deal with
that on a user-by-user basis; we have one user with that problem.
- it computes a checksum of each message body sent to a list.
When a new message comes in, it compares the checksum to the last 500
checksums; if there's a match, the message goes to the list owner.
By default, listproc uses the sum(1) utility, which sometimes gives
the same checksum for different message bodies. I hacked listproc
to use the MD5 algorithm; we haven't had any problems since.
You could probably add code like that to your Majordomo. The checksum
would probably be enough. I haven't kept up on the lasest Majordomo
features; there are probably others like this in Majordomo already.
--Jerry, jerry@ora.com
Follow-Ups:
References:
|
|