Received: from pch.mit.edu (PCH.MIT.EDU [18.7.21.90]) by krbdev.mit.edu (8.9.3p2) with ESMTP id OAA27135; Fri, 3 Sep 2004 14:25:04 -0400 (EDT) Received: from pch.mit.edu (localhost [127.0.0.1]) by pch.mit.edu (8.12.8p2/8.12.8) with ESMTP id i83IP4WM022726 for ; Fri, 3 Sep 2004 14:25:04 -0400 (EDT) Received: from pacific-carrier-annex.mit.edu (PACIFIC-CARRIER-ANNEX.MIT.EDU [18.7.21.83]) by pch.mit.edu (8.12.8p2/8.12.8) with ESMTP id i82HpPWM026217 for ; Thu, 2 Sep 2004 13:51:25 -0400 (EDT) Received: from vetch.cs.washington.edu (vetch.cs.washington.edu [128.208.5.76])i82HpKU5016420 for ; Thu, 2 Sep 2004 13:51:21 -0400 (EDT) Received: from vetch.cs.washington.edu (localhost [127.0.0.1]) i82HpKr3065394 for ; Thu, 2 Sep 2004 10:51:20 -0700 (PDT) (envelope-from yenbut@vetch.cs.washington.edu) Message-Id: <200409021751.i82HpKr3065394@vetch.cs.washington.edu> X-Mailer: exmh version 2.7.0 06/18/2004 with nmh-1.0.4 To: krb5-bugs@mit.edu From: Voradesh Yenbut Date: Thu, 02 Sep 2004 10:51:20 -0700 X-Mailman-Approved-At: Fri, 03 Sep 2004 14:24:23 -0400 Subject: A oob bug in krlogin.c X-Beenthere: krb5-bugs-incoming@mit.edu X-Mailman-Version: 2.1 Precedence: list Sender: krb5-bugs-incoming-bounces@mit.edu Errors-To: krb5-bugs-incoming-bounces@mit.edu X-RT-Original-Encoding: iso-8859-1 Content-Length: 812 We occasionally had problem with login banner message not showing up using rlogin. It appears that the banner message is right after an oob data to flush write, but the code, as in an comment in krlogin.c to do "flush before", actually flushes everything in the buffer by incorrectly setting the rcvcnt variable to 0. A patch to krlogin.c of krb5-1.3.4 is included below. ---- Voradesh Yenbut CS Lab Infrastructure, 206 685-0912 Computer Science & Engineering University of Washington --- appl/bsd/krlogin.c 2004/09/01 23:30:53 1.1 +++ appl/bsd/krlogin.c 2004/09/02 00:47:02 @@ -1603,7 +1603,7 @@ /* |n| <= left */ if (n < 0) { left -= (-n); - rcvcnt = 0; + rcvcnt = left; /* flush before, and (-n) bytes */ if (left > 0) memmove(rcvbuf, cp+(-n), left);