From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michael Tremer To: development@lists.ipfire.org Subject: Re: [PATCH 2/3] readline: update to 7.0 Date: Wed, 07 Jun 2017 10:00:10 +0100 Message-ID: <1496826010.4077.7.camel@ipfire.org> In-Reply-To: <20170606082537.13830-2-marcel.lorenz@ipfire.org> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============3492585503016696403==" List-Id: --===============3492585503016696403== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable If you update this, you need to make sure that a compat package exists for libreadline.so.6 because many applications are linked against it. Best, -Michael On Tue, 2017-06-06 at 10:25 +0200, Marcel Lorenz wrote: > Signed-off-by: Marcel Lorenz > --- > =C2=A0config/rootfiles/common/readline=C2=A0=C2=A0=C2=A0=C2=A0|=C2=A0=C2=A0= =C2=A08 +-- > =C2=A0lfs/readline=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0|=C2=A0=C2=A021 +++++--- > =C2=A0src/patches/readline/readline63-001 |=C2=A0=C2=A043 --------------- > =C2=A0src/patches/readline/readline63-002 |=C2=A0=C2=A044 --------------- > =C2=A0src/patches/readline/readline63-003 |=C2=A0=C2=A047 ---------------- > =C2=A0src/patches/readline/readline63-004 |=C2=A0=C2=A045 ---------------- > =C2=A0src/patches/readline/readline63-005 |=C2=A0=C2=A058 -----------------= --- > =C2=A0src/patches/readline/readline63-006 |=C2=A0=C2=A063 -----------------= ----- > =C2=A0src/patches/readline/readline70-001 |=C2=A0=C2=A057 +++++++++++++++++= +++ > =C2=A0src/patches/readline/readline70-002 | 103 > ++++++++++++++++++++++++++++++++++++ > =C2=A0src/patches/readline/readline70-003 |=C2=A0=C2=A040 ++++++++++++++ > =C2=A011 files changed, 219 insertions(+), 310 deletions(-) > =C2=A0delete mode 100644 src/patches/readline/readline63-001 > =C2=A0delete mode 100644 src/patches/readline/readline63-002 > =C2=A0delete mode 100644 src/patches/readline/readline63-003 > =C2=A0delete mode 100644 src/patches/readline/readline63-004 > =C2=A0delete mode 100644 src/patches/readline/readline63-005 > =C2=A0delete mode 100644 src/patches/readline/readline63-006 > =C2=A0create mode 100644 src/patches/readline/readline70-001 > =C2=A0create mode 100644 src/patches/readline/readline70-002 > =C2=A0create mode 100644 src/patches/readline/readline70-003 >=20 > diff --git a/config/rootfiles/common/readline > b/config/rootfiles/common/readline > index b2ac26d..412de70 100644 > --- a/config/rootfiles/common/readline > +++ b/config/rootfiles/common/readline > @@ -8,11 +8,11 @@ > =C2=A0#usr/include/readline/rltypedefs.h > =C2=A0#usr/include/readline/tilde.h > =C2=A0#usr/lib/libhistory.so > -usr/lib/libhistory.so.6 > -usr/lib/libhistory.so.6.3 > +usr/lib/libhistory.so.7 > +usr/lib/libhistory.so.7.0 > =C2=A0#usr/lib/libreadline.so > -usr/lib/libreadline.so.6 > -usr/lib/libreadline.so.6.3 > +usr/lib/libreadline.so.7 > +usr/lib/libreadline.so.7.0 > =C2=A0#usr/share/doc/readline > =C2=A0#usr/share/doc/readline/CHANGES > =C2=A0#usr/share/doc/readline/INSTALL > diff --git a/lfs/readline b/lfs/readline > index eb488e3..5f88228 100644 > --- a/lfs/readline > +++ b/lfs/readline > @@ -1,7 +1,7 @@ > =C2=A0#####################################################################= ######## > ## > =C2=A0#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 > =C2=A0# > =C2=A0# IPFire.org - A linux based > firewall=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0# > -# Copyright (C) 2007=C2=A0=C2=A0Michael Tremer & Christian > Schmidt=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0# > +# Copyright (C) 2016=C2=A0=C2=A0IPFire Team=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 > =C2=A0# > =C2=A0#=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 > =C2=A0# > =C2=A0# This program is free software: you can redistribute it and/or > modify=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0# > =C2=A0# it under the terms of the GNU General Public License as published > by=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0# > @@ -24,13 +24,15 @@ > =C2=A0 > =C2=A0include Config > =C2=A0 > -VER=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D 6.3 > +VER=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D 7.0 > =C2=A0 > =C2=A0THISAPP=C2=A0=C2=A0=C2=A0=C2=A0=3D readline-$(VER) > =C2=A0DL_FILE=C2=A0=C2=A0=C2=A0=C2=A0=3D $(THISAPP).tar.gz > =C2=A0DL_FROM=C2=A0=C2=A0=C2=A0=C2=A0=3D $(URL_IPFIRE) > =C2=A0DIR_APP=C2=A0=C2=A0=C2=A0=C2=A0=3D $(DIR_SRC)/$(THISAPP) > =C2=A0TARGET=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D $(DIR_INFO)/$(THISAPP) > +PROG=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=3D readline > +PAK_VER=C2=A0=C2=A0=C2=A0=C2=A0=3D 1 > =C2=A0 > =C2=A0#####################################################################= ######## > ## > =C2=A0# Top-level Rules > @@ -40,7 +42,7 @@ objects =3D $(DL_FILE) > =C2=A0 > =C2=A0$(DL_FILE) =3D $(DL_FROM)/$(DL_FILE) > =C2=A0 > -$(DL_FILE)_MD5 =3D 33c8fb279e981274f485fd91da77e94a > +$(DL_FILE)_MD5 =3D 205b03a87fc83dab653b628c59b9fc91 > =C2=A0 > =C2=A0install : $(TARGET) > =C2=A0 > @@ -63,6 +65,9 @@ $(patsubst %,$(DIR_DL)/%,$(objects)) : > =C2=A0$(subst %,%_MD5,$(objects)) : > =C2=A0 @$(MD5) > =C2=A0 > +dist:=C2=A0 > + @$(PAK) > + > =C2=A0#####################################################################= ######## > ## > =C2=A0# Installation Details > =C2=A0#####################################################################= ######## > ## > @@ -71,9 +76,13 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) > =C2=A0 @$(PREBUILD) > =C2=A0 @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) > =C2=A0 > - for i in $$(seq 1 6); do \ > - cd $(DIR_APP) && patch -Np0 < > $(DIR_SRC)/src/patches/readline/readline63-$$(printf "%03d" "$${i}") || exit > 1; \ > - done > + #for i in $$(seq 1 6); do \ > + # cd $(DIR_APP) && patch -Np0 < > $(DIR_SRC)/src/patches/readline/readline63-$$(printf "%03d" "$${i}") || exit > 1; \ > + #done > + > + # prevent in some cases to trigger a linking bug in ldconfig > + cd $(DIR_APP) &&sed -i '/MV.*old/d' Makefile.in > + cd $(DIR_APP) &&sed -i '/{OLDSUFF}/c:' support/shlib-install > =C2=A0 > =C2=A0 cd $(DIR_APP) && ./configure --prefix=3D/usr --disable-static > =C2=A0 cd $(DIR_APP) && make $(MAKETUNING) SHLIB_LIBS=3D-lncurses > diff --git a/src/patches/readline/readline63-001 > b/src/patches/readline/readline63-001 > deleted file mode 100644 > index bae6a2f..0000000 > --- a/src/patches/readline/readline63-001 > +++ /dev/null > @@ -1,43 +0,0 @@ > - =C2=A0=C2=A0=C2=A0READLINE PATCH REPORT > - =C2=A0=C2=A0=C2=A0=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > - > -Readline-Release: 6.3 > -Patch-ID: readline63-001 > - > -Bug-Reported-by: Daan van Rossum > -Bug-Reference-ID: <20140307072523.GA14250(a)flash.uchicago.edu> > -Bug-Reference-URL:=09 > - > -Bug-Description: > - > -The `.' command in vi mode cannot undo multi-key commands beginning with > -`c', `d', and `y' (command plus motion specifier). > - > -Patch (apply with `patch -p0'): > - > -*** ../readline-6.3/readline.c 2013-10-28 14:58:06.000000000 -0400 > ---- readline.c 2014-03-07 15:20:33.000000000 -0500 > -*************** > -*** 965,969 **** > -=C2=A0=C2=A0=C2=A0=C2=A0if (rl_editing_mode =3D=3D vi_mode && _rl_keymap = =3D=3D vi_movement_keymap && > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0key !=3D ANYOTHERKEY && > -!=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0rl_key_sequence_length =3D=3D 1= && /* XXX */ > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0_rl_vi_textmod_command (ke= y)) > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0_rl_vi_set_last (key, rl_numeric_arg, = rl_arg_sign); > ---- 965,969 ---- > -=C2=A0=C2=A0=C2=A0=C2=A0if (rl_editing_mode =3D=3D vi_mode && _rl_keymap = =3D=3D vi_movement_keymap && > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0key !=3D ANYOTHERKEY && > -!=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0_rl_dispatching_keymap =3D=3D v= i_movement_keymap && > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0_rl_vi_textmod_command (ke= y)) > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0_rl_vi_set_last (key, rl_numeric_arg, = rl_arg_sign); > -*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500 > ---- patchlevel 2014-03-21 08:28:40.000000000 -0400 > -*************** > -*** 1,3 **** > -=C2=A0=C2=A0# Do not edit -- exists only for use by patch > -=C2=A0=C2=A0 > -! 5 > ---- 1,3 ---- > -=C2=A0=C2=A0# Do not edit -- exists only for use by patch > -=C2=A0=C2=A0 > -! 1 > diff --git a/src/patches/readline/readline63-002 > b/src/patches/readline/readline63-002 > deleted file mode 100644 > index 0e79f13..0000000 > --- a/src/patches/readline/readline63-002 > +++ /dev/null > @@ -1,44 +0,0 @@ > - =C2=A0=C2=A0=C2=A0READLINE PATCH REPORT > - =C2=A0=C2=A0=C2=A0=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > - > -Readline-Release: 6.3 > -Patch-ID: readline63-002 > - > -Bug-Reported-by: Anatol Pomozov > -Bug-Reference-ID: @mail.gmail.com> > -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2014 > -03/msg00010.html > - > -Bug-Description: > - > -When in callback mode, some readline commands can cause readline to seg > -fault by passing invalid contexts to callback functions. > - > -Patch (apply with `patch -p0'): > - > -*** ../readline-6.3/readline.c 2013-10-28 14:58:06.000000000 -0400 > ---- readline.c 2014-03-10 14:15:02.000000000 -0400 > -*************** > -*** 745,749 **** > -=C2=A0=C2=A0 > -=C2=A0=C2=A0=C2=A0=C2=A0RL_CHECK_SIGNALS (); > -!=C2=A0=C2=A0=C2=A0if (r =3D=3D 0) /* success! */ > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0{ > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0_rl_keyseq_chain_dispose (= ); > ---- 745,750 ---- > -=C2=A0=C2=A0 > -=C2=A0=C2=A0=C2=A0=C2=A0RL_CHECK_SIGNALS (); > -!=C2=A0=C2=A0=C2=A0/* We only treat values < 0 specially to simulate recur= sion. */ > -!=C2=A0=C2=A0=C2=A0if (r >=3D 0 || (r =3D=3D -1 && (cxt->flags & KSEQ_SUBS= EQ) =3D=3D 0)) /* > success! or failure! */ > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0{ > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0_rl_keyseq_chain_dispose (= ); > -*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500 > ---- patchlevel 2014-03-21 08:28:40.000000000 -0400 > -*************** > -*** 1,3 **** > -=C2=A0=C2=A0# Do not edit -- exists only for use by patch > -=C2=A0=C2=A0 > -! 1 > ---- 1,3 ---- > -=C2=A0=C2=A0# Do not edit -- exists only for use by patch > -=C2=A0=C2=A0 > -! 2 > diff --git a/src/patches/readline/readline63-003 > b/src/patches/readline/readline63-003 > deleted file mode 100644 > index d2cad94..0000000 > --- a/src/patches/readline/readline63-003 > +++ /dev/null > @@ -1,47 +0,0 @@ > - =C2=A0=C2=A0=C2=A0READLINE PATCH REPORT > - =C2=A0=C2=A0=C2=A0=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > - > -Readline-Release: 6.3 > -Patch-ID: readline63-003 > - > -Bug-Reported-by: > -Bug-Reference-ID: > -Bug-Reference-URL: > - > -Bug-Description: > - > -There are debugging functions in the readline release that are theoretical= ly > -exploitable as security problems.=C2=A0=C2=A0They are not public functions= , but have > -global linkage. > - > -Patch (apply with `patch -p0'): > - > -*** ../readline-6.3/util.c 2013-09-02 13:36:12.000000000 -0400 > ---- util.c 2014-03-20 10:25:53.000000000 -0400 > -*************** > -*** 477,480 **** > ---- 479,483 ---- > -=C2=A0=C2=A0} > -=C2=A0=C2=A0 > -+ #if defined (DEBUG) > -=C2=A0=C2=A0#if defined (USE_VARARGS) > -=C2=A0=C2=A0static FILE *_rl_tracefp; > -*************** > -*** 539,542 **** > ---- 542,546 ---- > -=C2=A0=C2=A0} > -=C2=A0=C2=A0#endif > -+ #endif /* DEBUG */ > -=C2=A0=C2=A0 > -=C2=A0=C2=A0 > -*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500 > ---- patchlevel 2014-03-21 08:28:40.000000000 -0400 > -*************** > -*** 1,3 **** > -=C2=A0=C2=A0# Do not edit -- exists only for use by patch > -=C2=A0=C2=A0 > -! 2 > ---- 1,3 ---- > -=C2=A0=C2=A0# Do not edit -- exists only for use by patch > -=C2=A0=C2=A0 > -! 3 > diff --git a/src/patches/readline/readline63-004 > b/src/patches/readline/readline63-004 > deleted file mode 100644 > index 3cd89e3..0000000 > --- a/src/patches/readline/readline63-004 > +++ /dev/null > @@ -1,45 +0,0 @@ > - =C2=A0=C2=A0=C2=A0READLINE PATCH REPORT > - =C2=A0=C2=A0=C2=A0=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > - > -Readline-Release: 6.3 > -Patch-ID: readline63-004 > - > -Bug-Reported-by: Egmont Koblinger > -Bug-Reference-ID: @mail.gmail.com> > -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-03/ > msg00153.html > - > -Bug-Description: > - > -The signal handling changes to bash and readline (to avoid running any code > -in a signal handler context) cause the cursor to be placed on the wrong > -line of a multi-line command after a ^C interrupts editing. > - > -Patch (apply with `patch -p0'): > - > -*** ../readline-6.3-patched/display.c 2013-12-27 13:10:56.000000000 > -0500 > ---- display.c 2014-03-27 11:52:45.000000000 -0400 > -*************** > -*** 2678,2682 **** > -=C2=A0=C2=A0=C2=A0=C2=A0if (_rl_echoing_p) > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0{ > -!=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0_rl_move_vert (_rl_vis_botlin); > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0_rl_vis_botlin =3D 0; > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0fflush (rl_outstream); > ---- 2678,2683 ---- > -=C2=A0=C2=A0=C2=A0=C2=A0if (_rl_echoing_p) > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0{ > -!=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0if (_rl_vis_botlin > 0) /* mino= r optimization plus bug fix */ > -!=C2=A0 _rl_move_vert (_rl_vis_botlin); > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0_rl_vis_botlin =3D 0; > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0fflush (rl_outstream); > -*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500 > ---- patchlevel 2014-03-21 08:28:40.000000000 -0400 > -*************** > -*** 1,3 **** > -=C2=A0=C2=A0# Do not edit -- exists only for use by patch > -=C2=A0=C2=A0 > -! 3 > ---- 1,3 ---- > -=C2=A0=C2=A0# Do not edit -- exists only for use by patch > -=C2=A0=C2=A0 > -! 4 > diff --git a/src/patches/readline/readline63-005 > b/src/patches/readline/readline63-005 > deleted file mode 100644 > index 8a63738..0000000 > --- a/src/patches/readline/readline63-005 > +++ /dev/null > @@ -1,58 +0,0 @@ > - =C2=A0=C2=A0=C2=A0READLINE PATCH REPORT > - =C2=A0=C2=A0=C2=A0=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > - > -Readline-Release: 6.3 > -Patch-ID: readline63-005 > - > -Bug-Reported-by: Juergen Daubert > -Bug-Reference-ID: <20140303180430.GA7346(a)jue.netz> > -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2014 > -03/msg00002.html > - > -Bug-Description: > - > -There are still applications using the deprecated Function/VFunction/etc. > -typedefs in rltypedefs.h.=C2=A0=C2=A0This patch restores the typedefs, but= attempts > -to mark them as deprecated using gcc/clang attributes.=C2=A0=C2=A0Thanks t= o Max Horn > -for the suggestion. > - > -Patch (apply with `patch -p0'): > - > -*** ../readline-6.3-patched/rltypedefs.h 2011-03-26 14:53:31.000000000 > -0400 > ---- rltypedefs.h 2014-04-10 11:30:45.000000000 -0400 > -*************** > -*** 27,30 **** > ---- 27,49 ---- > -=C2=A0=C2=A0#endif > -=C2=A0=C2=A0 > -+ /* Old-style, attempt to mark as deprecated in some way people will noti= ce. > */ > -+=C2=A0 > -+ #if !defined (_FUNCTION_DEF) > -+ #=C2=A0=C2=A0define _FUNCTION_DEF > -+=C2=A0 > -+ #if defined(__GNUC__) || defined(__clang__) > -+ typedef int Function () __attribute__ ((deprecated)); > -+ typedef void VFunction () __attribute__ ((deprecated)); > -+ typedef char *CPFunction () __attribute__ ((deprecated)); > -+ typedef char **CPPFunction () __attribute__ ((deprecated)); > -+ #else > -+ typedef int Function (); > -+ typedef void VFunction (); > -+ typedef char *CPFunction (); > -+ typedef char **CPPFunction (); > -+ #endif > -+=C2=A0 > -+ #endif /* _FUNCTION_DEF */ > -+=C2=A0 > -=C2=A0=C2=A0/* New style. */ > -=C2=A0=C2=A0 > -*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500 > ---- patchlevel 2014-03-21 08:28:40.000000000 -0400 > -*************** > -*** 1,3 **** > -=C2=A0=C2=A0# Do not edit -- exists only for use by patch > -=C2=A0=C2=A0 > -! 4 > ---- 1,3 ---- > -=C2=A0=C2=A0# Do not edit -- exists only for use by patch > -=C2=A0=C2=A0 > -! 5 > diff --git a/src/patches/readline/readline63-006 > b/src/patches/readline/readline63-006 > deleted file mode 100644 > index a3f0930..0000000 > --- a/src/patches/readline/readline63-006 > +++ /dev/null > @@ -1,63 +0,0 @@ > - =C2=A0=C2=A0=C2=A0READLINE PATCH REPORT > - =C2=A0=C2=A0=C2=A0=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > - > -Readline-Release: 6.3 > -Patch-ID: readline63-006 > - > -Bug-Reported-by: > -Bug-Reference-ID: as.info> > -Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-04/ > msg00069.html > - > -Bug-Description: > - > -Using reverse-i-search when horizontal scrolling is enabled does not > redisplay > -the entire line containing the successful search results. > - > -Patch (apply with `patch -p0'): > - > -*** ../readline-6.3-patched/display.c 2014-04-08 18:19:36.000000000 > -0400 > ---- display.c 2014-04-20 18:32:52.000000000 -0400 > -*************** > -*** 1638,1642 **** > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0the spot of first difference is = before the end of the invisible chars, > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0lendiff needs to be adjusted. */ > -!=C2=A0=C2=A0=C2=A0if (current_line =3D=3D 0 && !_rl_horizontal_scroll_mod= e && > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0current_invis_chars !=3D v= isible_wrap_offset) > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0{ > ---- 1638,1642 ---- > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0the spot of first difference is = before the end of the invisible chars, > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0lendiff needs to be adjusted. */ > -!=C2=A0=C2=A0=C2=A0if (current_line =3D=3D 0 && /* !_rl_horizontal_scroll_= mode && */ > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0current_invis_chars !=3D v= isible_wrap_offset) > -=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0{ > -*************** > -*** 1826,1831 **** > -=C2=A0=C2=A0 _rl_last_c_pos +=3D bytes_to_insert; > -=C2=A0=C2=A0 > -=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0if (_rl_horizontal_scroll= _mode && ((oe-old) > (ne-new))) > -!=C2=A0 goto clear_rest_of_line; > -=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0} > -=C2=A0=C2=A0 } > ---- 1826,1836 ---- > -=C2=A0=C2=A0 _rl_last_c_pos +=3D bytes_to_insert; > -=C2=A0=C2=A0 > -+=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0/* XXX - we only want to do th= is if we are at the end of the > line > -+=C2=A0 =C2=A0so we move there with _rl_move_cursor_relative */ > -=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0if (_rl_horizontal_scroll= _mode && ((oe-old) > (ne-new))) > -!=C2=A0 { > -!=C2=A0 =C2=A0=C2=A0_rl_move_cursor_relative (ne-new, new); > -!=C2=A0 =C2=A0=C2=A0goto clear_rest_of_line; > -!=C2=A0 } > -=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0} > -=C2=A0=C2=A0 } > -*** ../readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500 > ---- patchlevel 2014-03-21 08:28:40.000000000 -0400 > -*************** > -*** 1,3 **** > -=C2=A0=C2=A0# Do not edit -- exists only for use by patch > -=C2=A0=C2=A0 > -! 5 > ---- 1,3 ---- > -=C2=A0=C2=A0# Do not edit -- exists only for use by patch > -=C2=A0=C2=A0 > -! 6 > diff --git a/src/patches/readline/readline70-001 > b/src/patches/readline/readline70-001 > new file mode 100644 > index 0000000..437a440 > --- /dev/null > +++ b/src/patches/readline/readline70-001 > @@ -0,0 +1,57 @@ > + =C2=A0=C2=A0=C2=A0READLINE PATCH REPORT > + =C2=A0=C2=A0=C2=A0=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > + > +Readline-Release: 7.0 > +Patch-ID: readline70-001 > + > +Bug-Reported-by:=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0Sean Zha <= freeman_cha(a)hotmail.com> > +Bug-Reference-ID:=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 .prod.exchangelabs.com> > +Bug-Reference-URL:=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0http://lists.gnu.org= /archive/html/bug-bash/2016-09/ms > g00107.html > + > +Bug-Description: > + > +Readline-7.0 changed the way the history list is initially allocated to > reduce > +the number of reallocations and copies.=C2=A0=C2=A0Users who set the readl= ine > +history-size variable to a very large number to essentially unlimit the si= ze > +of the history list will get memory allocation errors=C2=A0 > + > +Patch (apply with `patch -p0'): > + > +*** ../readline-7.0/history.c 2015-12-28 13:50:31.000000000 -0500 > +--- history.c 2016-09-30 14:28:40.000000000 -0400 > +*************** > +*** 58,61 **** > +--- 58,63 ---- > +=C2=A0=C2=A0#define DEFAULT_HISTORY_INITIAL_SIZE 502 > +=C2=A0=C2=A0 > ++ #define MAX_HISTORY_INITIAL_SIZE 8192 > ++=C2=A0 > +=C2=A0=C2=A0/* The number of slots to increase the_history by. */ > +=C2=A0=C2=A0#define DEFAULT_HISTORY_GROW_SIZE 50 > +*************** > +*** 308,312 **** > +=C2=A0=C2=A0 { > +=C2=A0=C2=A0 =C2=A0=C2=A0if (history_stifled && history_max_entries > 0) > +!=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0history_size =3D history_max_entries + 2; > +=C2=A0=C2=A0 =C2=A0=C2=A0else > +=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0history_size =3D DEFAULT_HISTORY_INIT= IAL_SIZE; > +--- 310,316 ---- > +=C2=A0=C2=A0 { > +=C2=A0=C2=A0 =C2=A0=C2=A0if (history_stifled && history_max_entries > 0) > +!=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0history_size =3D (history_max_entries > MA= X_HISTORY_INITIAL_SIZE) > +!=C2=A0 ? MAX_HISTORY_INITIAL_SIZE > +!=C2=A0 : history_max_entries + 2; > +=C2=A0=C2=A0 =C2=A0=C2=A0else > +=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0history_size =3D DEFAULT_HISTORY_INIT= IAL_SIZE; > + > +*** ../readline-7.0/patchlevel 2013-11-15 08:11:11.000000000 -0500 > +--- patchlevel 2014-03-21 08:28:40.000000000 -0400 > +*************** > +*** 1,3 **** > +=C2=A0=C2=A0# Do not edit -- exists only for use by patch > +=C2=A0=C2=A0 > +! 0 > +--- 1,3 ---- > +=C2=A0=C2=A0# Do not edit -- exists only for use by patch > +=C2=A0=C2=A0 > +! 1 > diff --git a/src/patches/readline/readline70-002 > b/src/patches/readline/readline70-002 > new file mode 100644 > index 0000000..ac76dae > --- /dev/null > +++ b/src/patches/readline/readline70-002 > @@ -0,0 +1,103 @@ > + =C2=A0=C2=A0=C2=A0READLINE PATCH REPORT > + =C2=A0=C2=A0=C2=A0=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > + > +Readline-Release: 7.0 > +Patch-ID: readline70-002 > + > +Bug-Reported-by: Hong Cho > +Bug-Reference-ID: te.net> > +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2016 > -12/msg00002.html > + > +Bug-Description: > + > +There is a race condition in add_history() that can be triggered by a fatal > +signal arriving between the time the history length is updated and the time > +the history list update is completed. A later attempt to reference an > +invalid history entry can cause a crash. > + > +Patch (apply with `patch -p0'): > + > +*** ../readline-7.0-patched/history.c 2016-11-11 13:42:49.000000000 > -0500 > +--- history.c 2016-12-05 10:37:51.000000000 -0500 > +*************** > +*** 280,283 **** > +--- 280,284 ---- > +=C2=A0=C2=A0{ > +=C2=A0=C2=A0=C2=A0=C2=A0HIST_ENTRY *temp; > ++=C2=A0=C2=A0=C2=A0int new_length; > +=C2=A0=C2=A0 > +=C2=A0=C2=A0=C2=A0=C2=A0if (history_stifled && (history_length =3D=3D hist= ory_max_entries)) > +*************** > +*** 296,306 **** > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0/* Copy the rest of the en= tries, moving down one slot.=C2=A0=C2=A0Copy includes > +=C2=A0=C2=A0 =C2=A0trailing NULL.=C2=A0=C2=A0*/ > +- #if 0 > +-=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0for (i =3D 0; i < history_lengt= h; i++) > +-=C2=A0 the_history[i] =3D the_history[i + 1]; > +- #else > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0memmove (the_history, the_= history + 1, history_length * sizeof > (HIST_ENTRY *)); > +- #endif > +=C2=A0=C2=A0 > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0history_base++; > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0} > +--- 297,303 ---- > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0/* Copy the rest of the en= tries, moving down one slot.=C2=A0=C2=A0Copy includes > +=C2=A0=C2=A0 =C2=A0trailing NULL.=C2=A0=C2=A0*/ > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0memmove (the_history, the_= history + 1, history_length * sizeof > (HIST_ENTRY *)); > +=C2=A0=C2=A0 > ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0new_length =3D history_length; > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0history_base++; > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0} > +*************** > +*** 316,320 **** > +=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0history_size =3D DEFAULT_HISTORY_INIT= IAL_SIZE; > +=C2=A0=C2=A0 =C2=A0=C2=A0the_history =3D (HIST_ENTRY **)xmalloc (history_s= ize * sizeof > (HIST_ENTRY *)); > +!=C2=A0 =C2=A0=C2=A0history_length =3D 1; > +=C2=A0=C2=A0 } > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0else > +--- 313,317 ---- > +=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0history_size =3D DEFAULT_HISTORY_INIT= IAL_SIZE; > +=C2=A0=C2=A0 =C2=A0=C2=A0the_history =3D (HIST_ENTRY **)xmalloc (history_s= ize * sizeof > (HIST_ENTRY *)); > +!=C2=A0 =C2=A0=C2=A0new_length =3D 1; > +=C2=A0=C2=A0 } > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0else > +*************** > +*** 326,330 **** > +=C2=A0=C2=A0 xrealloc (the_history, history_size * sizeof (HIST_ENTRY > *)); > +=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0} > +!=C2=A0 =C2=A0=C2=A0history_length++; > +=C2=A0=C2=A0 } > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0} > +--- 323,327 ---- > +=C2=A0=C2=A0 xrealloc (the_history, history_size * sizeof (HIST_ENTRY > *)); > +=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0} > +!=C2=A0 =C2=A0=C2=A0new_length =3D history_length + 1; > +=C2=A0=C2=A0 } > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0} > +*************** > +*** 332,337 **** > +=C2=A0=C2=A0=C2=A0=C2=A0temp =3D alloc_history_entry ((char *)string, hist= _inittime ()); > +=C2=A0=C2=A0 > +!=C2=A0=C2=A0=C2=A0the_history[history_length] =3D (HIST_ENTRY *)NULL; > +!=C2=A0=C2=A0=C2=A0the_history[history_length - 1] =3D temp; > +=C2=A0=C2=A0} > +=C2=A0=C2=A0 > +--- 329,335 ---- > +=C2=A0=C2=A0=C2=A0=C2=A0temp =3D alloc_history_entry ((char *)string, hist= _inittime ()); > +=C2=A0=C2=A0 > +!=C2=A0=C2=A0=C2=A0the_history[new_length] =3D (HIST_ENTRY *)NULL; > +!=C2=A0=C2=A0=C2=A0the_history[new_length - 1] =3D temp; > +!=C2=A0=C2=A0=C2=A0history_length =3D new_length; > +=C2=A0=C2=A0} > +=C2=A0=C2=A0 > +*** ../readline-7.0/patchlevel 2013-11-15 08:11:11.000000000 -0500 > +--- patchlevel 2014-03-21 08:28:40.000000000 -0400 > +*************** > +*** 1,3 **** > +=C2=A0=C2=A0# Do not edit -- exists only for use by patch > +=C2=A0=C2=A0 > +! 1 > +--- 1,3 ---- > +=C2=A0=C2=A0# Do not edit -- exists only for use by patch > +=C2=A0=C2=A0 > +! 2 > diff --git a/src/patches/readline/readline70-003 > b/src/patches/readline/readline70-003 > new file mode 100644 > index 0000000..a19cae6 > --- /dev/null > +++ b/src/patches/readline/readline70-003 > @@ -0,0 +1,40 @@ > + =C2=A0=C2=A0=C2=A0READLINE PATCH REPORT > + =C2=A0=C2=A0=C2=A0=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > + > +Readline-Release: 7.0 > +Patch-ID: readline70-003 > + > +Bug-Reported-by: Fr=C3=A9d=C3=A9ric Bri=C3=A8re > +Bug-Reference-ID: <20170120180724.7ydq7fb2hsp366dj(a)fabul.fbriere.net> > +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2017 > -01/msg00002.html > + > +Bug-Description: > + > +Readline-7.0 uses pselect(2) to allow readline to handle signals that do n= ot > +interrupt read(2), such as SIGALRM, before reading another character.=C2= =A0=C2=A0The > +signal mask used in the pselect call did not take into account signals the > +calling application blocked before calling readline(). > + > +Patch (apply with `patch -p0'): > + > +*** ../readline-7.0-patched/input.c 2016-08-30 10:21:47.000000000 > -0400 > +--- input.c 2017-01-23 10:21:56.000000000 -0500 > +*************** > +*** 514,517 **** > +--- 514,518 ---- > +=C2=A0=C2=A0#if defined (HAVE_PSELECT) > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0sigemptyset (&empty_set); > ++=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0sigprocmask (SIG_BLOCK, (sigset= _t *)NULL, &empty_set); > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0FD_ZERO (&readfds); > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0FD_SET (fileno (stream), &= readfds); > +*** ../readline-7.0/patchlevel 2013-11-15 08:11:11.000000000 -0500 > +--- patchlevel 2014-03-21 08:28:40.000000000 -0400 > +*************** > +*** 1,3 **** > +=C2=A0=C2=A0# Do not edit -- exists only for use by patch > +=C2=A0=C2=A0 > +! 2 > +--- 1,3 ---- > +=C2=A0=C2=A0# Do not edit -- exists only for use by patch > +=C2=A0=C2=A0 > +! 3 --===============3492585503016696403== Content-Type: application/pgp-signature Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="signature.asc" MIME-Version: 1.0 LS0tLS1CRUdJTiBQR1AgU0lHTkFUVVJFLS0tLS0KVmVyc2lvbjogR251UEcgdjIKCmlRSWNCQUFC Q2dBR0JRSlpOOENhQUFvSkVJQjU4UDl2a0FrSGxmY1FBSjFnYnNIaTIyMWxrRlVXZ1duSUhOMFYK VEl2UXRDNlpHc0FNWDJBUE9JVlllQzliQ3ZkODh1c3FZaHJUa21VWDhWdUlkeFVCallUR2dUWkFS dGVJOFJJZQowODhPUEhrTHdBckVnTTdCdTZvRkMvalhaWnh6dWdWNkNnNVBod2Q3UHJOS3M3WG5G enA0MmlUTzZTRDRkeUlQCnJ2aWNYNzRDWjVtVzQ3aGdoeDdVUTg4T05OYm5XRW5tRTE5dDhsQjhn OU9pWmFGemozYjBGY0duTVV4SGlxNy8KSXhleERSTmNweUJLOTlJUG1xeUhZQUR3Z3dxTWtFek5N VnpMeGNoemVmUjZSY3dTS0dRQUs5S3l6M0VaUWxRTgoyUlE5WHIyTTZBRWRFL3BsMHByRnZSeUN0 RHAyMHY3c1N1bDB4RVpCbllXZ3JVR2ovcDVJdCtnRlMwRlRtZUg5CnBnRW1GUVUxU053MjBOUnJx d1ZPR0tsb2xHbG82SEFRTmtWckxyV1luakhqdjFmWUY2Yk04ejlVTmdzc3FsdmoKSTZ2M1p0Z0tw cmxqbnhNazFEcmVKZlVObGdkd1F4RVVvZHFDSmZ5V2ZXUGtBL1RSeEpkVSt4MVlOTWFBaUpkTQpS NGdHbngwSlBLV1NXSnY5TEZCb3ZWZkxCWldVY2R2MTdIVUFRTmRkNWhIdnFVbWQxWktKdndFSjkw bDJLQTRiCnl3NGZBMjd4U1pJd0FFbENiTXFrTDZiMnNCc3Y2L1VmNUZ5WjBBVGxLVU05VFpGRXFt cHpIeEFNRWZmcCthR1kKajVUK0lwNXZPQUhXTUtpdDE0aEg5RWpIU1RuUkQ1cUdFWWZac2dwRzYy M25odnZEVjZ6bUhuT0wwR01ucDhpRQpyRnlzdlNOTUh2S3plclkxaExVSQo9Y2lrOQotLS0tLUVO RCBQR1AgU0lHTkFUVVJFLS0tLS0K --===============3492585503016696403==--