Bug Fix Advisory ksh bug fix and enhancement update

Advisory: RHBA-2013:1599-1
Type: Bug Fix Advisory
Severity: N/A
Issued on: 2013-11-20
Last updated on: 2013-11-20
Affected Products: Red Hat Enterprise Linux Desktop (v. 6)
Red Hat Enterprise Linux HPC Node (v. 6)
Red Hat Enterprise Linux Server (v. 6)
Red Hat Enterprise Linux Workstation (v. 6)

Details

Updated ksh packages that fix several bugs and add various enhancements are now
available for Red Hat Enterprise Linux 6.

KornShell (KSH) is a Unix shell developed by AT&T Bell Laboratories, which is
backward-compatible with the Bourne shell (Bash) and includes many features of
the C shell. The most recent version is KSH-93. KornShell complies with the
POSIX.2 standard (IEEE Std 1003.2-1992).

The ksh package has been upgraded to upstream version 20120801, which provides a
number of bug fixes and enhancements over the previous version. (BZ#840568)

This update also fixes the following bugs:

* Previously, the ksh shell did not set any editing mode as default, which
caused various usability problems in interactive mode and with shell
auto-completion. This update sets emacs editing mode as default for new users.
As a result, the usability is significantly improved and the shell
auto-completion works as expected. (BZ#761551)

* Previously, the ksh internal counter of jobs was too small. Consequently, when
a script used a number of subshells in a loop, a counter overflow could occur
causing the ksh shell to terminate unexpectedly with a segmentation fault. This
update modifies ksh to use bigger types for counter variables. As a result, ksh
no longer crashes in the described scenario. (BZ#858263)

* Previously, the ksh shell did not compute an offset for fixed size variables
correctly. As a consequence, when assigning a right-justified variable with a
fixed width to a smaller variable, the new variable could have an incorrect
content. This update applies a patch to fix this bug and the assignment now
proceeds as expected. (BZ#903750)

* Previously, the output of command substitutions was not always redirected
properly. Consequently, the output in a here-document could be lost. This update
fixes the redirection code for command substitutions and the here-document now
contains the output as expected. (BZ#913110)

* Using arrays inside of ksh functions, command aliases, or automatically loaded
functions caused memory leaks to occur. The underlying source code has been
modified to fix this bug and the memory leaks no longer occur in the described
scenario. (BZ#921455, BZ#982142)

* Previously, the ksh SIGTSTP signal handler could trigger another SIGTSTP
signal. Consequently, ksh could enter an infinite loop. This updated version
fixes the SIGTSTP signal processing and ksh now handles the signal without any
problems. (BZ#922851)

* Previously, the ksh shell did not resize the file descriptor list every time
it was necessary. This could lead to memory corruption when several file
descriptors were used. As a consequence, ksh terminated unexpectedly. This
updated version resizes the file descriptor list every time it is needed, and
ksh no longer crashes in the described scenario. (BZ#924440)

* Previously, the ksh shell ignored the "-m" argument specified by the command
line. As a consequence, ksh did not enable monitor mode and the user had to
enable it in a script. With this update, ksh no longer ignores the argument so
that the user is able to enable monitor mode from the command line as expected.
(BZ#960034)

* The ksh shell did not handle I/O redirections from command substitutions
inside a pipeline correctly. Consequently, the output of certain commands could
be lost. With this update, the redirections have been fixed and data is no
longer missing from the command outputs. (BZ#994251)

Users of ksh are advised to upgrade to these updated packages, which fix these
bugs and add these enhancements.


Solution

Before applying this update, make sure all previously-released errata
relevant to your system have been applied.

This update is available via the Red Hat Network. Details on how to
use the Red Hat Network to apply this update are available at
https://access.redhat.com/site/articles/11258

Updated packages

Red Hat Enterprise Linux Desktop (v. 6)

SRPMS:
ksh-20120801-10.el6.src.rpm
File outdated by:  RHBA-2017:1728
    MD5: d04285ee1633ad5b9c0828f0ef47765f
SHA-256: 063b7ec17b4edf9be9d36d002bdd1f72771f08983f1efe30e688402f4e69d610
 
IA-32:
ksh-20120801-10.el6.i686.rpm
File outdated by:  RHBA-2017:1728
    MD5: 004eccb33acc6c80ce4638a12bf66fdf
SHA-256: 79ca957c34b46e0e97f8b96c40526419e1cdaaed9fadd1c73c317a594db72e27
ksh-debuginfo-20120801-10.el6.i686.rpm
File outdated by:  RHBA-2017:1728
    MD5: 1c2a12ec2b3acc5bc63342747da3e010
SHA-256: d620eafe0ead4dbb322b3c67fcbc1465997d620bac55aa26b5fdce31bd367f3f
 
x86_64:
ksh-20120801-10.el6.x86_64.rpm
File outdated by:  RHBA-2017:1728
    MD5: f79426e53ac6c44051eeb1373118dda8
SHA-256: 6613de5a86815781c6d468c89ceab873a3f844ae168e6ae79b9b685c0c620925
ksh-debuginfo-20120801-10.el6.x86_64.rpm
File outdated by:  RHBA-2017:1728
    MD5: 09b758574998324e3e2c727ef097f9d0
SHA-256: 2e64a178617b6dafcb9d1e4faf6ce0e1de234570d3ad2ee089b04282c54fc266
 
Red Hat Enterprise Linux HPC Node (v. 6)

SRPMS:
ksh-20120801-10.el6.src.rpm
File outdated by:  RHBA-2017:1728
    MD5: d04285ee1633ad5b9c0828f0ef47765f
SHA-256: 063b7ec17b4edf9be9d36d002bdd1f72771f08983f1efe30e688402f4e69d610
 
x86_64:
ksh-20120801-10.el6.x86_64.rpm
File outdated by:  RHBA-2017:1728
    MD5: f79426e53ac6c44051eeb1373118dda8
SHA-256: 6613de5a86815781c6d468c89ceab873a3f844ae168e6ae79b9b685c0c620925
ksh-debuginfo-20120801-10.el6.x86_64.rpm
File outdated by:  RHBA-2017:1728
    MD5: 09b758574998324e3e2c727ef097f9d0
SHA-256: 2e64a178617b6dafcb9d1e4faf6ce0e1de234570d3ad2ee089b04282c54fc266
 
Red Hat Enterprise Linux Server (v. 6)

SRPMS:
ksh-20120801-10.el6.src.rpm
File outdated by:  RHBA-2017:1728
    MD5: d04285ee1633ad5b9c0828f0ef47765f
SHA-256: 063b7ec17b4edf9be9d36d002bdd1f72771f08983f1efe30e688402f4e69d610
 
IA-32:
ksh-20120801-10.el6.i686.rpm
File outdated by:  RHBA-2017:1728
    MD5: 004eccb33acc6c80ce4638a12bf66fdf
SHA-256: 79ca957c34b46e0e97f8b96c40526419e1cdaaed9fadd1c73c317a594db72e27
ksh-debuginfo-20120801-10.el6.i686.rpm
File outdated by:  RHBA-2017:1728
    MD5: 1c2a12ec2b3acc5bc63342747da3e010
SHA-256: d620eafe0ead4dbb322b3c67fcbc1465997d620bac55aa26b5fdce31bd367f3f
 
PPC:
ksh-20120801-10.el6.ppc64.rpm
File outdated by:  RHBA-2017:1728
    MD5: b062e2ca5db479b50bf2dfd84883f6f0
SHA-256: 4b4db12464c59f821c9b4cea46b07c7e05d27f13b6ffa371ea0158077cfaeb3e
ksh-debuginfo-20120801-10.el6.ppc64.rpm
File outdated by:  RHBA-2017:1728
    MD5: 82924e472a1645e24941fa169ab39e1e
SHA-256: 22d72e5321ba6a692d325d358e8883f15aed90e9e25adf4722483033fa9e14b5
 
s390x:
ksh-20120801-10.el6.s390x.rpm
File outdated by:  RHBA-2017:1728
    MD5: e8b0a1207f4f1b5d888b0cb9f9ad37ac
SHA-256: b1d91008c4a1545340e20bb2f88095ac51478a9052bcbb003ee35506779c8564
ksh-debuginfo-20120801-10.el6.s390x.rpm
File outdated by:  RHBA-2017:1728
    MD5: 648dc35ab3167cd3ae2dfe91c46cbb3d
SHA-256: 1849f4b46387a1d34e67af9af694b7c0ab524a3c6cd45aba1f15dc4b287f47d0
 
x86_64:
ksh-20120801-10.el6.x86_64.rpm
File outdated by:  RHBA-2017:1728
    MD5: f79426e53ac6c44051eeb1373118dda8
SHA-256: 6613de5a86815781c6d468c89ceab873a3f844ae168e6ae79b9b685c0c620925
ksh-debuginfo-20120801-10.el6.x86_64.rpm
File outdated by:  RHBA-2017:1728
    MD5: 09b758574998324e3e2c727ef097f9d0
SHA-256: 2e64a178617b6dafcb9d1e4faf6ce0e1de234570d3ad2ee089b04282c54fc266
 
Red Hat Enterprise Linux Workstation (v. 6)

SRPMS:
ksh-20120801-10.el6.src.rpm
File outdated by:  RHBA-2017:1728
    MD5: d04285ee1633ad5b9c0828f0ef47765f
SHA-256: 063b7ec17b4edf9be9d36d002bdd1f72771f08983f1efe30e688402f4e69d610
 
IA-32:
ksh-20120801-10.el6.i686.rpm
File outdated by:  RHBA-2017:1728
    MD5: 004eccb33acc6c80ce4638a12bf66fdf
SHA-256: 79ca957c34b46e0e97f8b96c40526419e1cdaaed9fadd1c73c317a594db72e27
ksh-debuginfo-20120801-10.el6.i686.rpm
File outdated by:  RHBA-2017:1728
    MD5: 1c2a12ec2b3acc5bc63342747da3e010
SHA-256: d620eafe0ead4dbb322b3c67fcbc1465997d620bac55aa26b5fdce31bd367f3f
 
x86_64:
ksh-20120801-10.el6.x86_64.rpm
File outdated by:  RHBA-2017:1728
    MD5: f79426e53ac6c44051eeb1373118dda8
SHA-256: 6613de5a86815781c6d468c89ceab873a3f844ae168e6ae79b9b685c0c620925
ksh-debuginfo-20120801-10.el6.x86_64.rpm
File outdated by:  RHBA-2017:1728
    MD5: 09b758574998324e3e2c727ef097f9d0
SHA-256: 2e64a178617b6dafcb9d1e4faf6ce0e1de234570d3ad2ee089b04282c54fc266
 
(The unlinked packages above are only available from the Red Hat Network)

Bugs fixed (see bugzilla for more information)

761551 - set default editing mode to emacs
922851 - exec a script causes a fork bomb when receiving SIGTSTP



These packages are GPG signed by Red Hat for security. Our key and details on how to verify the signature are available from:
https://www.redhat.com/security/team/key/#package

The Red Hat security contact is secalert@redhat.com. More contact details at http://www.redhat.com/security/team/contact/