From e096b86ad65a256023a2eda7300cd43354365854 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Aug 05 2015 16:27:14 +0000 Subject: import ksh-20120801-22.el7_1.2 --- diff --git a/SOURCES/ksh-20140801-diskfull.patch b/SOURCES/ksh-20140801-diskfull.patch new file mode 100644 index 0000000..7276363 --- /dev/null +++ b/SOURCES/ksh-20140801-diskfull.patch @@ -0,0 +1,21 @@ +diff -up ksh-20120801/src/cmd/ksh93/sh/main.c.orig ksh-20120801/src/cmd/ksh93/sh/main.c +--- ksh-20120801/src/cmd/ksh93/sh/main.c.orig 2015-04-29 16:49:11.502958000 -0300 ++++ ksh-20120801/src/cmd/ksh93/sh/main.c 2015-05-08 18:19:55.688776922 -0300 +@@ -423,7 +423,7 @@ static void exfile(register Shell_t *shp + sfsync(shp->outpool); + shp->st.execbrk = shp->st.breakcnt = 0; + /* check for return from profile or env file */ +- if(sh_isstate(SH_PROFILE) && (jmpval==SH_JMPFUN || jmpval==SH_JMPEXIT)) ++ if(sh_isstate(SH_PROFILE) && (jmpval==SH_JMPFUN || jmpval==SH_JMPEXIT || jmpval==SH_JMPERREXIT)) + { + sh_setstate(states); + goto done; +@@ -598,7 +598,7 @@ done: + } + if(jmpval == SH_JMPSCRIPT) + siglongjmp(*shp->jmplist,jmpval); +- else if(jmpval == SH_JMPEXIT) ++ else if(jmpval == SH_JMPEXIT || jmpval == SH_JMPERREXIT) + sh_done(shp,0); + if(fno>0) + sh_close(fno); diff --git a/SPECS/ksh.spec b/SPECS/ksh.spec index eb27d68..fd88f01 100644 --- a/SPECS/ksh.spec +++ b/SPECS/ksh.spec @@ -8,7 +8,7 @@ Group: System Environment/Shells #CPL everywhere else (for KSH itself) License: EPL Version: 20120801 -Release: 22%{?dist}.1 +Release: 22%{?dist}.2 Source0: http://www.research.att.com/~gsf/download/tgz/ast-ksh.%{releasedate}.tgz Source1: http://www.research.att.com/~gsf/download/tgz/INIT.%{releasedate}.tgz Source2: kshcomp.conf @@ -129,6 +129,9 @@ Patch53: ksh-20120801-cdfork.patch # not upstream yet, for ksh <= 2015-04-03, rhbz#1200534 Patch54: ksh-20140801-arraylen.patch +# sent upstream, for ksh <= 2014-09-29, rhbz#1212993 +Patch55: ksh-20140801-diskfull.patch + BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Conflicts: pdksh Requires: coreutils, diffutils, chkconfig @@ -186,6 +189,7 @@ with "sh" (the Bourne Shell). %patch52 -p1 -b .retfix %patch53 -p1 -b .cdfork %patch54 -p1 -b .arraylen +%patch55 -p1 -b .diskfull #/dev/fd test does not work because of mock sed -i 's|ls /dev/fd|ls /proc/self/fd|' src/cmd/ksh93/features/options @@ -311,6 +315,9 @@ fi rm -rf $RPM_BUILD_ROOT %changelog +* Wed Jun 03 2015 Michal Hlavinka - 20120801-22.2 +- ksh crashed when disk was full (#1227420) + * Tue Apr 07 2015 Michal Hlavinka - 20120801-22.1 - using trap DEBUG could cause segmentation fault (#1209507)