Clive D.W. Feather | 18 Apr 2009 11:08

[NNTP] Re: Issue with IHAVE in RFC

Julien LIE said:
> I believe there is a major issue with the handling of the 501 answer code.
> 
> According to RFC 3977, the following schema is correct:
> 
>  [S] IHAVE <a b c
>  [C] 501 Bad Message-ID

Correct.

> However, it breaks at least INN and Diablo:  upon receiving 501, their
> feeder will block, disconnect, reconnect and send again the same IHAVE...

Then they are wrong.

> Thus, implementing RFC 3977 breaks current implementations.

I disagree. If you look at RFC 977, section 2.4.3, you will see the same
rule: a syntax error in *any* command results in a 501.

> Of course, the same goes if I send a message-ID whose length is 251
> (which could more likely occur than "<a b c").

Correct.

> As for IHAVE, the only possible answer here is 435; on no account
> should 501 be sent.

I disagree. 435 means "not wanted", not "invalid syntax".

(Continue reading)

Julien ÉLIE | 18 Apr 2009 12:30
Favicon

[NNTP] Re: Issue with IHAVE in RFC

Hi Clive,

>> Thus, implementing RFC 3977 breaks current implementations.
>
> I disagree. If you look at RFC 977, section 2.4.3, you will see the same
> rule: a syntax error in *any* command results in a 501.

Sure, but RFC 977 defines no syntax for the arguments.  It is difficult
to do something accurate with that.
It even does not state whether quoted message-IDs like <"a b c" <at> domain>
are valid or not (RFC 977 predates RFC 1036, and such quoted message-IDs
are defined in RFC 822).

RFC 3977 explicitly excludes spaces, which was not the case before.

Note that RFC 977 defines commands in 2.3 as a command word followed
by one or more parameters.  And responses in 2.4.2 as a status code
followed by one or more parameters which cannot contain spaces!

I now understand why DNEWS answers only with the first parameter:

CHECK a b
438 a article not wanted - Missing opening angle bracket

>> As for IHAVE, the only possible answer here is 435; on no account
>> should 501 be sent.
>
> I disagree. 435 means "not wanted", not "invalid syntax".

Not if RFC 977, in the absence of ABNF syntax, does not treat the
(Continue reading)


Gmane