[krbdev.mit.edu #3852] rlogin client bug.

Gangadhar.M@Sun.COM via RT rt-comment at krbdev.mit.edu
Tue Jun 6 14:41:09 EDT 2006


Hi,

I think this is the correct alias to submit bugs on MIT kerberos. Here 
is one misbehavior I found from rlogin client code.

Problem:
-------
I have a Red Hat v4 client using rlogin to a Sunbox 2.10.
I am using kerberos for authentication.

 From the Red hat rlogin, user logs into the sunbox, he types "stty" in 
the window and
does not get the rows and columns of the current window.

rlogin -x -F phobos
This rlogin session is using encryption for all data transmissions.
Last login: Wed Jan 18 08:44:18 from gplserv.atco.ca
phobos$ stty
speed 38400 baud; -parity
erase = ^h; swtch = <undef>;
brkint -inpck -istrip icrnl -ixany imaxbel onlcr
echo echoe echok echoctl echoke iexten

Should look like:
stty
speed 9600 baud; -parity hupcl
rows = 41; columns = 112; ypixels = 625; xpixels = 1018;
erase = ^h; swtch = <undef>;
-brkint -inpck -istrip ixoff
crt iexten


Evaluation :
---------



I root caused the problem. I have gone through the MIT kerberos 
krlogin.c (krb5-1.4.3/src/appl/bsd/krlogin.c)code.

This code has written in such way the if the protocol is KCMD_NEW_PROTOCOL
it sets the do_inband variable to 1.


   702          if (kcmd_proto == KCMD_NEW_PROTOCOL) {
   703              do_inband = 1;

This causes to ignore urget bytes that will be received through 
'excset'. The below code avoids setting excset descriptor.

  1574          }
  1575          if (!do_inband)
  1576              FD_SET(rem,&excset);
  1577          if (select(rem+1, &readset, &writeset, &excset, 0) > 0 ) {

So you will be able to see the rows and colums information if and only 
if the protocol is not a KCMD_NEW_PROTOCOL.


This can be tested easily on your linux system.

Kerberos Rlogin server (S10)

Kerberos Rlogin client (Redhat system)

On client
# rlogin  -PO server-name.
#stty -a

Here you will be able to see the rows and colums information.

On client
#rlogin -PN server-name.
# stty -a
No information shown

Question:
-------
Observed from the MIT rlogin client code that accepting the urgent data 
is based on the new/old kcmd protocol. Do you think it is the right 
behavior?





More information about the krb5-bugs mailing list