[haiku-bugs] Re: [Haiku] #3164: Bug in terminal when using curses app over ssh

  • From: "siarzhuk" <trac@xxxxxxxxxxxx>
  • Date: Fri, 08 Feb 2013 21:16:07 -0000

#3164: Bug in terminal when using curses app over ssh
-------------------------------------+---------------------------
   Reporter:  noisetonepause         |      Owner:  siarzhuk
       Type:  bug                    |     Status:  assigned
   Priority:  normal                 |  Milestone:  R1
  Component:  Applications/Terminal  |    Version:  R1/pre-alpha1
 Resolution:                         |   Keywords:  gci2011
 Blocked By:                         |   Blocking:
Has a Patch:  0                      |   Platform:  All
-------------------------------------+---------------------------

Comment (by siarzhuk):

 Replying to [comment:7 bonefish]:
 > In case this issue still exists, please compare the environment
 variables of the telnet and the ssh sessions. It is possible that ssh
 forwards less or more variables from the local host.

 Environment is identical besides of SSH-specific variables. But I found a
 bit more interesting comparing
 {{{
 stty -a
 }}}
 output in the ssh and telnet sessions.

 SSH:
 {{{
 [zzbsd]/home/zharik % stty -a
 [22:07]
 speed 9600 baud; 39 rows; 134 columns;
 lflags: icanon isig -iexten echo echoe -echok -echoke echonl -echoctl
         -echoprt -altwerase -noflsh -tostop -flusho -pendin -nokerninfo
         -extproc
 iflags: -istrip icrnl -inlcr -igncr -ixon -ixoff -ixany imaxbel -ignbrk
         brkint -inpck -ignpar -parmrk
 oflags: opost onlcr -ocrnl tab0 -onocr -onlret
 cflags: cread cs8 -parenb -parodd hupcl -clocal -cstopb -crtscts -dsrflow
         -dtrflow -mdmbuf
 cchars: discard = ^O; dsusp = ^Y; eof = ^D; eol = ^@; eol2 = ^@;
         erase = ^?; erase2 = ^H; intr = ^C; kill = ^U; lnext = ^V;
         min = 1; quit = ^\; reprint = ^R; start = ^S; status = ^T;
         stop = ^Q; susp = ^Z; time = 0; werase = ^W;

 }}}

 Telnet:
 {{{
 [zzbsd]/home/zharik % stty -a
 [22:06]
 speed 9600 baud; 39 rows; 134 columns;
 lflags: icanon isig iexten echo echoe -echok echoke -echonl echoctl
         -echoprt -altwerase -noflsh -tostop -flusho -pendin -nokerninfo
         -extproc
 iflags: -istrip icrnl -inlcr -igncr ixon -ixoff ixany imaxbel -ignbrk
         brkint -inpck -ignpar -parmrk
 oflags: opost onlcr -ocrnl tab0 -onocr -onlret
 cflags: cread cs8 -parenb -parodd hupcl -clocal -cstopb -crtscts -dsrflow
         -dtrflow -mdmbuf
 cchars: discard = ^O; dsusp = ^Y; eof = ^D; eol = <undef>;
         eol2 = <undef>; erase = ^?; erase2 = ^H; intr = ^C; kill = ^U;
         lnext = ^V; min = 1; quit = ^\; reprint = ^R; start = ^Q;
         status = ^T; stop = ^S; susp = ^Z; time = 0; werase = ^W;

 }}}

 Note the difference in '''echonl''' local flag. It is set for ssh session
 but disabled for telnet one. Obviously I have issued '''"stty -echonl"'''
 command in ssh session and the issue is not observed in this session
 anymore. Looks like it was the source of this problem.

 The question, before I dig into it deeply some time in the future, has
 anybody quick ideas how to fix it permanently?

 PS:Note that lot of flags fior telnet and ssh are different and even
 undefined like eol/eol2 for telnet sessions. Is it OK at all?

-- 
Ticket URL: <http://dev.haiku-os.org/ticket/3164#comment:10>
Haiku <http://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: