Compare commits
No commits in common. 'cs10' and 'c9' have entirely different histories.
@ -1 +1 @@
|
||||
SOURCES/ncurses-6.4-20240127.tgz
|
||||
SOURCES/ncurses-6.2-20210508.tgz
|
||||
|
@ -1 +1 @@
|
||||
6b945292e3592fc11033437038bf9a72e702a4e5 SOURCES/ncurses-6.4-20240127.tgz
|
||||
85c17000c002ace171fde9f0ee774d4f07819881 SOURCES/ncurses-6.2-20210508.tgz
|
||||
|
@ -0,0 +1,32 @@
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
Version: GnuPG v1.4.12 (GNU/Linux)
|
||||
|
||||
mQGiBD/4r7IRBADFuacEqf9fye+NQSm7xjNP705aq75VrUd2hJyPmSiFUIyQEfc4
|
||||
4GQXGdFg+/Apq4iq/50/8pR8YXOKwP5OE69emEp7IxjST41orGUk5ZwcnlSkaruN
|
||||
WLTe/lN3e0oOIVbYig1lUbU5IxZu03KfNg2DZ9JiZdNBlzlqx1+oFlWFLwCg3awg
|
||||
EfOUfbe4kVxNrsnxaCJYJ38EAMRVyUOfhkm9l0YuiC4ebOHrdmn9jFVW+XZPZDeb
|
||||
8DcyTBNrgvVTnEmrNzVJgOyZIW+uraBVitak+No1kwXvC/i0kZEzYqfG87EdJSfe
|
||||
OV7axIRisiTrcbZdRJ3CBDtGvLqJ9OuGFHPQmntnZfhiwJTR79hepndEQYyV5eQb
|
||||
oQ+aA/0bI+/odyRDefc9HF1EhOcz8E76QP+VlvUfIDUJrmwv/3gLZ968HACOe0DE
|
||||
+bcUockLJxoNwQFwCQPjm5S2+Ba2uY4hRhOA+MResZWlPouoosay2ADfiU7pdBCx
|
||||
nbcLAuezgnZg4jcXvLl1QiAihxaEI2jqgZBnnierWzqRzRZM4LQrVGhvbWFzIERp
|
||||
Y2tleSA8ZGlja2V5QGludmlzaWJsZS1pc2xhbmQubmV0PokBIgQQAQIADAUCTZ7Q
|
||||
ZQUDABJ1AAAKCRCXELibyletfLKrB/sEVLsrCjFTwevbgKSzgCwLf6EhkifktlFB
|
||||
w7/4n9Do1n7/LpgjdMH06YD9RjfSap4tdvEiHpzkpUtCGuzkGc/u4qTMdnWNgFhh
|
||||
oHLhjVh4u72B/NtlgrpDEDrn1bnuZpzWxru4uDJGSgL00jV5b3kf1P07eQaguMC6
|
||||
VeuzFmukv8LiDFhZcCl492nMZxz7vSRgSi8Ce+/Oc4Q+XTWmF5ZMKd5xNLjBdj2P
|
||||
zOABHmDP1aA75grY30vVViPJve+W0h7A3PP9GuugNDkqmdCvTxYeMqiF6Vtv19/N
|
||||
EW4jIvmN7GLOBo5F4RYcE9Fv4lV0xXlfpYwCqY7iAx9jyXgCbKXxiF4EExECAB4F
|
||||
Aj/4r7ICGwMGCwkIBwMCAxUCAwMWAgECHgECF4AACgkQcCNT4Pfkjtt6MQCeKZHo
|
||||
SgACIQk95rWefzSLULcpjxoAnjVet8e1/1indwT/wDDnObDDfM2UiEYEExECAAYF
|
||||
AlZ3yw8ACgkQXd+Pt2iOMaZ0bACfVCFh+GzDCNXmZ3RcmDKjJxW7v4YAn0ApCgiS
|
||||
8tZC2X2ZOs84WwJBIF7vuQENBD/4r7QQBACNOXUR5S3kRSry2IYGr4q0WjdPEh0k
|
||||
oG1UVDhu0RN0Xbd2RnWjXrjYaYXskmCfo8pRwkNSUeFQ7ggRykcAECJTgfB6haHz
|
||||
JP/JoD0BepEpwmkxDlsQaiigcEiDRSHxqEbpDVwfOCwY5o4r1jMVK9IhFevIyWuH
|
||||
WghPO/ASRdF85wADBwP+JFo20ZhpLTkXBppW+bQR7GGHDYnNJpE/o9jev8EaaA9U
|
||||
b1ST2G6T5iT+l1b09rcpGPfsA0ray9/AfH0DTvsxr0ai6ln+uM/TVY7S6vy3MLsq
|
||||
yoJ6n2bfcr2R0B4lnRR34DCycATL9DVdmKf+NRTkvWXOSjTXQtdj0Kp2uYJeFqqI
|
||||
SQQYEQIACQUCP/ivtAIbDAAKCRBwI1Pg9+SO266eAKDZ6zjUkRhpqsJxP6AWnIzR
|
||||
YKoBTwCfcvSmQ7jC1nxJ6OkdrtZJH0znjF0=
|
||||
=0vnF
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
@ -1,42 +0,0 @@
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
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
|
||||
P46cd3aSov0rfNS/zg==
|
||||
=cr15
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
@ -0,0 +1,7 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
Comment: See https://invisible-island.net/public/public.html for info
|
||||
|
||||
iF0EABECAB0WIQTFIEjAwHSP7iJ9R6JwI1Pg9+SO2wUCYJcuTAAKCRBwI1Pg9+SO
|
||||
2wiuAKC5AxaU4uJgBWXGYB+wBhTPeqN90gCgjFGnRECOjhCx54KjVPkTJfuVqxg=
|
||||
=zrbo
|
||||
-----END PGP SIGNATURE-----
|
@ -1,15 +0,0 @@
|
||||
-----BEGIN PGP SIGNATURE-----
|
||||
Comment: See https://invisible-island.net/public/public.html for info
|
||||
|
||||
iQGzBAABCgAdFiEEGYgtkt2kxADCLA1WzCr0RyFnvgMFAmW1oMYACgkQzCr0RyFn
|
||||
vgNOyAwAqrbB41gHtg1iZSuyMeLBoIKMIy/rHgawo3Kt86/pl+3i/bpjGu7uXdpL
|
||||
Z0U7uOk+kyf0QcLVnEYIhna5fJUktar2IaN/diF3S+nwNVv7GhppgTmolA/B69Ps
|
||||
YYGyZuSF2Yofa6SL7M4nuo4qhqlaAGTapNhMQF9ra5HkwydItMwtfYwasQQJWRWs
|
||||
CBk2x+sfLHeWtocA1lI7gAwzTjzY1QkS2d2oLUIZH6FjNwJgjo0CMW1jBCtJFrfP
|
||||
/WhYRyz30fffqAtkzQadJQSl4LCU5a8v6D9ZUKPbb65NGoq9YTPwxQtJ0LO0gXS8
|
||||
AjAtNIF6LefY3oCCfo5Iz4pTQeia66ZGzY7RiFl7xSxG4WrGWsZeO3Z+HHDePHTd
|
||||
+lroU3dFZTL2cKa6kGPRQsSLDHKV0KtVbhPNSYO/JbECLc8TxUnKkHXDX981FQpC
|
||||
IOaxO+oa03Ud6aMkldqWNUfQbVXWdKgbm7aUmw+endZ1v12yiFmEovUOKGtbwhmI
|
||||
F6tMPHmY
|
||||
=vP2x
|
||||
-----END PGP SIGNATURE-----
|
@ -0,0 +1,13 @@
|
||||
diff -up ncurses-6.2-20210508/ncurses/tinfo/read_entry.c.cve-2023-29491 ncurses-6.2-20210508/ncurses/tinfo/read_entry.c
|
||||
--- ncurses-6.2-20210508/ncurses/tinfo/read_entry.c.cve-2023-29491 2023-08-14 15:52:46.536461992 +0200
|
||||
+++ ncurses-6.2-20210508/ncurses/tinfo/read_entry.c 2023-08-14 15:55:04.384426095 +0200
|
||||
@@ -308,6 +308,9 @@ _nc_read_termtype(TERMTYPE2 *ptr, char *
|
||||
|| bool_count < 0
|
||||
|| num_count < 0
|
||||
|| str_count < 0
|
||||
+ || bool_count > BOOLCOUNT
|
||||
+ || num_count > NUMCOUNT
|
||||
+ || str_count > STRCOUNT
|
||||
|| str_size < 0) {
|
||||
returnDB(TGETENT_NO);
|
||||
}
|
@ -0,0 +1,46 @@
|
||||
diff -up ncurses-6.2-20210306/misc/terminfo.src.kbs ncurses-6.2-20210306/misc/terminfo.src
|
||||
--- ncurses-6.2-20210306/misc/terminfo.src.kbs 2021-03-11 12:05:15.951585254 +0100
|
||||
+++ ncurses-6.2-20210306/misc/terminfo.src 2021-03-11 12:11:24.568964629 +0100
|
||||
@@ -6276,7 +6276,7 @@ rxvt-basic|rxvt terminal base (X Window
|
||||
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,
|
||||
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,
|
||||
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,
|
||||
rmul=\E[24m,
|
||||
@@ -6288,7 +6288,7 @@ rxvt-basic|rxvt terminal base (X Window
|
||||
%p9%t\016%e\017%;,
|
||||
sgr0=\E[0m\017, smacs=^N, smcup=\E7\E[?47h, smir=\E[4h,
|
||||
smkx=\E=, smso=\E[7m, smul=\E[4m, tbc=\E[3g, use=vt100+enq,
|
||||
- use=rxvt+pcfkeys, use=vt220+cvis, use=vt220+keypad,
|
||||
+ use=rxvt+pcfkeys, use=vt220+cvis, use=vt220+keypad, use=xterm+kbs,
|
||||
# Key Codes from rxvt reference:
|
||||
#
|
||||
# Note: Shift + F1-F10 generates F11-F20
|
||||
@@ -7829,7 +7829,7 @@ screen|VT 100/ANSI X3.64 virtual termina
|
||||
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,
|
||||
ht=^I, hts=\EH, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L,
|
||||
- ind=\n, indn=\E[%p1%dS, is2=\E)0, kbs=^H, kcbt=\E[Z,
|
||||
+ ind=\n, indn=\E[%p1%dS, is2=\E)0, kcbt=\E[Z,
|
||||
kcub1=\EOD, kcud1=\EOB, kcuf1=\EOC, kcuu1=\EOA, kf1=\EOP,
|
||||
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~,
|
||||
@@ -7842,6 +7842,7 @@ screen|VT 100/ANSI X3.64 virtual termina
|
||||
smso=\E[3m, smul=\E[4m, tbc=\E[3g, vpa=\E[%i%p1%dd,
|
||||
E0=\E(B, S0=\E(%p1%c, use=vt220+pcedit,
|
||||
use=xterm+alt1049, use=ecma+color, use=vt100+enq,
|
||||
+ use=xterm+kbs,
|
||||
# The bce and status-line entries are from screen 3.9.13 (and require some
|
||||
# changes to .screenrc).
|
||||
screen-bce|VT 100/ANSI X3.64 virtual terminal with bce,
|
||||
@@ -7957,6 +7958,7 @@ screen.xterm-r6|screen customized for X1
|
||||
# on Solaris because Sun's curses implementation gets confused.
|
||||
screen.teraterm|disable ncv in teraterm,
|
||||
ncv#127,
|
||||
+ kbs=^H,
|
||||
acsc=+\020\,\021-\030.^Y0\333`\004a\261f\370g\361h\260i
|
||||
\316j\331k\277l\332m\300n\305o~p\304q\304r\304s_t\303u
|
||||
\264v\301w\302x\263y\363z\362{\343|\330}\234~\376,
|
@ -0,0 +1,134 @@
|
||||
diff -up ncurses-6.2-20210508/configure.setuid ncurses-6.2-20210508/configure
|
||||
--- ncurses-6.2-20210508/configure.setuid 2021-05-02 02:35:51.000000000 +0200
|
||||
+++ ncurses-6.2-20210508/configure 2023-08-21 14:22:48.925376959 +0200
|
||||
@@ -784,6 +784,7 @@ Fine-Tuning Your Configuration:
|
||||
--enable-getcap-cache cache translated termcaps in ~/.terminfo
|
||||
--disable-home-terminfo drop ~/.terminfo from terminfo search-path
|
||||
--disable-root-environ restrict environment when running as root
|
||||
+ --disable-setuid-environ restrict setuid use of ncurses environment variables
|
||||
--enable-symlinks make tic use symbolic links not hard links
|
||||
--enable-broken_linker compile with broken-linker support code
|
||||
--enable-bsdpad recognize BSD-style prefix padding
|
||||
@@ -9224,6 +9225,20 @@ cat >>confdefs.h <<\EOF
|
||||
#define USE_ROOT_ENVIRON 1
|
||||
EOF
|
||||
|
||||
+# Check whether --enable-setuid-environ or --disable-setuid-environ was given.
|
||||
+if test "${enable_setuid_environ+set}" = set; then
|
||||
+ enableval="$enable_setuid_environ"
|
||||
+ with_setuid_environ=$enableval
|
||||
+else
|
||||
+ with_setuid_environ=$with_root_environ
|
||||
+fi;
|
||||
+echo "$as_me:9942: result: $with_setuid_environ" >&5
|
||||
+echo "${ECHO_T}$with_setuid_environ" >&6
|
||||
+test "x$with_setuid_environ" = xyes &&
|
||||
+cat >>confdefs.h <<\EOF
|
||||
+#define USE_SETUID_ENVIRON 1
|
||||
+EOF
|
||||
+
|
||||
### Use option --enable-symlinks to make tic use symlinks, not hard links
|
||||
### to reduce storage requirements for the terminfo database.
|
||||
|
||||
diff -up ncurses-6.2-20210508/ncurses/curses.priv.h.setuid ncurses-6.2-20210508/ncurses/curses.priv.h
|
||||
--- ncurses-6.2-20210508/ncurses/curses.priv.h.setuid 2021-04-04 00:12:56.000000000 +0200
|
||||
+++ ncurses-6.2-20210508/ncurses/curses.priv.h 2023-08-21 14:22:48.925376959 +0200
|
||||
@@ -210,7 +210,7 @@ extern int errno;
|
||||
* If desired, one can configure this, disabling environment variables that
|
||||
* point to custom terminfo/termcap locations.
|
||||
*/
|
||||
-#ifdef USE_ROOT_ENVIRON
|
||||
+#if defined(USE_ROOT_ENVIRON) && defined(USE_SETUID_ENVIRON)
|
||||
#define use_terminfo_vars() 1
|
||||
#else
|
||||
#define use_terminfo_vars() _nc_env_access()
|
||||
diff -up ncurses-6.2-20210508/ncurses/tinfo/access.c.setuid ncurses-6.2-20210508/ncurses/tinfo/access.c
|
||||
--- ncurses-6.2-20210508/ncurses/tinfo/access.c.setuid 2020-08-29 18:22:03.000000000 +0200
|
||||
+++ ncurses-6.2-20210508/ncurses/tinfo/access.c 2023-08-21 14:22:48.925376959 +0200
|
||||
@@ -37,6 +37,8 @@
|
||||
|
||||
#include <tic.h>
|
||||
|
||||
+#include <sys/auxv.h>
|
||||
+
|
||||
MODULE_ID("$Id: access.c,v 1.27 2020/08/29 16:22:03 juergen Exp $")
|
||||
|
||||
#define LOWERCASE(c) ((isalpha(UChar(c)) && isupper(UChar(c))) ? tolower(UChar(c)) : (c))
|
||||
@@ -169,7 +171,18 @@ _nc_is_file_path(const char *path)
|
||||
return result;
|
||||
}
|
||||
|
||||
-#ifndef USE_ROOT_ENVIRON
|
||||
+#define is_posix_elevated() \
|
||||
+ (getuid() != geteuid() \
|
||||
+ || getgid() != getegid())
|
||||
+
|
||||
+#define is_elevated() \
|
||||
+ (getauxval(AT_SECURE) \
|
||||
+ ? TRUE \
|
||||
+ : (errno != ENOENT \
|
||||
+ ? FALSE \
|
||||
+ : is_posix_elevated()))
|
||||
+
|
||||
+#if !defined(USE_ROOT_ENVIRON) || !defined(USE_SETUID_ENVIRON)
|
||||
/*
|
||||
* Returns true if we allow application to use environment variables that are
|
||||
* used for searching lists of directories, etc.
|
||||
@@ -177,15 +190,18 @@ _nc_is_file_path(const char *path)
|
||||
NCURSES_EXPORT(int)
|
||||
_nc_env_access(void)
|
||||
{
|
||||
-#if HAVE_ISSETUGID
|
||||
- if (issetugid())
|
||||
- return FALSE;
|
||||
-#elif HAVE_GETEUID && HAVE_GETEGID
|
||||
- if (getuid() != geteuid()
|
||||
- || getgid() != getegid())
|
||||
- return FALSE;
|
||||
+ int result = TRUE;
|
||||
+
|
||||
+#if !defined(USE_SETUID_ENVIRON)
|
||||
+ if (is_elevated()) {
|
||||
+ result = FALSE;
|
||||
+ }
|
||||
#endif
|
||||
- /* ...finally, disallow root */
|
||||
- return (getuid() != ROOT_UID) && (geteuid() != ROOT_UID);
|
||||
+#if !defined(USE_ROOT_ENVIRON)
|
||||
+ if ((getuid() == ROOT_UID) || (geteuid() == ROOT_UID)) {
|
||||
+ result = FALSE;
|
||||
+ }
|
||||
+#endif
|
||||
+ return result;
|
||||
}
|
||||
#endif
|
||||
diff -up ncurses-6.2-20210508/ncurses/tinfo/comp_error.c.setuid ncurses-6.2-20210508/ncurses/tinfo/comp_error.c
|
||||
--- ncurses-6.2-20210508/ncurses/tinfo/comp_error.c.setuid 2023-08-21 14:27:08.268309417 +0200
|
||||
+++ ncurses-6.2-20210508/ncurses/tinfo/comp_error.c 2023-08-21 14:33:13.716214256 +0200
|
||||
@@ -148,8 +148,8 @@ _nc_syserr_abort(const char *const fmt,
|
||||
/* If we're debugging, try to show where the problem occurred - this
|
||||
* will dump core.
|
||||
*/
|
||||
-#ifndef USE_ROOT_ENVIRON
|
||||
- if (getuid() != ROOT_UID)
|
||||
+#if !defined(USE_ROOT_ENVIRON) || !defined(USE_SETUID_ENVIRON)
|
||||
+ if (_nc_env_access())
|
||||
#endif
|
||||
abort();
|
||||
#endif
|
||||
diff -up ncurses-6.2-20210508/ncurses/tinfo/write_entry.c.setuid ncurses-6.2-20210508/ncurses/tinfo/write_entry.c
|
||||
--- ncurses-6.2-20210508/ncurses/tinfo/write_entry.c.setuid 2020-08-29 18:22:03.000000000 +0200
|
||||
+++ ncurses-6.2-20210508/ncurses/tinfo/write_entry.c 2023-08-21 14:32:22.738227530 +0200
|
||||
@@ -215,11 +215,7 @@ _nc_set_writedir(const char *dir)
|
||||
const char *destination;
|
||||
char actual[PATH_MAX];
|
||||
|
||||
- if (dir == 0
|
||||
-#ifndef USE_ROOT_ENVIRON
|
||||
- && use_terminfo_vars()
|
||||
-#endif
|
||||
- )
|
||||
+ if (dir == 0 && use_terminfo_vars())
|
||||
dir = getenv("TERMINFO");
|
||||
|
||||
if (dir != 0)
|
Loading…
Reference in new issue