Document:   FSC-0070
Date:       15-Jul-94
Revision:   002

             Improving Fidonet/Usenet gating and Dupe Checking

                   Franck Arnaud, Fidonet 2:320/213.666



 Status of this document
 -----------------------

This FSC suggests a proposed standard for the FidoNet(r) community,
and invites discussion and suggestions for improvements. Distribution of
this document is unlimited.

Fido and FidoNet are registered marks of Tom Jennings and Fido Software.


 Introduction
 ------------

The complexity of Usenet/Fidonet gating and the large number of gateways
has led to a non-negligible quantity of duplicates appearing regularly in
both the Usenet and Fidonet worlds. This proposal defines a standard method
for gateway software to deal with conversion of message identifiers between
both worlds, so that we can improve the reliability of Usenet/Fidonet
gateways.

In this document "^" means <control-A> (character 01h).


 History
 -------

Revision 002 adds details and makes the Fidonet to Usenet sheme FTS-0009
compliant.


 Usenet To Fidonet Message Identifier Conversion
 -----------------------------------------------

A major problem is preventing messages gated into Fidonet from RFC822 from
being gated back to Usenet at another gateway with a new message id. The
easy way to solve that is simply to store the RFC message ID in a kludge
line. This kludge line could also allow identifying messages gated from
Usenet (this could be used by message editors to allow private replies to
the nearest uucp gateway for example).

It is proposed that the ^RFCID: kludge is used to store the RFC Message-ID:
in Fidonet messages. Of course, the use of the RFCID kludge doesn't replace
the standard fts-0009 Message-ID:.

      (Usenet)  Message-ID: <[email protected]>
   to (Fido)    ^MSGID: 2:300/400.5 6789fedc
                ^RFCID: [email protected]

Note ^RFCID does not include the Message-ID enclosing "<" and ">".

Then if a gateway finds a ^RFCID line in a Fido message, it will use it in
the Usenet message ID, instead of converting the ^MSGID.


 Fidonet to Usenet Message Identifiers Conversion
 ------------------------------------------------

The dupe checking in Usenet is based on the message ID. Fidonet now has its
own standard message identification standard (fts-0009).

So it would be interesting if the same Fidonet message gated at different
gateways had the same ID in Usenet to help news processing programs in
stopping dupes.

The proposed fido ^MSGID: to RFC1036 Message-ID: conversion method is
defined as below:

The ^MSGID: value (a string) is not parsed and converted as below to the ID
part of Usenet's Message-ID. The Message-ID domain is the fidonet domain,
"fidonet.org" if the gated echomail comes from the Fidonet(tm) network.

To convert the MSGID string, the following rules are applied:
- Alphanumeric (a-z,A-Z,0-9) characters are kept intact (case preserved).
- Non-alphanumeric characters - including the space beetwen the origin
  address and the serial number - are converted to '-'.

Some examples:

   (Fido)   ^MSGID: 2:300/400 12345AbC
to (Usenet) Message-ID: <[email protected]>

   (Fido)   ^MSGID: 15:300/400.50@somenet abcd6789
to (Usenet) Message-ID: <[email protected]>

   (Fido)   ^MSGID: Internet.Domain.org aBcD1234
to (Usenet) Message-ID: <[email protected]>

   (Fido)   ^MSGID: "LZKkoe$1982 98a" 45678bcd
to (Usenet) Message-ID: <[email protected]>