rebase to the newest 1.0.10 version
Resolves: RHEL-45981
This commit is contained in:
parent
b17652de2c
commit
02192eab20
2
.gitignore
vendored
2
.gitignore
vendored
@ -69,3 +69,5 @@ INIT.2010-07-01.tgz
|
||||
/ksh-1.0.6.tar.gz
|
||||
/ksh-1.0.7.tar.gz
|
||||
/ksh-1.0.8.tar.gz
|
||||
/ksh-1.0.9.tar.gz
|
||||
/ksh-1.0.10.tar.gz
|
||||
|
@ -1,62 +0,0 @@
|
||||
From 9eb8532ccacf1cfdb7ba18f51eba68776852ef7c Mon Sep 17 00:00:00 2001
|
||||
From: Vincent Mihalkovic <vmihalko@redhat.com>
|
||||
Date: Thu, 8 Feb 2024 22:10:58 +0100
|
||||
Subject: [PATCH] Re-fix use of strdup on a NULL pointer (re: 9a9da2c2) (#718)
|
||||
|
||||
Thank you @lzaoral for debugging this issue and creating this
|
||||
reproducer:
|
||||
|
||||
$ tty # check that the shell is connected to a pseudoterminal
|
||||
/dev/pts/4
|
||||
$ mkdir /var/tmp/chroottest
|
||||
$ dnf --releasever=39 --installroot=/var/tmp/chroottest install ksh
|
||||
$ echo "/dev/udp/127.0.0.1/514;0;104" |
|
||||
sudo tee /var/tmp/chroottest/etc/ksh_audit
|
||||
$ sudo chroot /var/tmp/chroottest /bin/ksh -lic 'exit 0'
|
||||
(ksh segfaults)
|
||||
|
||||
Analysis: On Linux, ttyname(3)[*] may fail if:
|
||||
|
||||
* EBADF Bad file descriptor.
|
||||
* ENODEV fd refers to a slave pseudoterminal device but the
|
||||
corresponding pathname could not be found [...].
|
||||
* ENOTTY fd does not refer to a terminal device.
|
||||
|
||||
Calling isatty(3) before ttyname(3) only prevents the first and
|
||||
third cases.
|
||||
|
||||
src/cmd/ksh93/edit/history.c: sh_histinit():
|
||||
- To catch the second case, let's call ttyname(2) directly, check
|
||||
for NULL and remove the redundant isatty() call.
|
||||
|
||||
[*] https://man7.org/linux/man-pages/man3/ttyname.3.html
|
||||
|
||||
Cherry-picked-by: Lukáš Zaoral <lzaoral@redhat.com>
|
||||
Upstream-commit: 9eb8532ccacf1cfdb7ba18f51eba68776852ef7c
|
||||
|
||||
---
|
||||
src/cmd/ksh93/edit/history.c | 4 +++-
|
||||
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/cmd/ksh93/edit/history.c b/src/cmd/ksh93/edit/history.c
|
||||
index a7b084e5c16f..25832a59265b 100644
|
||||
--- a/src/cmd/ksh93/edit/history.c
|
||||
+++ b/src/cmd/ksh93/edit/history.c
|
||||
@@ -15,6 +15,7 @@
|
||||
* Johnothan King <johnothanking@protonmail.com> *
|
||||
* hyenias <58673227+hyenias@users.noreply.github.com> *
|
||||
* Govind Kamat <govind_kamat@yahoo.com> *
|
||||
+* Vincent Mihalkovic <vmihalko@redhat.com> *
|
||||
* *
|
||||
***********************************************************************/
|
||||
/*
|
||||
@@ -353,7 +354,8 @@ int sh_histinit(void)
|
||||
if(fd>=0)
|
||||
{
|
||||
fcntl(fd,F_SETFD,FD_CLOEXEC);
|
||||
- hp->tty = sh_strdup(isatty(2)?ttyname(2):"notty");
|
||||
+ const char* tty = ttyname(2);
|
||||
+ hp->tty = sh_strdup(tty?tty:"notty");
|
||||
hp->auditfp = sfnew(NULL,NULL,-1,fd,SF_WRITE);
|
||||
}
|
||||
}
|
10
ksh.spec
10
ksh.spec
@ -3,16 +3,13 @@ Summary: The Original ATT Korn Shell
|
||||
URL: http://www.kornshell.com/
|
||||
License: EPL-2.0
|
||||
Epoch: 3
|
||||
Version: 1.0.8
|
||||
Release: 5%{?dist}
|
||||
Version: 1.0.10
|
||||
Release: 1%{?dist}
|
||||
Source0: https://github.com/ksh93/%{name}/archive/v%{version}/%{name}-%{version}.tar.gz
|
||||
Source1: kshcomp.conf
|
||||
Source2: kshrc.rhs
|
||||
Source3: dotkshrc
|
||||
|
||||
# Re-fix use of strdup on a NULL pointer (RHEL-11982)
|
||||
Patch1: ksh-1.0.8-fix-strdup-on-null.patch
|
||||
|
||||
Conflicts: pdksh
|
||||
Requires: coreutils, diffutils
|
||||
BuildRequires: gcc
|
||||
@ -141,6 +138,9 @@ fi
|
||||
%config(noreplace) %{_sysconfdir}/binfmt.d/kshcomp.conf
|
||||
|
||||
%changelog
|
||||
* Mon Aug 05 2024 Vincent Mihalkovic <vmihalko@redhat.com> - 3:1.0.10-1
|
||||
- new upstream release (RHEL-45981)
|
||||
|
||||
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 3:1.0.8-5
|
||||
- Bump release for June 2024 mass rebuild
|
||||
|
||||
|
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (ksh-1.0.8.tar.gz) = 4284ab98f6055877c0715a8b224eb5a75dc7fa022f38c9ee30d50786e997f70b507ee452fc8bbdfa67649a26e0fdfc8051f7e54ff9f6a0f96e44498757080548
|
||||
SHA512 (ksh-1.0.10.tar.gz) = 055bd2cf188c825ed684e6f95991a70f8b672e31a94a2294b8791de96be7d9dbf49e2d1eddb3490559c15736a2e0f40839529253481f1217e5e134f046cbe41f
|
||||
|
Loading…
Reference in New Issue
Block a user