diff --git a/ksh.spec b/ksh.spec index 8e07b2055e86b95c0d8c72fb3c53ab08067d6abe..ca3b2573e5c846765df05ab8ced6ec086ab84640 100644 --- a/ksh.spec +++ b/ksh.spec @@ -1,6 +1,6 @@ Name: ksh Version: 2020.0.0 -Release: 10 +Release: 11 Summary: The Original ATT Korn Shell License: EPL-1.0 URL: http://www.kornshell.com/ @@ -11,13 +11,14 @@ Source2: kshrc.rhs Source3: dotkshrc Patch1: CVE-2019-14868.patch -Patch2: backport-Fix-handling-of-skipped-directories.patch Patch6000: backport-Fix-hist_nearend.patch Patch6001: backport-functions-with-not-loaded-autoloaded-functions.patch Patch6002: backport-Fix-interactive-restricted-shell-behavior.patch +Patch6003: backport-Fix-handling-of-skipped-directories.patch -Patch9001: skip-some-test.patch +Patch9000: skip-some-test.patch +Patch9001: solve-the-problem-of-dereference-null-return-value-w.patch Provides: /bin/ksh /usr/bin/ksh BuildRequires: meson gcc glibc-devel ed @@ -94,6 +95,9 @@ done %config(noreplace) %{_sysconfdir}/binfmt.d/kshcomp.conf %changelog +* Tue May 7 2024 wangyuhang - 1:2020.0.0-11 +- solve the problem of dereference null return value when moving a job to the head of the linked list and reorder patches + * Tue Dec 6 2022 wangyuhang - 1:2020.0.0-10 - Type:bugfix - CVE:NA diff --git a/solve-the-problem-of-dereference-null-return-value-w.patch b/solve-the-problem-of-dereference-null-return-value-w.patch new file mode 100644 index 0000000000000000000000000000000000000000..2f52837f99254dacc8dc2d897e748c3e20f0c7ef --- /dev/null +++ b/solve-the-problem-of-dereference-null-return-value-w.patch @@ -0,0 +1,32 @@ +From ed22939428be3bd676e4261cf96e144c15d4e686 Mon Sep 17 00:00:00 2001 +From: wangyuhang +Date: Tue, 2 Apr 2024 15:44:35 +0800 +Subject: [PATCH] solve the problem of dereference null return value when + moving a job to the head of the linked list + +--- + src/cmd/ksh93/sh/jobs.c | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/src/cmd/ksh93/sh/jobs.c b/src/cmd/ksh93/sh/jobs.c +index 5ad42c0..a46de01 100644 +--- a/src/cmd/ksh93/sh/jobs.c ++++ b/src/cmd/ksh93/sh/jobs.c +@@ -1105,10 +1105,11 @@ int job_post(Shell_t *shp, pid_t pid, pid_t join) { + val = job.curjobid; + } + // If job to join is not first move it to front. +- if (val) { ++ if (val && job.pwlist) { + pw = job_byjid(val); +- assert(pw); +- if (pw != job.pwlist) { ++ if (!pw) ++ errormsg(SH_DICT, ERROR_warn(0), "the job cannot be found in the linked list"); ++ if (pw && (pw != job.pwlist)) { + job_unlink(pw); + pw->p_nxtjob = job.pwlist; + job.pwlist = pw; +-- +2.33.0 +