Table of Contents

NAME

mcxmit - Sender for news via multicast

SYNOPSIS

mcxmit [-h]
mcxmit [-c] [-C] [-d level] [-g grouplist] [-K keyfile]

DESCRIPTION

mcxmit reads stdin to get pathnames that lead to news articles in the spool area, the message id and then opens the appropriate file and transmits the articles via IP-multicast. The multicast group the articles are transmitted to is determined via the -g argument and in conjunction with yawgmoth(8).

The options have the following meaning:

-c
The article should be compressed before sending it to a remote site. Please note that this option can only be used if it has been specially compiled in. See mcntp(8) for more details.
-C
The article should be encrypted before being transferred to a remote site.
-d debug_level
specifies the level of debug information. If debug_level is zero then no debugging output is produced.
-g grouplist
the list of groups that is distributed via this incarnation of mcxmit. This is basically the same as the list of groups that is given in the newsfeeds(5) file.
-K keyfile
Normally mcxmit takes the private key found in the file mcntp_key.priv as the public key with which articles are digitally signed. In order to use a different key, the -K option can be used.

After startup mcxmit contacts a yawgmoth daemon that is running on the local host and tells it the list of groups that it wishes to distribute; as result it receives a multicast group and starts to send on this group. When mcxmit terminates is tries to tell this to yawgmoth so that this can remove the groups from its internal list.

In order to work properly mcxmit needs a special entry in newsfeeds(5):

mcxmit:group_list:Tc,Wnm:mcxmit -g grouplist

This entry tells innd to start the mcxmit process and feed it with the path to the article (relative to the base of the article spool), the message id of the article.

Note that as a result from UDP packets being able at most 64 kBytes in size, articles send via mcxmit can only be as large as 63500 Bytes. This also applies to articles that will be compressed. Mcxmit sorts out larger articles by itself, but to reduce load it might be a good idea to already limit what articles innd offers to mcxmit by adding a <63500 directive to the third field of an entry in newsfeeds(5). The size limit isn't that hard as it might look like; as research has shown that more than 90% of all articles are less than 64 kBytes in size (see http://www.xlink.net/~hwr/mcntp.html).

When exiting, mcxmit writes a statistics line to syslog (with level

news.notice) which looks like this:

mcxmit: 3 received 2 sent 2000 art_bytes 2200 total

The meaning of the fields are:

received
This is the number of articles that were offered to mcxmit on stdin.

sent This is the number of articles that have been sent out to the net. This number can be smaller as received as article lines that we received can refer to articles that are no longer present in the filesystem or that are more than 63500 bytes in size.

art_bytes
The total number of bytes the articles had before adding special headers by mcxmit (i.e. the number of bytes the articles had in spool).

total
The number of bytes that were actually sent out to the net. This can in the case where compression is in use be less than art_bytes.

Statistics are also reported to yawgmoth(8).

EXAMPLES

The following examples show how in practice mcxmit can be called in newsfeeds(5):

de-cast:de.*:Tc,Wnm:mcxmit -g de
Only groups of the de.* hierarchy are distributed

ab-cast:alt.binaries.*:Tc,Wnm,<63500:mcxmit -c -g alt.binaries Articles from alt.binaries will be distributed. The articles will be compressed before transmission. Only articles with less than 63500 bytes in size will be offered to mcxmit

i-cast:internal.*:Tc,Wnm:mcxmit -C -g internal Articles will be crypted before transmission.

FILES

mcntp-key.priv: default private key used to sign outgoing articles.

SEE ALSO

mcntp(8), mcrcv(8), keygen(8), innd(8), yawgmoth(8), newsfeeds(5), udp(4), libz(3), syslogd(8)

HISTORY

BUGS

The hooks for encryption are there, but don't work yet.

Please report all bugs that you find to <mcntp-bugs@pilhuhn.de>


Table of Contents


97/10/06 hwr