[systemd-bugs] [Bug 90788] New: systemd-nspawn: return key does not work in some programs

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Sat May 30 11:48:27 PDT 2015


https://bugs.freedesktop.org/show_bug.cgi?id=90788

            Bug ID: 90788
           Summary: systemd-nspawn: return key does not work in some
                    programs
           Product: systemd
           Version: unspecified
          Hardware: Other
                OS: All
            Status: NEW
          Severity: normal
          Priority: medium
         Component: general
          Assignee: systemd-bugs at lists.freedesktop.org
          Reporter: tobias.hunger at gmail.com
        QA Contact: systemd-bugs at lists.freedesktop.org

I have a container with a user set up to run the fish shell.

"machinectl login container" does give me a login prompt and starts fish.
Unfortunately the return key does not do anything in that setup, but Ctrl-J
does work to trigger commands.

Changing the shell to bash helps somewhat: That shell recognizes the return key
as expected. Starting fish from bash does end up with a broken return key
again. A bash started from fish does work.

Other programs are effected as well: Sudo won't accept the return key in the
password prompt, git has similar problems whenever asking something and I am
sure other programs display similar problems. Ctrl-J works in all places I ran
into.

When I use "nsenter <container-leader-PID> --mount --uts --ipc --net" fish as
well as sudo and git work as expected.

Any ideas?

This is stty -a from outside the container:

speed 38400 baud; rows 46; columns 114; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = M-^?;
eol2 = M-^?; swtch = <undef>; start = ^Q;
stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V; flush = ^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

This is stty -a inside the nspawn-container:

speed 38400 baud; rows 46; columns 114; 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; flush = ^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

The difference is AFAICT:
eol, eol2, -icrnl -ixany -imaxbel iutf8 -iexten -echoctl

stty -F /dev/ptmx is identical inside and outside of the container --
but I am not sure whether that is what you were asking in the second
part of your reply.

I tried running "stty eol ^J -F /dev/pts/0" inside the container and
got a SIGSEGV. It works outside the container.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/systemd-bugs/attachments/20150530/5d972ed7/attachment.html>


More information about the systemd-bugs mailing list