[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [Patch] Newsgroups support



Hi,

Nick wrote:
> First of all, there is no specification for news, and your
> patch doesn't include one. Major new functionality shouldn't go
> in without a specification of what it sends and why.

Actually, there was some specification before. I extrapolated
from 3.5 of E2E-spec.txt:

===== Beginn =====

Index: E2E-spec.txt
===================================================================
--- E2E-spec.txt        (revision 2)
+++ E2E-spec.txt        (working copy)
@@ -939,21 +939,77 @@
 
 3.5. News
 
-   [XXXX expand this from notes.]
+   The routing type 0x104 corresponds to usenet (newsgroups) delivery.
 
 3.5.1. Formatting: routing information
 
-   [RI must contain 1-3 newsgroups, 0-8 mailboxes, and a subject.]
+   The routing information for a NEWS header MUST contain a 20-octet
+   decoding handle, followed by a variable-width list of newsgroup
+   names.
 
+   This newsgroups list MUST be a list of at least one but no more
+   than three newsgroups, separated by commas ','. Each newsgroup
+   MUST obey the following format:
+
+      NEWSGROUP ::= ATOM DOT ATOM | NEWSGROUP DOT ATOM
+      ATOM ::= ATOMCHAR | ATOM ATOMCHAR
+      ATOMCHAR ::= Any character in the range hex 21 through hex 7E,
+             excluding '[', ']', '(', ')', '<', '>', '@', ',', '.',
+             ';', ':', '\', and '"'.
+      DOT ::= '.' (ASCII hex 2E)
+
+   Software that allows users to send a message to multiple newsgroups
+   SHOULD automatically place the newsgroup names in lexicographical
+   order and eliminate duplicates.
+
 3.5.2. Formatting: message body
 
-   [Headers are followup-to, reply-to, references, from, (in-reply-to?),
-   x-no-archive, (messageid?) ]
+   Header encoding is as described in 3.1.2 above.
+ 
+   The following headers are allowed:
+        "SUBJECT"  (any.  Must be no more than 900 characters long.)
+        "FROM"     (any sequence of printing ASCII characters
+                    excluding '"', '[', ']', and ':'. )
 
+        "IN-REPLY-TO" (an RFC2822 msg-id)
+        "REFERENCES" (a list of RFC2822 msg-ids)
+        "FOLLOWUP-TO" (a single newsgroup name)
+        "X-NO-ARCHIVE" ('yes')
+
+   The message body format is as described in 3.2.2 above.
+
+   Unrecognized or malformatted headers MUST be removed.
+
 3.5.3. Delivery
 
+   To deliver a NEWS message, an exit node that supports the NEWS
+   delivery type SHOULD construct an RFC2822 message as described
+   in 3.2.3 above, additionally setting the 'Newsgroups' line to
+   the contents of the routing information header and the 'To'
+   line to the SMTP mailbox address of a mail2news gateway
+   specified by the exit node operator.
+
+   If a message is sent to multiple newsgroups, those MUST be
+   placed in lexicographical order and duplicates eliminated.
+
+   Implementations SHOULD allow exit node operators to configure
+   additional fields, and to block specific newsgroups.
+
 3.5.4. Server descriptor section
 
+   Servers that support NEWS delivery MAY include a [Delivery/NEWS]
+   section, containing the entry "Version: 1.0".  Other servers
+   MUST NOT include a [Delivery/NEWS] section.
+
+   This section MUST include a "Maximum-size" line, containing the
+   maximum permitted message size in KB (before compression).  Note
+   that because of base64-encoding, actual delivered messages may be
+   longer than this by a factor of ~1.33. The value must be at least
+   "32".  A server MAY drop any message that uncompresses to be
+   longer than this type. It MUST contain an "Allow-From"
+   line, containing 'yes' if the server allows user-supplied from
+   addresses and 'no' if it does not.
+
 A.1. Apendix: versioning and alphas
 
    Today's alpha code does not publish its version as '1.0'; it uses

===== Ende =====

Ciao

Tobias

Attachment: pgpBOqo4wvZjy.pgp
Description: PGP signature