innfeed/connectios.c

Igor Timkin ivt at gamma.ru
Sat May 13 18:40:37 UTC 2000


Two days ago I've upgrade inn-1999-04-14_03-00 to inn-CURRENT-20000510
on my newsfeed.gamma.ru. Today I look news.notice:
May 13 00:51:26 newsfeed innfeed[353]: icl:1 cxnsleep response unexpected : 439
May 13 00:51:35 newsfeed innfeed[353]: nac:3 cxnsleep response unexpected : 439
May 13 00:51:35 newsfeed innfeed[353]: nac:4 cxnsleep response unexpected : 439
May 13 00:51:35 newsfeed innfeed[353]: nac:0 cxnsleep response unexpected : 439
May 13 00:51:35 newsfeed innfeed[353]: nac:7 cxnsleep response unexpected : 439
May 13 00:51:35 newsfeed innfeed[353]: nac:6 cxnsleep response unexpected : 439
May 13 00:51:35 newsfeed innfeed[353]: nac:1 cxnsleep response unexpected : 439
May 13 00:51:36 newsfeed innfeed[353]: nac:5 cxnsleep response unexpected : 439
May 13 00:51:36 newsfeed innfeed[353]: syr:2 cxnsleep response unexpected : 439

ktrace -p 353:
   353 innfeed  GIO   fd 504 read 47 bytes
       "200 NNTPRelay - Welcome to feed.newsfeeds.com\r
       "
   353 innfeed  GIO   fd 504 wrote 13 bytes
       "MODE STREAM\r
       "
   353 innfeed  GIO   fd 504 read 14 bytes
       "203 StreamOK\r
       "
   353 innfeed  GIO   fd 504 wrote 2332 bytes
       "CHECK <8fjebv$2k1$3 at oldforst.unisource.it>\r
        CHECK <391928E0.5570FD76 at aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\
        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\
        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\
        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\
        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\
        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\
        aaaaaaaaaaaaaaaaaaaaa>\r
        CHECK <merlin2-0805000859030001 at 128.228.5.112>\r
        CHECK <391929FB.C2CB753A at aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\
        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\
        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\
        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\
        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\
        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\
        aaaaaaaaaaaaaaaaaaaaa>\r
[...]
       "
   353 innfeed  GIO   fd 504 read 351 bytes
       "438 <8fjebv$2k1$3 at oldforst.unisource.it>\r
        439 <391928E0.5570FD76 at aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\
        aaaaaaaaaaaaaaaaaaaaaaaaaaaa.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\
        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\
        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa>\r
        438 <merlin2-0805000859030001 at 128.228.5.112>\r
       "
[at this point innfeed close this connection]

I have this problem with all peers running NNTPRelay
(newsfeed.berkeley.edu, newsfeed.enteract.com, newsfeed.icl.net,
newspeer1.nac.net, xfer.netnews.com, feed.newsfeeds.com and
news.maxwell.syr.edu). I don't understand why backlog has
such strange message-id. Any case bellow patch againts
439 response for check <messid>.

--- connection.c.OLD	Wed May 10 14:00:51 2000
+++ connection.c	Sat May 13 22:14:29 2000
@@ -2737,9 +2737,22 @@
 
   if (cxn->takeRespHead == NULL) /* peer is confused */
     {
-      syslog (LOG_NOTICE,BAD_RESPONSE,
-              hostPeerName (cxn->myHost),cxn->ident,439) ;
-      cxnSleepOrDie (cxn) ;
+      /* NNTPRelay return 439 for check <messid> if messid is bad */
+      if (cxn->checkRespHead == NULL) /* peer is confused */
+        {
+          syslog (LOG_NOTICE,BAD_RESPONSE,
+                  hostPeerName (cxn->myHost),cxn->ident,439) ;
+          cxnSleepOrDie (cxn) ;
+        }
+      else
+        {
+          cxn->takesRejected++ ;
+          remArtHolder (artHolder, &cxn->checkRespHead, &cxn->articleQTotal) ;
+          if (cxn->articleQTotal == 0)
+            cxnIdle (cxn) ;
+          hostArticleNotWanted (cxn->myHost, cxn, artHolder->article);
+          delArtHolder (artHolder) ;
+        }
     }
   else if (msgid == NULL || strlen (msgid) == 0 ||
            (artHolder = artHolderByMsgId (msgid, cxn->takeRespHead)) == NULL)



More information about the inn-patches mailing list