summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbsiegert <bsiegert@pkgsrc.org>2021-04-24 15:58:34 +0000
committerbsiegert <bsiegert@pkgsrc.org>2021-04-24 15:58:34 +0000
commit2a4c54b5698b4e2f6ee1c4e87b234abad0ff58b9 (patch)
tree2280cb6d5f27699dec8da9cb552e34bf4cea859e
parenta4520d85b349c10be5e35550fee981b8948425fd (diff)
downloadpkgsrc-2a4c54b5698b4e2f6ee1c4e87b234abad0ff58b9.tar.gz
Pullup ticket #6450 - requested by nia
chat/irssi: security fix Revisions pulled up: - chat/irssi-icb/Makefile 1.47 - chat/irssi-icb/distinfo 1.39 - chat/irssi-xmpp/Makefile 1.18 - chat/irssi-xmpp/distinfo 1.22 - chat/irssi/Makefile 1.101 - chat/irssi/Makefile.common 1.33 - chat/irssi/distinfo 1.53 - chat/irssi/patches/patch-src_fe-text_term-terminfo.c deleted - chat/irssi/patches/patch-src_fe-text_terminfo-core.c 1.1 --- Module Name: pkgsrc Committed By: nia Date: Sat Apr 24 08:32:00 UTC 2021 Modified Files: pkgsrc/chat/irssi: Makefile Makefile.common distinfo pkgsrc/chat/irssi-icb: Makefile distinfo pkgsrc/chat/irssi-xmpp: Makefile distinfo Added Files: pkgsrc/chat/irssi/patches: patch-src_fe-text_terminfo-core.c Removed Files: pkgsrc/chat/irssi/patches: patch-src_fe-text_term-terminfo.c Log Message: irssi: update to 1.2.3 v1.2.3 2021-04-11 The Irssi team <staff@irssi.org> - Fix the compilation of utf8proc (#1021) - Fix wrong call to free. By Zero King (#1076) - Fix a colour reset in true colour themes when encountering mIRC colours (#1059) - Fix memory leak on malformed CAP requests (#1120) - Fix an erroneous free of SASL data. Credit to Oss-Fuzz (#1128, #1130) - Re-set the TLS flag when reconnecting (#1027, #1134) - Fix the scrollback getting stuck after /clear (#1115, #1136) - Fix the input of Ctrl+C as the first character (#1153, #1154) - Fix crash on quit during unloading of modules on certain platforms (#1167) - Fix Irssi freezing input after Ctrl+Space on GLib >2.62 (#1180, #1183) - Fix layout of IDCHANs. By Lauri Tirkkonen (#1197) - Fix crash when server got reconnected before it was properly connected (#1210, #1211) - Fix multiple identical active caps (#1249) - Minor help corrections (#1156, #1213, #1214, #1255) - Remove erroneous colour in the colorless theme. Reported and fixed by Nutchanon Wetchasit (#1220, #1221) - Fix invalid bounds calculation when editing the text entry. Found and fixed by Sergey Valentey (#1269) - Fix passing of negative size in buffer writes. Found and fixed by Sergey Valentey (#1270) - Fix Irssi freezing on slow hardware and fast DCC transfers (#159, #1271) - Fix compilation on Solaris (#1291) - Fix null pointer dereference when receiving broken JOIN record. Credit to Oss-Fuzz (#1292) - Fix crash on /connect to some sockets (#1239, #1298) - Fix Irssi rendering on Apple ARM. By Misty De Méo (#1267, #1268, #1290) - Fix crash on /lastlog with broken lines (#1281, #1299) - Fix memory leak when receiving bogus SASL authentication data. Found and fixed by Sergey Valentey (#1293)
-rw-r--r--chat/irssi-icb/Makefile4
-rw-r--r--chat/irssi-icb/distinfo10
-rw-r--r--chat/irssi-xmpp/Makefile4
-rw-r--r--chat/irssi-xmpp/distinfo18
-rw-r--r--chat/irssi/Makefile3
-rw-r--r--chat/irssi/Makefile.common4
-rw-r--r--chat/irssi/distinfo12
-rw-r--r--chat/irssi/patches/patch-src_fe-text_term-terminfo.c18
-rw-r--r--chat/irssi/patches/patch-src_fe-text_terminfo-core.c347
9 files changed, 374 insertions, 46 deletions
diff --git a/chat/irssi-icb/Makefile b/chat/irssi-icb/Makefile
index 7a50968e7cf..dc18bb166c7 100644
--- a/chat/irssi-icb/Makefile
+++ b/chat/irssi-icb/Makefile
@@ -1,8 +1,8 @@
-# $NetBSD: Makefile,v 1.46 2020/05/31 15:10:11 rillig Exp $
+# $NetBSD: Makefile,v 1.46.8.1 2021/04/24 15:58:34 bsiegert Exp $
#
DISTNAME= irssi-icb-0.15
-PKGREVISION= 6
+PKGREVISION= 7
CATEGORIES= chat
MASTER_SITES= https://github.com/downloads/jperkin/irssi-icb/
DISTFILES= ${DISTNAME}.tar.gz ${IRSSI_DISTFILE}
diff --git a/chat/irssi-icb/distinfo b/chat/irssi-icb/distinfo
index 8706fb570cc..ee1144f247c 100644
--- a/chat/irssi-icb/distinfo
+++ b/chat/irssi-icb/distinfo
@@ -1,9 +1,9 @@
-$NetBSD: distinfo,v 1.38 2019/08/31 10:04:26 nia Exp $
+$NetBSD: distinfo,v 1.38.14.1 2021/04/24 15:58:34 bsiegert Exp $
-SHA1 (irssi-1.2.2.tar.gz) = 1004f6adcd949c6ab76bff5abe210521c8af4fd7
-RMD160 (irssi-1.2.2.tar.gz) = 49a8681a4a3495e441d8b516304477bdb4d9aa7c
-SHA512 (irssi-1.2.2.tar.gz) = 708dd72685f89ba5da155b7276addcb3758a000f633c71a9bee88c84585f1b5f69872696c7d107699edd16cf964e0a046fc13fecc0384505c11258ec16ab3342
-Size (irssi-1.2.2.tar.gz) = 1843879 bytes
+SHA1 (irssi-1.2.3.tar.gz) = 1a7af14546cc1a7ada221dd9da82f58af58b5bbd
+RMD160 (irssi-1.2.3.tar.gz) = 72a9014c158e7685c6a1e56156ed62728588f1ae
+SHA512 (irssi-1.2.3.tar.gz) = 7e4c8dc2d8e3532f26775702254339ba92e276c82b5a7041756574096928e25f2614d04a1cfa091ba90bc3e5a0d552578b80bc89c3c87c6d48722139c2ae47ff
+Size (irssi-1.2.3.tar.gz) = 1824077 bytes
SHA1 (irssi-icb-0.15.tar.gz) = c5a739960eb98e6686a94f6d4662cfab5a95d447
RMD160 (irssi-icb-0.15.tar.gz) = b947a341e1fc2f6d42bee3cb7b738bfdbb0a031d
SHA512 (irssi-icb-0.15.tar.gz) = 00af04d14c2c6b65eaf93f9859e6f9f51be4bc8b270c602f4f3b2cc722b148f35c29c7efb12432b063dd41095cf823f2ad329515b0298d0c541742199f3c5fa5
diff --git a/chat/irssi-xmpp/Makefile b/chat/irssi-xmpp/Makefile
index be05b0fd70f..7641dfd1a0e 100644
--- a/chat/irssi-xmpp/Makefile
+++ b/chat/irssi-xmpp/Makefile
@@ -1,8 +1,8 @@
-# $NetBSD: Makefile,v 1.17 2020/05/21 10:14:27 nia Exp $
+# $NetBSD: Makefile,v 1.17.8.1 2021/04/24 15:58:35 bsiegert Exp $
#
DISTNAME= irssi-xmpp-0.54
-PKGREVISION= 1
+PKGREVISION= 2
CATEGORIES= chat
MASTER_SITES= https://cybione.org/~irssi-xmpp/files/
DISTFILES= ${DISTNAME}.tar.gz ${IRSSI_DISTFILE}
diff --git a/chat/irssi-xmpp/distinfo b/chat/irssi-xmpp/distinfo
index 9b3b878a9b9..01b941cf69c 100644
--- a/chat/irssi-xmpp/distinfo
+++ b/chat/irssi-xmpp/distinfo
@@ -1,10 +1,10 @@
-$NetBSD: distinfo,v 1.21 2019/09/15 13:58:27 nia Exp $
+$NetBSD: distinfo,v 1.21.14.1 2021/04/24 15:58:35 bsiegert Exp $
-SHA1 (irssi-1.2.2.tar.gz) = 1004f6adcd949c6ab76bff5abe210521c8af4fd7
-RMD160 (irssi-1.2.2.tar.gz) = 49a8681a4a3495e441d8b516304477bdb4d9aa7c
-SHA512 (irssi-1.2.2.tar.gz) = 708dd72685f89ba5da155b7276addcb3758a000f633c71a9bee88c84585f1b5f69872696c7d107699edd16cf964e0a046fc13fecc0384505c11258ec16ab3342
-Size (irssi-1.2.2.tar.gz) = 1843879 bytes
-SHA1 (irssi-xmpp-0.54.tar.gz) = 19f9e303545a7adbfeee806c78be2a6279f74b63
-RMD160 (irssi-xmpp-0.54.tar.gz) = 1fdc4557c167134d3daacd495e9404ec82dc7755
-SHA512 (irssi-xmpp-0.54.tar.gz) = 31ddd9e0147eec23d08b8bcbe242e831d612cb2d00f3b56776e9d0b87db9bd76d4bb147422cdf18c0567f0e0463ab828ab7a0ef80a2b35cfdc0a8be962b39f14
-Size (irssi-xmpp-0.54.tar.gz) = 65618 bytes
+SHA1 (irssi-1.2.3.tar.gz) = 1a7af14546cc1a7ada221dd9da82f58af58b5bbd
+RMD160 (irssi-1.2.3.tar.gz) = 72a9014c158e7685c6a1e56156ed62728588f1ae
+SHA512 (irssi-1.2.3.tar.gz) = 7e4c8dc2d8e3532f26775702254339ba92e276c82b5a7041756574096928e25f2614d04a1cfa091ba90bc3e5a0d552578b80bc89c3c87c6d48722139c2ae47ff
+Size (irssi-1.2.3.tar.gz) = 1824077 bytes
+SHA1 (irssi-xmpp-0.54.tar.gz) = 4196bfae00eb830229f104fb7099829a9bca8072
+RMD160 (irssi-xmpp-0.54.tar.gz) = 083bbb91048f369df00c10a212478c208a8ae985
+SHA512 (irssi-xmpp-0.54.tar.gz) = 7bf3d26be4c92323be83dc7734ca7c1227355bebeddb20c502a3304531a83d5e15e5ca7e35b7f1c4b1021bd29a66f8743310987fd6b180cba48feb08a21d63c6
+Size (irssi-xmpp-0.54.tar.gz) = 155491 bytes
diff --git a/chat/irssi/Makefile b/chat/irssi/Makefile
index b066c29f4e0..5e29fe20583 100644
--- a/chat/irssi/Makefile
+++ b/chat/irssi/Makefile
@@ -1,7 +1,6 @@
-# $NetBSD: Makefile,v 1.100 2020/08/31 18:06:41 wiz Exp $
+# $NetBSD: Makefile,v 1.100.6.1 2021/04/24 15:58:35 bsiegert Exp $
DISTNAME= ${IRSSI_DISTNAME}
-PKGREVISION= 5
CATEGORIES= chat
EXTRACT_SUFX= ${IRSSI_EXTRACT_SUFX}
diff --git a/chat/irssi/Makefile.common b/chat/irssi/Makefile.common
index 7f2717ded1b..001e7175ee5 100644
--- a/chat/irssi/Makefile.common
+++ b/chat/irssi/Makefile.common
@@ -1,10 +1,10 @@
-# $NetBSD: Makefile.common,v 1.32 2019/08/31 10:04:26 nia Exp $
+# $NetBSD: Makefile.common,v 1.32.14.1 2021/04/24 15:58:35 bsiegert Exp $
#
# used by chat/irssi-icb/Makefile
# used by chat/irssi-xmpp/Makefile
# Specific distribution information.
-IRSSI_VERSION= 1.2.2
+IRSSI_VERSION= 1.2.3
IRSSI_DISTNAME= irssi-${IRSSI_VERSION}
IRSSI_EXTRACT_SUFX= .tar.gz
IRSSI_DISTFILE= ${IRSSI_DISTNAME}${IRSSI_EXTRACT_SUFX}
diff --git a/chat/irssi/distinfo b/chat/irssi/distinfo
index 14f3ccce6b4..5e4518b75d5 100644
--- a/chat/irssi/distinfo
+++ b/chat/irssi/distinfo
@@ -1,8 +1,8 @@
-$NetBSD: distinfo,v 1.52 2020/05/18 18:38:31 maya Exp $
+$NetBSD: distinfo,v 1.52.8.1 2021/04/24 15:58:35 bsiegert Exp $
-SHA1 (irssi-1.2.2.tar.gz) = 1004f6adcd949c6ab76bff5abe210521c8af4fd7
-RMD160 (irssi-1.2.2.tar.gz) = 49a8681a4a3495e441d8b516304477bdb4d9aa7c
-SHA512 (irssi-1.2.2.tar.gz) = 708dd72685f89ba5da155b7276addcb3758a000f633c71a9bee88c84585f1b5f69872696c7d107699edd16cf964e0a046fc13fecc0384505c11258ec16ab3342
-Size (irssi-1.2.2.tar.gz) = 1843879 bytes
+SHA1 (irssi-1.2.3.tar.gz) = 1a7af14546cc1a7ada221dd9da82f58af58b5bbd
+RMD160 (irssi-1.2.3.tar.gz) = 72a9014c158e7685c6a1e56156ed62728588f1ae
+SHA512 (irssi-1.2.3.tar.gz) = 7e4c8dc2d8e3532f26775702254339ba92e276c82b5a7041756574096928e25f2614d04a1cfa091ba90bc3e5a0d552578b80bc89c3c87c6d48722139c2ae47ff
+Size (irssi-1.2.3.tar.gz) = 1824077 bytes
SHA1 (patch-ad) = 8cb41612afcd6088b869235166da9a6eb37e6ec7
-SHA1 (patch-src_fe-text_term-terminfo.c) = 3ebf09dfde3fa01c4f53862e126fe13f082d450c
+SHA1 (patch-src_fe-text_terminfo-core.c) = e1f64ae71fcd56596f325bb57ec27f51d8826223
diff --git a/chat/irssi/patches/patch-src_fe-text_term-terminfo.c b/chat/irssi/patches/patch-src_fe-text_term-terminfo.c
deleted file mode 100644
index ffd6755a2e7..00000000000
--- a/chat/irssi/patches/patch-src_fe-text_term-terminfo.c
+++ /dev/null
@@ -1,18 +0,0 @@
-$NetBSD: patch-src_fe-text_term-terminfo.c,v 1.1 2020/05/18 18:38:31 maya Exp $
-
-Fix hang when pressing ctrl+space.
-From https://github.com/irssi/irssi/issues/1180
-
---- src/fe-text/term-terminfo.c.orig 2019-08-29 13:48:46.000000000 +0000
-+++ src/fe-text/term-terminfo.c
-@@ -674,6 +674,10 @@ static int input_utf8(const unsigned cha
- {
- unichar c = g_utf8_get_char_validated((char *)buffer, size);
-
-+ /* GLib >= 2.63 do not accept Unicode NUL anymore */
-+ if (c == (unichar) -2 && *buffer == 0 && size > 0)
-+ c = 0;
-+
- switch (c) {
- case (unichar)-1:
- /* not UTF8 - fallback to 8bit ascii */
diff --git a/chat/irssi/patches/patch-src_fe-text_terminfo-core.c b/chat/irssi/patches/patch-src_fe-text_terminfo-core.c
new file mode 100644
index 00000000000..e3a4564cc73
--- /dev/null
+++ b/chat/irssi/patches/patch-src_fe-text_terminfo-core.c
@@ -0,0 +1,347 @@
+$NetBSD: patch-src_fe-text_terminfo-core.c,v 1.2.2.2 2021/04/24 15:58:35 bsiegert Exp $
+
+Fix compatibility with NetBSD curses
+
+from the ncurses man page:
+
+>X/Open Curses prototypes tparm with a fixed number of parameters,
+>rather than a variable argument list.
+
+>This implementation uses a variable argument list, but can be con-
+>figured to use the fixed-parameter list. Portable applications
+>should provide 9 parameters after the format; zeroes are fine for
+>this purpose.
+
+>In response to review comments by Thomas E. Dickey, X/Open Curses
+>Issue 7 proposed the tiparm function in mid-2009.
+
+Previously, irssi defined its own tparm prototype, so passing
+a variable number of arguments worked.
+
+However, since this change:
+
+https://github.com/irssi/irssi/commit/0b82f14151dad5f106c208d25818816a8f782a54
+
+<term.h> in included, which on systems using NetBSD libcurses, gives
+the X/Open compliant definition of tparm, which does not work with
+a variable number of arguments.
+
+--- src/fe-text/terminfo-core.c.orig 2021-04-08 14:42:39.000000000 +0000
++++ src/fe-text/terminfo-core.c
+@@ -17,7 +17,7 @@ inline static int term_putchar(int c)
+ #else
+ /* Don't bother including curses.h because of these -
+ they might not even be defined there */
+-char *tparm();
++char *tiparm();
+ int tputs();
+
+ int setupterm();
+@@ -110,14 +110,14 @@ static TERMINFO_REC tcaps[] = {
+ /* Move cursor (cursor_address / cup) */
+ static void _move_cup(TERM_REC *term, int x, int y)
+ {
+- tput(tparm(term->TI_cup, y, x));
++ tput(tiparm(term->TI_cup, y, x));
+ }
+
+ /* Move cursor (column_address+row_address / hpa+vpa) */
+ static void _move_pa(TERM_REC *term, int x, int y)
+ {
+- tput(tparm(term->TI_hpa, x));
+- tput(tparm(term->TI_vpa, y));
++ tput(tiparm(term->TI_hpa, x));
++ tput(tiparm(term->TI_vpa, y));
+ }
+
+ /* Move cursor from a known position */
+@@ -133,38 +133,38 @@ static void _move_relative(TERM_REC *ter
+ if (oldx > 0 && y == oldy) {
+ /* move cursor left/right */
+ if (x == oldx-1 && term->TI_cub1) {
+- tput(tparm(term->TI_cub1));
++ tput(tiparm(term->TI_cub1));
+ return;
+ }
+ if (x == oldx+1 && y == oldy && term->TI_cuf1) {
+- tput(tparm(term->TI_cuf1));
++ tput(tiparm(term->TI_cuf1));
+ return;
+ }
+ }
+
+ /* fallback to absolute positioning */
+ if (term->TI_cup) {
+- tput(tparm(term->TI_cup, y, x));
++ tput(tiparm(term->TI_cup, y, x));
+ return;
+ }
+
+ if (oldy != y)
+- tput(tparm(term->TI_vpa, y));
++ tput(tiparm(term->TI_vpa, y));
+ if (oldx != x)
+- tput(tparm(term->TI_hpa, x));
++ tput(tiparm(term->TI_hpa, x));
+ }
+
+ /* Set cursor visible/invisible */
+ static void _set_cursor_visible(TERM_REC *term, int set)
+ {
+- tput(tparm(set ? term->TI_cnorm : term->TI_civis));
++ tput(tiparm(set ? term->TI_cnorm : term->TI_civis));
+ }
+
+ #define scroll_region_setup(term, y1, y2) \
+ if ((term)->TI_csr != NULL) \
+- tput(tparm((term)->TI_csr, y1, y2)); \
++ tput(tiparm((term)->TI_csr, y1, y2)); \
+ else if ((term)->TI_wind != NULL) \
+- tput(tparm((term)->TI_wind, y1, y2, 0, (term)->width-1));
++ tput(tiparm((term)->TI_wind, y1, y2, 0, (term)->width-1));
+
+ /* Scroll (change_scroll_region+parm_rindex+parm_index / csr+rin+indn) */
+ static void _scroll_region(TERM_REC *term, int y1, int y2, int count)
+@@ -175,10 +175,10 @@ static void _scroll_region(TERM_REC *ter
+ term->move(term, 0, y1);
+ if (count > 0) {
+ term->move(term, 0, y2);
+- tput(tparm(term->TI_indn, count, count));
++ tput(tiparm(term->TI_indn, count, count));
+ } else if (count < 0) {
+ term->move(term, 0, y1);
+- tput(tparm(term->TI_rin, -count, -count));
++ tput(tiparm(term->TI_rin, -count, -count));
+ }
+
+ /* reset the scrolling region to full screen */
+@@ -196,11 +196,11 @@ static void _scroll_region_1(TERM_REC *t
+ if (count > 0) {
+ term->move(term, 0, y2);
+ for (i = 0; i < count; i++)
+- tput(tparm(term->TI_ind));
++ tput(tiparm(term->TI_ind));
+ } else if (count < 0) {
+ term->move(term, 0, y1);
+ for (i = count; i < 0; i++)
+- tput(tparm(term->TI_ri));
++ tput(tiparm(term->TI_ri));
+ }
+
+ /* reset the scrolling region to full screen */
+@@ -217,14 +217,14 @@ static void _scroll_line(TERM_REC *term,
+
+ if (count > 0) {
+ term->move(term, 0, y1);
+- tput(tparm(term->TI_dl, count, count));
++ tput(tiparm(term->TI_dl, count, count));
+ term->move(term, 0, y2-count+1);
+- tput(tparm(term->TI_il, count, count));
++ tput(tiparm(term->TI_il, count, count));
+ } else if (count < 0) {
+ term->move(term, 0, y2+count+1);
+- tput(tparm(term->TI_dl, -count, -count));
++ tput(tiparm(term->TI_dl, -count, -count));
+ term->move(term, 0, y1);
+- tput(tparm(term->TI_il, -count, -count));
++ tput(tiparm(term->TI_il, -count, -count));
+ }
+
+ /* reset the scrolling region to full screen */
+@@ -239,38 +239,38 @@ static void _scroll_line_1(TERM_REC *ter
+ if (count > 0) {
+ term->move(term, 0, y1);
+ for (i = 0; i < count; i++)
+- tput(tparm(term->TI_dl1));
++ tput(tiparm(term->TI_dl1));
+ term->move(term, 0, y2-count+1);
+ for (i = 0; i < count; i++)
+- tput(tparm(term->TI_il1));
++ tput(tiparm(term->TI_il1));
+ } else if (count < 0) {
+ term->move(term, 0, y2+count+1);
+ for (i = count; i < 0; i++)
+- tput(tparm(term->TI_dl1));
++ tput(tiparm(term->TI_dl1));
+ term->move(term, 0, y1);
+ for (i = count; i < 0; i++)
+- tput(tparm(term->TI_il1));
++ tput(tiparm(term->TI_il1));
+ }
+ }
+
+ /* Clear screen (clear_screen / clear) */
+ static void _clear_screen(TERM_REC *term)
+ {
+- tput(tparm(term->TI_clear));
++ tput(tiparm(term->TI_clear));
+ }
+
+ /* Clear screen (clr_eos / ed) */
+ static void _clear_eos(TERM_REC *term)
+ {
+ term->move(term, 0, 0);
+- tput(tparm(term->TI_ed));
++ tput(tiparm(term->TI_ed));
+ }
+
+ /* Clear screen (parm_delete_line / dl) */
+ static void _clear_del(TERM_REC *term)
+ {
+ term->move(term, 0, 0);
+- tput(tparm(term->TI_dl, term->height, term->height));
++ tput(tiparm(term->TI_dl, term->height, term->height));
+ }
+
+ /* Clear screen (delete_line / dl1) */
+@@ -280,19 +280,19 @@ static void _clear_del_1(TERM_REC *term)
+
+ term->move(term, 0, 0);
+ for (i = 0; i < term->height; i++)
+- tput(tparm(term->TI_dl1));
++ tput(tiparm(term->TI_dl1));
+ }
+
+ /* Clear to end of line (clr_eol / el) */
+ static void _clrtoeol(TERM_REC *term)
+ {
+- tput(tparm(term->TI_el));
++ tput(tiparm(term->TI_el));
+ }
+
+ /* Repeat character (rep / rp) */
+ static void _repeat(TERM_REC *term, char chr, int count)
+ {
+- tput(tparm(term->TI_rep, chr, count));
++ tput(tiparm(term->TI_rep, chr, count));
+ }
+
+ /* Repeat character (manual) */
+@@ -307,42 +307,42 @@ static void _repeat_manual(TERM_REC *ter
+ /* Reset all terminal attributes */
+ static void _set_normal(TERM_REC *term)
+ {
+- tput(tparm(term->TI_normal));
++ tput(tiparm(term->TI_normal));
+ }
+
+ static void _set_blink(TERM_REC *term)
+ {
+- tput(tparm(term->TI_blink));
++ tput(tiparm(term->TI_blink));
+ }
+
+ /* Reverse on */
+ static void _set_reverse(TERM_REC *term)
+ {
+- tput(tparm(term->TI_rev));
++ tput(tiparm(term->TI_rev));
+ }
+
+ /* Bold on */
+ static void _set_bold(TERM_REC *term)
+ {
+- tput(tparm(term->TI_bold));
++ tput(tiparm(term->TI_bold));
+ }
+
+ /* Underline on/off */
+ static void _set_uline(TERM_REC *term, int set)
+ {
+- tput(tparm(set ? term->TI_smul : term->TI_rmul));
++ tput(tiparm(set ? term->TI_smul : term->TI_rmul));
+ }
+
+ /* Standout on/off */
+ static void _set_standout(TERM_REC *term, int set)
+ {
+- tput(tparm(set ? term->TI_smso : term->TI_rmso));
++ tput(tiparm(set ? term->TI_smso : term->TI_rmso));
+ }
+
+ /* Italic on/off */
+ static void _set_italic(TERM_REC *term, int set)
+ {
+- tput(tparm(set ? term->TI_sitm : term->TI_ritm));
++ tput(tiparm(set ? term->TI_sitm : term->TI_ritm));
+ }
+
+ /* Standout on (fallback for reverse) */
+@@ -367,19 +367,19 @@ inline static int color256(const TERM_RE
+ /* Change foreground color */
+ static void _set_fg(TERM_REC *term, int color)
+ {
+- tput(tparm(term->TI_fg[color256(term, color)]));
++ tput(tiparm(term->TI_fg[color256(term, color)]));
+ }
+
+ /* Change background color */
+ static void _set_bg(TERM_REC *term, int color)
+ {
+- tput(tparm(term->TI_bg[color256(term, color)]));
++ tput(tiparm(term->TI_bg[color256(term, color)]));
+ }
+
+ /* Beep */
+ static void _beep(TERM_REC *term)
+ {
+- tput(tparm(term->TI_bel));
++ tput(tiparm(term->TI_bel));
+ }
+
+ static void _ignore(TERM_REC *term)
+@@ -393,7 +393,7 @@ static void _ignore_parm(TERM_REC *term,
+ static void terminfo_set_appkey_mode(TERM_REC *term, int set)
+ {
+ if (term->TI_smkx && term->TI_rmkx)
+- tput(tparm(set ? term->TI_smkx : term->TI_rmkx));
++ tput(tiparm(set ? term->TI_smkx : term->TI_rmkx));
+ }
+
+ static void term_dec_set_bracketed_paste_mode(int enable)
+@@ -478,11 +478,11 @@ void terminfo_setup_colors(TERM_REC *ter
+ if (term->TI_setaf) {
+ for (i = 0; i < term->TI_colors; i++) {
+ color = i < 16 ? ansitab[i] : i;
+- term->TI_fg[i] = g_strdup(tparm(term->TI_setaf, color, 0));
++ term->TI_fg[i] = g_strdup(tiparm(term->TI_setaf, color, 0));
+ }
+ } else if (term->TI_setf) {
+ for (i = 0; i < term->TI_colors; i++)
+- term->TI_fg[i] = g_strdup(tparm(term->TI_setf, i, 0));
++ term->TI_fg[i] = g_strdup(tiparm(term->TI_setf, i, 0));
+ } else if (force) {
+ for (i = 0; i < 8; i++)
+ term->TI_fg[i] = g_strdup_printf("\033[%dm", 30+ansitab[i]);
+@@ -491,11 +491,11 @@ void terminfo_setup_colors(TERM_REC *ter
+ if (term->TI_setab) {
+ for (i = 0; i < term->TI_colors; i++) {
+ color = i < 16 ? ansitab[i] : i;
+- term->TI_bg[i] = g_strdup(tparm(term->TI_setab, color, 0));
++ term->TI_bg[i] = g_strdup(tiparm(term->TI_setab, color, 0));
+ }
+ } else if (term->TI_setb) {
+ for (i = 0; i < term->TI_colors; i++)
+- term->TI_bg[i] = g_strdup(tparm(term->TI_setb, i, 0));
++ term->TI_bg[i] = g_strdup(tiparm(term->TI_setb, i, 0));
+ } else if (force) {
+ for (i = 0; i < 8; i++)
+ term->TI_bg[i] = g_strdup_printf("\033[%dm", 40+ansitab[i]);
+@@ -539,7 +539,7 @@ static void terminfo_input_deinit(TERM_R
+ void terminfo_cont(TERM_REC *term)
+ {
+ if (term->TI_smcup)
+- tput(tparm(term->TI_smcup));
++ tput(tiparm(term->TI_smcup));
+
+ if (term->appkey_enabled)
+ terminfo_set_appkey_mode(term, TRUE);
+@@ -562,7 +562,7 @@ void terminfo_stop(TERM_REC *term)
+
+ /* stop cup-mode */
+ if (term->TI_rmcup)
+- tput(tparm(term->TI_rmcup));
++ tput(tiparm(term->TI_rmcup));
+
+ if (term->appkey_enabled)
+ terminfo_set_appkey_mode(term, FALSE);