From fdd31f37b982d2c1b6d73b85f99718b13031be36 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Tue, 27 Feb 2024 23:40:34 +0000 Subject: gentoo auto-resync : 27:02:2024 - 23:40:33 --- app-crypt/pinentry/Manifest | 2 + .../files/pinentry-1.2.1-include-memory.patch | 313 +++++++++++++++++++++ app-crypt/pinentry/pinentry-1.2.1-r6.ebuild | 108 +++++++ 3 files changed, 423 insertions(+) create mode 100644 app-crypt/pinentry/files/pinentry-1.2.1-include-memory.patch create mode 100644 app-crypt/pinentry/pinentry-1.2.1-r6.ebuild (limited to 'app-crypt/pinentry') diff --git a/app-crypt/pinentry/Manifest b/app-crypt/pinentry/Manifest index 1810fb386ed2..7d32b7244073 100644 --- a/app-crypt/pinentry/Manifest +++ b/app-crypt/pinentry/Manifest @@ -1,7 +1,9 @@ AUX pinentry-1.0.0-AR.patch 326 BLAKE2B 2a05565287d2a3ff9423db1365af6ac1d2d0e0e5b3b7db49ee927eacd480cfbd29abd2313d84eb764e9d7eccd4654e2173fbf8be4508dd88f14bf12f0f9dab39 SHA512 3a8b13ddaa2af8c793586cd73e44b59828e769c3861b2d328273bac991e7e171c8714e2098674a9ae8a77c9a68098012d217e67dde8872df154a1e499837de52 AUX pinentry-1.2.1-automagic-capslock.patch 2831 BLAKE2B abe6c6815521dd80a227704ad2698e4aaa808faccb7d95acb1b2af8bb55f2fec03d92df0b60703da2c9f092988da32572ad2fcbd1735b3109ae278d24e76e1eb SHA512 a9fe32da17d214e5d0355efa575c04f4010a42dd9b272e2446f632017a383f2dd5bd3b98a8a71fe13bf55769fa0b420310d4f3217fa16a31272058d44598f99d +AUX pinentry-1.2.1-include-memory.patch 8682 BLAKE2B e119583daaf2b418047fc51bc29dafb979452f5831dd89a86879c87038abb0d690752078577803810f52a0eb2660ad3428abdcac4f670450ac09b701c250641c SHA512 9a56ea04447fabd248f54953d07262510d7ebcfef3e5daf8084f4138df037bf31288ff95baa6eae6ec7584a773fd3ae242c121ca3c1910d415407a8eccb69ccd DIST pinentry-1.2.1.tar.bz2 547698 BLAKE2B aa47612aa3a6f74c3676bf4018780356cb22ed4078792c1f466f9e0465199428c151c0e20dfbe6c784ef93c2b42b673daff0b6adc74c8c98fed9921e65ed42ea SHA512 a665315628f4dcf07e16a22db3f3be15d7e7e93b3deec0546c7275b71b0e3bd65535a08af5e12d6339fd6595132df86529401d9d12bd17c428a3466e8dfafab6 DIST pinentry-1.2.1.tar.bz2.sig 238 BLAKE2B 01ba3dc296a8e76c546d21d0bb0cd13778476d5d5b3ef55a3401c6a0353a56d79250d11555afb31c77c5a77e63847ded0f8eaef395bb0dc2ee3ff1d6a4ed83bd SHA512 d0e8435dc169a58f111f057f1c9fbb6c70da32a850f1107d6abdf41357c1714832728109ae61507db313d7eaef9596e5faf92fd21bed78adcc46a8c8a590430b EBUILD pinentry-1.2.1-r4.ebuild 2559 BLAKE2B 9119a96aad7f9866a7f10dda1048f4f42b9b7e4298ac82160a8e0bb47d4938ef6dc8f2e400a6fc8f9426c601516738e25b470ba668a29aab761285f0ad60965d SHA512 85e87975e0e5da0f026462291ea61ac19946117e565d9c163d4dc467d8d5d6a976c2d08921a78408816090930e32f0d0c56d2cbca63e2fb85f3b532ba4834c7c EBUILD pinentry-1.2.1-r5.ebuild 2512 BLAKE2B 74956d554d56a8e620ff55697fa4a75f20e897955591469d9481afd9dae050a142be5866e1f28d39391252d6b3370a87b5c668f3ba5891b9d8b96d0a609a57aa SHA512 ad9a55fdbd346ef225b572231695b7802ae304674901ecf5e2e9e0cbdec9e15cf2e87bc4cb97531b1a43f97c8b1bce9b81fae6a85adc682e193d9204dbcd41e9 +EBUILD pinentry-1.2.1-r6.ebuild 2560 BLAKE2B 5e4c6c87b7843372b79ed44c0c25f69faa4f4dca7c0ae288e0bd8ddd309f6ead98d08f5004487fda91a29cbdde6f377365f77ad97ec66967ea24bea0a606542a SHA512 2b1fc47a238fc348a3dee7862498e3eb44af9d5b3c84ccf3dbfe0474815691f2048776fc4d71f44e61007b728d84259d7606bb8fb7b28004af4be45d842e9153 MISC metadata.xml 344 BLAKE2B d71f184ae783d215e32dc94e346c1f753f158b298cc2df87c14d5b73454ff3b4bf0ce4744d2aa0359bc68cb993cd35d2d6f77a09769853fda5b66e1cc1da3580 SHA512 0ae1c64980d4d94b8bbc04040a17b358b7138bf4022dcd97b6d2c464bc5fac0911c9522bea253586f69c8d137b75fe3e302d7cd9802290c2720c77706d9a935f diff --git a/app-crypt/pinentry/files/pinentry-1.2.1-include-memory.patch b/app-crypt/pinentry/files/pinentry-1.2.1-include-memory.patch new file mode 100644 index 000000000000..8c67950af6f3 --- /dev/null +++ b/app-crypt/pinentry/files/pinentry-1.2.1-include-memory.patch @@ -0,0 +1,313 @@ +https://bugs.gentoo.org/925557 +https://dev.gnupg.org/D566 + +From 8ab1682e80a2b4185ee9ef66cbb44340245966fc Mon Sep 17 00:00:00 2001 +From: Werner Koch +Date: Mon, 20 Mar 2023 08:31:04 +0100 +Subject: [PATCH] Fix problem with inclusion of wrong memory.h. + +* secmem/memory.h: Rename to ... +* secmem/secmem.h: this. +* pinentry/pinentry.h: Include secmem.h. Remove almost all inclusions +of memory.h or replace them by "../secmem/secmem.h". +-- + +See-also: https://dev.gnupg.org/D566 +--- + fltk/main.cxx | 1 - + fltk/pinwindow.cxx | 2 +- + gnome3/pinentry-gnome3.c | 2 -- + pinentry/password-cache.c | 2 +- + pinentry/pinentry-curses.c | 7 +++---- + pinentry/pinentry-emacs.c | 2 +- + pinentry/pinentry.c | 1 - + pinentry/pinentry.h | 2 ++ + secmem/Makefile.am | 2 +- + secmem/secmem++.h | 2 +- + secmem/secmem.c | 2 +- + secmem/{memory.h => secmem.h} | 0 + tqt/secqstring.h | 2 +- + tty/pinentry-tty.c | 1 - + w32/main.c | 1 - + 15 files changed, 12 insertions(+), 17 deletions(-) + rename secmem/{memory.h => secmem.h} (100%) + +--- a/fltk/main.cxx 2019-03-05 23:09:48.000000000 -0800 ++++ b/fltk/main.cxx 2024-02-26 11:02:47.822134762 -0800 +@@ -34,7 +34,6 @@ + #include + #include + +-#include "memory.h" + #include + + #include +--- a/fltk/pinwindow.cxx 2017-12-03 08:13:05.000000000 -0800 ++++ b/fltk/pinwindow.cxx 2024-02-26 11:02:47.822134762 -0800 +@@ -32,7 +32,7 @@ + #include + #include + +-#include "memory.h" ++#include "../secmem/secmem.h" + + #include "encrypt.xpm" + #include "icon.xpm" +--- a/gnome3/pinentry-gnome3.c 2022-08-24 03:31:59.000000000 -0700 ++++ b/gnome3/pinentry-gnome3.c 2024-02-26 11:02:47.822134762 -0800 +@@ -30,8 +30,6 @@ + + #include + +-#include "memory.h" +- + #include "pinentry.h" + + #ifdef FALLBACK_CURSES +--- a/pinentry/password-cache.c 2017-12-03 08:13:15.000000000 -0800 ++++ b/pinentry/password-cache.c 2024-02-26 11:02:47.822134762 -0800 +@@ -31,7 +31,7 @@ + #endif + + #include "password-cache.h" +-#include "memory.h" ++#include "../secmem/secmem.h" + + #ifdef HAVE_LIBSECRET + static const SecretSchema * +--- a/pinentry/pinentry.c 2022-08-24 03:31:59.000000000 -0700 ++++ b/pinentry/pinentry.c 2024-02-26 11:02:47.822134762 -0800 +@@ -44,7 +44,6 @@ + + #include + +-#include "memory.h" + #include "secmem-util.h" + #include "argparse.h" + #include "pinentry.h" +--- a/pinentry/pinentry-curses.c 2022-08-24 03:31:59.000000000 -0700 ++++ b/pinentry/pinentry-curses.c 2024-02-26 11:02:47.822134762 -0800 +@@ -62,8 +62,6 @@ + #include + #endif /*HAVE_UTIME_H*/ + +-#include +- + #ifdef HAVE_WCHAR_H + #include + #endif /*HAVE_WCHAR_H*/ +@@ -1017,10 +1015,11 @@ + #ifndef HAVE_DOSISH_SYSTEM + int no_input = 1; + #endif +- + #ifdef HAVE_NCURSESW + char *old_ctype = NULL; ++#endif + ++#ifdef HAVE_NCURSESW + if (pinentry->lc_ctype) + { + old_ctype = strdup (setlocale (LC_CTYPE, NULL)); +--- a/pinentry/pinentry-emacs.c 2021-08-11 04:16:10.000000000 -0700 ++++ b/pinentry/pinentry-emacs.c 2024-02-26 11:02:47.822134762 -0800 +@@ -48,7 +48,7 @@ + #include + + #include "pinentry-emacs.h" +-#include "memory.h" ++#include "../secmem/secmem.h" + #include "secmem-util.h" + + /* The communication mechanism is similar to emacsclient, but there +--- a/pinentry/pinentry.h 2022-08-24 03:31:59.000000000 -0700 ++++ b/pinentry/pinentry.h 2024-02-26 11:02:47.822134762 -0800 +@@ -21,6 +21,8 @@ + #ifndef PINENTRY_H + #define PINENTRY_H + ++#include "../secmem/secmem.h" ++ + #ifdef __cplusplus + extern "C" { + #if 0 +--- a/secmem/Makefile.am 2017-12-03 08:13:05.000000000 -0800 ++++ b/secmem/Makefile.am 2024-02-26 11:02:47.822134762 -0800 +@@ -22,7 +22,7 @@ + noinst_LIBRARIES = libsecmem.a + + libsecmem_a_SOURCES = \ +- memory.h \ ++ secmem.h \ + secmem-util.h \ + util.h \ + secmem.c \ +--- a/secmem/memory.h 2017-12-03 08:13:05.000000000 -0800 ++++ b/secmem/memory.h 1969-12-31 16:00:00.000000000 -0800 +@@ -1,55 +0,0 @@ +-/* Quintuple Agent secure memory allocation +- * Copyright (C) 1998,1999 Free Software Foundation, Inc. +- * Copyright (C) 1999,2000 Robert Bihlmeyer +- * +- * This program is free software; you can redistribute it and/or modify +- * it under the terms of the GNU General Public License as published by +- * the Free Software Foundation; either version 2 of the License, or +- * (at your option) any later version. +- * +- * This program is distributed in the hope that it will be useful, +- * but WITHOUT ANY WARRANTY; without even the implied warranty of +- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +- * GNU General Public License for more details. +- * +- * You should have received a copy of the GNU General Public License +- * along with this program; if not, see . +- * SPDX-License-Identifier: GPL-2.0+ +- */ +- +-#ifndef _MEMORY_H +-#define _MEMORY_H +- +-#include +- +-#ifdef __cplusplus +-extern "C" { +-#if 0 +-} +-#endif +-#endif +- +- +-/* values for flags, hardcoded in secmem.c */ +-#define SECMEM_WARN 0 +-#define SECMEM_DONT_WARN 1 +-#define SECMEM_SUSPEND_WARN 2 +- +-void secmem_init( size_t npool ); +-void secmem_term( void ); +-void *secmem_malloc( size_t size ); +-void *secmem_realloc( void *a, size_t newsize ); +-void secmem_free( void *a ); +-int m_is_secure( const void *p ); +-void secmem_dump_stats(void); +-void secmem_set_flags( unsigned flags ); +-unsigned secmem_get_flags(void); +-size_t secmem_get_max_size (void); +- +-#if 0 +-{ +-#endif +-#ifdef __cplusplus +-} +-#endif +-#endif /* _MEMORY_H */ +--- a/secmem/secmem.c 2022-08-24 03:31:59.000000000 -0700 ++++ b/secmem/secmem.c 2024-02-26 11:02:47.822134762 -0800 +@@ -34,7 +34,7 @@ + #endif + #include + +-#include "memory.h" ++#include "secmem.h" + + #ifdef ORIGINAL_GPG_VERSION + #include "types.h" +--- a/secmem/secmem++.h 2017-12-03 08:13:05.000000000 -0800 ++++ b/secmem/secmem++.h 2024-02-26 11:02:47.822134762 -0800 +@@ -19,7 +19,7 @@ + #ifndef __SECMEM_SECMEMPP_H__ + #define __SECMEM_SECMEMPP_H__ + +-#include "secmem/memory.h" ++#include "../secmem/secmem.h" + #include + + namespace secmem { +--- a/secmem/secmem.h 1969-12-31 16:00:00.000000000 -0800 ++++ b/secmem/secmem.h 2024-02-26 11:02:47.822134762 -0800 +@@ -0,0 +1,55 @@ ++/* Quintuple Agent secure memory allocation ++ * Copyright (C) 1998,1999 Free Software Foundation, Inc. ++ * Copyright (C) 1999,2000 Robert Bihlmeyer ++ * ++ * This program is free software; you can redistribute it and/or modify ++ * it under the terms of the GNU General Public License as published by ++ * the Free Software Foundation; either version 2 of the License, or ++ * (at your option) any later version. ++ * ++ * This program is distributed in the hope that it will be useful, ++ * but WITHOUT ANY WARRANTY; without even the implied warranty of ++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ * GNU General Public License for more details. ++ * ++ * You should have received a copy of the GNU General Public License ++ * along with this program; if not, see . ++ * SPDX-License-Identifier: GPL-2.0+ ++ */ ++ ++#ifndef _MEMORY_H ++#define _MEMORY_H ++ ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#if 0 ++} ++#endif ++#endif ++ ++ ++/* values for flags, hardcoded in secmem.c */ ++#define SECMEM_WARN 0 ++#define SECMEM_DONT_WARN 1 ++#define SECMEM_SUSPEND_WARN 2 ++ ++void secmem_init( size_t npool ); ++void secmem_term( void ); ++void *secmem_malloc( size_t size ); ++void *secmem_realloc( void *a, size_t newsize ); ++void secmem_free( void *a ); ++int m_is_secure( const void *p ); ++void secmem_dump_stats(void); ++void secmem_set_flags( unsigned flags ); ++unsigned secmem_get_flags(void); ++size_t secmem_get_max_size (void); ++ ++#if 0 ++{ ++#endif ++#ifdef __cplusplus ++} ++#endif ++#endif /* _MEMORY_H */ +--- a/tqt/secqstring.h 2017-12-03 08:33:12.000000000 -0800 ++++ b/tqt/secqstring.h 2024-02-26 11:02:47.822134762 -0800 +@@ -65,7 +65,7 @@ + + extern "C" + { +-#include "memory.h" ++#include "../secmem/secmem.h" + } + + /* We need the original qchar and qstring for transparent conversion +--- a/tty/pinentry-tty.c 2021-08-11 04:16:10.000000000 -0700 ++++ b/tty/pinentry-tty.c 2024-02-26 11:02:47.822134762 -0800 +@@ -41,7 +41,6 @@ + #include + + #include "pinentry.h" +-#include "memory.h" + + #ifndef HAVE_DOSISH_SYSTEM + static int timed_out; +--- a/w32/main.c 2022-08-24 03:31:59.000000000 -0700 ++++ b/w32/main.c 2024-02-26 11:02:47.822134762 -0800 +@@ -29,7 +29,6 @@ + #endif + + #include "pinentry.h" +-#include "memory.h" + + #include "resource.h" + /* #include "msgcodes.h" */ diff --git a/app-crypt/pinentry/pinentry-1.2.1-r6.ebuild b/app-crypt/pinentry/pinentry-1.2.1-r6.ebuild new file mode 100644 index 000000000000..898f4bef6a9e --- /dev/null +++ b/app-crypt/pinentry/pinentry-1.2.1-r6.ebuild @@ -0,0 +1,108 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/gnupg.asc +inherit autotools qmake-utils verify-sig + +DESCRIPTION="Simple passphrase entry dialogs which utilize the Assuan protocol" +HOMEPAGE="https://gnupg.org/aegypten2/" +SRC_URI="mirror://gnupg/${PN}/${P}.tar.bz2" +SRC_URI+=" verify-sig? ( mirror://gnupg/${PN}/${P}.tar.bz2.sig )" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris" +IUSE="caps efl emacs gtk keyring ncurses qt5 wayland X" + +DEPEND=" + >=dev-libs/libassuan-2.1 + >=dev-libs/libgcrypt-1.6.3 + >=dev-libs/libgpg-error-1.17 + efl? ( dev-libs/efl[X] ) + keyring? ( app-crypt/libsecret ) + ncurses? ( sys-libs/ncurses:= ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtwidgets:5 + wayland? ( kde-plasma/kwayland:5 ) + X? ( + dev-qt/qtx11extras:5 + x11-libs/libX11 + ) + ) +" +RDEPEND=" + ${DEPEND} + gtk? ( app-crypt/gcr:0[gtk] ) +" +BDEPEND=" + sys-devel/gettext + virtual/pkgconfig + verify-sig? ( sec-keys/openpgp-keys-gnupg ) +" +PDEPEND="emacs? ( app-emacs/pinentry )" +IDEPEND=">=app-eselect/eselect-pinentry-0.7.2" + +DOCS=( AUTHORS ChangeLog NEWS README THANKS TODO ) + +PATCHES=( + "${FILESDIR}/${PN}-1.0.0-AR.patch" + "${FILESDIR}/${PN}-1.2.1-automagic-capslock.patch" # bug #819939, bug #837719 + "${FILESDIR}/${PN}-1.2.1-include-memory.patch" +) + +src_prepare() { + default + + unset FLTK_CONFIG + + eautoreconf +} + +src_configure() { + export PATH="$(qt5_get_bindir):${PATH}" + export QTLIB="$(qt5_get_libdir)" + + local myeconfargs=( + $(use_enable efl pinentry-efl) + $(use_enable emacs pinentry-emacs) + $(use_enable keyring libsecret) + $(use_enable gtk pinentry-gnome3) + $(use_enable ncurses fallback-curses) + $(use_enable ncurses pinentry-curses) + $(use_enable qt5 pinentry-qt) + $(use_enable wayland kf5-wayland) + $(use_enable X qtx11extras) + $(use_with X x) + + --enable-pinentry-tty + --disable-pinentry-fltk + --disable-pinentry-gtk2 + + MOC="$(qt5_get_bindir)"/moc + ac_cv_path_GPGRT_CONFIG="${ESYSROOT}/usr/bin/${CHOST}-gpgrt-config" + + $("${S}/configure" --help | grep -- '--without-.*-prefix' | sed -e 's/^ *\([^ ]*\) .*/\1/g') + ) + + econf "${myeconfargs[@]}" +} + +src_install() { + default + + rm "${ED}"/usr/bin/pinentry || die + + use qt5 && dosym pinentry-qt /usr/bin/pinentry-qt5 +} + +pkg_postinst() { + eselect pinentry update ifunset +} + +pkg_postrm() { + eselect pinentry update ifunset +} -- cgit v1.2.3