From f352f96cbece4c221bf144431dc74334291ed392 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Fri, 22 Jan 2021 12:06:43 +0100 Subject: [PATCH 01/44] Use current HTTPS links --- pinentry.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pinentry.spec b/pinentry.spec index 4ce0442..883216c 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -5,9 +5,9 @@ Release: 9%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPLv2+ -URL: http://www.gnupg.org/aegypten/ -Source0: ftp://ftp.gnupg.org/gcrypt/pinentry/%{name}-%{version}.tar.bz2 -Source1: ftp://ftp.gnupg.org/gcrypt/pinentry/%{name}-%{version}.tar.bz2.sig +URL: https://www.gnupg.org/ +Source0: https://gnupg.org/ftp/gcrypt/pinentry/%{name}-%{version}.tar.bz2 +Source1: https://gnupg.org/ftp/gcrypt/pinentry/%{name}-%{version}.tar.bz2.sig # borrowed from opensuse Source10: pinentry-wrapper From 50e9bd5e273181d7185bc1690ee92d4f9ddd25c8 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Fri, 22 Jan 2021 12:12:16 +0100 Subject: [PATCH 02/44] pinentry-1.1.1-1 --- .gitignore | 2 ++ pinentry.spec | 7 +++++-- sources | 4 ++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 7d05f0b..76d929e 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,5 @@ pinentry-0.8.0.tar.gz.sig /pinentry-0.9.7.tar.bz2.sig /pinentry-1.1.0.tar.bz2 /pinentry-1.1.0.tar.bz2.sig +/pinentry-1.1.1.tar.bz2 +/pinentry-1.1.1.tar.bz2.sig diff --git a/pinentry.spec b/pinentry.spec index 883216c..501b77b 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,7 +1,7 @@ Name: pinentry -Version: 1.1.0 -Release: 9%{?dist} +Version: 1.1.1 +Release: 1%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPLv2+ @@ -132,6 +132,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-emacs %changelog +* Fri Jan 22 2021 Jakub Jelen - 1.1.1-1 +- New upstream release (#1919127) + * Wed Jan 06 2021 Boris Ranto - 1.1.0-9 - enable pinentry-tty diff --git a/sources b/sources index 8b33b9e..f7b3987 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (pinentry-1.1.0.tar.bz2) = 5012672925bcb5f683358c259e55e4b87c67cf063ad52c759308933733025c33f7ce08e5b8019ffc101cbf7ef30499040ef2fd34a7611698e65e1593f80948cd -SHA512 (pinentry-1.1.0.tar.bz2.sig) = e3f82c188041546df57dccfcff8c0957eae38437ab5f60890304eb7ddf8e7e345d8e09dfc5931f37233781621c6a8847179ca79e003d107e844ae67fdde0d575 +SHA512 (pinentry-1.1.1.tar.bz2) = d6ab5af8ac2f3c9c05e09703e95d8e2676f9b2b7ceb97f6a31d101d0e9da7a1e106a6d3eabe86cab1bb35a4b119a7cba1380ac64bf13c61af0b3c48803116c12 +SHA512 (pinentry-1.1.1.tar.bz2.sig) = 2d56c0e8e2cf8471ed7431bfbc077020030c44b068de5ae5f3f62384986251aa7ea41674931aa0fc690c6ace9a359b7c3b5f10a7a813a2f34c41c491caba4487 From dd5f99093fb3224449cc091b416e526466c096ed Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Tue, 26 Jan 2021 10:48:59 +0100 Subject: [PATCH 03/44] Move pinentry-tty to separate subpackage --- pinentry.spec | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index 501b77b..6be9a9f 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -75,6 +75,15 @@ utilize the Assuan protocol as described by the aegypten project; see http://www.gnupg.org/aegypten/ for details. This package contains the emacs based version of the PIN entry dialog. +%package tty +Summary: Passphrase/PIN entry dialog in tty +Requires: %{name} = %{version}-%{release} +%description tty +Pinentry is a collection of simple PIN or passphrase entry dialogs which +utilize the Assuan protocol as described by the aegypten project; see +http://www.gnupg.org/aegypten/ for details. +This package contains the tty version of the PIN entry dialog. + %prep %setup -q @@ -111,7 +120,6 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %license COPYING %doc AUTHORS ChangeLog NEWS README THANKS TODO %{_bindir}/pinentry-curses -%{_bindir}/pinentry-tty %{_bindir}/pinentry %{_infodir}/pinentry.info* @@ -131,6 +139,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %files emacs %{_bindir}/pinentry-emacs +%files tty +%{_bindir}/pinentry-tty + %changelog * Fri Jan 22 2021 Jakub Jelen - 1.1.1-1 - New upstream release (#1919127) From b8e35995d5629f7b6ed1f04988accf01b7b59eef Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Tue, 26 Jan 2021 10:52:33 +0100 Subject: [PATCH 04/44] Use pinentry-tty only if installed. Restore fallback to curses version --- pinentry-wrapper | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pinentry-wrapper b/pinentry-wrapper index fd714ca..6dd72c5 100755 --- a/pinentry-wrapper +++ b/pinentry-wrapper @@ -71,12 +71,12 @@ then elif [ -n "$DISPLAY" -a -x /usr/bin/pinentry-qt ] then export PINENTRY_BINARY="/usr/bin/pinentry-qt" -# use pinentry-curses for interactive mode -elif [ -t 0 -a -t 1 ]; +# use pinentry-tty if installed +elif [ -x /usr/bin/pinentry-tty ] then - export PINENTRY_BINARY="/usr/bin/pinentry-curses" -# fallback to pinentry-tty in no TTY is provided -else export PINENTRY_BINARY="/usr/bin/pinentry-tty" +# pinentry-curses is installed by default +else + export PINENTRY_BINARY="/usr/bin/pinentry-curses" fi exec $PINENTRY_BINARY "$@" From ac229fb463df58cfe2a2d516d6d7bb886a24bf0e Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Tue, 26 Jan 2021 10:54:40 +0100 Subject: [PATCH 05/44] pinentry-1.1.1-2 --- pinentry.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index 6be9a9f..8aa8604 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,7 +1,7 @@ Name: pinentry Version: 1.1.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPLv2+ @@ -143,6 +143,10 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Tue Jan 26 2021 Jakub Jelen - 1.1.1-2 +- Move pinentry-tty to separate subpackage (#1782442) +- Update the wrapper selecting the appropriate version (#1918969) + * Fri Jan 22 2021 Jakub Jelen - 1.1.1-1 - New upstream release (#1919127) From df36c013d5db9d129a67d7829bc7312f5f4877ca Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 27 Jan 2021 08:06:35 +0000 Subject: [PATCH 06/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- pinentry.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index 8aa8604..9a9e29d 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,7 +1,7 @@ Name: pinentry Version: 1.1.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPLv2+ @@ -143,6 +143,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Wed Jan 27 2021 Fedora Release Engineering - 1.1.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Tue Jan 26 2021 Jakub Jelen - 1.1.1-2 - Move pinentry-tty to separate subpackage (#1782442) - Update the wrapper selecting the appropriate version (#1918969) From 6c3713bafb0efa0b06449ae34f55ca41670db505 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Wed, 14 Apr 2021 14:56:24 +0200 Subject: [PATCH 07/44] Address issues reported by coverity --- pinentry-1.1.1-coverity.patch | 97 +++++++++++++++++++++++++++++++++++ pinentry.spec | 3 ++ 2 files changed, 100 insertions(+) create mode 100644 pinentry-1.1.1-coverity.patch diff --git a/pinentry-1.1.1-coverity.patch b/pinentry-1.1.1-coverity.patch new file mode 100644 index 0000000..73b92aa --- /dev/null +++ b/pinentry-1.1.1-coverity.patch @@ -0,0 +1,97 @@ +commit a87d9e8f89f946a733c756c72bf5ec41e0a738b8 +Author: Jakub Jelen +Date: Wed Apr 14 15:51:27 2021 +0900 + + core,emacs,tty,curses: Fix memory leaks, invalid accese, and mistake. + + * pinentry/pinentry-curses.c (dialog_create): Free NEW. + [HAVE_NCURSESW] (dialog_run): Free OLD_CTYPE on error. + * pinentry/pinentry.c (pinentry_inq_genpin): Free VALUE on error. + * tty/pinentry-tty.c (tty_cmd_handler): Don't access closed FDs. + * pinentry/pinentry-emacs.c (set_labels): Fix for ->default_cancel. + + -- + + GnuPG-bug-id: 5384 + Signed-off-by: Jakub Jelen + +diff --git a/pinentry/pinentry-curses.c b/pinentry/pinentry-curses.c +index a3fe2e2..1c3008a 100644 +--- a/pinentry/pinentry-curses.c ++++ b/pinentry/pinentry-curses.c +@@ -315,6 +315,7 @@ dialog_create (pinentry_t pinentry, dialog_t dialog) + } \ + dialog->which = pinentry_utf8_to_local (pinentry->lc_ctype, \ + new ? new : default); \ ++ free (new); \ + if (!dialog->which) \ + { \ + err = 1; \ +@@ -873,6 +874,9 @@ dialog_run (pinentry_t pinentry, const char *tty_name, const char *tty_type) + { + pinentry->specific_err = gpg_error_from_syserror (); + pinentry->specific_err_loc = "open_tty_for_read"; ++#ifdef HAVE_NCURSESW ++ free (old_ctype); ++#endif + return confirm_mode? 0 : -1; + } + ttyfo = fopen (tty_name, "w"); +@@ -883,6 +887,9 @@ dialog_run (pinentry_t pinentry, const char *tty_name, const char *tty_type) + errno = err; + pinentry->specific_err = gpg_error_from_syserror (); + pinentry->specific_err_loc = "open_tty_for_write"; ++#ifdef HAVE_NCURSESW ++ free (old_ctype); ++#endif + return confirm_mode? 0 : -1; + } + screen = newterm (tty_type, ttyfo, ttyfi); +@@ -897,6 +904,9 @@ dialog_run (pinentry_t pinentry, const char *tty_name, const char *tty_type) + errno = ENOTTY; + pinentry->specific_err = gpg_error_from_syserror (); + pinentry->specific_err_loc = "isatty"; ++#ifdef HAVE_NCURSESW ++ free (old_ctype); ++#endif + return confirm_mode? 0 : -1; + } + init_screen = 1; +diff --git a/pinentry/pinentry-emacs.c b/pinentry/pinentry-emacs.c +index 16ae1c2..9685b67 100644 +--- a/pinentry/pinentry-emacs.c ++++ b/pinentry/pinentry-emacs.c +@@ -498,7 +498,7 @@ set_labels (pinentry_t pe) + set_label (pe, "SETOK", pe->default_ok); + if (pe->cancel) + set_label (pe, "SETCANCEL", pe->cancel); +- else if (pe->default_ok) ++ else if (pe->default_cancel) + set_label (pe, "SETCANCEL", pe->default_cancel); + if (pe->notok) + set_label (pe, "SETNOTOK", pe->notok); +diff --git a/pinentry/pinentry.c b/pinentry/pinentry.c +index ef81f12..26ec77a 100644 +--- a/pinentry/pinentry.c ++++ b/pinentry/pinentry.c +@@ -656,6 +656,7 @@ pinentry_inq_genpin (pinentry_t pin) + if (rc) + { + fprintf (stderr, "ASSUAN READ LINE failed: rc=%d\n", rc); ++ free (value); + return 0; + } + } +diff --git a/tty/pinentry-tty.c b/tty/pinentry-tty.c +index 403dd60..4a2b67f 100644 +--- a/tty/pinentry-tty.c ++++ b/tty/pinentry-tty.c +@@ -559,7 +559,7 @@ tty_cmd_handler (pinentry_t pinentry) + } + } + +- if (terminal_save (fileno (ttyfi)) < 0) ++ if (!rc && terminal_save (fileno (ttyfi)) < 0) + rc = -1; + + if (! rc) diff --git a/pinentry.spec b/pinentry.spec index 9a9e29d..5528270 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -9,6 +9,8 @@ URL: https://www.gnupg.org/ Source0: https://gnupg.org/ftp/gcrypt/pinentry/%{name}-%{version}.tar.bz2 Source1: https://gnupg.org/ftp/gcrypt/pinentry/%{name}-%{version}.tar.bz2.sig +Patch1: pinentry-1.1.1-coverity.patch + # borrowed from opensuse Source10: pinentry-wrapper @@ -86,6 +88,7 @@ This package contains the tty version of the PIN entry dialog. %prep %setup -q +%patch1 -p1 -b .coverity %build From ef5476b7db6972fe46c188fbe4db15b341e387ca Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Wed, 14 Apr 2021 14:58:53 +0200 Subject: [PATCH 08/44] pinentry-1.1.1-4 --- pinentry.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index 5528270..ea2196d 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,7 +1,7 @@ Name: pinentry Version: 1.1.1 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPLv2+ @@ -146,6 +146,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Wed Apr 14 2021 Jakub Jelen - 1.1.1-4 +- Fix issues reported by coverity + * Wed Jan 27 2021 Fedora Release Engineering - 1.1.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From caf43c1c53c228278a6ce3044e9955bc2195d38b Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Wed, 14 Apr 2021 17:34:59 +0200 Subject: [PATCH 09/44] SC2166: Avoid using -a in test --- pinentry-wrapper | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pinentry-wrapper b/pinentry-wrapper index 6dd72c5..b017edb 100755 --- a/pinentry-wrapper +++ b/pinentry-wrapper @@ -32,7 +32,7 @@ done # export DISPLAY if pinentry is meant to be run on a different display # check the KDE_FULL_SESSION variable otherwise -if [ -n "$display" -a "$DISPLAY" != "$display" ]; then +if [ -n "$display" ] && [ "$DISPLAY" != "$display" ]; then export DISPLAY="$display" elif [ -n "$KDE_FULL_SESSION" ]; then kde_running=1 @@ -43,7 +43,7 @@ fi type xprop >/dev/null 2>/dev/null XPROP=$? -if [ -n "$DISPLAY" -a $XPROP -eq 0 ]; then +if [ -n "$DISPLAY" ] && [ $XPROP -eq 0 ]; then xprop -root | grep "^KDE_FULL_SESSION" >/dev/null 2>/dev/null if test $? -eq 0; then kde_running=1 @@ -56,19 +56,19 @@ if [ -n "$PINENTRY_BINARY" ]; then export PINENTRY_BINARY="$PINENTRY_BINARY" # if KDE is detected and pinentry-qt exists, use pinentry-qt -elif [ -n "$kde_running" -a -x /usr/bin/pinentry-qt ] +elif [ -n "$kde_running" ] && [ -x /usr/bin/pinentry-qt ] then export PINENTRY_BINARY="/usr/bin/pinentry-qt" # otherwise test if pinentry-gnome3 is installed -elif [ -n "$DISPLAY" -a -x /usr/bin/pinentry-gnome3 ] +elif [ -n "$DISPLAY" ] && [ -x /usr/bin/pinentry-gnome3 ] then export PINENTRY_BINARY="/usr/bin/pinentry-gnome3" # otherwise test if pinentry-gtk-2 is installed -elif [ -n "$DISPLAY" -a -x /usr/bin/pinentry-gtk-2 ] +elif [ -n "$DISPLAY" ] && [ -x /usr/bin/pinentry-gtk-2 ] then export PINENTRY_BINARY="/usr/bin/pinentry-gtk-2" # otherwise test if pinentry-qt exists although KDE is not detected -elif [ -n "$DISPLAY" -a -x /usr/bin/pinentry-qt ] +elif [ -n "$DISPLAY" ] && [ -x /usr/bin/pinentry-qt ] then export PINENTRY_BINARY="/usr/bin/pinentry-qt" # use pinentry-tty if installed From 6d6a8451f1477fe60760222d7225bb2570b6f383 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Wed, 14 Apr 2021 17:35:35 +0200 Subject: [PATCH 10/44] SC2034: Remove unused variable --- pinentry-wrapper | 2 -- 1 file changed, 2 deletions(-) diff --git a/pinentry-wrapper b/pinentry-wrapper index b017edb..e4318df 100755 --- a/pinentry-wrapper +++ b/pinentry-wrapper @@ -36,7 +36,6 @@ if [ -n "$display" ] && [ "$DISPLAY" != "$display" ]; then export DISPLAY="$display" elif [ -n "$KDE_FULL_SESSION" ]; then kde_running=1 - kde_ver="$KDE_SESSION_VERSION" fi # Check for presence of xprop binary @@ -47,7 +46,6 @@ if [ -n "$DISPLAY" ] && [ $XPROP -eq 0 ]; then xprop -root | grep "^KDE_FULL_SESSION" >/dev/null 2>/dev/null if test $? -eq 0; then kde_running=1 - kde_ver="`xprop -root | sed -n 's/KDE_SESSION_VERSION(CARDINAL) = //p'`" 2>/dev/null fi fi From aeeb861a7744110d0cd0c0a44d860ece975e67f2 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Wed, 14 Apr 2021 18:40:46 +0200 Subject: [PATCH 11/44] Fix possible double-fclose --- pinentry-1.1.1-coverity.patch | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/pinentry-1.1.1-coverity.patch b/pinentry-1.1.1-coverity.patch index 73b92aa..8df88f5 100644 --- a/pinentry-1.1.1-coverity.patch +++ b/pinentry-1.1.1-coverity.patch @@ -95,3 +95,38 @@ index 403dd60..4a2b67f 100644 rc = -1; if (! rc) +commit 75568e8bea256657258f79d3f1a0736198d05b60 +Author: Jakub Jelen +Date: Wed Apr 14 17:36:17 2021 +0200 + + tty: Avoid double fclose + + * tty/pinentry-tty.c (tty_cmd_handler): Avoid double fclose + + -- + + Signed-off-by: Jakub Jelen + +diff --git a/tty/pinentry-tty.c b/tty/pinentry-tty.c +index 4a2b67f..63e306f 100644 +--- a/tty/pinentry-tty.c ++++ b/tty/pinentry-tty.c +@@ -551,9 +551,6 @@ tty_cmd_handler (pinentry_t pinentry) + ttyfo = fopen (pinentry->ttyname, "w"); + if (!ttyfo) + { +- int err = errno; +- fclose (ttyfi); +- errno = err; + rc = -1; + } + } +@@ -562,7 +559,7 @@ tty_cmd_handler (pinentry_t pinentry) + if (!rc && terminal_save (fileno (ttyfi)) < 0) + rc = -1; + +- if (! rc) ++ if (!rc) + { + if (terminal_setup (fileno (ttyfi), !!pinentry->pin) == -1) + { From a0c1393e4cc10ba46fbbbb2f04b7f1950d783a98 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Thu, 15 Apr 2021 11:23:47 +0200 Subject: [PATCH 12/44] pinentry-1.1.1-5 --- pinentry.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index ea2196d..e3138e6 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,7 +1,7 @@ Name: pinentry Version: 1.1.1 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPLv2+ @@ -146,6 +146,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Thu Apr 15 2021 Jakub Jelen - 1.1.1-5 +- Address few more minor issues reported by coverity + * Wed Apr 14 2021 Jakub Jelen - 1.1.1-4 - Fix issues reported by coverity From d731926be1b26fc8740f5efe657123f84619937a Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Thu, 15 Apr 2021 11:44:38 +0200 Subject: [PATCH 13/44] Fixed one more corner case in tty pinentry --- pinentry-1.1.1-coverity.patch | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/pinentry-1.1.1-coverity.patch b/pinentry-1.1.1-coverity.patch index 8df88f5..9f10278 100644 --- a/pinentry-1.1.1-coverity.patch +++ b/pinentry-1.1.1-coverity.patch @@ -130,3 +130,13 @@ index 4a2b67f..63e306f 100644 { if (terminal_setup (fileno (ttyfi), !!pinentry->pin) == -1) { +@@ -583,7 +583,8 @@ tty_cmd_handler (pinentry_t pinentry) + if (pinentry->ttyname) + { + fclose (ttyfi); +- fclose (ttyfo); ++ if (ttyfo) ++ fclose (ttyfo); + } + + return rc; From 9d3e012a910d79f4a1ad9789897ba901d0cdeb23 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Fri, 16 Apr 2021 08:31:01 +0200 Subject: [PATCH 14/44] Honor disabled rpath for pinentry-qt --- pinentry-1.1.1-rpath.patch | 27 +++++++++++++++++++++++++++ pinentry.spec | 2 ++ 2 files changed, 29 insertions(+) create mode 100644 pinentry-1.1.1-rpath.patch diff --git a/pinentry-1.1.1-rpath.patch b/pinentry-1.1.1-rpath.patch new file mode 100644 index 0000000..2f13b31 --- /dev/null +++ b/pinentry-1.1.1-rpath.patch @@ -0,0 +1,27 @@ +commit 6e8ad3150566d16a20cb3b54267191bcb0c14208 +Author: Damien Goutte-Gattat +Date: Tue Feb 23 22:05:37 2021 +0000 + + qt: Honor the --disable-rpath option. + + * m4/qt.m4: Do not set rpath if --disable-rpath has been specified + at configure time. + -- + + GnuPG-bug-id: 5307 + Signed-off-by: Damien Goutte-Gattat + +diff --git a/m4/qt.m4 b/m4/qt.m4 +index f8ef3f6..5f9de3f 100644 +--- a/m4/qt.m4 ++++ b/m4/qt.m4 +@@ -59,7 +59,9 @@ AC_DEFUN([FIND_QT], + + qtlibdir=`"$PKG_CONFIG" --variable libdir Qt5Core` + if test -n "$qtlibdir"; then ++ if test "$enable_rpath" != "no"; then + PINENTRY_QT_LDFLAGS="$PINENTRY_QT_LDFLAGS -Wl,-rpath \"$qtlibdir\"" ++ fi + fi + + AC_CHECK_TOOL(MOC, moc) diff --git a/pinentry.spec b/pinentry.spec index e3138e6..e2171f9 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -10,6 +10,7 @@ Source0: https://gnupg.org/ftp/gcrypt/pinentry/%{name}-%{version}.tar.bz2 Source1: https://gnupg.org/ftp/gcrypt/pinentry/%{name}-%{version}.tar.bz2.sig Patch1: pinentry-1.1.1-coverity.patch +Patch2: pinentry-1.1.1-rpath.patch # borrowed from opensuse Source10: pinentry-wrapper @@ -89,6 +90,7 @@ This package contains the tty version of the PIN entry dialog. %prep %setup -q %patch1 -p1 -b .coverity +%patch2 -p1 -b .rpath %build From 30a09c682d84ffcbb40a5ca108035108bbac9b73 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Fri, 16 Apr 2021 08:35:42 +0200 Subject: [PATCH 15/44] Pull the final version of coverity fixes from upstream --- pinentry-1.1.1-coverity.patch | 104 +++++++++++++++++++++++++--------- 1 file changed, 78 insertions(+), 26 deletions(-) diff --git a/pinentry-1.1.1-coverity.patch b/pinentry-1.1.1-coverity.patch index 9f10278..2a86075 100644 --- a/pinentry-1.1.1-coverity.patch +++ b/pinentry-1.1.1-coverity.patch @@ -95,48 +95,100 @@ index 403dd60..4a2b67f 100644 rc = -1; if (! rc) -commit 75568e8bea256657258f79d3f1a0736198d05b60 -Author: Jakub Jelen -Date: Wed Apr 14 17:36:17 2021 +0200 - tty: Avoid double fclose - - * tty/pinentry-tty.c (tty_cmd_handler): Avoid double fclose - - -- - - Signed-off-by: Jakub Jelen +From 7f7fd8bcfd74919091cc318b27b8617a9ef2ac82 Mon Sep 17 00:00:00 2001 +From: NIIBE Yutaka +Date: Fri, 16 Apr 2021 12:54:43 +0900 +Subject: [PATCH] tty: Fix error return paths and its resource leaks. + +* tty/pinentry-tty.c (tty_cmd_handler): Only call do_touch_file +on successful interaction. Fix closing file. + +-- + +GnuPG-bug-id: 5384 +Co-authored-by: Jakub Jelen +Signed-off-by: NIIBE Yutaka +--- + tty/pinentry-tty.c | 34 +++++++++++++++++----------------- + 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/tty/pinentry-tty.c b/tty/pinentry-tty.c -index 4a2b67f..63e306f 100644 +index 4a2b67f..c4d85c6 100644 --- a/tty/pinentry-tty.c +++ b/tty/pinentry-tty.c -@@ -551,9 +551,6 @@ tty_cmd_handler (pinentry_t pinentry) - ttyfo = fopen (pinentry->ttyname, "w"); - if (!ttyfo) - { +@@ -525,6 +525,7 @@ tty_cmd_handler (pinentry_t pinentry) + int rc = 0; + FILE *ttyfi = stdin; + FILE *ttyfo = stdout; ++ int saved_errno = 0; + + #ifndef HAVE_DOSISH_SYSTEM + timed_out = 0; +@@ -545,30 +546,27 @@ tty_cmd_handler (pinentry_t pinentry) + { + ttyfi = fopen (pinentry->ttyname, "r"); + if (!ttyfi) +- rc = -1; +- else ++ return -1; ++ ++ ttyfo = fopen (pinentry->ttyname, "w"); ++ if (!ttyfo) + { +- ttyfo = fopen (pinentry->ttyname, "w"); +- if (!ttyfo) +- { - int err = errno; - fclose (ttyfi); - errno = err; - rc = -1; - } +- rc = -1; +- } ++ saved_errno = errno; ++ fclose (ttyfi); ++ errno = saved_errno; ++ return -1; } -@@ -562,7 +559,7 @@ tty_cmd_handler (pinentry_t pinentry) - if (!rc && terminal_save (fileno (ttyfi)) < 0) - rc = -1; + } +- if (!rc && terminal_save (fileno (ttyfi)) < 0) ++ if (terminal_save (fileno (ttyfi)) < 0) + rc = -1; +- - if (! rc) -+ if (!rc) ++ else { if (terminal_setup (fileno (ttyfi), !!pinentry->pin) == -1) { -@@ -583,7 +583,8 @@ tty_cmd_handler (pinentry_t pinentry) +- int err = errno; ++ saved_errno = errno; + fprintf (stderr, "terminal_setup failure, exiting\n"); +- errno = err; ++ rc = -1; + } + else + { +@@ -578,17 +576,19 @@ tty_cmd_handler (pinentry_t pinentry) + rc = confirm (pinentry, ttyfi, ttyfo); + + terminal_restore (fileno (ttyfi)); ++ do_touch_file (pinentry); + } + } + +- do_touch_file (pinentry); +- if (pinentry->ttyname) { fclose (ttyfi); -- fclose (ttyfo); -+ if (ttyfo) -+ fclose (ttyfo); + fclose (ttyfo); } - + ++ if (saved_errno) ++ errno = saved_errno; ++ return rc; + } + +-- +2.30.2 From 38d3dcb5d91505e40eded299b736e0b692d4c693 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Fri, 16 Apr 2021 08:43:03 +0200 Subject: [PATCH 16/44] pinentry-1.1.1-6 --- pinentry.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index e2171f9..6218aeb 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,7 +1,7 @@ Name: pinentry Version: 1.1.1 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPLv2+ @@ -148,6 +148,10 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Fri Apr 16 2021 Jakub Jelen - 1.1.1-6 +- Honor the disabled rpath +- Sync final version of coverity patches from upstream + * Thu Apr 15 2021 Jakub Jelen - 1.1.1-5 - Address few more minor issues reported by coverity From 8031753da4bed81fd133dceff8187f0e86e02f3f Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Fri, 16 Apr 2021 09:13:43 +0200 Subject: [PATCH 17/44] Update also generated configure to disable rpath as we do not run autogen.sh to regenerate configure, it is still needed --- pinentry-1.1.1-rpath.patch | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/pinentry-1.1.1-rpath.patch b/pinentry-1.1.1-rpath.patch index 2f13b31..b21300e 100644 --- a/pinentry-1.1.1-rpath.patch +++ b/pinentry-1.1.1-rpath.patch @@ -25,3 +25,17 @@ index f8ef3f6..5f9de3f 100644 fi AC_CHECK_TOOL(MOC, moc) + +diff -up pinentry-1.1.1/configure.rpath pinentry-1.1.1/configure +--- pinentry-1.1.1/configure.rpath 2021-04-16 09:08:48.306479991 +0200 ++++ pinentry-1.1.1/configure 2021-04-16 09:09:29.365068549 +0200 +@@ -10765,7 +10776,9 @@ fi + + qtlibdir=`"$PKG_CONFIG" --variable libdir Qt5Core` + if test -n "$qtlibdir"; then ++ if test "$enable_rpath" != "no"; then + PINENTRY_QT_LDFLAGS="$PINENTRY_QT_LDFLAGS -Wl,-rpath \"$qtlibdir\"" ++ fi + fi + + if test -n "$ac_tool_prefix"; then From 3ede3291839fbdac5c72fc6578e389b5ccc8fde9 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Fri, 16 Apr 2021 09:15:02 +0200 Subject: [PATCH 18/44] pinentry-1.1.1-7 --- pinentry.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index 6218aeb..51918ff 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,7 +1,7 @@ Name: pinentry Version: 1.1.1 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPLv2+ @@ -148,6 +148,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Fri Apr 16 2021 Jakub Jelen - 1.1.1-7 +- Really disable rpath for qt pinentry + * Fri Apr 16 2021 Jakub Jelen - 1.1.1-6 - Honor the disabled rpath - Sync final version of coverity patches from upstream From c480c432554cdcb104619d131d4cd56ebf7e9bfb Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 23 Jul 2021 03:29:39 +0000 Subject: [PATCH 19/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- pinentry.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index 51918ff..c0e2b8f 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,7 +1,7 @@ Name: pinentry Version: 1.1.1 -Release: 7%{?dist} +Release: 8%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPLv2+ @@ -148,6 +148,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Fri Jul 23 2021 Fedora Release Engineering - 1.1.1-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Fri Apr 16 2021 Jakub Jelen - 1.1.1-7 - Really disable rpath for qt pinentry From a07227dc7f398009df7b1314a09a46cfc23c539e Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Thu, 26 Aug 2021 09:00:30 +0200 Subject: [PATCH 20/44] pinentry-1.2.0-1 --- .gitignore | 2 + pinentry-1.1.1-coverity.patch | 165 ---------------------------------- pinentry-1.1.1-rpath.patch | 41 --------- pinentry.spec | 9 +- sources | 4 +- 5 files changed, 9 insertions(+), 212 deletions(-) delete mode 100644 pinentry-1.1.1-rpath.patch diff --git a/.gitignore b/.gitignore index 76d929e..36ff81f 100644 --- a/.gitignore +++ b/.gitignore @@ -20,3 +20,5 @@ pinentry-0.8.0.tar.gz.sig /pinentry-1.1.0.tar.bz2.sig /pinentry-1.1.1.tar.bz2 /pinentry-1.1.1.tar.bz2.sig +/pinentry-1.2.0.tar.bz2 +/pinentry-1.2.0.tar.bz2.sig diff --git a/pinentry-1.1.1-coverity.patch b/pinentry-1.1.1-coverity.patch index 2a86075..dc28637 100644 --- a/pinentry-1.1.1-coverity.patch +++ b/pinentry-1.1.1-coverity.patch @@ -15,61 +15,6 @@ Date: Wed Apr 14 15:51:27 2021 +0900 GnuPG-bug-id: 5384 Signed-off-by: Jakub Jelen -diff --git a/pinentry/pinentry-curses.c b/pinentry/pinentry-curses.c -index a3fe2e2..1c3008a 100644 ---- a/pinentry/pinentry-curses.c -+++ b/pinentry/pinentry-curses.c -@@ -315,6 +315,7 @@ dialog_create (pinentry_t pinentry, dialog_t dialog) - } \ - dialog->which = pinentry_utf8_to_local (pinentry->lc_ctype, \ - new ? new : default); \ -+ free (new); \ - if (!dialog->which) \ - { \ - err = 1; \ -@@ -873,6 +874,9 @@ dialog_run (pinentry_t pinentry, const char *tty_name, const char *tty_type) - { - pinentry->specific_err = gpg_error_from_syserror (); - pinentry->specific_err_loc = "open_tty_for_read"; -+#ifdef HAVE_NCURSESW -+ free (old_ctype); -+#endif - return confirm_mode? 0 : -1; - } - ttyfo = fopen (tty_name, "w"); -@@ -883,6 +887,9 @@ dialog_run (pinentry_t pinentry, const char *tty_name, const char *tty_type) - errno = err; - pinentry->specific_err = gpg_error_from_syserror (); - pinentry->specific_err_loc = "open_tty_for_write"; -+#ifdef HAVE_NCURSESW -+ free (old_ctype); -+#endif - return confirm_mode? 0 : -1; - } - screen = newterm (tty_type, ttyfo, ttyfi); -@@ -897,6 +904,9 @@ dialog_run (pinentry_t pinentry, const char *tty_name, const char *tty_type) - errno = ENOTTY; - pinentry->specific_err = gpg_error_from_syserror (); - pinentry->specific_err_loc = "isatty"; -+#ifdef HAVE_NCURSESW -+ free (old_ctype); -+#endif - return confirm_mode? 0 : -1; - } - init_screen = 1; -diff --git a/pinentry/pinentry-emacs.c b/pinentry/pinentry-emacs.c -index 16ae1c2..9685b67 100644 ---- a/pinentry/pinentry-emacs.c -+++ b/pinentry/pinentry-emacs.c -@@ -498,7 +498,7 @@ set_labels (pinentry_t pe) - set_label (pe, "SETOK", pe->default_ok); - if (pe->cancel) - set_label (pe, "SETCANCEL", pe->cancel); -- else if (pe->default_ok) -+ else if (pe->default_cancel) - set_label (pe, "SETCANCEL", pe->default_cancel); - if (pe->notok) - set_label (pe, "SETNOTOK", pe->notok); diff --git a/pinentry/pinentry.c b/pinentry/pinentry.c index ef81f12..26ec77a 100644 --- a/pinentry/pinentry.c @@ -82,113 +27,3 @@ index ef81f12..26ec77a 100644 return 0; } } -diff --git a/tty/pinentry-tty.c b/tty/pinentry-tty.c -index 403dd60..4a2b67f 100644 ---- a/tty/pinentry-tty.c -+++ b/tty/pinentry-tty.c -@@ -559,7 +559,7 @@ tty_cmd_handler (pinentry_t pinentry) - } - } - -- if (terminal_save (fileno (ttyfi)) < 0) -+ if (!rc && terminal_save (fileno (ttyfi)) < 0) - rc = -1; - - if (! rc) - -From 7f7fd8bcfd74919091cc318b27b8617a9ef2ac82 Mon Sep 17 00:00:00 2001 -From: NIIBE Yutaka -Date: Fri, 16 Apr 2021 12:54:43 +0900 -Subject: [PATCH] tty: Fix error return paths and its resource leaks. - -* tty/pinentry-tty.c (tty_cmd_handler): Only call do_touch_file -on successful interaction. Fix closing file. - --- - -GnuPG-bug-id: 5384 -Co-authored-by: Jakub Jelen -Signed-off-by: NIIBE Yutaka ---- - tty/pinentry-tty.c | 34 +++++++++++++++++----------------- - 1 file changed, 17 insertions(+), 17 deletions(-) - -diff --git a/tty/pinentry-tty.c b/tty/pinentry-tty.c -index 4a2b67f..c4d85c6 100644 ---- a/tty/pinentry-tty.c -+++ b/tty/pinentry-tty.c -@@ -525,6 +525,7 @@ tty_cmd_handler (pinentry_t pinentry) - int rc = 0; - FILE *ttyfi = stdin; - FILE *ttyfo = stdout; -+ int saved_errno = 0; - - #ifndef HAVE_DOSISH_SYSTEM - timed_out = 0; -@@ -545,30 +546,27 @@ tty_cmd_handler (pinentry_t pinentry) - { - ttyfi = fopen (pinentry->ttyname, "r"); - if (!ttyfi) -- rc = -1; -- else -+ return -1; -+ -+ ttyfo = fopen (pinentry->ttyname, "w"); -+ if (!ttyfo) - { -- ttyfo = fopen (pinentry->ttyname, "w"); -- if (!ttyfo) -- { -- int err = errno; -- fclose (ttyfi); -- errno = err; -- rc = -1; -- } -+ saved_errno = errno; -+ fclose (ttyfi); -+ errno = saved_errno; -+ return -1; - } - } - -- if (!rc && terminal_save (fileno (ttyfi)) < 0) -+ if (terminal_save (fileno (ttyfi)) < 0) - rc = -1; -- -- if (! rc) -+ else - { - if (terminal_setup (fileno (ttyfi), !!pinentry->pin) == -1) - { -- int err = errno; -+ saved_errno = errno; - fprintf (stderr, "terminal_setup failure, exiting\n"); -- errno = err; -+ rc = -1; - } - else - { -@@ -578,17 +576,19 @@ tty_cmd_handler (pinentry_t pinentry) - rc = confirm (pinentry, ttyfi, ttyfo); - - terminal_restore (fileno (ttyfi)); -+ do_touch_file (pinentry); - } - } - -- do_touch_file (pinentry); -- - if (pinentry->ttyname) - { - fclose (ttyfi); - fclose (ttyfo); - } - -+ if (saved_errno) -+ errno = saved_errno; -+ - return rc; - } - --- -2.30.2 diff --git a/pinentry-1.1.1-rpath.patch b/pinentry-1.1.1-rpath.patch deleted file mode 100644 index b21300e..0000000 --- a/pinentry-1.1.1-rpath.patch +++ /dev/null @@ -1,41 +0,0 @@ -commit 6e8ad3150566d16a20cb3b54267191bcb0c14208 -Author: Damien Goutte-Gattat -Date: Tue Feb 23 22:05:37 2021 +0000 - - qt: Honor the --disable-rpath option. - - * m4/qt.m4: Do not set rpath if --disable-rpath has been specified - at configure time. - -- - - GnuPG-bug-id: 5307 - Signed-off-by: Damien Goutte-Gattat - -diff --git a/m4/qt.m4 b/m4/qt.m4 -index f8ef3f6..5f9de3f 100644 ---- a/m4/qt.m4 -+++ b/m4/qt.m4 -@@ -59,7 +59,9 @@ AC_DEFUN([FIND_QT], - - qtlibdir=`"$PKG_CONFIG" --variable libdir Qt5Core` - if test -n "$qtlibdir"; then -+ if test "$enable_rpath" != "no"; then - PINENTRY_QT_LDFLAGS="$PINENTRY_QT_LDFLAGS -Wl,-rpath \"$qtlibdir\"" -+ fi - fi - - AC_CHECK_TOOL(MOC, moc) - -diff -up pinentry-1.1.1/configure.rpath pinentry-1.1.1/configure ---- pinentry-1.1.1/configure.rpath 2021-04-16 09:08:48.306479991 +0200 -+++ pinentry-1.1.1/configure 2021-04-16 09:09:29.365068549 +0200 -@@ -10765,7 +10776,9 @@ fi - - qtlibdir=`"$PKG_CONFIG" --variable libdir Qt5Core` - if test -n "$qtlibdir"; then -+ if test "$enable_rpath" != "no"; then - PINENTRY_QT_LDFLAGS="$PINENTRY_QT_LDFLAGS -Wl,-rpath \"$qtlibdir\"" -+ fi - fi - - if test -n "$ac_tool_prefix"; then diff --git a/pinentry.spec b/pinentry.spec index c0e2b8f..3c2288d 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,7 +1,7 @@ Name: pinentry -Version: 1.1.1 -Release: 8%{?dist} +Version: 1.2.0 +Release: 1%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPLv2+ @@ -10,7 +10,6 @@ Source0: https://gnupg.org/ftp/gcrypt/pinentry/%{name}-%{version}.tar.bz2 Source1: https://gnupg.org/ftp/gcrypt/pinentry/%{name}-%{version}.tar.bz2.sig Patch1: pinentry-1.1.1-coverity.patch -Patch2: pinentry-1.1.1-rpath.patch # borrowed from opensuse Source10: pinentry-wrapper @@ -90,7 +89,6 @@ This package contains the tty version of the PIN entry dialog. %prep %setup -q %patch1 -p1 -b .coverity -%patch2 -p1 -b .rpath %build @@ -148,6 +146,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Thu Aug 26 2021 Jakub Jelen - 1.2.0-1 +- New upstream release (#1997584) + * Fri Jul 23 2021 Fedora Release Engineering - 1.1.1-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild diff --git a/sources b/sources index f7b3987..01b46fd 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (pinentry-1.1.1.tar.bz2) = d6ab5af8ac2f3c9c05e09703e95d8e2676f9b2b7ceb97f6a31d101d0e9da7a1e106a6d3eabe86cab1bb35a4b119a7cba1380ac64bf13c61af0b3c48803116c12 -SHA512 (pinentry-1.1.1.tar.bz2.sig) = 2d56c0e8e2cf8471ed7431bfbc077020030c44b068de5ae5f3f62384986251aa7ea41674931aa0fc690c6ace9a359b7c3b5f10a7a813a2f34c41c491caba4487 +SHA512 (pinentry-1.2.0.tar.bz2) = 19cea79aa3982d1f0d75220c8e24ca38d6c49475c6f4c5aa7101151b4690db23ed316096a4a411136e716ba4eb471f48f9b09556e5c9837533c2356b9b384b63 +SHA512 (pinentry-1.2.0.tar.bz2.sig) = ea06d1e2b0af7865537ce2b0eaa25de1030e992ee38849d08cb52d07a91dfe3933fcf38e7ba092e37a97c01ce2083f4e83d766bfb72b906beb5a001bab22cfa7 From 463e2a562e8a1377b79960b488974da9133594ac Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 21 Jan 2022 08:53:33 +0000 Subject: [PATCH 21/44] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- pinentry.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index 3c2288d..139d831 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,7 +1,7 @@ Name: pinentry Version: 1.2.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPLv2+ @@ -146,6 +146,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Fri Jan 21 2022 Fedora Release Engineering - 1.2.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Thu Aug 26 2021 Jakub Jelen - 1.2.0-1 - New upstream release (#1997584) From 51393f03a17d14eda3b5cfad8a0a00caf760aba6 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 22 Jul 2022 14:47:57 +0000 Subject: [PATCH 22/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- pinentry.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index 139d831..14e0477 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,7 +1,7 @@ Name: pinentry Version: 1.2.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPLv2+ @@ -146,6 +146,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Fri Jul 22 2022 Fedora Release Engineering - 1.2.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Fri Jan 21 2022 Fedora Release Engineering - 1.2.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild From d5d0f500af4f22bd09310996ab28654d3ea0c57e Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Tue, 2 Aug 2022 11:35:22 +0200 Subject: [PATCH 23/44] Use gcr3 compat package in Fedora 37 (#2113596) --- pinentry.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index 14e0477..5c6e480 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -16,7 +16,8 @@ Source10: pinentry-wrapper BuildRequires: make BuildRequires: gcc -BuildRequires: gcr-devel +# compat package for gnome 3 +BuildRequires: gcr3-devel BuildRequires: gtk2-devel BuildRequires: libcap-devel BuildRequires: ncurses-devel From 9a0221f3fdfc39c6ff32e34b84fb18a643fd010b Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Tue, 2 Aug 2022 11:36:28 +0200 Subject: [PATCH 24/44] pinentry-1.2.0-4 --- pinentry.spec | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pinentry.spec b/pinentry.spec index 5c6e480..2161bd9 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,7 +1,6 @@ - Name: pinentry Version: 1.2.0 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPLv2+ @@ -147,6 +146,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Tue Aug 02 2022 Jakub Jelen - 1.2.0-4 +- Use gcr3 compat package to unbreak build in Fedora 37 (#2113596) + * Fri Jul 22 2022 Fedora Release Engineering - 1.2.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild From d8628f0a32c3f7deec6a48c91a0b1b2e55803d4f Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Thu, 25 Aug 2022 10:47:55 +0200 Subject: [PATCH 25/44] pinentry-1.2.1-1 --- .gitignore | 2 ++ pinentry.spec | 7 +++++-- sources | 4 ++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 36ff81f..05fd6e0 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,5 @@ pinentry-0.8.0.tar.gz.sig /pinentry-1.1.1.tar.bz2.sig /pinentry-1.2.0.tar.bz2 /pinentry-1.2.0.tar.bz2.sig +/pinentry-1.2.1.tar.bz2 +/pinentry-1.2.1.tar.bz2.sig diff --git a/pinentry.spec b/pinentry.spec index 2161bd9..a94d6b5 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,6 +1,6 @@ Name: pinentry -Version: 1.2.0 -Release: 4%{?dist} +Version: 1.2.1 +Release: 1%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPLv2+ @@ -146,6 +146,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Thu Aug 25 2022 Jakub Jelen - 1.2.1-1 +- New upstream release (#2121079) + * Tue Aug 02 2022 Jakub Jelen - 1.2.0-4 - Use gcr3 compat package to unbreak build in Fedora 37 (#2113596) diff --git a/sources b/sources index 01b46fd..43f1625 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (pinentry-1.2.0.tar.bz2) = 19cea79aa3982d1f0d75220c8e24ca38d6c49475c6f4c5aa7101151b4690db23ed316096a4a411136e716ba4eb471f48f9b09556e5c9837533c2356b9b384b63 -SHA512 (pinentry-1.2.0.tar.bz2.sig) = ea06d1e2b0af7865537ce2b0eaa25de1030e992ee38849d08cb52d07a91dfe3933fcf38e7ba092e37a97c01ce2083f4e83d766bfb72b906beb5a001bab22cfa7 +SHA512 (pinentry-1.2.1.tar.bz2) = a665315628f4dcf07e16a22db3f3be15d7e7e93b3deec0546c7275b71b0e3bd65535a08af5e12d6339fd6595132df86529401d9d12bd17c428a3466e8dfafab6 +SHA512 (pinentry-1.2.1.tar.bz2.sig) = b14525f6ace3d1fc3dc9e1173de8821fa2a960b870876beb10b98f41222378c1e3f4f79481f3f3854c1753e8dc9a7eb92862ffa583c7be0788ec25045a4e1176 From 17af62d2fb4fc08b0135b234b7ca0aa1c04685f7 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 20 Jan 2023 09:41:27 +0000 Subject: [PATCH 26/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- pinentry.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index a94d6b5..d8fc2ce 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,6 +1,6 @@ Name: pinentry Version: 1.2.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPLv2+ @@ -146,6 +146,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Fri Jan 20 2023 Fedora Release Engineering - 1.2.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Thu Aug 25 2022 Jakub Jelen - 1.2.1-1 - New upstream release (#2121079) From 8ef2a6444549a8e94451655995125e8320843cfb Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Sun, 19 Mar 2023 12:30:10 -0400 Subject: [PATCH 27/44] Disable gtk2 on RHEL 10 --- pinentry.spec | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/pinentry.spec b/pinentry.spec index d8fc2ce..851b5ae 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,3 +1,7 @@ +%if 0%{?fedora} || 0%{?rhel} < 10 +%bcond_without gtk2 +%endif + Name: pinentry Version: 1.2.1 Release: 2%{?dist} @@ -17,7 +21,9 @@ BuildRequires: make BuildRequires: gcc # compat package for gnome 3 BuildRequires: gcr3-devel +%if %{with gtk2} BuildRequires: gtk2-devel +%endif BuildRequires: libcap-devel BuildRequires: ncurses-devel BuildRequires: libgpg-error-devel @@ -45,6 +51,7 @@ utilize the Assuan protocol as described by the aegypten project; see http://www.gnupg.org/aegypten/ for details. This package contains the GNOME 3 version of the PIN entry dialog. +%if %{with gtk2} %package gtk Summary: Passphrase/PIN entry dialog based on GTK+ Requires: %{name} = %{version}-%{release} @@ -55,6 +62,7 @@ Pinentry is a collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol as described by the aegypten project; see http://www.gnupg.org/aegypten/ for details. This package contains the GTK GUI based version of the PIN entry dialog. +%endif %package qt Summary: Passphrase/PIN entry dialog based on Qt5 @@ -98,7 +106,11 @@ This package contains the tty version of the PIN entry dialog. --without-libcap \ --disable-pinentry-fltk \ --enable-pinentry-gnome3 \ +%if %{with gtk2} --enable-pinentry-gtk2 \ +%else + --disable-pinentry-gtk2 \ +%endif --enable-pinentry-qt5 \ --enable-pinentry-emacs \ --enable-pinentry-tty \ @@ -111,7 +123,9 @@ This package contains the tty version of the PIN entry dialog. %make_install # Symlink for Backward compatibility +%if %{with gtk2} ln -s pinentry-gtk-2 $RPM_BUILD_ROOT%{_bindir}/pinentry-gtk +%endif ln -s pinentry-qt $RPM_BUILD_ROOT%{_bindir}/pinentry-qt4 install -p -m755 -D %{SOURCE10} $RPM_BUILD_ROOT%{_bindir}/pinentry @@ -129,10 +143,12 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %files gnome3 %{_bindir}/pinentry-gnome3 +%if %{with gtk2} %files gtk %{_bindir}/pinentry-gtk-2 # symlink for backward compatibility %{_bindir}/pinentry-gtk +%endif %files qt %{_bindir}/pinentry-qt From 5600af33a66d076f82c20dbae1829b6d99b80ec8 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Mon, 12 Jun 2023 16:10:46 +0200 Subject: [PATCH 28/44] Add SPDX licence identifiers --- pinentry.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index 851b5ae..41b57c4 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -7,7 +7,7 @@ Version: 1.2.1 Release: 2%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs -License: GPLv2+ +License: GPL-2.0-or-later URL: https://www.gnupg.org/ Source0: https://gnupg.org/ftp/gcrypt/pinentry/%{name}-%{version}.tar.bz2 Source1: https://gnupg.org/ftp/gcrypt/pinentry/%{name}-%{version}.tar.bz2.sig From 86293f350be2d7e43b4d270941df14f7802a3315 Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Tue, 20 Jun 2023 16:05:47 -0400 Subject: [PATCH 29/44] Disable qt in RHEL 10 builds RHEL 10 is dropping Qt 5 in favor of Qt 6. --- pinentry.spec | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index 41b57c4..1acb82f 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,10 +1,11 @@ %if 0%{?fedora} || 0%{?rhel} < 10 %bcond_without gtk2 +%bcond_without qt5 %endif Name: pinentry Version: 1.2.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPL-2.0-or-later @@ -29,7 +30,9 @@ BuildRequires: ncurses-devel BuildRequires: libgpg-error-devel BuildRequires: libassuan-devel BuildRequires: libsecret-devel +%if %{with qt5} BuildRequires: pkgconfig(Qt5Core) pkgconfig(Qt5Gui) pkgconfig(Qt5Widgets) +%endif Requires(pre): %{_sbindir}/update-alternatives @@ -64,6 +67,7 @@ http://www.gnupg.org/aegypten/ for details. This package contains the GTK GUI based version of the PIN entry dialog. %endif +%if %{with qt5} %package qt Summary: Passphrase/PIN entry dialog based on Qt5 Requires: %{name} = %{version}-%{release} @@ -75,6 +79,7 @@ Pinentry is a collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol as described by the aegypten project; see http://www.gnupg.org/aegypten/ for details. This package contains the Qt4 GUI based version of the PIN entry dialog. +%endif %package emacs Summary: Passphrase/PIN entry dialog based on emacs @@ -111,7 +116,11 @@ This package contains the tty version of the PIN entry dialog. %else --disable-pinentry-gtk2 \ %endif +%if %{with qt5} --enable-pinentry-qt5 \ +%else + --disable-pinentry-qt5 \ +%endif --enable-pinentry-emacs \ --enable-pinentry-tty \ --enable-libsecret @@ -126,7 +135,9 @@ This package contains the tty version of the PIN entry dialog. %if %{with gtk2} ln -s pinentry-gtk-2 $RPM_BUILD_ROOT%{_bindir}/pinentry-gtk %endif +%if %{with qt5} ln -s pinentry-qt $RPM_BUILD_ROOT%{_bindir}/pinentry-qt4 +%endif install -p -m755 -D %{SOURCE10} $RPM_BUILD_ROOT%{_bindir}/pinentry @@ -150,10 +161,12 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-gtk %endif +%if %{with qt5} %files qt %{_bindir}/pinentry-qt # symlink for backward compatibility %{_bindir}/pinentry-qt4 +%endif %files emacs %{_bindir}/pinentry-emacs @@ -162,6 +175,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Tue Jun 20 2023 Yaakov Selkowitz - 1.2.1-3 +- Disable qt in RHEL 10 builds + * Fri Jan 20 2023 Fedora Release Engineering - 1.2.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From cd862551634ccd523b01c56432c30fbfef096a5c Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 21 Jul 2023 05:34:38 +0000 Subject: [PATCH 30/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- pinentry.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index 1acb82f..cfa8614 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -5,7 +5,7 @@ Name: pinentry Version: 1.2.1 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPL-2.0-or-later @@ -175,6 +175,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Fri Jul 21 2023 Fedora Release Engineering - 1.2.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Tue Jun 20 2023 Yaakov Selkowitz - 1.2.1-3 - Disable qt in RHEL 10 builds From f957766eb9756373e1c132b7c582a9ff71271c81 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 21 Jan 2024 21:44:31 +0000 Subject: [PATCH 31/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- pinentry.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index cfa8614..fb1cf36 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -5,7 +5,7 @@ Name: pinentry Version: 1.2.1 -Release: 4%{?dist} +Release: 5%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPL-2.0-or-later @@ -175,6 +175,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Sun Jan 21 2024 Fedora Release Engineering - 1.2.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Fri Jul 21 2023 Fedora Release Engineering - 1.2.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From 5752f5138155d8cceabe2d7babbe141134b96e49 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 25 Jan 2024 23:31:37 +0000 Subject: [PATCH 32/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- pinentry.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index fb1cf36..3235789 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -5,7 +5,7 @@ Name: pinentry Version: 1.2.1 -Release: 5%{?dist} +Release: 6%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPL-2.0-or-later @@ -175,6 +175,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Thu Jan 25 2024 Fedora Release Engineering - 1.2.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Sun Jan 21 2024 Fedora Release Engineering - 1.2.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From e0030de03bbb2fd55630a00e3eab70228e4b5167 Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Sun, 10 Mar 2024 23:23:45 -0400 Subject: [PATCH 33/44] Use gcr-4 in gnome3 binary https://lists.gnupg.org/pipermail/gnupg-devel/2024-March/035511.html --- pinentry-1.2.1-gcr4.patch | 68 +++++++++++++++++++++++++++++++++++++++ pinentry.spec | 25 ++++++++------ 2 files changed, 83 insertions(+), 10 deletions(-) create mode 100644 pinentry-1.2.1-gcr4.patch diff --git a/pinentry-1.2.1-gcr4.patch b/pinentry-1.2.1-gcr4.patch new file mode 100644 index 0000000..c74009e --- /dev/null +++ b/pinentry-1.2.1-gcr4.patch @@ -0,0 +1,68 @@ +From: Yaakov Selkowitz via Gnupg-devel +Date: Mon, 11 Mar 2024 03:19:36 +0000 (-0400) +Subject: gnome3: prefer gcr-4 +X-Git-Url: https://git.gnupg.org/cgi-bin/gitweb.cgi?p=pinentry.git;a=commitdiff_plain;h=069c2192234566c14840aefced795039d1f79137 + +gnome3: prefer gcr-4 + +Newer distributions are now using gcr-4, while older ones will still have +gcr-3. The APIs used by pinentry have not changed in between versions, +only the top-level header has changed. Also, for gcr-3, only gcr-base-3 +is required. + +(I have attempted to sign up for a dev.gnupg.org account, but am still +awaiting verification.) + +Signed-off-by: Yaakov Selkowitz +--- + +diff --git a/configure.ac b/configure.ac +index f9d090f..7dde8fb 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -458,15 +458,24 @@ AM_CONDITIONAL(BUILD_PINENTRY_GTK_2, test "$pinentry_gtk_2" = "yes") + if test "$pinentry_gnome_3" != "no"; then + PKG_CHECK_MODULES( + GNOME3, +- [gcr-3,gcr-base-3], ++ [gcr-4], + [ + pinentry_gnome_3=yes + AC_DEFINE(GCR_API_SUBJECT_TO_CHANGE, 1, [Nod nod]) ++ AC_DEFINE(GCR_API_4, 1, [GCR API version]) + ], +- [ +- AC_MSG_WARN([pkg-config could not find the module gcr-3,gcr-base-3]) +- pinentry_gnome_3=no +- ] ++ [PKG_CHECK_MODULES( ++ GNOME3, ++ [gcr-base-3], ++ [ ++ pinentry_gnome_3=yes ++ AC_DEFINE(GCR_API_SUBJECT_TO_CHANGE, 1, [Nod nod]) ++ ], ++ [ ++ AC_MSG_WARN([pkg-config could not find the module gcr-4 or gcr-base-3]) ++ pinentry_gnome_3=no ++ ] ++ )] + ) + fi + +diff --git a/gnome3/pinentry-gnome3.c b/gnome3/pinentry-gnome3.c +index 8a8fbed..7f21d6f 100644 +--- a/gnome3/pinentry-gnome3.c ++++ b/gnome3/pinentry-gnome3.c +@@ -23,7 +23,11 @@ + # include "config.h" + #endif + ++#ifdef GCR_API_4 ++#include ++#else + #include ++#endif + + #include + #include diff --git a/pinentry.spec b/pinentry.spec index 3235789..b003d0b 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -5,7 +5,7 @@ Name: pinentry Version: 1.2.1 -Release: 6%{?dist} +Release: 7%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPL-2.0-or-later @@ -14,28 +14,28 @@ Source0: https://gnupg.org/ftp/gcrypt/pinentry/%{name}-%{version}.tar.bz2 Source1: https://gnupg.org/ftp/gcrypt/pinentry/%{name}-%{version}.tar.bz2.sig Patch1: pinentry-1.1.1-coverity.patch +# port gnome3 binary to gcr-4 +Patch2: pinentry-1.2.1-gcr4.patch # borrowed from opensuse Source10: pinentry-wrapper +BuildRequires: autoconf automake gettext-devel BuildRequires: make BuildRequires: gcc -# compat package for gnome 3 -BuildRequires: gcr3-devel -%if %{with gtk2} -BuildRequires: gtk2-devel -%endif BuildRequires: libcap-devel BuildRequires: ncurses-devel BuildRequires: libgpg-error-devel BuildRequires: libassuan-devel -BuildRequires: libsecret-devel +BuildRequires: pkgconfig(gcr-4) +BuildRequires: pkgconfig(libsecret-1) +%if %{with gtk2} +BuildRequires: pkgconfig(gtk+-2.0) +%endif %if %{with qt5} BuildRequires: pkgconfig(Qt5Core) pkgconfig(Qt5Gui) pkgconfig(Qt5Widgets) %endif -Requires(pre): %{_sbindir}/update-alternatives - Provides: %{name}-curses = %{version}-%{release} %description @@ -101,10 +101,12 @@ This package contains the tty version of the PIN entry dialog. %prep %setup -q -%patch1 -p1 -b .coverity +%patch -P1 -p1 -b .coverity +%patch -P2 -p1 -b .gcr4 %build +autoreconf -fiv %configure \ --disable-rpath \ --disable-dependency-tracking \ @@ -175,6 +177,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Mon Mar 11 2024 Yaakov Selkowitz - 1.2.1-7 +- Use gcr-4 in gnome3 binary + * Thu Jan 25 2024 Fedora Release Engineering - 1.2.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 13e793a6cd69900b84db7b944001d666f210bc0b Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Tue, 19 Mar 2024 09:46:18 +0100 Subject: [PATCH 34/44] 1.3.0-1 This migrates the package to Qt6, adds a new desktops file and takes the upstream patches to use gcr-4 --- .gitignore | 2 ++ pinentry-1.1.1-coverity.patch | 7 +--- pinentry-1.2.1-gcr4.patch | 68 ----------------------------------- pinentry.spec | 43 ++++++++++------------ sources | 4 +-- 5 files changed, 24 insertions(+), 100 deletions(-) delete mode 100644 pinentry-1.2.1-gcr4.patch diff --git a/.gitignore b/.gitignore index 05fd6e0..be906b1 100644 --- a/.gitignore +++ b/.gitignore @@ -24,3 +24,5 @@ pinentry-0.8.0.tar.gz.sig /pinentry-1.2.0.tar.bz2.sig /pinentry-1.2.1.tar.bz2 /pinentry-1.2.1.tar.bz2.sig +/pinentry-1.3.0.tar.bz2 +/pinentry-1.3.0.tar.bz2.sig diff --git a/pinentry-1.1.1-coverity.patch b/pinentry-1.1.1-coverity.patch index dc28637..6ce708a 100644 --- a/pinentry-1.1.1-coverity.patch +++ b/pinentry-1.1.1-coverity.patch @@ -2,14 +2,9 @@ commit a87d9e8f89f946a733c756c72bf5ec41e0a738b8 Author: Jakub Jelen Date: Wed Apr 14 15:51:27 2021 +0900 - core,emacs,tty,curses: Fix memory leaks, invalid accese, and mistake. + pinentry: Fix memory leaks - * pinentry/pinentry-curses.c (dialog_create): Free NEW. - [HAVE_NCURSESW] (dialog_run): Free OLD_CTYPE on error. * pinentry/pinentry.c (pinentry_inq_genpin): Free VALUE on error. - * tty/pinentry-tty.c (tty_cmd_handler): Don't access closed FDs. - * pinentry/pinentry-emacs.c (set_labels): Fix for ->default_cancel. - -- GnuPG-bug-id: 5384 diff --git a/pinentry-1.2.1-gcr4.patch b/pinentry-1.2.1-gcr4.patch deleted file mode 100644 index c74009e..0000000 --- a/pinentry-1.2.1-gcr4.patch +++ /dev/null @@ -1,68 +0,0 @@ -From: Yaakov Selkowitz via Gnupg-devel -Date: Mon, 11 Mar 2024 03:19:36 +0000 (-0400) -Subject: gnome3: prefer gcr-4 -X-Git-Url: https://git.gnupg.org/cgi-bin/gitweb.cgi?p=pinentry.git;a=commitdiff_plain;h=069c2192234566c14840aefced795039d1f79137 - -gnome3: prefer gcr-4 - -Newer distributions are now using gcr-4, while older ones will still have -gcr-3. The APIs used by pinentry have not changed in between versions, -only the top-level header has changed. Also, for gcr-3, only gcr-base-3 -is required. - -(I have attempted to sign up for a dev.gnupg.org account, but am still -awaiting verification.) - -Signed-off-by: Yaakov Selkowitz ---- - -diff --git a/configure.ac b/configure.ac -index f9d090f..7dde8fb 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -458,15 +458,24 @@ AM_CONDITIONAL(BUILD_PINENTRY_GTK_2, test "$pinentry_gtk_2" = "yes") - if test "$pinentry_gnome_3" != "no"; then - PKG_CHECK_MODULES( - GNOME3, -- [gcr-3,gcr-base-3], -+ [gcr-4], - [ - pinentry_gnome_3=yes - AC_DEFINE(GCR_API_SUBJECT_TO_CHANGE, 1, [Nod nod]) -+ AC_DEFINE(GCR_API_4, 1, [GCR API version]) - ], -- [ -- AC_MSG_WARN([pkg-config could not find the module gcr-3,gcr-base-3]) -- pinentry_gnome_3=no -- ] -+ [PKG_CHECK_MODULES( -+ GNOME3, -+ [gcr-base-3], -+ [ -+ pinentry_gnome_3=yes -+ AC_DEFINE(GCR_API_SUBJECT_TO_CHANGE, 1, [Nod nod]) -+ ], -+ [ -+ AC_MSG_WARN([pkg-config could not find the module gcr-4 or gcr-base-3]) -+ pinentry_gnome_3=no -+ ] -+ )] - ) - fi - -diff --git a/gnome3/pinentry-gnome3.c b/gnome3/pinentry-gnome3.c -index 8a8fbed..7f21d6f 100644 ---- a/gnome3/pinentry-gnome3.c -+++ b/gnome3/pinentry-gnome3.c -@@ -23,7 +23,11 @@ - # include "config.h" - #endif - -+#ifdef GCR_API_4 -+#include -+#else - #include -+#endif - - #include - #include diff --git a/pinentry.spec b/pinentry.spec index b003d0b..987edec 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,11 +1,10 @@ %if 0%{?fedora} || 0%{?rhel} < 10 %bcond_without gtk2 -%bcond_without qt5 %endif Name: pinentry -Version: 1.2.1 -Release: 7%{?dist} +Version: 1.3.0 +Release: 1%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPL-2.0-or-later @@ -14,8 +13,6 @@ Source0: https://gnupg.org/ftp/gcrypt/pinentry/%{name}-%{version}.tar.bz2 Source1: https://gnupg.org/ftp/gcrypt/pinentry/%{name}-%{version}.tar.bz2.sig Patch1: pinentry-1.1.1-coverity.patch -# port gnome3 binary to gcr-4 -Patch2: pinentry-1.2.1-gcr4.patch # borrowed from opensuse Source10: pinentry-wrapper @@ -32,9 +29,8 @@ BuildRequires: pkgconfig(libsecret-1) %if %{with gtk2} BuildRequires: pkgconfig(gtk+-2.0) %endif -%if %{with qt5} -BuildRequires: pkgconfig(Qt5Core) pkgconfig(Qt5Gui) pkgconfig(Qt5Widgets) -%endif +BuildRequires: pkgconfig(Qt6Core) pkgconfig(Qt6Gui) pkgconfig(Qt6Widgets) +BuildRequires: desktop-file-utils Provides: %{name}-curses = %{version}-%{release} @@ -67,19 +63,18 @@ http://www.gnupg.org/aegypten/ for details. This package contains the GTK GUI based version of the PIN entry dialog. %endif -%if %{with qt5} %package qt -Summary: Passphrase/PIN entry dialog based on Qt5 +Summary: Passphrase/PIN entry dialog based on Qt6 Requires: %{name} = %{version}-%{release} Provides: %{name}-gui = %{version}-%{release} Obsoletes: pinentry-qt4 < 0.8.0-2 -Provides: pinentry-qt5 = %{version}-%{release} +Obsoletes: pinentry-qt5 < 1.2.1-7 +Provides: pinentry-qt6 = %{version}-%{release} %description qt Pinentry is a collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol as described by the aegypten project; see http://www.gnupg.org/aegypten/ for details. -This package contains the Qt4 GUI based version of the PIN entry dialog. -%endif +This package contains the Qt6 GUI based version of the PIN entry dialog. %package emacs Summary: Passphrase/PIN entry dialog based on emacs @@ -102,7 +97,6 @@ This package contains the tty version of the PIN entry dialog. %prep %setup -q %patch -P1 -p1 -b .coverity -%patch -P2 -p1 -b .gcr4 %build @@ -118,11 +112,7 @@ autoreconf -fiv %else --disable-pinentry-gtk2 \ %endif -%if %{with qt5} - --enable-pinentry-qt5 \ -%else - --disable-pinentry-qt5 \ -%endif + --enable-pinentry-qt6 \ --enable-pinentry-emacs \ --enable-pinentry-tty \ --enable-libsecret @@ -137,15 +127,16 @@ autoreconf -fiv %if %{with gtk2} ln -s pinentry-gtk-2 $RPM_BUILD_ROOT%{_bindir}/pinentry-gtk %endif -%if %{with qt5} ln -s pinentry-qt $RPM_BUILD_ROOT%{_bindir}/pinentry-qt4 -%endif install -p -m755 -D %{SOURCE10} $RPM_BUILD_ROOT%{_bindir}/pinentry # unpackaged files rm -fv $RPM_BUILD_ROOT%{_infodir}/dir +desktop-file-validate %{buildroot}/%{_datadir}/applications/org.gnupg.pinentry-qt.desktop +desktop-file-validate %{buildroot}/%{_datadir}/applications/org.gnupg.pinentry-qt5.desktop + %files %license COPYING %doc AUTHORS ChangeLog NEWS README THANKS TODO @@ -163,12 +154,13 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-gtk %endif -%if %{with qt5} %files qt %{_bindir}/pinentry-qt -# symlink for backward compatibility +# symlinks for backward compatibility %{_bindir}/pinentry-qt4 -%endif +%{_bindir}/pinentry-qt5 +%{_datadir}/applications/org.gnupg.pinentry-qt.desktop +%{_datadir}/applications/org.gnupg.pinentry-qt5.desktop %files emacs %{_bindir}/pinentry-emacs @@ -177,6 +169,9 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir %{_bindir}/pinentry-tty %changelog +* Tue Mar 19 2024 Jakub Jelen - 1.3.0-1 +- New upstream release (#2270095) + * Mon Mar 11 2024 Yaakov Selkowitz - 1.2.1-7 - Use gcr-4 in gnome3 binary diff --git a/sources b/sources index 43f1625..7f3a621 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (pinentry-1.2.1.tar.bz2) = a665315628f4dcf07e16a22db3f3be15d7e7e93b3deec0546c7275b71b0e3bd65535a08af5e12d6339fd6595132df86529401d9d12bd17c428a3466e8dfafab6 -SHA512 (pinentry-1.2.1.tar.bz2.sig) = b14525f6ace3d1fc3dc9e1173de8821fa2a960b870876beb10b98f41222378c1e3f4f79481f3f3854c1753e8dc9a7eb92862ffa583c7be0788ec25045a4e1176 +SHA512 (pinentry-1.3.0.tar.bz2) = 1bbac81c6811cffc8969a46494e6daa6b8447802f47ff6fa3e4dc9ac244cf6e5f629834c9b6a60770d06bff6c9932ad4059f10d2fdf93fd9e26fd5d21c0e3732 +SHA512 (pinentry-1.3.0.tar.bz2.sig) = 77a61877adf241d67caeea3af4c12a2c7c13ddc423ac001fab79bcec463a5853d8806052d61504fae0c67e0a9d1edf6a12d24b560ff7b4083eea5e86f9b54a90 From 8d846c80f2d48d22663c4be7519dbda2cc4c559a Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Tue, 19 Mar 2024 10:06:50 +0100 Subject: [PATCH 35/44] Do not build Qt5 pinentry --- pinentry.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pinentry.spec b/pinentry.spec index 987edec..205dff2 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -113,6 +113,7 @@ autoreconf -fiv --disable-pinentry-gtk2 \ %endif --enable-pinentry-qt6 \ + --disable-pinentry-qt5 \ --enable-pinentry-emacs \ --enable-pinentry-tty \ --enable-libsecret @@ -128,6 +129,7 @@ autoreconf -fiv ln -s pinentry-gtk-2 $RPM_BUILD_ROOT%{_bindir}/pinentry-gtk %endif ln -s pinentry-qt $RPM_BUILD_ROOT%{_bindir}/pinentry-qt4 +ln -s pinentry-qt $RPM_BUILD_ROOT%{_bindir}/pinentry-qt5 install -p -m755 -D %{SOURCE10} $RPM_BUILD_ROOT%{_bindir}/pinentry @@ -135,7 +137,6 @@ install -p -m755 -D %{SOURCE10} $RPM_BUILD_ROOT%{_bindir}/pinentry rm -fv $RPM_BUILD_ROOT%{_infodir}/dir desktop-file-validate %{buildroot}/%{_datadir}/applications/org.gnupg.pinentry-qt.desktop -desktop-file-validate %{buildroot}/%{_datadir}/applications/org.gnupg.pinentry-qt5.desktop %files %license COPYING @@ -160,7 +161,6 @@ desktop-file-validate %{buildroot}/%{_datadir}/applications/org.gnupg.pinentry-q %{_bindir}/pinentry-qt4 %{_bindir}/pinentry-qt5 %{_datadir}/applications/org.gnupg.pinentry-qt.desktop -%{_datadir}/applications/org.gnupg.pinentry-qt5.desktop %files emacs %{_bindir}/pinentry-emacs From da9fd5653a4f5da8219e50f5920e4cfbb0fa36c8 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Thu, 28 Mar 2024 13:16:55 +0100 Subject: [PATCH 36/44] Install icon for desktop file Reported upstream: https://dev.gnupg.org/T7065 --- pinentry.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pinentry.spec b/pinentry.spec index 205dff2..54d4c9a 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -137,6 +137,8 @@ install -p -m755 -D %{SOURCE10} $RPM_BUILD_ROOT%{_bindir}/pinentry rm -fv $RPM_BUILD_ROOT%{_infodir}/dir desktop-file-validate %{buildroot}/%{_datadir}/applications/org.gnupg.pinentry-qt.desktop +install -d %{buildroot}%{_datadir}/pixmaps +install -p qt/icons/document-encrypt.png %{buildroot}%{_datadir}/pixmaps/document-encrypt.png %files %license COPYING @@ -161,6 +163,7 @@ desktop-file-validate %{buildroot}/%{_datadir}/applications/org.gnupg.pinentry-q %{_bindir}/pinentry-qt4 %{_bindir}/pinentry-qt5 %{_datadir}/applications/org.gnupg.pinentry-qt.desktop +%{_datadir}/pixmaps/document-encrypt.png %files emacs %{_bindir}/pinentry-emacs From 5748d6360c2f25f8e1a875fabdda809569ddeafd Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Thu, 28 Mar 2024 18:24:32 -0400 Subject: [PATCH 37/44] Enable KF6 integration on Fedora and disable GTK2 frontend on F40+ - Small spec clean-ups --- pinentry.spec | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/pinentry.spec b/pinentry.spec index 54d4c9a..c8c91e0 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -1,10 +1,15 @@ -%if 0%{?fedora} || 0%{?rhel} < 10 +%if 0%{?fedora} && 0%{?fedora} < 39 || 0%{?rhel} && 0%{?rhel} < 10 %bcond_without gtk2 %endif +%if 0%{?fedora} +%bcond_without kf6 +%endif + + Name: pinentry Version: 1.3.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPL-2.0-or-later @@ -30,6 +35,9 @@ BuildRequires: pkgconfig(libsecret-1) BuildRequires: pkgconfig(gtk+-2.0) %endif BuildRequires: pkgconfig(Qt6Core) pkgconfig(Qt6Gui) pkgconfig(Qt6Widgets) +%if %{with kf6} +BuildRequires: pkgconfig(KF6WindowSystem) pkgconfig(KF6GuiAddons) +%endif BuildRequires: desktop-file-utils Provides: %{name}-curses = %{version}-%{release} @@ -95,8 +103,7 @@ http://www.gnupg.org/aegypten/ for details. This package contains the tty version of the PIN entry dialog. %prep -%setup -q -%patch -P1 -p1 -b .coverity +%autosetup -p1 %build @@ -112,7 +119,7 @@ autoreconf -fiv %else --disable-pinentry-gtk2 \ %endif - --enable-pinentry-qt6 \ + --enable-pinentry-qt \ --disable-pinentry-qt5 \ --enable-pinentry-emacs \ --enable-pinentry-tty \ @@ -172,6 +179,11 @@ install -p qt/icons/document-encrypt.png %{buildroot}%{_datadir}/pixmaps/documen %{_bindir}/pinentry-tty %changelog +* Thu Mar 28 2024 Neal Gompa - 1.3.0-2 +- Enable KF6 integration on Fedora +- Disable GTK2 frontend on F40+ +- Small spec clean-ups + * Tue Mar 19 2024 Jakub Jelen - 1.3.0-1 - New upstream release (#2270095) From c2a3193d5cc5b315ecf746efec2e06fdc89b001b Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Thu, 28 Mar 2024 18:30:57 -0400 Subject: [PATCH 38/44] Obsolete gtk2 frontend with qt6 one This is the "default" recommended by upstream when the gtk2 one is not available. --- pinentry.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pinentry.spec b/pinentry.spec index c8c91e0..8c9c297 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -78,6 +78,10 @@ Provides: %{name}-gui = %{version}-%{release} Obsoletes: pinentry-qt4 < 0.8.0-2 Obsoletes: pinentry-qt5 < 1.2.1-7 Provides: pinentry-qt6 = %{version}-%{release} +%if ! %{with gtk2} +# Special case to handle replacement of "default" pinentry implementation +Obsoletes: %{name}-gtk < %{version}-%{release} +%endif %description qt Pinentry is a collection of simple PIN or passphrase entry dialogs which utilize the Assuan protocol as described by the aegypten project; see From a5f98b7b5a5f790d7cd5746d5c2fd1dde987e2b4 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Wed, 3 Jul 2024 18:49:29 +0200 Subject: [PATCH 39/44] 1.3.1-1 --- .gitignore | 2 ++ pinentry.spec | 13 ++++--- signature_key.asc | 86 +++++++++++++++++++++++++++++++++++++++++++++++ sources | 4 +-- 4 files changed, 99 insertions(+), 6 deletions(-) create mode 100644 signature_key.asc diff --git a/.gitignore b/.gitignore index be906b1..6cd5287 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,5 @@ pinentry-0.8.0.tar.gz.sig /pinentry-1.2.1.tar.bz2.sig /pinentry-1.3.0.tar.bz2 /pinentry-1.3.0.tar.bz2.sig +/pinentry-1.3.1.tar.bz2 +/pinentry-1.3.1.tar.bz2.sig diff --git a/pinentry.spec b/pinentry.spec index 8c9c297..abf93ae 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -8,14 +8,15 @@ Name: pinentry -Version: 1.3.0 -Release: 2%{?dist} +Version: 1.3.1 +Release: 1%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPL-2.0-or-later URL: https://www.gnupg.org/ Source0: https://gnupg.org/ftp/gcrypt/pinentry/%{name}-%{version}.tar.bz2 Source1: https://gnupg.org/ftp/gcrypt/pinentry/%{name}-%{version}.tar.bz2.sig +Source2: https://gnupg.org/signature_key.asc Patch1: pinentry-1.1.1-coverity.patch @@ -39,6 +40,7 @@ BuildRequires: pkgconfig(Qt6Core) pkgconfig(Qt6Gui) pkgconfig(Qt6Widgets) BuildRequires: pkgconfig(KF6WindowSystem) pkgconfig(KF6GuiAddons) %endif BuildRequires: desktop-file-utils +BuildRequires: gnupg2 Provides: %{name}-curses = %{version}-%{release} @@ -107,6 +109,7 @@ http://www.gnupg.org/aegypten/ for details. This package contains the tty version of the PIN entry dialog. %prep +%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}' %autosetup -p1 @@ -149,7 +152,6 @@ rm -fv $RPM_BUILD_ROOT%{_infodir}/dir desktop-file-validate %{buildroot}/%{_datadir}/applications/org.gnupg.pinentry-qt.desktop install -d %{buildroot}%{_datadir}/pixmaps -install -p qt/icons/document-encrypt.png %{buildroot}%{_datadir}/pixmaps/document-encrypt.png %files %license COPYING @@ -174,7 +176,7 @@ install -p qt/icons/document-encrypt.png %{buildroot}%{_datadir}/pixmaps/documen %{_bindir}/pinentry-qt4 %{_bindir}/pinentry-qt5 %{_datadir}/applications/org.gnupg.pinentry-qt.desktop -%{_datadir}/pixmaps/document-encrypt.png +%{_datadir}/pixmaps/pinentry.png %files emacs %{_bindir}/pinentry-emacs @@ -183,6 +185,9 @@ install -p qt/icons/document-encrypt.png %{buildroot}%{_datadir}/pixmaps/documen %{_bindir}/pinentry-tty %changelog +* Wed Jul 03 2024 Jakub Jelen - 1.3.1-1 +- New upstream release (#2295548) + * Thu Mar 28 2024 Neal Gompa - 1.3.0-2 - Enable KF6 integration on Fedora - Disable GTK2 frontend on F40+ diff --git a/signature_key.asc b/signature_key.asc new file mode 100644 index 0000000..151e8fa --- /dev/null +++ b/signature_key.asc @@ -0,0 +1,86 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +eiInsGZ/+h5XYrpXTgA= +=4+Sn +-----END PGP PUBLIC KEY BLOCK----- diff --git a/sources b/sources index 7f3a621..17c5fb6 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (pinentry-1.3.0.tar.bz2) = 1bbac81c6811cffc8969a46494e6daa6b8447802f47ff6fa3e4dc9ac244cf6e5f629834c9b6a60770d06bff6c9932ad4059f10d2fdf93fd9e26fd5d21c0e3732 -SHA512 (pinentry-1.3.0.tar.bz2.sig) = 77a61877adf241d67caeea3af4c12a2c7c13ddc423ac001fab79bcec463a5853d8806052d61504fae0c67e0a9d1edf6a12d24b560ff7b4083eea5e86f9b54a90 +SHA512 (pinentry-1.3.1.tar.bz2) = 3b72034dc1792b1475acb6d605ff7c1bd7647a0f02d1b6bdcd475acdef24bc802f49e275055436c3271261c4b7a64168477a698aab812a145962146b2f67a0e2 +SHA512 (pinentry-1.3.1.tar.bz2.sig) = 22bd94f74486300eb84c1c9c371a43b05fb6179118518004fba0d42b6d3e6731f94d79b37c2a3a6b0c5886578c4575f75d2460accd36cd4874342e7239521be9 From c5dbf9b087c83a7ced2f8d5c78ccdd4ddf4ac2c8 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jul 2024 07:48:37 +0000 Subject: [PATCH 40/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- pinentry.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index abf93ae..c6c5111 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -9,7 +9,7 @@ Name: pinentry Version: 1.3.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPL-2.0-or-later @@ -185,6 +185,9 @@ install -d %{buildroot}%{_datadir}/pixmaps %{_bindir}/pinentry-tty %changelog +* Fri Jul 19 2024 Fedora Release Engineering - 1.3.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Wed Jul 03 2024 Jakub Jelen - 1.3.1-1 - New upstream release (#2295548) From afa9d60250acf0a3b70195a825a988b16242e9f9 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 18 Jan 2025 10:08:18 +0000 Subject: [PATCH 41/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- pinentry.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index c6c5111..dc1e604 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -9,7 +9,7 @@ Name: pinentry Version: 1.3.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPL-2.0-or-later @@ -185,6 +185,9 @@ install -d %{buildroot}%{_datadir}/pixmaps %{_bindir}/pinentry-tty %changelog +* Sat Jan 18 2025 Fedora Release Engineering - 1.3.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Fri Jul 19 2024 Fedora Release Engineering - 1.3.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 111e9874fbba721b5cab98a8efab373d870c6e5b Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Mon, 23 Jun 2025 22:47:44 -0400 Subject: [PATCH 42/44] Fix build with gettext-0.25 While previous versions of gettext installed its macros into /usr/share/aclocal where they were always discoverable, as of gettext 0.25, they are installed into a package-specific directory. The AM_ICONV macro is used here but not the gettext macros, so autoreconf needs some help to find the macro in its new location. --- pinentry.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/pinentry.spec b/pinentry.spec index dc1e604..469ed15 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -114,6 +114,7 @@ This package contains the tty version of the PIN entry dialog. %build +export ACLOCAL_PATH=/usr/share/gettext/m4/ autoreconf -fiv %configure \ --disable-rpath \ From a48eec1d0433ed94d49c8c6b1d5aed4d0a9af428 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 25 Jul 2025 05:46:11 +0000 Subject: [PATCH 43/44] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild --- pinentry.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pinentry.spec b/pinentry.spec index 469ed15..784cefb 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -9,7 +9,7 @@ Name: pinentry Version: 1.3.1 -Release: 3%{?dist} +Release: 4%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPL-2.0-or-later @@ -186,6 +186,9 @@ install -d %{buildroot}%{_datadir}/pixmaps %{_bindir}/pinentry-tty %changelog +* Fri Jul 25 2025 Fedora Release Engineering - 1.3.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + * Sat Jan 18 2025 Fedora Release Engineering - 1.3.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From d374725425e565142f7b0048d3c4becbe7537b15 Mon Sep 17 00:00:00 2001 From: Jakub Jelen Date: Mon, 28 Jul 2025 13:18:21 +0200 Subject: [PATCH 44/44] 1.3.1-4 --- .gitignore | 2 ++ pinentry.spec | 7 +++++-- sources | 4 ++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 6cd5287..6489818 100644 --- a/.gitignore +++ b/.gitignore @@ -28,3 +28,5 @@ pinentry-0.8.0.tar.gz.sig /pinentry-1.3.0.tar.bz2.sig /pinentry-1.3.1.tar.bz2 /pinentry-1.3.1.tar.bz2.sig +/pinentry-1.3.2.tar.bz2 +/pinentry-1.3.2.tar.bz2.sig diff --git a/pinentry.spec b/pinentry.spec index 784cefb..3d41494 100644 --- a/pinentry.spec +++ b/pinentry.spec @@ -8,8 +8,8 @@ Name: pinentry -Version: 1.3.1 -Release: 4%{?dist} +Version: 1.3.2 +Release: 1%{?dist} Summary: Collection of simple PIN or passphrase entry dialogs License: GPL-2.0-or-later @@ -186,6 +186,9 @@ install -d %{buildroot}%{_datadir}/pixmaps %{_bindir}/pinentry-tty %changelog +* Mon Jul 28 2025 Jakub Jelen - 1.3.2-1 +- New upstream release (#2383845) + * Fri Jul 25 2025 Fedora Release Engineering - 1.3.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild diff --git a/sources b/sources index 17c5fb6..568e91f 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (pinentry-1.3.1.tar.bz2) = 3b72034dc1792b1475acb6d605ff7c1bd7647a0f02d1b6bdcd475acdef24bc802f49e275055436c3271261c4b7a64168477a698aab812a145962146b2f67a0e2 -SHA512 (pinentry-1.3.1.tar.bz2.sig) = 22bd94f74486300eb84c1c9c371a43b05fb6179118518004fba0d42b6d3e6731f94d79b37c2a3a6b0c5886578c4575f75d2460accd36cd4874342e7239521be9 +SHA512 (pinentry-1.3.2.tar.bz2) = 3b4d50a42d412d649a7830f7378aa966342c2bc0157d03b0ad79cf0aed29d6698d48c734e23b1dccada5f6ef81d0c09d3ead6cd703eadfc8082987e6bea0aafc +SHA512 (pinentry-1.3.2.tar.bz2.sig) = 25c34f931bb41765bad034678c7e38c5f26ec24a632b19961b0b0bc3ba82c6ed5fc717eb0d2ce567765ffd83921f8187803a522d04a21b4c610d321709945045