From mboxrd@z Thu Jan 1 00:00:00 1970 To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> In-reply-to: Your message of "Mon, 21 Apr 2008 10:56:42 EDT." From: Bakul Shah Date: Mon, 21 Apr 2008 12:28:56 -0700 Message-Id: <20080421192856.74E5A5AD6@mail.bitblocks.com> Subject: Re: [9fans] telnet vs. godaddy whois Topicbox-Message-UUID: 96812140-ead3-11e9-9d60-3106f5b1d025 On Mon, 21 Apr 2008 10:56:42 EDT erik quanstrom wrote: ... > bwc points out that godaddy's behavior is very likely a violation of the rfc. I am not convinced any rfc covers this situation - it may be that their tcp layer does the right thing and the bug is at the application level. But in any case setting PSH on a packet with no data serves no real purpose. *BSD, Linux and Windows don't set PSH on such packets either. > it was suggested that the } was prehaps misplaced. i think this is not > correct as the preceeding if modifieds dsize so i believe the ifs need to be > seperate. I meant this: /* Pull out data to send */ bp = nil; if(dsize != 0) { bp = qcopy(s->wq, dsize, sent); if(BLEN(bp) != dsize) { seg.flags |= FIN; dsize--; } if(sent+dsize == sndcnt) seg.flags |= PSH; } Seems clearer to me. And equivalent! I have been running with this change since last Thursday. I don't stress my plan9 machine all that much but replica pulls, ftp, web browsing, nfs etc. have worked fine.