[2301] in Kerberos_V5_Development
UCB rsh/rlogin fallback code
daemon@ATHENA.MIT.EDU (Ken Hornstein)
Wed Mar 12 01:40:20 1997
To: krbdev@MIT.EDU
Date: Wed, 12 Mar 1997 01:38:37 -0500
From: Ken Hornstein <kenh@cmf.nrl.navy.mil>
The code in rlogin/rsh takes great pains to call the UCB rlogin as:
argv[0] = host
argv[1] = option 1
argv[2] = ...
After actually trying to use this for a while, I think this is wrong.
The basic problem is that this behavior makes the fallback code extremely
flaky, for a couple of reasons:
- Options don't get passed correctly. If you say "rlogin -l kenh host",
then argv[0] ends up as "-l", which makes the rlogin fail.
- If you call the Kerberos rlogin something else, like krlogin, then it
will _never_ work, because it assumes "krlogin" is a host name!
Also, since the Kerberos rlogin doesn't actually support the use of argv[0]
as a host name, I don't see a good reason why the argv list should be
manipulated this way.
I think that when running the fallback code, argv[0] should be set to "rlogin"
or "rsh" as appropriate, and the rest of the argument list should be passed
verbatum. This will at least make the fallback code work in tons of situations
where it doesn't now. What do other people think?
--Ken