MAILPOST(8) | InterNetNews Documentation | MAILPOST(8) |
mailpost - Feed an e-mail message into a newsgroup
mailpost [-hn] [-a addr] [-b database] [-c wait-time] [-d distribution] [-f addr] [-m mailing-list] [-o output-command] [-p port] [-r addr] [-t tempdir] [-x header[:header...]] [-z header[:header...]] newsgroups
The mailpost program reads a properly formatted e-mail message from stdin and feeds it to inews for posting to a news server. newsgroups is a whitespace-separated list of group names to which to post the article (at least one newsgroup must be specified).
Before feeding the article to inews, it checks that the article has not been seen before, and it changes some header fields (cleaning up some address header fields, removing a few ones like X-Complaints-To and X-Trace, and putting "X-" in front of unknown header fields). The Received and *-To header fields are also altered to prevent spamming the gateway (the name of the news server or the domain name set in fromhost, pathhost and domain in inn.conf are removed).
If the article has been seen before (mailpost records the message-ID of each article it handles), then the article will be dropped with a non-zero error status. Other errors will cause the article to be mailed to the newsmaster (selected at configure time and defaulting to "usenet").
Normally, mailpost is run by sendmail(8) via an alias entry:
local-mail-wreck-bikes: "|<pathbin in inn.conf>/mailpost -b /var/spool/mailpost -t /tmp -d local local.bicycles.racing"
The -b and -t flags are useful to change the directories used by mailpost by default. As a matter of fact, though it is recommended to run mailpost as the news user, it is as often as not run as another user, notably the mail user. Therefore, you should make sure to create and set to be writable by the user that mailpost runs as the directories where to put the database and the temporary files. Also, mailpost must be executable by that user.
Instead of /var/spool/mailpost, the mail spool directory can be specified, or any other directory where the mailpost process has write access.
A common practice to gateway a newsgroup to a mailing-list is to create a moderated newsgroup (running for instance the command "ctlinnd newgroup local.bicycles.racing m") and set the moderation address for this newsgroup in the moderators file in pathetc to the mailing-list address. If you add an -a flag in the above example, then on the one hand, when a message is sent to the mailing-list, mailpost will be run, mark it as approved, and the message will directly reach the newsgroup. On the other hand, when a message is posted to the newsgroup, it normally does not have an Approved header field, so it will be sent (by nnrpd) to the mailing-list address configured in the moderators file, which means the message reaches the mailing-list and, like any other messages posted to the mailing-list, it will be processed by mailpost, approved, and finally reach the newsgroup.
Be sure that the reader connection made by inews to post the article is allowed to post approved articles (see the "A" letter in the access parameter of access blocks in readers.conf).
Make sure the specified location exists and is writable by the user mailpost runs as.
Make sure the specified location exists and is writable by the user mailpost runs as.
By default, known header fields are:
Archive Archived-At Comments Content-* Date Distribution From Injection-Date Keywords List-ID Message-ID MIME-* Organization References Return-Path Sender Subject Summary
By default, removed header fields are:
X-Complaints-To X-Trace
Written by Paul Vixie long ago and then hacked up by James Brister for INN integration. Documentation improved by Julien Elie.
inews(1), inn.conf(5), libinn_uwildmat(3), moderators(5), nnrpd(8), readers.conf(5).
2024-03-31 | INN 2.7.2 |