usefor-usepro-01 September 2004

[< Prev] [TOC] [ Next >]
7.2.2.  Procedure to be followed by Injecting Agents

   An injecting agent receives proto-articles from posting and followup
   agents. It verifies them, adds headers where required, and then
   either forwards them to a moderator or injects them by passing them
   to serving or relaying agents.  It MUST NOT forward an already
   injected article to a moderator.

   An injecting agent processes articles as follows:

   1. It MUST remove any Injection-Info- or Complaints-To-header already
      present (though it might be useful to copy them to suitable X-
      headers). It SHOULD likewise remove any NNTP-Posting-Host, X-Trace
      or other undocumented tracing header.

   2. It SHOULD verify that the article is from a trusted source.
      However, it MAY allow articles in which headers contain unverified
      email addresses, that is, addresses which are not known to be
      valid for the trusted source, and notably so if they end in
      ".invalid".



   3. It SHOULD reject any article whose Date-header (a-5.1) is more
      than 24 hours into the future (and MAY use a margin less than that
      24 hours).  It MUST, except when reinjecting, reject any article
      with an Injection-Date-header already present (and SHOULD do
      likewise with any NNTP-Posting-Date-header).  It MAY when
      reinjecting, but only if there is no Injection-Date-header
      present, reject any article whose Date-header appears to be stale
      (e.g. more than 72 hours into the past).

   4. It MUST reject any article that does not have the correct
      mandatory headers for a proto-article (or, when reinjecting, all
      the mandatory headers other than Injection-Date), or which
      contains any header that does not have legal contents.  It SHOULD
      reject any article which contains any header deprecated for
      Netnews (a-4.2.1).  It SHOULD reject any article whose
      Newsgroups-header does not contain at least one newsgroup-name for
      an existing group (as listed by its associated serving agent) and
      it MAY reject any newsgroup-name which, although syntactically
      correct, violates a policy restriction established, for some
      (sub-)hierarchy, by an agency with the appropriate authority
      (1.2).  Observe that crossposting to unknown newsgroups is not
      precluded provided at least one of those in the Newsgroups-header
      is listed.

        NOTE: This ability to reject newsgroup-names in breach of
        established policy does not extend to relaying agents, though it
        might be reasonable for posting agents to do it.

   5. If the article is rejected (for reasons given above, or for other
      formatting errors or matters of site policy) the posting agent
      SHOULD be informed (such as via an NNTP 44x response code) that
      posting has failed and the article MUST NOT then be processed
      further.

   6. The Message-ID, Date and From-headers (and their contents) MUST be
      added when not already present (but that situation could not arise
      during reinjection).  A User-Agent-header MAY be added (or an
      already present User-Agent-header MAY be augmented) so as to
      identify the software (e.g. "INN/1.7.2") used by the injecting
      agent.

   7. The injecting agent MUST NOT alter the body of the article in any
      way (including any change of Content-Transfer-Encoding). It MAY,
      except when reinjecting, add other headers not already provided by
      the poster, but SHOULD NOT alter, delete, or reorder any existing
      header, with the specific exception of "tracing" headers such as
      Injection-Info and Complaints-To, which are to be removed as
      already mentioned.  It MAY also, as an interim measure pending
      widespread adoption of the newly introduced (a-5.5) folding
      whitespace, reformat the Newsgroups- and any Followup-To-header by
      removing any such whitespace inserted by the posting agent.

   8. If the Newsgroups-header contains one or more moderated groups and
      the article does NOT contain an Approved-header, the injecting
      agent MUST forward it to a moderator as specified in section 7.2.3
      below.


   9. Otherwise, a Path-header with a tail-entry (a-5.6.3) MUST be
      correctly added if not already present. During reinjection, the
      existing Path-header SHOULD be retained.

   10.It MUST then prepend the path-identity of the injecting agent and
      a '%' path-delimiter (which serves to separate the pre-injection
      and post-injection regions of the Path-content) to the Path-
      content; this SHOULD then be followed by CRLF and WSP if it would
      otherwise result in a line longer than 79 characters.  The
      prepended path-identity MUST be an FQDN mailable address (a-
      5.6.2).  This could result in more that one '%' path-delimiter in
      the case of reinjection. See a-5.6.4 for the significance of the
      various path-delimiters.

   11.An Injection-Info-header (a-6.19) SHOULD be added, identifying the
      trusted source of the article, and a suitable Complaints-To-header
      (a-6.20) MAY be added.  Each injecting agent SHOULD use a
      consistent form of the Injection-Info-header for all articles
      emanating from the same or similar origins.

        NOTE: The step above is the only place in which an Injection-
        Info- or Complaints-To-header is to be created. It follows that
        these headers MUST NOT be created, replaced, changed or deleted
        by any other agent (except during reinjection, in which case
        they will always relate to the latest injection and can, to that
        extent, be regarded as variant headers).

   12.The injecting agent MUST then add an Injection-Date-header (a-5.7)
      if one is not already present, but it MUST NOT alter, or delete,
      an already present Injection-Date-header (and likewise SHOULD NOT
      alter, or delete, an already present NNTP-Posting-Date-header).
      Finally, it forwards the article to one or more relaying or
      serving agents, and the injection process is to be considered
      complete.

        NOTE: The step above is the only place where an Injection-Date-
        header is to be created It follows that it MUST NOT subsequently
        be replaced, changed or deleted by any other agent, even during
        reinjection.
[< Prev] [TOC] [ Next >]
#Diff to first older
NewerOlder
usefor-usepro February 2005
usefor-usepro December 2004
usefor-usepro August 2004
News Article Format and Transmission May 2004
News Article Format and Transmission November 2003
News Article Format June 2003
News Article Format April 2003
News Article Format February 2003
News Article Format August 2002
News Article Format May 2002
News Article Format November 2001
News Article Format July 2001
News Article Format April 2001
News Article Format February 2000

--- ../usefor-usepro-00/Procedure_to_be_followed_by_Injecting_Agents.out          August 2004
+++ ../usefor-usepro-01/Procedure_to_be_followed_by_Injecting_Agents.out          September 2004
@@ -35,7 +35,19 @@
       the mandatory headers other than Injection-Date), or which
       contains any header that does not have legal contents.  It SHOULD
       reject any article which contains any header deprecated for
-      Netnews (a-4.2.1).
+      Netnews (a-4.2.1).  It SHOULD reject any article whose
+      Newsgroups-header does not contain at least one newsgroup-name for
+      an existing group (as listed by its associated serving agent) and
+      it MAY reject any newsgroup-name which, although syntactically
+      correct, violates a policy restriction established, for some
+      (sub-)hierarchy, by an agency with the appropriate authority
+      (1.2).  Observe that crossposting to unknown newsgroups is not
+      precluded provided at least one of those in the Newsgroups-header
+      is listed.
+
+        NOTE: This ability to reject newsgroup-names in breach of
+        established policy does not extend to relaying agents, though it
+        might be reasonable for posting agents to do it.
 
    5. If the article is rejected (for reasons given above, or for other
       formatting errors or matters of site policy) the posting agent
@@ -45,20 +57,28 @@
 
    6. The Message-ID, Date and From-headers (and their contents) MUST be
       added when not already present (but that situation could not arise
-      during reinjection).
+      during reinjection).  A User-Agent-header MAY be added (or an
+      already present User-Agent-header MAY be augmented) so as to
+      identify the software (e.g. "INN/1.7.2") used by the injecting
+      agent.
 
    7. The injecting agent MUST NOT alter the body of the article in any
-      way. It MAY, except when reinjecting, add other headers not
-      already provided by the poster, but SHOULD NOT alter, delete, or
-      reorder any existing header, with the specific exception of
-      "tracing" headers such as Injection-Info and Complaints-To, which
-      are to be removed as already mentioned.
+      way (including any change of Content-Transfer-Encoding). It MAY,
+      except when reinjecting, add other headers not already provided by
+      the poster, but SHOULD NOT alter, delete, or reorder any existing
+      header, with the specific exception of "tracing" headers such as
+      Injection-Info and Complaints-To, which are to be removed as
+      already mentioned.  It MAY also, as an interim measure pending
+      widespread adoption of the newly introduced (a-5.5) folding
+      whitespace, reformat the Newsgroups- and any Followup-To-header by
+      removing any such whitespace inserted by the posting agent.
 
    8. If the Newsgroups-header contains one or more moderated groups and
       the article does NOT contain an Approved-header, the injecting
       agent MUST forward it to a moderator as specified in section 7.2.3
       below.
 
+
    9. Otherwise, a Path-header with a tail-entry (a-5.6.3) MUST be
       correctly added if not already present. During reinjection, the
       existing Path-header SHOULD be retained.
@@ -66,20 +86,36 @@
    10.It MUST then prepend the path-identity of the injecting agent and
       a '%' path-delimiter (which serves to separate the pre-injection
       and post-injection regions of the Path-content) to the Path-
-      content; moreover, that path-identity MUST be an FQDN mailable
-      address. This could result in more that one '%' path-delimiter in
+      content; this SHOULD then be followed by CRLF and WSP if it would
+      otherwise result in a line longer than 79 characters.  The
+      prepended path-identity MUST be an FQDN mailable address (a-
+      5.6.2).  This could result in more that one '%' path-delimiter in
       the case of reinjection. See a-5.6.4 for the significance of the
       various path-delimiters.
 
    11.An Injection-Info-header (a-6.19) SHOULD be added, identifying the
       trusted source of the article, and a suitable Complaints-To-header
-      (a-6.20) MAY be added.
-
-   12.The injecting agent MUST then add an An Injection-Date-header (a-
-      5.7) if one is not already present, but it MUST NOT alter, or
-      remove, an already present Injection-Date-header (and likewise
-      SHOULD NOT alter, or remove, an already present NNTP-Posting-
-      Date-header).  Finally, it forwards the article to one or more
-      relaying or serving agents, and the injection process is to be
-      considered complete.
+      (a-6.20) MAY be added.  Each injecting agent SHOULD use a
+      consistent form of the Injection-Info-header for all articles
+      emanating from the same or similar origins.
+
+        NOTE: The step above is the only place in which an Injection-
+        Info- or Complaints-To-header is to be created. It follows that
+        these headers MUST NOT be created, replaced, changed or deleted
+        by any other agent (except during reinjection, in which case
+        they will always relate to the latest injection and can, to that
+        extent, be regarded as variant headers).
+
+   12.The injecting agent MUST then add an Injection-Date-header (a-5.7)
+      if one is not already present, but it MUST NOT alter, or delete,
+      an already present Injection-Date-header (and likewise SHOULD NOT
+      alter, or delete, an already present NNTP-Posting-Date-header).
+      Finally, it forwards the article to one or more relaying or
+      serving agents, and the injection process is to be considered
+      complete.
+
+        NOTE: The step above is the only place where an Injection-Date-
+        header is to be created It follows that it MUST NOT subsequently
+        be replaced, changed or deleted by any other agent, even during
+        reinjection.
 

Documents were processed to this format by Forrest J. Cavalier III