INN commit: trunk (23 files)
INN Commit
rra at isc.org
Thu Dec 24 13:59:21 UTC 2009
Date: Thursday, December 24, 2009 @ 05:59:21
Author: iulius
Revision: 8858
Mention new RFCs references:
974 -> 5321 (SMTP)
822 and 2822 -> 5322 (mail)
2373 -> 4291 (IPv6)
2553 -> 3493 (IPv6 socket)
2060 -> 3501 (IMAP)
2279 -> 3629 (UTF-8)
Modified:
trunk/doc/man/dbz.3
trunk/doc/man/libinn.3
trunk/doc/pod/convdate.pod
trunk/doc/pod/innbind.pod
trunk/doc/pod/innd.pod
trunk/doc/pod/install.pod
trunk/doc/pod/tdx-util.pod
trunk/expire/convdate.c
trunk/expire/makehistory.c
trunk/frontends/inews.c
trunk/frontends/mailpost.in
trunk/frontends/sm.c
trunk/include/inn/libinn.h
trunk/include/portable/socket.h
trunk/innd/art.c
trunk/lib/date.c
trunk/lib/uwildmat.c
trunk/lib/wire.c
trunk/nnrpd/post.c
trunk/storage/expire.c
trunk/storage/overdata.c
trunk/storage/tradspool/tradspool.c
trunk/tests/lib/date-t.c
-------------------------------+
doc/man/dbz.3 | 4 ++--
doc/man/libinn.3 | 2 +-
doc/pod/convdate.pod | 6 +++---
doc/pod/innbind.pod | 4 ++--
doc/pod/innd.pod | 2 +-
doc/pod/install.pod | 2 +-
doc/pod/tdx-util.pod | 4 ++--
expire/convdate.c | 4 ++--
expire/makehistory.c | 4 ++--
frontends/inews.c | 2 +-
frontends/mailpost.in | 4 ++--
frontends/sm.c | 2 +-
include/inn/libinn.h | 4 ++--
include/portable/socket.h | 4 ++--
innd/art.c | 4 ++--
lib/date.c | 32 ++++++++++++++++----------------
lib/uwildmat.c | 2 +-
lib/wire.c | 2 +-
nnrpd/post.c | 6 +++---
storage/expire.c | 2 +-
storage/overdata.c | 2 +-
storage/tradspool/tradspool.c | 2 +-
tests/lib/date-t.c | 12 ++++++------
23 files changed, 56 insertions(+), 56 deletions(-)
Modified: doc/man/dbz.3
===================================================================
--- doc/man/dbz.3 2009-12-24 12:08:00 UTC (rev 8857)
+++ doc/man/dbz.3 2009-12-24 13:59:21 UTC (rev 8858)
@@ -294,8 +294,8 @@
with a key already in the database.
The user is responsible for avoiding this.
.PP
-The RFC822 case mapper implements only a first approximation to the
-hideously-complex RFC822 case rules.
+The RFC5322 case mapper implements only a first approximation to the
+hideously-complex RFC5322 case rules.
.PP
.I Dbz
no longer tries to be call-compatible with
Modified: doc/man/libinn.3
===================================================================
--- doc/man/libinn.3 2009-12-24 12:08:00 UTC (rev 8857)
+++ doc/man/libinn.3 2009-12-24 13:59:21 UTC (rev 8858)
@@ -164,7 +164,7 @@
stuff <address> --> address
.fi
.RE
-The transformations are simple, based on RFC\ 1036 which limits the format
+The transformations are simple, based on RFC\ 5536 which limits the format
of the header.
.PP
.I HeaderFind
Modified: doc/pod/convdate.pod
===================================================================
--- doc/pod/convdate.pod 2009-12-24 12:08:00 UTC (rev 8857)
+++ doc/pod/convdate.pod 2009-12-24 13:59:21 UTC (rev 8858)
@@ -1,6 +1,6 @@
=head1 NAME
-convdate - Convert to/from S<RFC 2822> dates and seconds since epoch
+convdate - Convert to/from S<RFC 5322> dates and seconds since epoch
=head1 SYNOPSIS
@@ -10,7 +10,7 @@
B<convdate> translates the date/time strings given on the command line,
outputting the results one to a line. The input can either be a date in
-S<RFC 2822> format (accepting the variations on that format that innd(8) is
+S<RFC 5322> format (accepting the variations on that format that innd(8) is
willing to accept), or the number of seconds since epoch (if B<-c> is
given). The output is either ctime(3) results, the number of seconds
since epoch, or a Usenet Date: header, depending on the options given.
@@ -50,7 +50,7 @@
=item B<-s>
-Pass each given date to the S<RFC 2822> date parser and print the results of
+Pass each given date to the S<RFC 5322> date parser and print the results of
ctime(3) (or a Date: header if B<-d> is given). This is the default
behavior.
Modified: doc/pod/innbind.pod
===================================================================
--- doc/pod/innbind.pod 2009-12-24 12:08:00 UTC (rev 8857)
+++ doc/pod/innbind.pod 2009-12-24 13:59:21 UTC (rev 8858)
@@ -152,8 +152,8 @@
=item invalid IPv6 address %s in %s
(Fatal) The IPv6 address specified in the given command-line option could
-not be parsed by inet_pton(3). IPv6 addresses should be specified in S<RFC
-2373> format (1080:0:0:0:8:800:200C:417A or 1080::8:800:200C:417A).
+not be parsed by inet_pton(3). IPv6 addresses should be specified in
+S<RFC 4291> format (1080:0:0:0:8:800:200C:417A or 1080::8:800:200C:417A).
=item invalid command-line argument %s
Modified: doc/pod/innd.pod
===================================================================
--- doc/pod/innd.pod 2009-12-24 12:08:00 UTC (rev 8857)
+++ doc/pod/innd.pod 2009-12-24 13:59:21 UTC (rev 8858)
@@ -82,7 +82,7 @@
Only applies when INN has been built with IPv6 support. Normally B<innd>
binds to all local IP addresses (unless I<bindaddress6> is set in
F<inn.conf>). If this option is given, it specifies the IPv6 address that
-INN should bind to. The IPv6 address must be in colon-separated S<RFC 2373>
+INN should bind to. The IPv6 address must be in colon-separated S<RFC 4291>
format (C<n:n:n:n:n:n:n:n>).
If this option is specified, it's the same as setting I<bindaddress6> in
Modified: doc/pod/install.pod
===================================================================
--- doc/pod/install.pod 2009-12-24 12:08:00 UTC (rev 8857)
+++ doc/pod/install.pod 2009-12-24 13:59:21 UTC (rev 8858)
@@ -944,7 +944,7 @@
For more information on B<imapfeed>, look at the
F<innfeed/imap_connection.c> file. For more information on IMAP in general,
-see S<RFC 2060>.
+see S<RFC 3501>.
Finally, there is a special entry for controlchan(8), which processes
newsgroup control messages, that should always be in F<newsfeeds> unless
Modified: doc/pod/tdx-util.pod
===================================================================
--- doc/pod/tdx-util.pod 2009-12-24 12:08:00 UTC (rev 8857)
+++ doc/pod/tdx-util.pod 2009-12-24 13:59:21 UTC (rev 8858)
@@ -161,9 +161,9 @@
end of each entry will be four additional pieces of data: the article
number according to the index file for that group labelled with
C<Article:>, the storage API token for that article labelled with
-C<Token:>, the arrival date for that article on the server in S<RFC 822> date
+C<Token:>, the arrival date for that article on the server in S<RFC 5322> date
format labelled with C<Arrived:>, and the expiration date for that article
-(from the Expires header) in S<RFC 822> date format if there is any, labelled
+(from the Expires header) in S<RFC 5322> date format if there is any, labelled
with C<Expires:>.
If this option is given, the B<-n> option must also be given to specify
Modified: expire/convdate.c
===================================================================
--- expire/convdate.c 2009-12-24 12:08:00 UTC (rev 8857)
+++ expire/convdate.c 2009-12-24 13:59:21 UTC (rev 8858)
@@ -16,7 +16,7 @@
convdate [-dl] -c [time ...]\n\
convdate [-dl] [-s] [date ...]\n\
\n\
-convdate -n converts a date in RFC 2822 format to the number of seconds\n\
+convdate -n converts a date in RFC 5322 format to the number of seconds\n\
since epoch. convdate -s does the same, but converts to a date string.\n\
convdate -c converts seconds since epoch to a date string. The default\n\
output is the output of ctime (normally the same format as returned by the\n\
@@ -100,7 +100,7 @@
seconds = (time_t) atol(date);
}
} else {
- seconds = parsedate_rfc2822_lax(date);
+ seconds = parsedate_rfc5322_lax(date);
if (seconds == (time_t) -1) {
warn("can't convert \"%s\"", date);
return false;
Modified: expire/makehistory.c
===================================================================
--- expire/makehistory.c 2009-12-24 12:08:00 UTC (rev 8857)
+++ expire/makehistory.c 2009-12-24 13:59:21 UTC (rev 8858)
@@ -727,7 +727,7 @@
} else {
buffer_set(&buffer, Datep->Header, Datep->HeaderLength);
buffer_append(&buffer, NUL, 1);
- Posted = parsedate_rfc2822_lax(buffer.data);
+ Posted = parsedate_rfc5322_lax(buffer.data);
if (Posted == (time_t) -1)
Posted = Arrived;
}
@@ -735,7 +735,7 @@
if (Expp->HasHeader) {
buffer_set(&buffer, Expp->Header, Expp->HeaderLength);
buffer_append(&buffer, NUL, 1);
- Expires = parsedate_rfc2822_lax(buffer.data);
+ Expires = parsedate_rfc5322_lax(buffer.data);
if (Expires == (time_t) -1)
Expires = 0;
}
Modified: frontends/inews.c
===================================================================
--- frontends/inews.c 2009-12-24 12:08:00 UTC (rev 8857)
+++ frontends/inews.c 2009-12-24 13:59:21 UTC (rev 8858)
@@ -618,7 +618,7 @@
/* Followup-To; checked with Newsgroups. */
/* Check Expires. */
- if (HDR(_expires) && parsedate_rfc2822_lax(HDR(_expires)) == -1)
+ if (HDR(_expires) && parsedate_rfc5322_lax(HDR(_expires)) == -1)
die("cannot parse \"%s\" as an expiration date", HDR(_expires));
/* References; left alone. */
Modified: frontends/mailpost.in
===================================================================
--- frontends/mailpost.in 2009-12-24 12:08:00 UTC (rev 8857)
+++ frontends/mailpost.in 2009-12-24 13:59:21 UTC (rev 8858)
@@ -526,8 +526,8 @@
#
-# Take 822-format name (either "comment <addr> comment" or "addr (comment)")
-# and return in always-qualified 974-format ("addr (comment)").
+# Take RFC-5322-format name (either "comment <addr> comment" or "addr (comment)")
+# and return in always-qualified RFC-5321-format ("addr (comment)").
#
sub fix_sender_addr {
my ($address) = @_;
Modified: frontends/sm.c
===================================================================
--- frontends/sm.c 2009-12-24 12:08:00 UTC (rev 8857)
+++ frontends/sm.c 2009-12-24 13:59:21 UTC (rev 8858)
@@ -86,7 +86,7 @@
if (end == NULL)
die("cannot find end of Expires header");
expires = xstrndup(start, end - start);
- handle.expires = parsedate_rfc2822_lax(expires);
+ handle.expires = parsedate_rfc5322_lax(expires);
free(expires);
if (handle.expires == (time_t) -1)
handle.expires = 0;
Modified: include/inn/libinn.h
===================================================================
--- include/inn/libinn.h 2009-12-24 12:08:00 UTC (rev 8857)
+++ include/inn/libinn.h 2009-12-24 13:59:21 UTC (rev 8858)
@@ -100,8 +100,8 @@
extern char * Glom(char **av);
extern bool makedate(time_t, bool local, char *buff, size_t buflen);
extern time_t parsedate_nntp(const char *, const char *, bool local);
-extern time_t parsedate_rfc2822(const char *);
-extern time_t parsedate_rfc2822_lax(const char *);
+extern time_t parsedate_rfc5322(const char *);
+extern time_t parsedate_rfc5322_lax(const char *);
Modified: include/portable/socket.h
===================================================================
--- include/portable/socket.h 2009-12-24 12:08:00 UTC (rev 8857)
+++ include/portable/socket.h 2009-12-24 13:59:21 UTC (rev 8858)
@@ -52,8 +52,8 @@
# define INADDR_LOOPBACK 0x7f000001UL
#endif
-/* Defined by RFC 2553, used to store a generic address. Note that this
- doesn't do the alignment mangling that RFC 2553 does; it's not clear if
+/* Defined by RFC 3493, used to store a generic address. Note that this
+ doesn't do the alignment mangling that RFC 3493 does; it's not clear if
that should be added.... */
#if !HAVE_STRUCT_SOCKADDR_STORAGE
# if HAVE_STRUCT_SOCKADDR_SA_LEN
Modified: innd/art.c
===================================================================
--- innd/art.c 2009-12-24 12:08:00 UTC (rev 8857)
+++ innd/art.c 2009-12-24 13:59:21 UTC (rev 8858)
@@ -1033,7 +1033,7 @@
/* Is article too old? */
/* assumes Date header is required header */
p = HDR(HDR__DATE);
- data->Posted = parsedate_rfc2822_lax(p);
+ data->Posted = parsedate_rfc5322_lax(p);
if (data->Posted == (time_t) -1) {
sprintf(buff, "%d Bad \"Date\" header -- \"%s\"",
ihave ? NNTP_FAIL_IHAVE_REJECT : NNTP_FAIL_TAKETHIS_REJECT,
@@ -1061,7 +1061,7 @@
}
if (HDR_FOUND(HDR__EXPIRES)) {
p = HDR(HDR__EXPIRES);
- data->Expires = parsedate_rfc2822_lax(p);
+ data->Expires = parsedate_rfc5322_lax(p);
if (data->Expires == (time_t) -1)
data->Expires = 0;
}
Modified: lib/date.c
===================================================================
--- lib/date.c 2009-12-24 12:08:00 UTC (rev 8857)
+++ lib/date.c 2009-12-24 13:59:21 UTC (rev 8858)
@@ -16,7 +16,7 @@
/*
** Time constants.
**
-** Do not translate these names. RFC 822 by way of RFC 1036 requires that
+** Do not translate these names. RFC 5322 by way of RFC 5536 requires that
** weekday and month names *not* be translated. This is why we use static
** tables rather than strftime for building dates, to avoid locale
** interference.
@@ -43,7 +43,7 @@
};
/* Non-numeric time zones. Supporting these is required to support the
- obsolete date format of RFC 2822. The military time zones are handled
+ obsolete date format of RFC 5322. The military time zones are handled
separately. */
static const struct {
const char name[4];
@@ -57,7 +57,7 @@
};
/* Additional non-numeric time zones supported because the old parsedate
- parser supported them. These aren't legal in RFC 2822, but are supported
+ parser supported them. These aren't legal in RFC 5322, but are supported
in lax mode. */
static const struct {
const char name[5];
@@ -113,7 +113,7 @@
/*
-** RFC 2822 date parsing rules.
+** RFC 5322 date parsing rules.
*/
/* The data structure to store a rule. The interpretation of the other fields
@@ -188,8 +188,8 @@
/*
** Given a time_t, a flag saying whether to use local time, a buffer, and
-** the length of the buffer, write the contents of a valid RFC 2822 / RFC
-** 1036 Date header into the buffer (provided it's long enough). Returns
+** the length of the buffer, write the contents of a valid RFC 5322 / RFC
+** 5536 Date header into the buffer (provided it's long enough). Returns
** true on success, false if the buffer is too long. Use snprintf rather
** than strftime to be absolutely certain that locales don't result in the
** wrong output. If the time is -1, obtain and use the current time.
@@ -205,7 +205,7 @@
size_t date_length;
const char *tz_name;
- /* Make sure the buffer is large enough. A complete RFC 2822 date with
+ /* Make sure the buffer is large enough. A complete RFC 5322 date with
spaces wherever FWS is required and the optional weekday takes:
1 2 3
@@ -221,7 +221,7 @@
/* Get the current time if the provided time is -1. */
realdate = (date == (time_t) -1) ? time(NULL) : date;
- /* RFC 2822 says the timezone offset is given as [+-]HHMM, so we have to
+ /* RFC 5322 says the timezone offset is given as [+-]HHMM, so we have to
separate the offset into a sign, hours, and minutes. Dividing the
offset by 36 looks like it works, but will fail for any offset that
isn't an even number of hours, and there are half-hour timezones. */
@@ -419,7 +419,7 @@
/*
-** Skip any amount of CFWS (comments and folding whitespace), the RFC 2822
+** Skip any amount of CFWS (comments and folding whitespace), the RFC 5322
** grammar term for whitespace, CRLF pairs, and possibly nested comments that
** may contain escaped parens. We also allow simple newlines since we don't
** always deal with wire-format messages. Note that we do not attempt to
@@ -592,7 +592,7 @@
/*
-** Parse a legacy time zone. This uses the parsing rules in RFC 2822,
+** Parse a legacy time zone. This uses the parsing rules in RFC 5322,
** including assigning an offset of 0 to all single-character military time
** zones due to their ambiguity in practice. Returns the new position in the
** parse stream or NULL if we failed to parse the zone. If the obsolete flag
@@ -634,12 +634,12 @@
/*
-** Parse an RFC 2822 date, accepting the normal and obsolete syntax. Takes a
+** Parse an RFC 5322 date, accepting the normal and obsolete syntax. Takes a
** pointer to the beginning of the date. Returns the translated time in
** seconds since epoch, or (time_t) -1 on error.
*/
time_t
-parsedate_rfc2822(const char *date)
+parsedate_rfc5322(const char *date)
{
const char *p;
int zone_sign;
@@ -719,7 +719,7 @@
return (time_t) -1;
}
- /* Fix up the year, using the RFC 2822 rules. Remember that tm_year
+ /* Fix up the year, using the RFC 5322 rules. Remember that tm_year
stores the year - 1900. */
if (tm.tm_year < 50)
tm.tm_year += 100;
@@ -741,13 +741,13 @@
/*
** Parse a date, accepting a lax syntax that tries to allow for any vaguely
-** RFC-2822-like date that the old parsedate code would accept, allowing for
+** RFC-5322-like date that the old parsedate code would accept, allowing for
** a lot of variation that's seen in Usenet articles. Takes a pointer to the
** date and returns the translated time in seconds since epoch, or (time_t)
** -1 on error.
*/
time_t
-parsedate_rfc2822_lax(const char *date)
+parsedate_rfc5322_lax(const char *date)
{
const char *p, *start;
struct tm tm;
@@ -842,7 +842,7 @@
p = skip_cfws(p);
}
- /* Fix up the year, using the RFC 2822 rules. Remember that tm_year
+ /* Fix up the year, using the RFC 5322 rules. Remember that tm_year
stores the year - 1900. */
if (tm.tm_year < 50)
tm.tm_year += 100;
Modified: lib/uwildmat.c
===================================================================
--- lib/uwildmat.c 2009-12-24 12:08:00 UTC (rev 8857)
+++ lib/uwildmat.c 2009-12-24 13:59:21 UTC (rev 8858)
@@ -52,7 +52,7 @@
** Added support for UTF-8 as the default character set for any high-bit
** characters.
**
-** For more information on UTF-8, see RFC 2279.
+** For more information on UTF-8, see RFC 3629.
**
** Please note that this file is intentionally written so that conditionally
** executed expressions are on separate lines from the condition to
Modified: lib/wire.c
===================================================================
--- lib/wire.c 2009-12-24 12:08:00 UTC (rev 8857)
+++ lib/wire.c 2009-12-24 13:59:21 UTC (rev 8858)
@@ -95,7 +95,7 @@
/*
-** Skip over folding whitespace, as defined by RFC 2822. Takes a pointer to
+** Skip over folding whitespace, as defined by RFC 5322. Takes a pointer to
** where to start skipping and a pointer to the end of the data, and will not
** return a pointer past the end pointer. If skipping folding whitespace
** takes us past the end of data, return NULL.
Modified: nnrpd/post.c
===================================================================
--- nnrpd/post.c 2009-12-24 12:08:00 UTC (rev 8857)
+++ nnrpd/post.c 2009-12-24 13:59:21 UTC (rev 8858)
@@ -381,7 +381,7 @@
HDR_SET(HDR__DATE, datebuff);
}
} else {
- t = parsedate_rfc2822_lax(HDR(HDR__DATE));
+ t = parsedate_rfc5322_lax(HDR(HDR__DATE));
if (t == (time_t) -1)
return "Can't parse Date: header";
if (t > now + DATE_FUZZ)
@@ -443,7 +443,7 @@
/* Sender: is set above. */
/* Check the Expires: header. */
- if (HDR(HDR__EXPIRES) && parsedate_rfc2822_lax(HDR(HDR__EXPIRES)) == -1)
+ if (HDR(HDR__EXPIRES) && parsedate_rfc5322_lax(HDR(HDR__EXPIRES)) == -1)
return "Can't parse Expires: header";
/* References: is left alone. */
@@ -479,7 +479,7 @@
HDR_SET(HDR__INJECTION_DATE, datebuff);
}
} else {
- t = parsedate_rfc2822_lax(HDR(HDR__INJECTION_DATE));
+ t = parsedate_rfc5322_lax(HDR(HDR__INJECTION_DATE));
if (t == (time_t) -1)
return "Can't parse Injection-Date: header";
if (t > now + DATE_FUZZ)
Modified: storage/expire.c
===================================================================
--- storage/expire.c 2009-12-24 12:08:00 UTC (rev 8857)
+++ storage/expire.c 2009-12-24 13:59:21 UTC (rev 8858)
@@ -712,7 +712,7 @@
EXPoverindexdrop++;
return true;
}
- when = parsedate_rfc2822_lax(p);
+ when = parsedate_rfc5322_lax(p);
if (when == (time_t) -1) {
EXPoverindexdrop++;
return true;
Modified: storage/overdata.c
===================================================================
--- storage/overdata.c 2009-12-24 12:08:00 UTC (rev 8857)
+++ storage/overdata.c 2009-12-24 13:59:21 UTC (rev 8858)
@@ -217,7 +217,7 @@
{
const unsigned char *p;
- /* RFC 2822 says that header fields must consist of printable ASCII
+ /* RFC 5322 says that header fields must consist of printable ASCII
characters (characters between 33 and 126, inclusive) excluding colon.
We also allow high-bit characters, just in case, but not DEL. */
p = (const unsigned char *) string;
Modified: storage/tradspool/tradspool.c
===================================================================
--- storage/tradspool/tradspool.c 2009-12-24 12:08:00 UTC (rev 8857)
+++ storage/tradspool/tradspool.c 2009-12-24 13:59:21 UTC (rev 8858)
@@ -1230,7 +1230,7 @@
memcpy(x, expires, p - expires - 1);
x[p - expires - 1] = '\0';
- art->expires = parsedate_rfc2822_lax(x);
+ art->expires = parsedate_rfc5322_lax(x);
if (art->expires == (time_t) -1)
art->expires = 0;
else
Modified: tests/lib/date-t.c
===================================================================
--- tests/lib/date-t.c 2009-12-24 12:08:00 UTC (rev 8857)
+++ tests/lib/date-t.c 2009-12-24 13:59:21 UTC (rev 8858)
@@ -26,7 +26,7 @@
972813600UL /* Sun, 29 Oct 2000 02:00:00 -0800 (PST) */
};
-/* Used to hold dates for testing parsedate_rfc2822. */
+/* Used to hold dates for testing parsedate_rfc5322. */
struct test_date {
const char *date;
time_t result;
@@ -123,7 +123,7 @@
{
time_t seen;
- seen = parsedate_rfc2822(test->date);
+ seen = parsedate_rfc5322(test->date);
ok_time((*n)++, test->result, seen);
}
@@ -132,7 +132,7 @@
{
time_t seen;
- seen = parsedate_rfc2822(test->date);
+ seen = parsedate_rfc5322(test->date);
ok_time((*n)++, -1, seen);
}
@@ -141,7 +141,7 @@
{
time_t seen;
- seen = parsedate_rfc2822_lax(test->date);
+ seen = parsedate_rfc5322_lax(test->date);
ok_time((*n)++, test->result, seen);
}
@@ -166,14 +166,14 @@
now = time(NULL);
status = makedate(-1, false, buff, sizeof(buff));
if (status) {
- result = parsedate_rfc2822(buff);
+ result = parsedate_rfc5322(buff);
diff = difftime(result, now);
}
ok(1, status && diff >= 0 && diff < 10);
now = time(NULL);
status = makedate(-1, true, buff, sizeof(buff));
if (status) {
- result = parsedate_rfc2822(buff);
+ result = parsedate_rfc5322(buff);
diff = difftime(result, now);
}
ok(2, status && diff >= 0 && diff < 10);
More information about the inn-committers
mailing list