Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 14 Jul 2013 23:37:34 +0200
From:      Jilles Tjoelker <jilles@stack.nl>
To:        Eugene Grosbein <eugen@grosbein.net>
Cc:        FreeBSD Stable <freebsd-stable@FreeBSD.org>
Subject:   Re: script(1), cfmakeraw() and Ctrl-Z
Message-ID:  <20130714213734.GB30708@stack.nl>
In-Reply-To: <51E2DC6B.2090605@grosbein.net>
References:  <51E2DC6B.2090605@grosbein.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Jul 15, 2013 at 12:14:19AM +0700, Eugene Grosbein wrote:
> I've noted that commands like "script -qa /tmp/log sleep 100"
> cannot be suspended with Ctrl-Z keys. The reason is call to cfmakeraw()
> in script.c - if I comment it out, Ctrl-Z starts to work as expected.

> portupgrade uses script(1) so build/install process cannot be suspended too.
> (I'm building libreoffice-4.04 now)

> The function cfmakeraw() is used since CVS revision 1.1 when script
> was imported with other "BSD 4.4 Lite Usr.bin Sources".

> Is cfmakeraw() really needed?

The cfmakeraw() call ensures that the processes running within script
get all control characters. For example, you can suspend a job in the
inner shell using Ctrl+Z. This indeed makes it impossible to suspend
script itself.

-- 
Jilles Tjoelker



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130714213734.GB30708>