From 7d1f5038f6e38533da9487a62e683a9222fe7208 Mon Sep 17 00:00:00 2001 From: Patrick J Volkerding Date: Mon, 29 Jun 2020 18:21:49 +0000 Subject: Mon Jun 29 18:21:49 UTC 2020 a/haveged-1.9.13-x86_64-1.txz: Upgraded. a/util-linux-2.35.2-x86_64-5.txz: Rebuilt. Also fix chsh when linked with libreadline. Thanks to Karel Zak. l/gtk+3-3.24.21-x86_64-1.txz: Upgraded. xap/mozilla-firefox-68.10.0esr-x86_64-1.txz: Upgraded. This release contains security fixes and improvements. For more information, see: https://www.mozilla.org/en-US/firefox/68.10.0/releasenotes/ (* Security fix *) --- ...eadline-prompt-for-each-field-on-a-separa.patch | 79 ++++++++++++++++++++++ source/a/util-linux/util-linux.SlackBuild | 6 +- source/a/util-linux/util-linux.chfn.diff | 18 ----- 3 files changed, 82 insertions(+), 21 deletions(-) create mode 100644 source/a/util-linux/0001-chfn-Make-readline-prompt-for-each-field-on-a-separa.patch delete mode 100644 source/a/util-linux/util-linux.chfn.diff (limited to 'source') diff --git a/source/a/util-linux/0001-chfn-Make-readline-prompt-for-each-field-on-a-separa.patch b/source/a/util-linux/0001-chfn-Make-readline-prompt-for-each-field-on-a-separa.patch new file mode 100644 index 00000000..2c2f3903 --- /dev/null +++ b/source/a/util-linux/0001-chfn-Make-readline-prompt-for-each-field-on-a-separa.patch @@ -0,0 +1,79 @@ +From 49848aa53ae3a599277e8ceb50feda565f140b45 Mon Sep 17 00:00:00 2001 +From: Damien Goutte-Gattat +Date: Sat, 27 Jun 2020 19:58:13 +0100 +Subject: [PATCH] chfn: Make readline prompt for each field on a separate line + +When readline is called to get user input, it is called without +a prompt argument. As a result, if the user does not enter anything +for a given field, then the next field is displayed on the same +line, yielding the following output: + + $ chfn + Changing finger information for user. + Password: + Name []: Office []: Office Phone []: Home Phone []: + +instead of the expected: + + $ chfn + Changing finger information for user. + Password: + Full Name []: + Room Number []: + Work Phone []: + Home Phone []: + +This patch restores the expected behavior by feeding readline with +a character to display as "prompt". + +[kzak@redhat.com: - do the same change in chsh + - use ' ' rather than '\n' for non-readline code] + +Signed-off-by: Damien Goutte-Gattat +Signed-off-by: Karel Zak +--- + login-utils/chfn.c | 5 +++-- + login-utils/chsh.c | 5 +++-- + 2 files changed, 6 insertions(+), 4 deletions(-) + +diff --git a/login-utils/chfn.c b/login-utils/chfn.c +index 1b203a83e..4b2b42912 100644 +--- a/login-utils/chfn.c ++++ b/login-utils/chfn.c +@@ -235,12 +235,13 @@ static char *ask_new_field(struct chfn_control *ctl, const char *question, + if (!def_val) + def_val = ""; + while (true) { +- printf("%s [%s]: ", question, def_val); ++ printf("%s [%s]:", question, def_val); + __fpurge(stdin); + #ifdef HAVE_LIBREADLINE + rl_bind_key('\t', rl_insert); +- if ((buf = readline(NULL)) == NULL) ++ if ((buf = readline(" ")) == NULL) + #else ++ putchar(' '); + if (getline(&buf, &dummy, stdin) < 0) + #endif + errx(EXIT_FAILURE, _("Aborted.")); +diff --git a/login-utils/chsh.c b/login-utils/chsh.c +index a9ebec86f..17cc9f1e0 100644 +--- a/login-utils/chsh.c ++++ b/login-utils/chsh.c +@@ -205,10 +205,11 @@ static char *ask_new_shell(char *question, char *oldshell) + #endif + if (!oldshell) + oldshell = ""; +- printf("%s [%s]\n", question, oldshell); ++ printf("%s [%s]:", question, oldshell); + #ifdef HAVE_LIBREADLINE +- if ((ans = readline("> ")) == NULL) ++ if ((ans = readline(" ")) == NULL) + #else ++ putchar(' '); + if (getline(&ans, &dummy, stdin) < 0) + #endif + return NULL; +-- +2.27.0 + diff --git a/source/a/util-linux/util-linux.SlackBuild b/source/a/util-linux/util-linux.SlackBuild index 7d149b4f..05e1ad4c 100755 --- a/source/a/util-linux/util-linux.SlackBuild +++ b/source/a/util-linux/util-linux.SlackBuild @@ -26,7 +26,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=util-linux VERSION=${VERSION:-$(echo util-linux*.tar.xz | cut -d - -f 3 | rev | cut -f 3- -d . | rev)} -BUILD=${BUILD:-4} +BUILD=${BUILD:-5} ADJTIMEXVERS=1.29 SETSERIALVERS=2.17 @@ -123,8 +123,8 @@ zcat $CWD/util-linux.fdisk-no-solaris.diff.gz | patch -p1 --verbose || exit 1 # /dev/ram* devices in 'fdisk -l' output: zcat $CWD/util-linux.do.not.list.ram.devices.diff.gz | patch -p1 --verbose || exit 1 -# Fix a chfn bug when using readline: -zcat $CWD/util-linux.chfn.diff.gz | patch -p1 --verbose || exit 1 +# Fix chfn and chsh when using readline: +zcat $CWD/0001-chfn-Make-readline-prompt-for-each-field-on-a-separa.patch.gz | patch -p1 --verbose || exit 1 # This just call the configure script with $1 either being 2 for python2 # or 3 for python3. diff --git a/source/a/util-linux/util-linux.chfn.diff b/source/a/util-linux/util-linux.chfn.diff deleted file mode 100644 index 7947f72d..00000000 --- a/source/a/util-linux/util-linux.chfn.diff +++ /dev/null @@ -1,18 +0,0 @@ ---- ./login-utils/chfn.c.orig 2020-05-20 07:27:43.465013472 -0500 -+++ ./login-utils/chfn.c 2020-06-27 14:11:54.733895362 -0500 -@@ -236,12 +236,13 @@ - if (!def_val) - def_val = ""; - while (true) { -- printf("%s [%s]: ", question, def_val); -+ printf("%s [%s]:", question, def_val); - __fpurge(stdin); - #ifdef HAVE_LIBREADLINE - rl_bind_key('\t', rl_insert); -- if ((buf = readline(NULL)) == NULL) -+ if ((buf = readline(" ")) == NULL) - #else -+ printf(" "); - if (getline(&buf, &dummy, stdin) < 0) - #endif - errx(EXIT_FAILURE, _("Aborted.")); -- cgit v1.2.3