[Pkg-ltsp-devel] Bug#490897: tcsh logins
Vagrant Cascadian
vagrant at freegeek.org
Sun Aug 17 02:59:20 UTC 2008
On Sat, Aug 16, 2008 at 11:29:39PM +0200, Daniel Nilsson wrote:
> On Fri, Aug 15, 2008 at 11:13:37AM -0700, Vagrant Cascadian wrote:
> > On Thu, Aug 14, 2008 at 10:48:21PM +0200, Daniel Nilsson wrote:
> > > On Wed, Aug 13, 2008 at 01:46:14PM -0700, Vagrant Cascadian wrote:
> > patch attached. tested and works for bash, tcsh, zsh and dash with
> > gnome, icewm, and xfce4.
> >
> > if you could please test that patch, i can try and get it into lenny.
> > then i can work on getting it working upstream, too.
>
> Ok, I did some testing with the patch you had attached. What I found
> though was that starting up a new shell on the server just for killing
> $PPID would probably not solve the issue since that would just kill
> the calling shell and not the ssh process which I believe is what the
> intent is here. I'm referring to this portion of the patch.
> cmd[i++] = ";";
> + cmd[i++] = "exec";
> + cmd[i++] = "sh";
> cmd[i++] = "kill";
> cmd[i++] = "-1";
> cmd[i++] = "$PPID";
no probably about it, in my tests, it definitely solved the issue.
because it uses exec, it gets the proper value for $PPID, which should
be the sshd process used to log in (yes, it's an ugly hack, but that's
how it works for now). at least on lenny.
to reproduce: ssh to the server, with a user with the default shell of
tcsh. run "exec /bin/sh". "echo $PPID". the $PPID is the pid of sshd.
there's definitely resistance to applying any of these patches upstream:
http://sourceforge.net/mailarchive/forum.php?thread_name=20080815201358.GF12833%40ryukin.fglan&forum_name=ltsp-developer
one idea is to actually log in using /bin/sh, so that we can have a
known login shell, as supporting multiple incompatible shell syntaxes is
a rather difficult task...
live well,
vagrant
p.s. no need to CC me if you're mailing the bug report or any of the
lists.
More information about the Pkg-ltsp-devel
mailing list