Initialize for pinentry

This commit is contained in:
zyppe 2024-03-05 17:00:51 +08:00
commit 161d60544d
10 changed files with 1491 additions and 0 deletions

1
.gitignore vendored Normal file
View file

@ -0,0 +1 @@
pinentry-1.1.0.tar.bz2

1
.pinentry.metadata Normal file
View file

@ -0,0 +1 @@
d6bb91a0ec0d0881fe4806d276d8a859868803f49c9c50e513f6c36af54b4006 pinentry-1.1.0.tar.bz2

95
pinentry Normal file
View file

@ -0,0 +1,95 @@
#!/bin/sh
# Copyright (c) 2006 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2009 Fedora Project
# Copyright (c) 2014 Red Hat
# This file and all modifications and additions to the pristine
# package are under the same license as the package itself.
#
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# Anna Bernathova <anicka@novell.com> 2006
# Pavel Nemec <pnemec@novell.com> 2006
# Rex Dieter <rdieter@fedoraproject.org> 2009
# Pavol Rusnak <prusnak@novell.com> 2009
# Boris Ranto <branto@redhat.com> 2014
# Andreas Stieger <andreas.stieger@gmx.de> 2014
#
# use proper binary (pinentry-qt5, pinentry-qt, pinentry-gtk-2 or pinentry-curses)
kde_running=
arg=
display=
# look for a --display option
for opt in "$@"; do
if [ "$opt" = "--display" ]; then
arg=1
elif [ -n "$arg" ]; then
display="$opt"
else
arg=
fi
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
export DISPLAY="$display"
elif [ -n "$KDE_FULL_SESSION" ]; then
kde_running=1
kde_ver="$KDE_SESSION_VERSION"
fi
# Check for presence of xprop binary
type xprop >/dev/null 2>/dev/null
XPROP=$?
if [ -n "$DISPLAY" -a $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
# if a user supplied a pinentry binary, use it
if [ -n "$PINENTRY_BINARY" ];
then
export PINENTRY_BINARY="$PINENTRY_BINARY"
# if KDE is detected and pinentry-qt5 exists, use pinentry-qt5
elif [ -n "$kde_running" -a "$kde_ver"x = 4x -a -x /usr/bin/pinentry-qt5 ]
then
export PINENTRY_BINARY="/usr/bin/pinentry-qt5"
# if KDE is detected and pinentry-qt exists, use pinentry-qt
elif [ -n "$kde_running" -a -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 ]
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 ]
then
export PINENTRY_BINARY="/usr/bin/pinentry-gtk-2"
# otherwise test if pinentry-qt5 exists although KDE is not detected
elif [ -n "$DISPLAY" -a -x /usr/bin/pinentry-qt5 ]
then
export PINENTRY_BINARY="/usr/bin/pinentry-qt5"
# otherwise test if pinentry-qt exists although KDE is not detected
elif [ -n "$DISPLAY" -a -x /usr/bin/pinentry-qt ]
then
export PINENTRY_BINARY="/usr/bin/pinentry-qt"
# otherwise test if pinentry-fltk exists
elif [ -n "$DISPLAY" -a -x /usr/bin/pinentry-fltk ]
then
export PINENTRY_BINARY="/usr/bin/pinentry-fltk"
# use pinentry-tty for modem / serial
elif [ "$TERM" = "dumb" ]
then
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 "$@"

View file

@ -0,0 +1,406 @@
--- pinentry-0.7.2/gtk+-2/padlock-keyhole.xpm
+++ pinentry-0.7.2/gtk+-2/padlock-keyhole.xpm
@@ -0,0 +1,403 @@
+/* XPM */
+static const char * padlock_keyhole_xpm[] = {
+"48 48 352 2",
+" c None",
+". c #000000",
+"+ c #010101",
+"@ c #9B9B9B",
+"# c #D0D0D0",
+"$ c #E3E3E3",
+"% c #E9E9E9",
+"& c #DDDDDD",
+"* c #C6C6C6",
+"= c #919191",
+"- c #BEBEBE",
+"; c #EAEAEA",
+"> c #F1F1F1",
+", c #F3F3F3",
+"' c #EDEDED",
+") c #E6E6E6",
+"! c #E2E2E2",
+"~ c #D8D8D8",
+"{ c #9C9C9C",
+"] c #606060",
+"^ c #F0F0F0",
+"/ c #ECECEC",
+"( c #E4E4E4",
+"_ c #E1E1E1",
+": c #D6D6D6",
+"< c #B7B7B7",
+"[ c #454545",
+"} c #858585",
+"| c #D9D9D9",
+"1 c #CECECE",
+"2 c #C2C2C2",
+"3 c #CCCCCC",
+"4 c #D5D5D5",
+"5 c #DCDCDC",
+"6 c #E0E0E0",
+"7 c #C8C8C8",
+"8 c #B9B9B9",
+"9 c #626262",
+"0 c #5E5E5E",
+"a c #E8E8E8",
+"b c #BCBCBC",
+"c c #585858",
+"d c #141414",
+"e c #7B7B7B",
+"f c #DFDFDF",
+"g c #C3C3C3",
+"h c #BBBBBB",
+"i c #4C4C4C",
+"j c #979797",
+"k c #B6B6B6",
+"l c #EBEBEB",
+"m c #8A8A8A",
+"n c #929292",
+"o c #DBDBDB",
+"p c #B3B3B3",
+"q c #939393",
+"r c #C0C0C0",
+"s c #020202",
+"t c #A2A2A2",
+"u c #E5E5E5",
+"v c #A0A0A0",
+"w c #818181",
+"x c #D1D1D1",
+"y c #AEAEAE",
+"z c #767676",
+"A c #F2F2F2",
+"B c #2F2F2F",
+"C c #828282",
+"D c #EEEEEE",
+"E c #B5B5B5",
+"F c #9F9F9F",
+"G c #0F0F0F",
+"H c #1F1F1F",
+"I c #A8A8A8",
+"J c #EFEFEF",
+"K c #CBCBCB",
+"L c #C5C5C5",
+"M c #DADADA",
+"N c #CACACA",
+"O c #ABABAB",
+"P c #ADACAA",
+"Q c #371908",
+"R c #9C5217",
+"S c #B86E25",
+"T c #B96B26",
+"U c #A75A1C",
+"V c #A55E1F",
+"W c #BC732A",
+"X c #B86F27",
+"Y c #97551A",
+"Z c #C99C62",
+"` c #F4E1CB",
+" . c #F4E0C9",
+".. c #EFDBBE",
+"+. c #ECD5B7",
+"@. c #EBD2B4",
+"#. c #EAD2B3",
+"$. c #EBCFB0",
+"%. c #E9CEAE",
+"&. c #E8CCAB",
+"*. c #E7CCA8",
+"=. c #E8C7A1",
+"-. c #E6C6A1",
+";. c #E5C5A0",
+">. c #E3C29A",
+",. c #E0C09B",
+"'. c #E0BD93",
+"). c #DFBA92",
+"!. c #DFBA8E",
+"~. c #DDB386",
+"{. c #D5AC7C",
+"]. c #A2611B",
+"^. c #F5E6D0",
+"/. c #EAD3AF",
+"(. c #EACFAF",
+"_. c #DAB88B",
+":. c #DAB687",
+"<. c #D8B081",
+"[. c #D6AE7F",
+"}. c #D3AB7C",
+"|. c #D1A974",
+"1. c #CFA56E",
+"2. c #CCA36D",
+"3. c #CA9F67",
+"4. c #C89E67",
+"5. c #C69B63",
+"6. c #C29861",
+"7. c #C2935B",
+"8. c #BF9052",
+"9. c #BC884B",
+"0. c #BD8440",
+"a. c #BA7E3D",
+"b. c #B37634",
+"c. c #A76A22",
+"d. c #8D5314",
+"e. c #F5E4CE",
+"f. c #E7CDA8",
+"g. c #DFBD90",
+"h. c #D8B183",
+"i. c #D5AD7E",
+"j. c #D2AA7B",
+"k. c #D2A677",
+"l. c #D0A771",
+"m. c #CDA36C",
+"n. c #C89F68",
+"o. c #C59B64",
+"p. c #C49961",
+"q. c #C59A62",
+"r. c #C2985D",
+"s. c #C1945A",
+"t. c #BF9054",
+"u. c #BE8E4F",
+"v. c #BC8749",
+"w. c #BA823F",
+"x. c #B17432",
+"y. c #8B5214",
+"z. c #E0BF97",
+"A. c #DBB486",
+"B. c #D7AF80",
+"C. c #D2AC7B",
+"D. c #D0A66F",
+"E. c #B58E5C",
+"F. c #A07E50",
+"G. c #9A794D",
+"H. c #B28C59",
+"I. c #C79C64",
+"J. c #C2975F",
+"K. c #BC8441",
+"L. c #B57C38",
+"M. c #AF732C",
+"N. c #A3661E",
+"O. c #875014",
+"P. c #E8CDA9",
+"Q. c #DFBC92",
+"R. c #D2AB7D",
+"S. c #D0AB75",
+"T. c #B38E5D",
+"U. c #94744A",
+"V. c #775E3C",
+"W. c #201910",
+"X. c #79603E",
+"Y. c #C79D66",
+"Z. c #BF9156",
+"`. c #BE8645",
+" + c #BC833F",
+".+ c #B67C37",
+"++ c #AA6C23",
+"@+ c #8D5514",
+"#+ c #E8CEA9",
+"$+ c #E1BC94",
+"%+ c #DAB487",
+"&+ c #D8B281",
+"*+ c #D0A873",
+"=+ c #92744D",
+"-+ c #7A603E",
+";+ c #79603F",
+">+ c #BE8F51",
+",+ c #BA813D",
+"'+ c #B77E3A",
+")+ c #B37934",
+"!+ c #A66921",
+"~+ c #E5C9A4",
+"{+ c #DDBA90",
+"]+ c #D2A575",
+"^+ c #D1A770",
+"/+ c #95754C",
+"(+ c #201A10",
+"_+ c #211A10",
+":+ c #D7B78E",
+"<+ c #BD8C4C",
+"[+ c #BC8845",
+"}+ c #BB823E",
+"|+ c #A96B22",
+"1+ c #E9CDAC",
+"2+ c #E7CBA6",
+"3+ c #D1A572",
+"4+ c #96774E",
+"5+ c #E1CBAD",
+"6+ c #C09359",
+"7+ c #BC8543",
+"8+ c #B37832",
+"9+ c #E8CCA7",
+"0+ c #E5CAA4",
+"a+ c #DCB98F",
+"b+ c #CAA16B",
+"c+ c #20190F",
+"d+ c #DEC6A7",
+"e+ c #C19256",
+"f+ c #BD8D4E",
+"g+ c #B57D3A",
+"h+ c #B57836",
+"i+ c #AD722C",
+"j+ c #A4661D",
+"k+ c #D2AB79",
+"l+ c #D1A872",
+"m+ c #755C38",
+"n+ c #755B37",
+"o+ c #DDC7A7",
+"p+ c #B77F3C",
+"q+ c #B0752F",
+"r+ c #A46821",
+"s+ c #895114",
+"t+ c #E9CEAA",
+"u+ c #DAB385",
+"v+ c #201A11",
+"w+ c #927E63",
+"x+ c #E3CFB3",
+"y+ c #D4B388",
+"z+ c #BB8444",
+"A+ c #B67A39",
+"B+ c #B17630",
+"C+ c #D2AC77",
+"D+ c #CDA46E",
+"E+ c #A57D4D",
+"F+ c #D9BF9E",
+"G+ c #CAA371",
+"H+ c #B77D38",
+"I+ c #AD6F26",
+"J+ c #BA935E",
+"K+ c #95744A",
+"L+ c #C5B39B",
+"M+ c #B57938",
+"N+ c #AD762E",
+"O+ c #AF722A",
+"P+ c #E1BD96",
+"Q+ c #CAA069",
+"R+ c #B58F5D",
+"S+ c #836641",
+"T+ c #8F7554",
+"U+ c #BC8947",
+"V+ c #BD8242",
+"W+ c #DBB88E",
+"X+ c #D1A776",
+"Y+ c #CCA26B",
+"Z+ c #B48D59",
+"`+ c #6C5433",
+" @ c #6D5536",
+".@ c #B47B37",
+"+@ c #C08D51",
+"@@ c #894E14",
+"#@ c #DCB387",
+"$@ c #D1AB76",
+"%@ c #B28B57",
+"&@ c #AC834E",
+"*@ c #3F301C",
+"=@ c #40321E",
+"-@ c #D2BD9F",
+";@ c #C8A271",
+">@ c #B8803D",
+",@ c #AF742E",
+"'@ c #864C13",
+")@ c #E6CAA5",
+"!@ c #B28753",
+"~@ c #9A7545",
+"{@ c #89683E",
+"]@ c #DAC1A0",
+"^@ c #BD8E50",
+"/@ c #B17732",
+"(@ c #AD712A",
+"_@ c #CA9D63",
+":@ c #874D14",
+"<@ c #E4C8A3",
+"[@ c #DAB88D",
+"}@ c #CBA26C",
+"|@ c #B78F5B",
+"1@ c #7F633F",
+"2@ c #725938",
+"3@ c #D3B389",
+"4@ c #CC9F69",
+"5@ c #B87F3B",
+"6@ c #BC823D",
+"7@ c #CEA16B",
+"8@ c #E8CBA5",
+"9@ c #C1975C",
+"0@ c #C09257",
+"a@ c #B9813E",
+"b@ c #BC8545",
+"c@ c #CDA06A",
+"d@ c #E6C9A3",
+"e@ c #D9B888",
+"f@ c #D3A676",
+"g@ c #BC8C4D",
+"h@ c #BE8A4D",
+"i@ c #BE8B4F",
+"j@ c #C79D60",
+"k@ c #E6C8A1",
+"l@ c #E1C39C",
+"m@ c #C2995F",
+"n@ c #D2AA77",
+"o@ c #D4A773",
+"p@ c #BF8A4C",
+"q@ c #B17330",
+"r@ c #331707",
+"s@ c #B2752D",
+"t@ c #C49A5D",
+"u@ c #B87E39",
+"v@ c #B37532",
+"w@ c #AF772E",
+"x@ c #AC742B",
+"y@ c #AA7229",
+"z@ c #AE7129",
+"A@ c #A96D26",
+"B@ c #A56922",
+"C@ c #A36720",
+"D@ c #A2651D",
+"E@ c #9E6119",
+"F@ c #9B5F18",
+"G@ c #995D16",
+"H@ c #925615",
+"I@ c #58300D",
+"J@ c #261105",
+"K@ c #311607",
+" ",
+" ",
+" ",
+" ",
+" . . . + . . . ",
+" . . + @ # $ % & * = + . . ",
+" . + - ; > , > ' ; ) ! ~ { + . ",
+" . ] $ , ^ / ) ( $ ! ! ! _ : < [ . ",
+" . } / , ; $ | 1 2 2 3 4 5 6 & 7 8 9 . ",
+" . 0 / , a 5 b c d . . . e - 6 f 5 g h i . ",
+" . + ! , % ~ j . . . { & 6 ~ h k + ",
+" . 8 , l ~ m . . n o f 1 p q . ",
+" + ; > & r s . . t u & r k + ",
+" v > a * w . s 5 ; x y z . ",
+" . # A | r B . C D 5 E F . ",
+" . _ > 3 r G H / ! r I . ",
+" . ) J K < . . % u L y . ",
+" . M l N O . . ( $ N P . ",
+" Q Q Q R S T U Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q V W X Y Q Q Q Q ",
+" Q Z ` ...+.@.#.$.%.&.*.=.-.-.-.-.-.=.=.-.;.;.>.,.'.).!.~.{.].Q ",
+" Q ^./.(.>._.:.<.[.}.|.1.2.3.3.3.3.3.3.3.4.5.6.7.8.9.0.a.b.c.d.Q ",
+" Q e.%.f.g.h.i.j.k.l.m.n.o.p.p.p.q.q.q.q.p.r.s.t.u.v.w.a.x.c.y.Q ",
+" Q ^.$.%.z.A.<.B.C.k.D.2.E.F.G.G.H.I.I.I.q.J.7.t.u.K.w.L.M.N.O.Q ",
+" Q e.(.P.Q.i.R.j.S.D.m.T.U.V.W.. W.X.n.3.Y.o.p.r.Z.u.`. +.+++@+Q ",
+" Q e.%.#+$+%+&+B.j.*+1.=+-+. . . . . ;+3.o.q.J.s.>+v.,+'+)+!+y.Q ",
+" Q ` P.~+{+i.j.j.]+^+2./+(+. . . . . _+:+4.5.p.J.Z.<+[+}+.+|+d.Q ",
+" Q e.1+2+Q.<.[.R.j.3+m.4+. . . . . . . 5+Y.p.J.6+>+<+7+a.8+c.y.Q ",
+" Q ` 9+0+a+[.}.j.]+1.b+/+W.. . . . . c+d+6.e+t.f+v.w.g+h+i+j+O.Q ",
+" Q e.1+2+{+i.k+l+1.b+n.q.m+. . . . . n+o+7.e+8.u.9. +p+.+q+r+s+Q ",
+" Q ^.(.t+$+A.u+u+[.k+*+1.2.-+_+. v+w+x+y+5.r.s.t.<+z+p+A+B+r+y.Q ",
+" Q ` t+~+_.C+]+l+D+b+4.p.r.E+. . . F+G+p.6.7.Z.t.<+[+w.H+8+I+s+Q ",
+" Q e.t+2+a+[.}.j.]+D.b+4.J+K+. . . L+p.p.6.e+Z.u.v. +'+M+N+O+O.Q ",
+" Q ^.(.t+P+A.<.[.C.*+m.Q+R+S+. . . T+d+p.r.e+t.f+U+ +'+M+M.V+O.Q ",
+" Q ` *.-.W+}.k+X+D.Y+3.q.Z+`+. . . @d+p.6.7.e+8.9.z+a..@B++@@@Q ",
+" Q .2+-.#@$@3+D.m.n.p.%@&@*@. . . =@-@;@7.Z.t.f+U+>@L.h+,@+@'@Q ",
+" Q ` )@-.A.$@l.1.b+4.p.!@~@*@. . . *@{@]@^@f+9.z+w.'+.@/@(@_@:@Q ",
+" Q ` 9+<@[@}.k.S.D.}@n.|@1@. . . . . 2@3@6.e+Z.>+9.K.g+L.B+4@s+Q ",
+" Q e.P.~+a+i.j.k+^+1.b+n.q.q.q.q.q.q.q.q.p.7.Z.8.v. +'+5@6@7@@@Q ",
+" Q ` 8@~+_.j.]+^+D+3.I.p.9@6+0@0@0@0@0@0@Z.8.u.U+z+a@L.5@b@c@O.Q ",
+" Q .d@;.e@f@l.1.}@3.5.q.p.r.6.6.p.p.q.q.p.s.6+t.g@U+h@p.i@j@@@Q ",
+" Q .k@l@u+3+1.m.n.o.m@7.0@Z.Z.0@7.9@q.4.m.m.7@7@k+n@3+o@p@q@:@Q ",
+" r@s@j@t@<+a.u@A+h+v@w@i+x@y@y@y@z@z@z@z@y@A@++B@C@D@E@F@G@H@I@J@ ",
+" K@Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q J@ ",
+" ",
+" ",
+" ",
+" ",
+" "};

BIN
pinentry-1.1.0.tar.bz2.sig Normal file

Binary file not shown.

16
pinentry-ncurses6.diff Normal file
View file

@ -0,0 +1,16 @@
---
pinentry/pinentry.h | 1 +
1 file changed, 1 insertion(+)
Index: pinentry/pinentry.h
===================================================================
--- pinentry/pinentry.h.orig
+++ pinentry/pinentry.h
@@ -75,6 +75,7 @@ struct pinentry
supported. (Assuan: "OPTION ttyname TTYNAME".) */
char *ttyname;
/* The type of the terminal. (Assuan: "OPTION ttytype TTYTYPE".) */
+#undef ttytype
char *ttytype;
/* Set the alert mode (none, beep or flash). */
char *ttyalert;

View file

@ -0,0 +1,51 @@
From 0e2e53c8987d6f236aaef515eb005e8e86397fbc Mon Sep 17 00:00:00 2001
From: Andre Heinecke <aheinecke@gnupg.org>
Date: Thu, 25 Jul 2019 14:20:51 +0200
Subject: [PATCH 1/1] qt: Fix use of dangling pointer in QApplication
* qt/main.cpp (main): Use a new variable for argc that stays
valid.
--
The QApplication constructor takes argc as a reference and the referenced
integer has to stay alive for at least as long as the QApplication.
GnuPG-Bug-Id: T4658
Based on a Patch from: Fabian Vogt <fvogt@suse.com>
Thanks!
---
qt/main.cpp | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/qt/main.cpp b/qt/main.cpp
index fe88d26..4e61dff 100644
--- a/qt/main.cpp
+++ b/qt/main.cpp
@@ -330,6 +330,7 @@ main(int argc, char *argv[])
pinentry_init("pinentry-qt");
QApplication *app = NULL;
+ int new_argc = 0;
#ifdef FALLBACK_CURSES
if (!pinentry_have_display(argc, argv)) {
@@ -369,8 +370,15 @@ main(int argc, char *argv[])
p += strlen(argv[i]) + 1;
}
- i = argc;
- app = new QApplication(i, new_argv);
+ /* Note: QApplication uses int &argc so argc has to be valid
+ * for the full lifetime of the application.
+ *
+ * As Qt might modify argc / argv we use copies here so that
+ * we do not loose options that are handled in both. e.g. display.
+ */
+ new_argc = argc;
+ Q_ASSERT (new_argc);
+ app = new QApplication(new_argc, new_argv);
app->setWindowIcon(QIcon(QLatin1String(":/document-encrypt.png")));
}
--
2.11.0

300
pinentry.changes Normal file
View file

@ -0,0 +1,300 @@
* Thu Jul 25 2019 pmonrealgonzalez@suse.com
- Fix a dangling pointer in qt/main.cpp [bsc#1141883]
* Added pinentry-qt-Fix-use-of-dangling-pointer.patch
* Thu Feb 22 2018 fvogt@suse.com
- Use %%license (boo#1082318)
* Mon Dec 11 2017 astieger@suse.com
- pinentry 1.1.0:
* Add FLTK1.3-based pinentry
* New option --ttyalert for pinentry-curses to alert the user.
* Don't show "save passphrase" checkbox if secret service is
unavailable.
* The GTK Pinentry shows on Linux some information anout the
process which invoked the Pinentry.
* The GTK Pinentry does not anymore show tooltips when keyboard
grabbing is enabled.
* Thu Dec 15 2016 tchvatal@suse.com
- Build pinentry tui in build and not during install
* Wed Dec 14 2016 astieger@suse.com
- pinentry 1.0.0:
* Qt pinentry now supports repeat mode in one dialog.
* Qt and GTK pinentries now make it possible to show the entered
value.
* Qt pinentry now only grabs the keyboard if an entry field is
focused.
* Fixed potential crash in Qt qualitybar calculation.
* GTK keyboard grabbing is now a bit more robust. The cursor is
changed to a big dot as a visual indication that a pinentry
has popped up and is waiting for input.
* The GNOME pinentry now falls back to curses if it can't use the
GCR system prompter or a screenlock is active.
* Fixed error output for cached passwords.
* A show/hide passphrase button or checkbox is now available with
some pinentry flavors.
* Improved diagnostics and error codes.
* Fri Jul 29 2016 tchvatal@suse.com
- Update the conflict to bring back the self-deprecation broken in
previous change wrt boo#989554
* Wed Jan 20 2016 astieger@suse.com
- completely rename to qt5 [boo#962076]
- fix self-deprecation rpmlint warning
* Wed Jan 13 2016 tchvatal@suse.com
- Use qt5 instead of qt4 in pinentry-qt
* Mon Dec 14 2015 andreas@suse.de
- pinentry 0.9.7:
* Fix regressions in the Qt pinentry.
(previsouly patched, removed
pinentry-qt4-fix-qstring-conversion.patch)
* Fix minor problems pinnetyr-tty.
* New option --invisible-char.
* Wed Oct 21 2015 dmueller@suse.com
- add pinentry-qt4-fix-qstring-conversion.patch (bsc#951307)
* Tue Oct 6 2015 kstreitova@suse.com
- update to 0.9.6
* changelog:
+ Many improvements for the dump tty pinentry
+ Use the standard GTK+-2 text entry widget instead of our outdated
and back-then-it-was-more-secure text widget
+ Use the standard Qt text widget
+ Allow for building a static Qt variant
+ Fix regression in w32 pinentry
* remove qt4-disable-inputmethod-for-passwords.diff (patched file
is no longer present)
* remove regenerating of qt4/qsecurelineedit.moc in specfile as
qt4/qsecurelineedit.h was deleted. Adjust paths for the rest
of the moc files (qt4 -> qt).
* '--enable-pinentry-qt4' is now '--enable-pinentry-qt'
* '--enable-pinentry-qt4-clipboard' option was removed
* add backward compatibility link for pinentry-qt4
- use spec-cleaner
* Fri Jul 10 2015 werner@suse.de
- Make it build with every ncurses library ABI
adding pinentry-ncurses6.diff
* Wed Jul 1 2015 astieger@suse.com
- pinentry 0.9.5:
* Replaced the internal Assuan and gpg-error code by the standard
libassuan and libgpg-error libraries.
* Add a new Emacs pinentry and use as fallback for GUI programs.
* gnome3: The use-password-manager checkbox does now work.
* Gtk: Improved fallback to curses feature.
* curses: Recognize DEL as backspace.
* Thu Jun 11 2015 lnussel@suse.de
- build gui version with libsecret and text mode versions without to
avoid pulling in dbus-x11 on minimal installs (bnc#934214)
* Wed Jun 10 2015 astieger@suse.com
- pinentry 0.9.4:
* Fix regression in GTK+ and curses pinentries [boo#934207]
* Fri Jun 5 2015 astieger@suse.com
- No longer increase the default secure memory size from 16k to 64k,
as further memory would be locked from being paged to disk by the
pinentry-gnome3 UI, generating an error message and failing to
lock. Remove moreSecureMemoryForPinentry-qt.diff - [boo#933687]
* Thu Jun 4 2015 astieger@suse.com
- pinentry 0.9.3:
* new pinentry-gnome3
* Improved documentation
* More improvements for pinentry-tty.
* Fixes for pinentry-curses including support for Ctrl-W, Ctrl-U,
Ctrl-H, Ctrl-L, and Alt-Backspace
* New Assuan command to request clearing an external cache.
* Fixed problems linking to ncursesw.
* All kind of other minor fixes.
- update pinentry script to use gnome3 if installed, no automation
- Enabled features:
* Support for saving the passphrase with libsecret.
* Tue May 12 2015 astieger@suse.com
- pinentry 0.9.2:
* Escape key works in the Gtk+ pinentry.
* Improvements for pinentry-tty.
- Upstream supported but not enabled:
* Support for saving the passphrase with libsecret.
* Thu Mar 26 2015 astieger@suse.com
- qt4 pasting was available upstream since 0.8.4 but not enabled.
Enable through configure option [boo#905155]
* Mon Mar 23 2015 crrodriguez@opensuse.org
- Use -std=gnu++11 in CXXFLAGS, fix build with gcc5.
* Thu Mar 19 2015 astieger@suse.com
- pinentry 0.9.1:
* Fixed build problems for systems without ncurses.
* Reworked the option parser to allow building on systems without
getopt_long.
* Fixed Qt4 build problems.
* Sat Nov 1 2014 andreas.stieger@gmx.de
- pinentry 0.9.0:
* New command SETREPEAT. Currently only supported for Gtk+-2.
* Gtk+-2: Pasting using the mouse is now supported.
* curses: Check that it is actually connected to a tty.
* Removed the old qt-3 and gtk+-1 pinentries.
- remove obsolete patches:
pinentry-0.7.2-bnc179996_disable_inputmethod_for_passords.patch
pinentry-0.8.1-allow_paste_gtk2.patch
- remove build dependencies and autoconf call, removing patch
pinentry-0.8.1-tinfo.patch
* Tue Oct 21 2014 tchvatal@suse.com
- Remove qt3 helpers
- Remove gpg verification in spec, it is done by obs automatically
- Some whitespace changes
- Add default defattr
* Sun Sep 21 2014 andreas.stieger@gmx.de
- pinentry 0.8.4:
* New pinentry-tty version for dumb terminals.
* Qt4: New option to enable pasting the passphrase from clipboard
* Qt4: Improved accessiblity
* Qt4: Raise confirm message windows into foreground
* Improved the build system.
- remove pinentry-0.8.1-allow_paste_qt4.patch, functionality
implemented
- sync pinentry wrapper with Fedora
- update pinentry wrapper to use pinentry-tty on dumb terminals
* Sat Dec 21 2013 coolo@suse.com
- disable qt3 support to avoid maintaining qt3 forever
* Mon Aug 19 2013 andreas.stieger@gmx.de
- update to 0.8.3
* Add SETTIMEOUT command for the gtk+-2 pinentry.
- includes changes from 0.8.2:
* New SETTIMEOUT command for the qt4 pinentry.
* Wide character support for the curses pinentry.
( already present in openSUSE patched version)
* Various bug fixes.
- drop pinentry-0.7.2-curses-utf-8.diff, implemented upstream
- drop pinentry-0.8.1-editing-cancelled_warning.patch, same
- refresh qt4-disable-inputmethod-for-passwords.diff
* Mon Apr 22 2013 meissner@suse.com
- %%makeinstall instead of %%make install.
* Mon Apr 15 2013 idonmez@suse.com
- Add Source URL, see https://en.opensuse.org/SourceUrls
- Add GPG checking
* Mon Dec 5 2011 vcizek@suse.com
- fixed licence of the pinentry-qt subpackage (bnc#734792)
* Wed Nov 30 2011 coolo@suse.com
- add automake as buildrequire to avoid implicit dependency
* Tue Nov 22 2011 vcizek@suse.com
- patch that fixes Glib warning (bnc#730453)
- add -ltinfo to fix build
* Fri Oct 21 2011 tiwai@suse.de
- fix pinentry-qt4 not to allow triggering IM (bnc#725471)
* Wed Sep 14 2011 vcizek@suse.com
- enable paste for pinentry-gtk2 (bnc#690514)
* Tue Sep 13 2011 vcizek@suse.com
- enable paste for pinentry-qt4 (bnc#690514)
* Thu Mar 24 2011 puzel@novell.com
- update to pinentry-0.8.1
* The GTK pinentry now always sticks to the top and properly grabs
the keyboard.
* The protocol options default-cancel and default-ok now work for
the pinentry-gtk2 and pinentry-qt (that is QT3).
- drop pinentry-qt-fix-1162.diff (in upstream)
- use spec-cleaner
* Tue Oct 5 2010 cristian.rodriguez@opensuse.org
- Add missing buildrequires on libcap-devel
* Mon Aug 23 2010 puzel@novell.com
- pinentry-qt-fix-1162.diff: fix active window issue (bnc#629502)
Upstream Patch: https://bugs.g10code.com/gnupg/issue1162
* Wed Jul 7 2010 puzel@novell.com
- change pinentry script to not to rely on curses fallback
mechanism if DISPLAY is not set
* Wed Mar 17 2010 puzel@novell.com
- update to pinentry-0.8.0
* Beautified the qt4 pinentry
* Minor enhancements.
* Sat Dec 19 2009 jengelh@medozas.de
- enable parallel build
* Wed Oct 7 2009 puzel@novell.com
- do not fail when no graphical pinentry is installed -
try pinentry-curses instead (bnc#544365)
* Fri Aug 21 2009 puzel@novell.com
- all graphical pinentry (-qt,qt4,-gtk2) now provide pinentry-gui
* Tue Jun 30 2009 puzel@novell.com
- improve pinentry script: prefer pinentry-qt in KDE3 environment
(bnc#514688)
* Wed Jun 24 2009 puzel@novell.com
- update to pinentry-0.7.6
* Make Gtk+-2 pinentry transient to the root window.
* Add Qt4 pinentry.
* Fix utf-8 problem in Qt pinentries.
* Return GPG_ERR_CANCELED if during a "CONFIRM" command the user
closed the window.
* Add quality bar.
- drop pinentry-gsize.patch (fixed in upstream)
- drop wrong-apostrophe.patch (fixed in upstream)
- drop pinentry-qt4.patch (native qt4 support added)
- simplify build section with configure macro and autoreconf
* Thu May 28 2009 puzel@suse.cz
- pinentry-qt4 (bnc#505134)
- add pinentry-qt4.patch.bz2
* Mon Nov 10 2008 coolo@suse.de
- revert the last entry (reopened the bug)
* Wed Nov 5 2008 puzel@suse.cz
- pinentry requires pinentry-dialog (bnc#441084)
* Wed Jul 23 2008 puzel@suse.cz
- added pinentry-0.7.5-wrong-apostrophe.patch
* fixes (bnc#411312)
* Mon Jun 16 2008 puzel@suse.cz
- removed pinentry-0.7.2-qt-utf8.diff workaround patch
(not needed since [bnc#305725] is fixed)
* Wed Apr 16 2008 pcerny@suse.cz
- update to 0.7.5
(small fixes, see package's changelog for details)
* Thu Apr 10 2008 werner@suse.de
- Use correct ncurses header for libncursesw
- Handle info file
- Use RPM_OPT_FLAGS even for c++ files
* Sun Mar 30 2008 ro@suse.de
- fix build with changed definition of g_malloc (gulong->gsize)
* Tue Sep 11 2007 ltinkl@suse.cz
- fix various utf-8 problems (#305725)
* Thu Mar 29 2007 ro@suse.de
- added ncurses-devel to buildreq
* Fri Jan 5 2007 anicka@suse.cz
- fix KDE detection in pinentry wrapper script
(thanks llunak for a patch)
* Wed Nov 22 2006 anicka@suse.cz
- fixed Provides [#223074]
* Tue Nov 21 2006 nadvornik@suse.cz
- fixed pinentry script: dont use pinentry-curses in GUI [#205688]
- removed useless provides
* Mon Nov 6 2006 anicka@suse.de
- split graphical frontends (#217373)
- rewrite pinentry wrapper to use the right binary
* Mon Nov 6 2006 pnemec@suse.cz
- Fixed pinnentry wrapper #218257
* Sun Oct 15 2006 schwab@suse.de
- Make sure config.rpath is present.
* Tue Oct 3 2006 pnemec@suse.cz
- removed static simlink to pinentry-qt
- add script which use pinentry-qt only when KDE is detected
* Mon Jun 26 2006 mfabian@suse.de
- Bugzilla #179996: enable input methods in SecQlineEdit widgets
only when "mode == Normal" (i.e. not when "mode == NoEcho" or
"mode == Password"). Using input methods while inputting
passwords is useless. See also Bugzilla #117115.
* Wed Jan 25 2006 mls@suse.de
- converted neededforbuild to BuildRequires
* Mon Dec 19 2005 ro@suse.de
- added symlink to filelist
* Fri Jul 29 2005 anicka@suse.cz
- update to 0.7.2
- remove part of gtk2 patch contained in new version
* Tue Nov 2 2004 postadal@suse.cz
- added patch gtk+-2.4.diff.bz2 for gtk2 support (removing gtk1 dependency)
* Tue Jul 13 2004 adrian@suse.de
- update to version 0.7.1
* Sat Jan 10 2004 adrian@suse.de
- build as user
* Tue Nov 18 2003 mc@suse.de
- increase secmem allocation for pinentry-qt to avoid
"Out of memory" errors.
(pinentry-0.6.9.moreSecureMemoryForPinentry-qt.diff)
* Mon Jun 2 2003 mc@suse.de
- remove pinentry-0.6.8-prevent-assuan-stderr.dif; no longer needed
- switch to version 0.6.9
* a memory-issue present in 0.6.8
* a minor build problem (make distclean now cleans up .moc files)
* assuan protocol debug messages are not written to stderr
- fixed build on x86_64
* Tue Apr 8 2003 mc@suse.de
- prevent pinentry-qt to print the assuan protocol to stderr
* Fri Feb 21 2003 ro@suse.de
- fixed neededforbuild
* Tue Feb 11 2003 mc@suse.de
- initial release

411
pinentry.keyring Normal file
View file

@ -0,0 +1,411 @@
pub 2048R/4F25E3B6 2011-01-12 [expires: 2019-12-31]
Key fingerprint = D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6
uid Werner Koch (dist sig)
sub 2048R/AC87C71A 2011-01-12 [expires: 2019-12-31]
Releases done in the years 1996 to 2010 are signed by this key:
pub 1024R/1CE0C630 2006-01-01 [expires: 2011-06-30]
Key fingerprint = 7B96 D396 E647 1601 754B E4DB 53B6 20D0 1CE0 C630
uid Werner Koch (dist sig) <dd9jn@gnu.org>
Releases done in the years 1998 to 2005 are signed by this key:
pub 1024D/57548DCD 1998-07-07 [expired: 2005-12-31]
Key fingerprint = 6BD9 050F D8FC 941B 4341 2DCC 68B7 AB89 5754 8DCD
uid Werner Koch (gnupg sig) <dd9jn@gnu.org>
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v2.0.17 (GNU/Linux)
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
=CxwV
-----END PGP PUBLIC KEY BLOCK-----

210
pinentry.spec Normal file
View file

@ -0,0 +1,210 @@
#
# spec file for package pinentry
#
# Copyright (c) 2022-2023 ZhuningOS
#
%define ncurses %(xxx="`readlink -f %{_includedir}/ncurses.h`"; echo $xxx)
%define nmajor %(grep NCURSES_VERSION_MAJOR < %{_includedir}/ncurses.h)
Name: pinentry
Version: 1.1.0
Release: 4.3.1
Summary: Collection of Simple PIN or Passphrase Entry Dialogs
License: GPL-2.0+
Group: Productivity/Other
Url: http://www.gnupg.org/aegypten/
Source: ftp://ftp.gnupg.org/gcrypt/pinentry/%{name}-%{version}.tar.bz2
Source1: ftp://ftp.gnupg.org/gcrypt/pinentry/%{name}-%{version}.tar.bz2.sig
Source2: pinentry.keyring
Source3: pinentry
Patch1: pinentry-0.7.2-gtk+-2.4.diff
# PATCH-FIX-SUSE make it build with ncurses ABI 6
Patch7: pinentry-ncurses6.diff
# PATCH-FIX-SUSE bsc#1141883 pinentry-qt crashes with QtCurve
Patch8: pinentry-qt-Fix-use-of-dangling-pointer.patch
BuildRequires: fltk-devel >= 1.3
BuildRequires: libassuan-devel >= 2.1.0
BuildRequires: libgpg-error-devel >= 1.16
BuildRequires: ncurses-devel
BuildRequires: pkgconfig
BuildRequires: update-desktop-files
BuildRequires: pkgconfig(Qt5Core)
BuildRequires: pkgconfig(Qt5Gui)
BuildRequires: pkgconfig(Qt5Widgets)
BuildRequires: pkgconfig(gcr-3)
BuildRequires: pkgconfig(gcr-base-3)
BuildRequires: pkgconfig(gtk+-2.0) >= 2.4.0
BuildRequires: pkgconfig(libsecret-1)
Requires(post): %{install_info_prereq}
Provides: pinentry-dialog
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
This is a collection of simple PIN or passphrase entry dialogs which
utilize the Assuan protocol as described by the Aegypten project.
%package qt5
Summary: Collection of Simple PIN or Passphrase Entry Dialogs
Group: Productivity/Other
Requires: pinentry
Provides: pinentry-dialog
Provides: pinentry-gui
Provides: pinentry-qt = %{version}
Obsoletes: pinentry-qt <= 0.8.3
Provides: pinentry-qt4 = %{version}-%{release}
Obsoletes: pinentry-qt4 <= 0.9.7
%description qt5
This is a collection of simple PIN or passphrase entry dialogs which
utilize the Assuan protocol as described by the Aegypten project.
%package gtk2
Summary: Collection of Simple PIN or Passphrase Entry Dialogs
Group: Productivity/Other
Requires: pinentry
Provides: pinentry-dialog
Provides: pinentry-gui
Provides: pinentry:%{_bindir}/pinentry-gtk-2
%description gtk2
This is a collection of simple PIN or passphrase entry dialogs which
utilize the Assuan protocol as described by the Aegypten project.
%package gnome3
Summary: Collection of Simple PIN or Passphrase Entry Dialogs
Group: Productivity/Other
Requires: pinentry
Provides: pinentry-dialog
Provides: pinentry-gui
Provides: pinentry:%{_bindir}/pinentry-gnome3
%description gnome3
This is a collection of simple PIN or passphrase entry dialogs which
utilize the Assuan protocol as described by the Aegypten project.
%package emacs
Summary: Collection of Simple PIN or Passphrase Entry Dialogs
Group: Productivity/Other
Requires: emacs
Requires: pinentry
Provides: pinentry-dialog
Provides: pinentry-gui
Provides: pinentry:%{_bindir}/pinentry-emacs
%description emacs
This is a collection of simple PIN or passphrase entry dialogs which
utilize the Assuan protocol as described by the Aegypten project.
%package fltk
Summary: Collection of Simple PIN or Passphrase Entry Dialogs
Group: Productivity/Other
Requires: pinentry
Provides: pinentry-dialog
Provides: pinentry-gui
Provides: pinentry:%{_bindir}/pinentry-fltk
%description fltk
This package contains a simple PIN or passphrase entry dialog built
using the fltk GUI toolkit.
%prep
%setup -q
%patch1 -p1
%patch7
%patch8 -p1
%build
# Regenerate moc's
moc-qt5 qt/pinentrydialog.h > qt/pinentrydialog.moc
moc-qt5 qt/pinentryconfirm.h > qt/pinentryconfirm.moc
nmajor=$(sed -rn 's/^#define\s+NCURSES_VERSION_MAJOR\s+([0-9]+)/\1/p' %{_includedir}/ncurses.h)
CFLAGS="%{optflags} $(ncursesw${nmajor}-config --cflags)"
CXXFLAGS="%{optflags} -std=gnu++11 $(ncursesw${nmajor}-config --cflags)"
LDFLAGS="$(ncursesw${nmajor}-config --libs)"
export CFLAGS CXXFLAGS LDFLAGS
%define _configure ../configure
# build gui version with libsecret (bnc#934214)
mkdir gui
cd gui
%configure \
--disable-pinentry-curses \
--disable-pinentry-tty \
--enable-libsecret \
--enable-pinentry-qt \
--enable-pinentry-gtk2 \
--enable-pinentry-gnome3 \
--enable-pinentry-emacs \
--enable-inside-emacs \
--enable-pinentry-fltk \
--without-ncurses-include-dir
make %{?_smp_mflags}
# build text version without libsecret (bnc#934214)
cd ..
mkdir tui
cd tui
%configure \
--enable-pinentry-curses \
--enable-pinentry-tty \
--disable-libsecret \
--disable-pinentry-qt \
--disable-pinentry-gtk2 \
--disable-pinentry-gnome3 \
--disable-pinentry-emacs \
--disable-inside-emacs \
--disable-pinentry-fltk \
--without-ncurses-include-dir
make %{?_smp_mflags}
%install
cd tui
make %{?_smp_mflags} DESTDIR=%{buildroot} install
cd ../gui
make %{?_smp_mflags} DESTDIR=%{buildroot} install
# remove symlink
rm -rf %{buildroot}%{_bindir}/pinentry
# backward compatibility symlinks
ln -s pinentry-qt %{buildroot}%{_bindir}/pinentry-qt5
ln -s pinentry-qt %{buildroot}%{_bindir}/pinentry-qt4
cp %{SOURCE3} %{buildroot}%{_bindir}
%post
%install_info --info-dir=.%{_infodir} .%{_infodir}/pinentry.info.gz
%postun
%install_info_delete --info-dir=.%{_infodir} .%{_infodir}/pinentry.info.gz
%files
%defattr(-,root,root)
%license COPYING
%doc AUTHORS ChangeLog NEWS README
%{_infodir}/pinentry*
%attr(755,root,root) %{_bindir}/pinentry
%attr(755,root,root) %{_bindir}/pinentry-tty
%attr(755,root,root) %{_bindir}/pinentry-curses
%files qt5
%defattr(-,root,root)
%attr(755,root,root) %{_bindir}/pinentry-qt5
%attr(755,root,root) %{_bindir}/pinentry-qt4
%attr(755,root,root) %{_bindir}/pinentry-qt
%files gtk2
%defattr(-,root,root)
%attr(755,root,root) %{_bindir}/pinentry-gtk-2
%files gnome3
%defattr(-,root,root)
%attr(755,root,root) %{_bindir}/pinentry-gnome3
%files emacs
%defattr(-,root,root)
%attr(755,root,root) %{_bindir}/pinentry-emacs
%files fltk
%defattr(-,root,root)
%attr(755,root,root) %{_bindir}/pinentry-fltk
%changelog