Keresztfalvi Gabor <[EMAIL PROTECTED]> writes:

> Hmmm. I found another wierd bug...
> If I start the server with --debug, and I remote exec with something like:
> lsh -p 4711 localhost ls
> then the child dies with SIGSEGV. If I don't want the --debug in the
> server, then everything is fine.

This seems wierd indeed. The _client_ crashes when you give the
--debug flag to the _server_? I've tried it (on Solaris, for now), and
I wasn't able to reproduce it.

> BTW the --debug causes to write this:
> do_exec_shell: Setting up environment.
> do_exec_shell: Environment:
>     '^F,
> ^B'
> I don't think that this is good... :)

It looks bad, but it's not as bad as it appears. It's a bug in the
call to debug() (which has sloppy type checking, as it takes a
variable number of arguments). This patch should fix that:

diff -u -a -r1.7 unix_user.c
--- unix_user.c 2000/04/02 19:33:31     1.7
+++ unix_user.c 2000/04/13 16:42:21
@@ -289,7 +289,7 @@

   debug("do_exec_shell: Environment:\n");
   for (i=0; envp[i]; i++)
-    debug("    '%z'\n", env[i]);
+    debug("    '%z'\n", envp[i]);

 #if USE_LOGIN_DASH_CONVENTION
   if (login)

/Niels

Reply via email to