Made some experiments below. Will continue tonight.

On Tue, Aug 02, 2016 at 02:37:02PM +0300, Dmitry Bogatov wrote:
> 
> control: tags -moreinfo +help
> 
> Seems I managed to somehow reproduce it. I can reproduce only with
> root login. I need some time to accustomize myself to `la-latin1' and
> take a look, what can be different in root and non-root logins.

Awesome. Our first typing lesson here is "asdf ñlkj".

I rarely login as root, prefer "su -c 'command arg'" than "su -". `sudo' is not 
even installed.

Anyway, this root uses /bin/bash, but will change to /bin/sh for this 
experiment, I use rc(1).


> Do you have problems with non-root login?
 
 - 'ñ' is echoed ok with /bin/sh for root and non-root logins, either with 
/bin/login and /lib/fgetty/login1



> Also, in my case problem is a bit another:
> 
>  - everything is perfect with non-root login
> 
>  - /bin/sh as root behaves good
> 
>  - /bin/bash (/bin/rc) behaves bad, and all its childs too.
> 
> > > Also, let me ask you to check some of my wild guesses:
> > >
> > >  - please, invoke `stty -a' in bad and good shells and tell,
> > >    if there is any difference.

Yes: -isig vs. isig. Please, see below:

# In ngetty with /lib/fgetty/login1 non-root /bin/rc:
(arg: 1) echo

; stty-a
speed 38400 baud; rows 48; columns 170; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = 
<undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase 
= ^W;
lnext = ^V; discard = ^O; min = 1; time = 0;
-parenb -parodd -cmspar cs8 hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff 
-iuclc -ixany -imaxbel iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
-isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt 
echoctl echoke -flusho -extproc
;
;

## Reset won't help
; reset
; (arg: 1) echo

; /usr/bin/rc
; echo ñ
ñ
;
; exit
; (arg: 1) echo

; exit


# In ngetty with /bin/login (tty5) non-root /bin/rc:
; echo ñ
ñ
; stty-a
speed 38400 baud; rows 48; columns 170; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = 
<undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase 
= ^W;
lnext = ^V; discard = ^O; min = 1; time = 0;
-parenb -parodd -cmspar cs8 hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff 
-iuclc -ixany -imaxbel iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt 
echoctl echoke -flusho -extproc

# In ngetty with /lib/fgetty/login1 (tty6) root /bin/sh:
# echo ñ
ñ
# stty -a
speed 38400 baud; rows 48; columns 170; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = 
<undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase 
= ^W;
lnext = ^V; discard = ^O; min = 1; time = 0;
-parenb -parodd -cmspar cs8 hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff 
-iuclc -ixany -imaxbel iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
-isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt 
echoctl echoke -flusho -extproc

# In ngetty with /bin/login root /bin/sh:
# echo ñ
ñ
# stty -a
speed 38400 baud; rows 48; columns 170; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = 
<undef>; swtch = <undef>; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase 
= ^W;
lnext = ^V; discard = ^O; min = 1; time = 0;
-parenb -parodd -cmspar cs8 hupcl -cstopb cread -clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff 
-iuclc -ixany -imaxbel iutf8
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt 
echoctl echoke -flusho -extproc


> Still waiting for this experiments.
> 
> /bin/sh works well in all the six shells
> 
> Very intresting. Please try:
>   - absolute clean bash and zsh shells ($HOME/.bashrc, $HOME/.bash_profile, 
> etc)
>   - set something interactive, that does not link to readline (for example,
>     emacs or ghci)
> 
> > >  - please apply following patch and tell, if anything changes
> > I will have to learn how to apply patches first. Please, be patient.
> 
> $ cd /tmp
> $ apt-get source fgetty
> $ save-my-last-email-to /tmp/email
> $ cd fgetty-0.7
> $ quilt import ../tmp/email
> $ dpkg-buildpackage -us -uc
> $ sudo debi

Thank you for this. You saved me hours of investigation. I will definitely try 
it out.

> 
> -- 
> Accept: text/plain, text/x-diff
> Accept-Language: eo,en,ru
> X-Web-Site: sinsekvu.github.io
> 

Reply via email to