Invalid 431 response when server is paused
River Tarnell
river at RT.UK.EU.ORG
Sun Jan 1 01:47:35 UTC 2012
Hi,
While working on some news software I noticed something odd from a peer:
Jan 01 01:36:18 INFO: feeder: unit0[2001:470:933e::5]:nntp: expected
msg-id <4efed3fb$0$30390$a8266bb1 at newsreader.readnews.com> but got 431
Expiring process 3697
This server is running:
200 news.unit0.net InterNetNews server INN 2.5.2 ready (transit mode)
The problem seems to be the code for handling a paused server state in
innd/nc.c:
} else if (Mode == OMpaused) {
cp->Check_deferred++;
xasprintf(&buff, "%d %s", NNTP_FAIL_CHECK_DEFER, ModeReason);
ModeReason is set to "Expiring process %ld" while server expiry is
running.
I tested this on my own server and was able to reproduce the problem:
isis# ctlinnd pause 'testing'
Ok
harmony% telnet isis 433
Trying 2a01:348:65::3...
Connected to isis.RT.UK.EU.ORG.
Escape character is '^]'.
200 isis.rt.uk.eu.org InterNetNews server INN 2.5.2 ready (transit mode)
CHECK <a at b>
431 testing
And then:
Jan 01 01:45:02 INFO: feeder: isis[2a01:348:65::3]:nnsp: expected
msg-id <CP-dnS4J7bceqGLTnZ2dnUVZ8tWdnZ2d at brightview.co.uk> but got 431
testing
This behaviour is clearly wrong: 431 should always have the message-id
as the first argument, no matter why it was deferred.
Regards,
--
-- river. | Free Usenet: http://news.rt.uk.eu.org/
Non-Reciprocal Laws of Expectations: | PGP: 2B9CE6F2
Negative expectations yield negative results.
Positive expectations yield negative results.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 4184 bytes
Desc: not available
URL: <https://lists.isc.org/pipermail/inn-workers/attachments/20120101/6ced7900/attachment.bin>
More information about the inn-workers
mailing list