!45 [sync] PR-42: solve the problem of dereference null return value when moving a job to the head of the linked list

From: @openeuler-sync-bot 
Reviewed-by: @licunlong 
Signed-off-by: @licunlong
This commit is contained in:
openeuler-ci-bot 2024-05-07 12:26:49 +00:00 committed by Gitee
commit 4218470b97
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
4 changed files with 41 additions and 5 deletions

View File

@ -113,8 +113,8 @@ index 6a07d7c..26f2d43 100644
['attributes'],
+ ['autoload'],
['basic', 90],
['case'],
['comvar'],
['bracket'],
['builtins'],
--
1.8.3.1

View File

@ -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/
@ -15,9 +15,10 @@ Patch1: CVE-2019-14868.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
Patch9000: skip-some-test.patch
Patch9001: backport-Fix-handling-of-skipped-directories.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 <wangyuhang27@huawei.com> - 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
* Fri Dec 2 2022 wangyuhang <wangyuhang27@huawei.com> - 1:2020.0.0-10
- Type:bugfix
- CVE:NA

View File

@ -133,8 +133,8 @@ index 6a07d7c..96ca5bc 100644
['b_times.exp'],
['b_ulimit'],
@@ -49,8 +46,6 @@ all_tests = [
['arrays2'],
['attributes'],
['autoload'],
['basic', 90],
- ['bracket'],
- ['builtins'],

View File

@ -0,0 +1,32 @@
From ed22939428be3bd676e4261cf96e144c15d4e686 Mon Sep 17 00:00:00 2001
From: wangyuhang <wangyuhang27>
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