INN commit: trunk (doc/pod/news.pod innd/art.c)

INN Commit rra at isc.org
Fri Jul 30 13:43:54 UTC 2010


    Date: Friday, July 30, 2010 @ 06:43:53
  Author: iulius
Revision: 9087

When a header field appeared more than once in an article, it was missing
from the overview data.  OVER/XOVER, as well as HDR/XHDR/XPAT using the
overview, were therefore returning an empty field.  The content of the
first occurrence is now returned, in accordance with RFC 3977.

Modified:
  trunk/doc/pod/news.pod
  trunk/innd/art.c

------------------+
 doc/pod/news.pod |    7 +++++++
 innd/art.c       |   10 ++++++++--
 2 files changed, 15 insertions(+), 2 deletions(-)

Modified: doc/pod/news.pod
===================================================================
--- doc/pod/news.pod	2010-07-17 10:34:39 UTC (rev 9086)
+++ doc/pod/news.pod	2010-07-30 13:43:53 UTC (rev 9087)
@@ -105,6 +105,13 @@
 
 =item *
 
+When a header field appeared more than once in an article, it was missing
+from the overview data.  OVER/XOVER, as well as HDR/XHDR/XPAT using the
+overview, were therefore returning an empty field.  The content of the
+first occurrence is now returned, in accordance with RFC 3977.
+
+=item *
+
 B<cnfsheadconf> now properly recognizes continuation lines in
 F<cycbuff.conf>, that is to say lines ending with a backslash (C<\>).
 Thanks to John S<F. Morse> for the bug report.

Modified: innd/art.c
===================================================================
--- innd/art.c	2010-07-17 10:34:39 UTC (rev 9086)
+++ innd/art.c	2010-07-30 13:43:53 UTC (rev 9087)
@@ -683,8 +683,14 @@
     cp->Data.BytesHeader = header;
   hc = &hc[i];
   if (hc->Length != 0) {
-    /* Duplicated. */
-    hc->Length = -1;
+    /* Duplicated required header.
+     * We do not check every header because they would otherwise disappear
+     * from the overview.
+     * The content of the first occurrence must be returned by HDR and OVER
+     * according to RFC 3977. */
+    if (hp[i].Type == HTreq) {
+      hc->Length = -1;
+    }
   } else {
     /* We need to remove leading and trailing spaces for
      * message-IDs; otherwise, history hashes may not be




More information about the inn-committers mailing list