!41 update ncurses version to 6.4
From: @yangl777 Reviewed-by: @yanan-rock Signed-off-by: @yanan-rock
This commit is contained in:
commit
5cc981c191
@ -1,81 +0,0 @@
|
|||||||
From 4c9f63c460cb7134f142aa65f6866c175ed77605 Mon Sep 17 00:00:00 2001
|
|
||||||
From: "Thomas E. Dickey" <dickey@invisible-island.net>
|
|
||||||
Date: Sun, 17 Apr 2022 00:27:48 +0000
|
|
||||||
Subject: [PATCH] ncurses 6.3 - patch 20220416
|
|
||||||
|
|
||||||
ncurses/tinfo/alloc_entry.c | 12 +-
|
|
||||||
ncurses/tinfo/read_entry.c | 21 +-
|
|
||||||
2 files changed, 19 insertions(+), 8 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/ncurses/tinfo/alloc_entry.c b/ncurses/tinfo/alloc_entry.c
|
|
||||||
index 0bc93942c..aed739436 100644
|
|
||||||
--- a/ncurses/tinfo/alloc_entry.c
|
|
||||||
+++ b/ncurses/tinfo/alloc_entry.c
|
|
||||||
@@ -48,8 +48,6 @@
|
|
||||||
#define ABSENT_OFFSET -1
|
|
||||||
#define CANCELLED_OFFSET -2
|
|
||||||
|
|
||||||
-#define MAX_STRTAB 4096 /* documented maximum entry size */
|
|
||||||
-
|
|
||||||
static char *stringbuf; /* buffer for string capabilities */
|
|
||||||
static size_t next_free; /* next free character in stringbuf */
|
|
||||||
|
|
||||||
@@ -74,7 +72,7 @@ _nc_init_entry(ENTRY * const tp)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (stringbuf == 0)
|
|
||||||
- TYPE_MALLOC(char, (size_t) MAX_STRTAB, stringbuf);
|
|
||||||
+ TYPE_MALLOC(char, (size_t) MAX_ENTRY_SIZE, stringbuf);
|
|
||||||
|
|
||||||
next_free = 0;
|
|
||||||
|
|
||||||
@@ -111,11 +109,11 @@ _nc_save_str(const char *string)
|
|
||||||
* Cheat a little by making an empty string point to the end of the
|
|
||||||
* previous string.
|
|
||||||
*/
|
|
||||||
- if (next_free < MAX_STRTAB) {
|
|
||||||
+ if (next_free < MAX_ENTRY_SIZE) {
|
|
||||||
result = (stringbuf + next_free - 1);
|
|
||||||
}
|
|
||||||
- } else if (next_free + len < MAX_STRTAB) {
|
|
||||||
- _nc_STRCPY(&stringbuf[next_free], string, MAX_STRTAB);
|
|
||||||
+ } else if (next_free + len < MAX_ENTRY_SIZE) {
|
|
||||||
+ _nc_STRCPY(&stringbuf[next_free], string, MAX_ENTRY_SIZE);
|
|
||||||
DEBUG(7, ("Saved string %s", _nc_visbuf(string)));
|
|
||||||
DEBUG(7, ("at location %d", (int) next_free));
|
|
||||||
next_free += len;
|
|
||||||
diff --git a/ncurses/tinfo/read_entry.c b/ncurses/tinfo/read_entry.c
|
|
||||||
index 41ef0d0aa..66e3d31ee 100644
|
|
||||||
--- a/ncurses/tinfo/read_entry.c
|
|
||||||
+++ b/ncurses/tinfo/read_entry.c
|
|
||||||
@@ -145,6 +145,7 @@ convert_strings(char *buf, char **Strings, int count, int size, char *table)
|
|
||||||
{
|
|
||||||
int i;
|
|
||||||
char *p;
|
|
||||||
+ bool corrupt = FALSE;
|
|
||||||
|
|
||||||
for (i = 0; i < count; i++) {
|
|
||||||
if (IS_NEG1(buf + 2 * i)) {
|
|
||||||
@@ -154,8 +155,20 @@ convert_strings(char *buf, char **Strings, int count, int size, char *table)
|
|
||||||
} else if (MyNumber(buf + 2 * i) > size) {
|
|
||||||
Strings[i] = ABSENT_STRING;
|
|
||||||
} else {
|
|
||||||
- Strings[i] = (MyNumber(buf + 2 * i) + table);
|
|
||||||
- TR(TRACE_DATABASE, ("Strings[%d] = %s", i, _nc_visbuf(Strings[i])));
|
|
||||||
+ int nn = MyNumber(buf + 2 * i);
|
|
||||||
+ if (nn >= 0 && nn < size) {
|
|
||||||
+ Strings[i] = (nn + table);
|
|
||||||
+ TR(TRACE_DATABASE, ("Strings[%d] = %s", i,
|
|
||||||
+ _nc_visbuf(Strings[i])));
|
|
||||||
+ } else {
|
|
||||||
+ if (!corrupt) {
|
|
||||||
+ corrupt = TRUE;
|
|
||||||
+ TR(TRACE_DATABASE,
|
|
||||||
+ ("ignore out-of-range index %d to Strings[]", nn));
|
|
||||||
+ _nc_warning("corrupt data found in convert_strings");
|
|
||||||
+ }
|
|
||||||
+ Strings[i] = ABSENT_STRING;
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
/* make sure all strings are NUL terminated */
|
|
||||||
Binary file not shown.
BIN
ncurses-6.4.tar.gz
Normal file
BIN
ncurses-6.4.tar.gz
Normal file
Binary file not shown.
@ -49,7 +49,7 @@ index 7b02ac2..b64379f 100644
|
|||||||
do
|
do
|
||||||
if [ -d "$lib_check" ]
|
if [ -d "$lib_check" ]
|
||||||
@@ -271,7 +270,6 @@ ENDECHO
|
@@ -271,7 +270,6 @@ ENDECHO
|
||||||
echo $INCS
|
echo "$INCS"
|
||||||
;;
|
;;
|
||||||
--libdir)
|
--libdir)
|
||||||
- echo "${libdir}"
|
- echo "${libdir}"
|
||||||
|
|||||||
@ -1,26 +1,26 @@
|
|||||||
diff --git a/misc/terminfo.src b/misc/terminfo.src
|
diff --git a/misc/terminfo.src b/misc/terminfo.src
|
||||||
index 650428a..855e644 100644
|
index 06d46f0..70e213e 100644
|
||||||
--- a/misc/terminfo.src
|
--- a/misc/terminfo.src
|
||||||
+++ b/misc/terminfo.src
|
+++ b/misc/terminfo.src
|
||||||
@@ -6425,7 +6425,7 @@ rxvt-basic|rxvt terminal base (X Window System),
|
@@ -6698,7 +6698,7 @@ rxvt-basic|rxvt terminal base (X Window System),
|
||||||
enacs=\E(B\E)0, flash=\E[?5h$<100/>\E[?5l, home=\E[H,
|
enacs=\E(B\E)0, flash=\E[?5h$<100/>\E[?5l, home=\E[H,
|
||||||
ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
|
ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
|
||||||
ind=\n, is1=\E[?47l\E=\E[?1l,
|
ind=\n, is1=\E[?47l\E=\E[?1l,
|
||||||
- is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kbs=^H,
|
- is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l, kbs=^H,
|
||||||
+ is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l,
|
+ is2=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;3;4;6l\E[4l,
|
||||||
kcbt=\E[Z, kmous=\E[M, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
|
kcbt=\E[Z, kmous=\E[M, rc=\E8, rev=\E[7m, ri=\EM, rmacs=^O,
|
||||||
rmcup=\E[2J\E[?47l\E8, rmir=\E[4l, rmkx=\E>, rmso=\E[27m,
|
rmir=\E[4l, rmkx=\E>, rmso=\E[27m, rmul=\E[24m,
|
||||||
rmul=\E[24m,
|
rs1=\E>\E[1;3;4;5;6l\E[?7h\E[m\E[r\E[2J\E[H,
|
||||||
@@ -6437,7 +6437,7 @@ rxvt-basic|rxvt terminal base (X Window System),
|
@@ -6709,7 +6709,7 @@ rxvt-basic|rxvt terminal base (X Window System),
|
||||||
%p9%t\016%e\017%;,
|
%p9%t\016%e\017%;,
|
||||||
sgr0=\E[0m\017, smacs=^N, smcup=\E7\E[?47h, smir=\E[4h,
|
sgr0=\E[0m\017, smacs=^N, smir=\E[4h, smkx=\E=, smso=\E[7m,
|
||||||
smkx=\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, use=vt100+enq,
|
smul=\E[4m, tbc=\E[3g, use=xterm+alt47, use=vt100+enq,
|
||||||
- use=rxvt+pcfkeys, use=vt220+cvis, use=vt220+keypad,
|
- use=rxvt+pcfkeys, use=vt220+cvis, use=vt220+keypad,
|
||||||
+ use=rxvt+pcfkeys, use=vt220+cvis, use=vt220+keypad, use=xterm+kbs,
|
+ use=rxvt+pcfkeys, use=vt220+cvis, use=vt220+keypad, use=xterm+kbs,
|
||||||
# Key Codes from rxvt reference:
|
# Key Codes from rxvt reference:
|
||||||
#
|
#
|
||||||
# Note: Shift + F1-F10 generates F11-F20
|
# Note: Shift + F1-F10 generates F11-F20
|
||||||
@@ -8074,7 +8074,7 @@ screen|VT 100/ANSI X3.64 virtual terminal,
|
@@ -8361,7 +8361,7 @@ screen-base|VT 100/ANSI X3.64 virtual terminal (base),
|
||||||
dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
|
dl=\E[%p1%dM, dl1=\E[M, ed=\E[J, el=\E[K, el1=\E[1K,
|
||||||
enacs=\E(B\E)0, flash=\Eg, home=\E[H, hpa=\E[%i%p1%dG,
|
enacs=\E(B\E)0, flash=\Eg, home=\E[H, hpa=\E[%i%p1%dG,
|
||||||
ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
|
ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
|
||||||
@ -29,15 +29,15 @@ index 650428a..855e644 100644
|
|||||||
kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP,
|
kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP,
|
||||||
kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR,
|
kf10=\E[21~, kf11=\E[23~, kf12=\E[24~, kf2=\EOQ, kf3=\EOR,
|
||||||
kf4=\EOS, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~,
|
kf4=\EOS, kf5=\E[15~, kf6=\E[17~, kf7=\E[18~, kf8=\E[19~,
|
||||||
@@ -8087,6 +8087,7 @@ screen|VT 100/ANSI X3.64 virtual terminal,
|
@@ -8374,6 +8374,7 @@ screen-base|VT 100/ANSI X3.64 virtual terminal (base),
|
||||||
smso=\E[3m, smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd,
|
smso=\E[3m, smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd,
|
||||||
E0=\E(B, S0=\E(%p1%c, use=vt220+pcedit,
|
E0=\E(B, S0=\E(%p1%c, use=vt220+pcedit,
|
||||||
use=xterm+alt1049, use=ecma+color, use=vt100+enq,
|
use=xterm+alt1049, use=ecma+color, use=vt100+enq,
|
||||||
+ use=xterm+kbs,
|
+ use=xterm+kbs,
|
||||||
# The bce and status-line entries are from screen 3.9.13 (and require some
|
|
||||||
# changes to .screenrc).
|
screen|VT 100/ANSI X3.64 virtual terminal,
|
||||||
screen-bce|VT 100/ANSI X3.64 virtual terminal with bce,
|
use=screen4,
|
||||||
@@ -8202,6 +8203,7 @@ screen.xterm-r6|screen customized for X11R6 xterm,
|
@@ -8503,6 +8504,7 @@ screen.xterm-r6|screen customized for X11R6 xterm,
|
||||||
# on Solaris because Sun's curses implementation gets confused.
|
# on Solaris because Sun's curses implementation gets confused.
|
||||||
screen.teraterm|disable ncv in teraterm,
|
screen.teraterm|disable ncv in teraterm,
|
||||||
ncv#127,
|
ncv#127,
|
||||||
@ -46,4 +46,5 @@ index 650428a..855e644 100644
|
|||||||
\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u
|
\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u
|
||||||
\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
|
\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
|
||||||
--
|
--
|
||||||
2.33.0
|
2.39.1
|
||||||
|
|
||||||
|
|||||||
18
ncurses.spec
18
ncurses.spec
@ -1,6 +1,6 @@
|
|||||||
Name: ncurses
|
Name: ncurses
|
||||||
Version: 6.3
|
Version: 6.4
|
||||||
Release: 5
|
Release: 1
|
||||||
Summary: Terminal control library
|
Summary: Terminal control library
|
||||||
License: MIT
|
License: MIT
|
||||||
URL: https://invisible-island.net/ncurses/ncurses.html
|
URL: https://invisible-island.net/ncurses/ncurses.html
|
||||||
@ -10,9 +10,8 @@ Patch8: ncurses-config.patch
|
|||||||
Patch9: ncurses-libs.patch
|
Patch9: ncurses-libs.patch
|
||||||
Patch11: ncurses-urxvt.patch
|
Patch11: ncurses-urxvt.patch
|
||||||
Patch12: ncurses-kbs.patch
|
Patch12: ncurses-kbs.patch
|
||||||
Patch13: backport-CVE-2022-29458.patch
|
|
||||||
|
|
||||||
BuildRequires: gcc gcc-c++ gpm-devel pkgconfig
|
BuildRequires: make gcc gcc-c++ gpm-devel pkgconfig
|
||||||
|
|
||||||
Requires: %{name}-base = %{version}-%{release}
|
Requires: %{name}-base = %{version}-%{release}
|
||||||
Requires: %{name}-libs = %{version}-%{release}
|
Requires: %{name}-libs = %{version}-%{release}
|
||||||
@ -121,8 +120,8 @@ for abi in 5 6; do
|
|||||||
[ $progs = yes ] || echo --without-progs
|
[ $progs = yes ] || echo --without-progs
|
||||||
)
|
)
|
||||||
|
|
||||||
make %{?_smp_mflags} libs
|
%make_build libs
|
||||||
[ $progs = yes ] && make %{?_smp_mflags} -C progs
|
[ $progs = yes ] && %make_build -C progs
|
||||||
|
|
||||||
popd
|
popd
|
||||||
done
|
done
|
||||||
@ -202,7 +201,6 @@ xz NEWS
|
|||||||
%files -f terms.term
|
%files -f terms.term
|
||||||
%doc ANNOUNCE AUTHORS
|
%doc ANNOUNCE AUTHORS
|
||||||
%doc c++/README*
|
%doc c++/README*
|
||||||
%{!?_licensedir:%global license %%doc}
|
|
||||||
%license COPYING
|
%license COPYING
|
||||||
%{_bindir}/[cirt]*
|
%{_bindir}/[cirt]*
|
||||||
%{_libdir}/libncurses++*.so.6*
|
%{_libdir}/libncurses++*.so.6*
|
||||||
@ -242,6 +240,12 @@ xz NEWS
|
|||||||
%{_mandir}/man7/*
|
%{_mandir}/man7/*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Feb 02 2023 yanglu <yanglu72@h-partners.com> - 6.4-1
|
||||||
|
- Type:requirement
|
||||||
|
- CVE:NA
|
||||||
|
- SUG:NA
|
||||||
|
- DESC:update ncurses version to 6.4
|
||||||
|
|
||||||
* Thu Nov 10 2022 yanglu <yanglu72@h-partners.com> - 6.3-5
|
* Thu Nov 10 2022 yanglu <yanglu72@h-partners.com> - 6.3-5
|
||||||
- Type:bugfix
|
- Type:bugfix
|
||||||
- CVE:NA
|
- CVE:NA
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user