>This issue has actually cropped up again recently in my testing. When I >do use Solaris login (UseLogin yes), a ton of the important environment >variables (like TERM, etc) don't get passed. Is that normal behavior?Looking at the source os session.c it is obvious that when you use login the environment is not passed: execl(LOGIN_PROGRAM, "login", "-h", get_remote_ipaddr(), "-p", "-f", "--", pw->pw_name, NULL); But when the shell is exec'd directly it is: execve(shell, argv, env); Login can accept a list of environment variables in the format VARIABLE=VALUE, but it refuses to accept PATH being passed (a good thing) although this just gives a warning and the logon continues. I did kludge an earlier version to pass the env list in place of the NULL when using login but lost it during a disk cleanup :-( . BTW login ignores any env passed by calling it with an execle. -------------------------------------------------------- Doug Manton, AT&T EMEA Firewall and Security Solutions demanton at att.com -------------------------------------------------------- "If privacy is outlawed, only outlaws will have privacy"
On Thu, Aug 10, 2000 at 05:32:54PM +0100, douglas.manton at uk.ibm.com wrote:> Login can accept a list of environment variables in the format > VARIABLE=VALUE, but it refuses to accept PATH being passed (a good thing) > although this just gives a warning and the logon continues. I did kludge > an earlier version to pass the env list in place of the NULL when using > login but lost it during a disk cleanup :-( . BTW login ignores any env > passed by calling it with an execle.Yes, I started doing this myself also when I got sidetracked. Looking at Tatu Ylonen's ssh, it does the exact same thing (just a NULL), so I'm assuming that this is the correct behavior? So I figured (at least for my environment) it would be better to turn efforts to fixing the control-C issue instead of kludging something else. But I may be mistaken. -Irving
> Yes, I started doing this myself also when I got sidetracked.> Looking at Tatu Ylonen's ssh, it does the exact same thing (just a NULL), > so I'm assuming that this is the correct behavior? So I figured (at > least for my environment) it would be better to turn efforts to fixingthe> control-C issue instead of kludging something else. But I may be > mistaken.Of course the lack of environment means that the DISPLAY variable is left unset -- an annoyance when 20 lusers are trying to forward X11 back from one of our NetView servers and calling me for tech support :-( Doug. -------------------------------------------------------- Doug Manton, AT&T EMEA Firewall and Security Solutions demanton at att.com -------------------------------------------------------- "If privacy is outlawed, only outlaws will have privacy"
On 26-Aug-00 at 02:57:45 Damien Miller wrote:> On Fri, 25 Aug 2000, Gert Doering wrote: >> > > /* NEW: set ctrl-C signal to "default", which is "abort program" */ >> > > signal( SIGINT, SIG_DFL ); >> >> > Yup, I put this in pty.c after line 261. >> > >> > I have tested this with Solaris 7 and Solaris 8 (on sparc >> > systems) and it works fine :-) :-) I also used the new snapshot >> > (openssh-SNAP-20000823) for the tests, so hopefully it could be >> > included for the next release. > > Well found people! > > I think it would be neater to reset this with the other signals. > Can you back out your change and try this patch? >Apologies for the delay in replying - it was a public holiday in the UK yesterday. The new patch works fine under Solaris 7 and 8. Regards, John. ------------------------------------------------------------------------ John Horne, University of Plymouth, UK Tel: +44 (0)1752 233914 E-mail: jhorne at plymouth.ac.uk PGP key available from public key servers