Hello community,
here is the log from the commit of package pinentry for openSUSE:Factory checked in at 2015-12-18 21:52:13
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/pinentry (Old)
and /work/SRC/openSUSE:Factory/.pinentry.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "pinentry"
Changes:
--------
--- /work/SRC/openSUSE:Factory/pinentry/pinentry.changes 2015-10-28 17:17:33.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.pinentry.new/pinentry.changes 2015-12-18 21:52:14.000000000 +0100
@@ -1,0 +2,10 @@
+Mon Dec 14 19:50:38 UTC 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.
+
+-------------------------------------------------------------------
Old:
----
pinentry-0.9.6.tar.bz2
pinentry-0.9.6.tar.bz2.sig
pinentry-qt4-fix-qstring-conversion.patch
New:
----
pinentry-0.9.7.tar.bz2
pinentry-0.9.7.tar.bz2.sig
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ pinentry.spec ++++++
--- /var/tmp/diff_new_pack.WG61qB/_old 2015-12-18 21:52:15.000000000 +0100
+++ /var/tmp/diff_new_pack.WG61qB/_new 2015-12-18 21:52:15.000000000 +0100
@@ -21,7 +21,7 @@
%define ncurses %(xxx="`readlink -f %{_includedir}/ncurses.h`"; echo $xxx)
%define nmajor %(grep NCURSES_VERSION_MAJOR < %{_includedir}/ncurses.h)
Name: pinentry
-Version: 0.9.6
+Version: 0.9.7
Release: 0
Summary: Collection of Simple PIN or Passphrase Entry Dialogs
License: GPL-2.0+
@@ -34,7 +34,6 @@
Patch1: pinentry-0.7.2-gtk+-2.4.diff
# PATCH-FIX-SUSE make it build with ncurses ABI 6
Patch7: pinentry-ncurses6.diff
-Patch8: pinentry-qt4-fix-qstring-conversion.patch
BuildRequires: libassuan-devel >= 2.1.0
BuildRequires: libgpg-error-devel >= 1.16
BuildRequires: libqt4-devel
@@ -107,7 +106,6 @@
%setup -q
%patch1 -p1
%patch7
-%patch8 -p1
%build
# Regenerate moc's
++++++ pinentry-0.9.6.tar.bz2 -> pinentry-0.9.7.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pinentry-0.9.6/ChangeLog new/pinentry-0.9.7/ChangeLog
--- old/pinentry-0.9.6/ChangeLog 2015-09-10 20:33:10.000000000 +0200
+++ new/pinentry-0.9.7/ChangeLog 2015-12-07 10:36:13.000000000 +0100
@@ -1,3 +1,53 @@
+2015-12-07 Werner Koch
+
+ Release 0.9.7.
+
+2015-12-01 Werner Koch
+
+ Remove unused code.
+ * secmem/util.c (lower_privs, raise_privs): Remove commented
+ functions.
+
+2015-11-27 Neal H. Walfield
+
+ tty: Fix formatting.
+ * tty/pinentry-tty.c (password): Remove trailing space.
+
+2015-11-18 Neal H. Walfield
+
+ tty: Flush output. Show an error if an invalid option is selected.
+ * tty/pinentry-tty.c (confirm): Flush the output after printing the
+ prompt. Echo what the user typed. If the user's selection is
+ invalid, indicate as much.
+
+2015-10-22 Dirk Mueller
+
+ Qt: Do not use temporary reference to utf8 pin.
+ * qt/main.cpp (qt_cmd_handler): Keep utf8 pin byte array.
+
+2015-10-02 Andre Heinecke
+
+ Qt: Fix assignment of have_qt5_libs variable.
+ * m4/qt.m4 (FIND_QT): Remove spaces in variable assignment.
+
+ Qt: Fix quoting of have_qt5_libs init in FIND_QT.
+ * m4/qt.m4 (FIND_QT): Quote initialization of have_qt5_libs var.
+
+2015-09-25 Andre Heinecke
+
+ Add option to disable looking for qt5.
+ * m4/qt.m4 (FIND_QT): Add --disable-pinentry-qt5 option to
+ disable qt5 support even if it is available.
+
+2015-09-16 Werner Koch
+
+ Add option "invisible-char".
+ * pinentry/pinentry.h (struct pinentry): Add field invisible_char.
+ * pinentry/pinentry.c (pinentry_reset): Restore that.
+ (option_handler): Add option "invisible-char".
+ * gtk+-2/pinentry-gtk-2.c (create_window): Set the invisible char if
+ given.
+
2015-09-10 Werner Koch
Release 0.9.6.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pinentry-0.9.6/NEWS new/pinentry-0.9.7/NEWS
--- old/pinentry-0.9.6/NEWS 2015-09-10 20:30:37.000000000 +0200
+++ new/pinentry-0.9.7/NEWS 2015-12-07 10:32:54.000000000 +0100
@@ -1,3 +1,13 @@
+Noteworthy changes in version 0.9.7 (2015-12-07)
+------------------------------------------------
+
+ * Fix regressions in the Qt pinentry.
+
+ * Fix minor problems pinnetyr-tty.
+
+ * New option --invisible-char.
+
+
Noteworthy changes in version 0.9.6 (2015-09-10)
------------------------------------------------
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pinentry-0.9.6/VERSION new/pinentry-0.9.7/VERSION
--- old/pinentry-0.9.6/VERSION 2015-09-10 20:33:10.000000000 +0200
+++ new/pinentry-0.9.7/VERSION 2015-12-07 10:36:13.000000000 +0100
@@ -1 +1 @@
-0.9.6
+0.9.7
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pinentry-0.9.6/configure new/pinentry-0.9.7/configure
--- old/pinentry-0.9.6/configure 2015-09-10 20:32:24.000000000 +0200
+++ new/pinentry-0.9.7/configure 2015-12-07 10:34:42.000000000 +0100
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for pinentry 0.9.6.
+# Generated by GNU Autoconf 2.69 for pinentry 0.9.7.
#
# Report bugs to http://bugs.gnupg.org.
#
@@ -580,8 +580,8 @@
# Identity of this package.
PACKAGE_NAME='pinentry'
PACKAGE_TARNAME='pinentry'
-PACKAGE_VERSION='0.9.6'
-PACKAGE_STRING='pinentry 0.9.6'
+PACKAGE_VERSION='0.9.7'
+PACKAGE_STRING='pinentry 0.9.7'
PACKAGE_BUGREPORT='http://bugs.gnupg.org'
PACKAGE_URL=''
@@ -817,6 +817,7 @@
enable_pinentry_gnome3
enable_libsecret
enable_pinentry_qt
+enable_pinentry_qt5
'
ac_precious_vars='build_alias
host_alias
@@ -1375,7 +1376,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures pinentry 0.9.6 to adapt to many kinds of systems.
+\`configure' configures pinentry 0.9.7 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -1445,7 +1446,7 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of pinentry 0.9.6:";;
+ short | recursive ) echo "Configuration of pinentry 0.9.7:";;
esac
cat <<\_ACEOF
@@ -1476,6 +1477,7 @@
build GNOME 3 pinentry
--enable-libsecret optionally cache passphrases using libsecret
--enable-pinentry-qt build qt pinentry
+ --disable-pinentry-qt5 Don't use qt5 even if it is available.
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
@@ -1584,7 +1586,7 @@
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
-pinentry configure 0.9.6
+pinentry configure 0.9.7
generated by GNU Autoconf 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2045,7 +2047,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by pinentry $as_me 0.9.6, which was
+It was created by pinentry $as_me 0.9.7, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ $0 $@
@@ -2912,7 +2914,7 @@
# Define the identity of the package.
PACKAGE='pinentry'
- VERSION='0.9.6'
+ VERSION='0.9.7'
cat >>confdefs.h <<_ACEOF
@@ -9682,6 +9684,17 @@
if test "$pinentry_qt" != "no"; then
+ # Check whether --enable-pinentry-qt5 was given.
+if test "${enable_pinentry_qt5+set}" = set; then :
+ enableval=$enable_pinentry_qt5; enable_pinentry_qt5=$enableval
+else
+ enable_pinentry_qt5="try"
+fi
+
+
+ have_qt5_libs="no";
+
+ if test "$enable_pinentry_qt5" != "no"; then
pkg_failed=no
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for Qt5Core >= 5.0.0 Qt5Gui >= 5.0.0 Qt5Widgets >= 5.0.0" >&5
@@ -9754,10 +9767,10 @@
have_qt5_libs="yes"
fi
- if "$PKG_CONFIG" --variable qt_config Qt5Core | grep -q "reduce_relocations"; then
- PINENTRY_QT_CFLAGS="$PINENTRY_QT_CFLAGS -fpic"
+ if "$PKG_CONFIG" --variable qt_config Qt5Core | grep -q "reduce_relocations"; then
+ PINENTRY_QT_CFLAGS="$PINENTRY_QT_CFLAGS -fpic"
+ fi
fi
-
if test "$have_qt5_libs" = "yes"; then
if test -n "$ac_tool_prefix"; then
# Extract the first word of "${ac_tool_prefix}moc", so it can be a program name with args.
@@ -11099,7 +11112,7 @@
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
-This file was extended by pinentry $as_me 0.9.6, which was
+This file was extended by pinentry $as_me 0.9.7, which was
generated by GNU Autoconf 2.69. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -11165,7 +11178,7 @@
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
-pinentry config.status 0.9.6
+pinentry config.status 0.9.7
configured by $0, generated by GNU Autoconf 2.69,
with options \\"\$ac_cs_config\\"
@@ -12039,7 +12052,7 @@
Pinentry v${VERSION} has been configured as follows:
- Revision: 192ee8a (6446)
+ Revision: 97b6ea5 (38838)
Platform: $host
Curses Pinentry ..: $pinentry_curses
@@ -12061,7 +12074,7 @@
Pinentry v${VERSION} has been configured as follows:
- Revision: 192ee8a (6446)
+ Revision: 97b6ea5 (38838)
Platform: $host
Curses Pinentry ..: $pinentry_curses
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pinentry-0.9.6/configure.ac new/pinentry-0.9.7/configure.ac
--- old/pinentry-0.9.6/configure.ac 2015-09-10 20:21:54.000000000 +0200
+++ new/pinentry-0.9.7/configure.ac 2015-09-16 19:08:29.000000000 +0200
@@ -26,7 +26,7 @@
# (git tag -s pinentry-n.m.k) and run "./autogen.sh --force". Please
# bump the version number immediately after the release, do another
# commit, and a push so that the git magic is able to work.
-m4_define(mym4_version, [0.9.6])
+m4_define(mym4_version, [0.9.7])
# Below is m4 magic to extract and compute the git revision number,
# the decimalized short revision number, a beta version string and a
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pinentry-0.9.6/doc/HACKING new/pinentry-0.9.7/doc/HACKING
--- old/pinentry-0.9.6/doc/HACKING 2013-03-21 09:43:50.000000000 +0100
+++ new/pinentry-0.9.7/doc/HACKING 2015-12-01 13:00:32.000000000 +0100
@@ -21,3 +21,18 @@
in a "real" ChangeLog file, but keep the maximum line length at 72
or smaller, so that the generated ChangeLog lines, each with its
leading TAB, will not exceed 80 columns.
+
+ For more infomration please check the HACHING file from the GnuPG
+ project.
+
+* String translation
+
+ Pinentry does not not require any translation files because it
+ expects that all strings are provided localized by the caller. This
+ is due to the design constraint to keep the tool simple and also to
+ make sure that translations match those of GnuPG.
+
+ The available translated strings can be found in GnuPG, file
+ agent/call-pinentry, function start_pinentry. If a string is not
+ available the Pinentry code uses a default as a fallback. However,
+ it is highly suggested to provide Pinentry with translated strings.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pinentry-0.9.6/doc/pinentry.info new/pinentry-0.9.7/doc/pinentry.info
--- old/pinentry-0.9.6/doc/pinentry.info 2015-09-10 20:33:10.000000000 +0200
+++ new/pinentry-0.9.7/doc/pinentry.info 2015-12-07 10:36:13.000000000 +0100
@@ -8,8 +8,8 @@
This file documents the use and the internals of the PINENTRY.
- This is edition 0.9.6, last updated 10 September 2015, of 'The
-'PINEntry' Manual', for version 0.9.6.
+ This is edition 0.9.7, last updated 16 September 2015, of 'The
+'PINEntry' Manual', for version 0.9.7.
Published by g10 Code GmbH
H�ttenstr. 61
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pinentry-0.9.6/doc/stamp-vti new/pinentry-0.9.7/doc/stamp-vti
--- old/pinentry-0.9.6/doc/stamp-vti 2015-09-10 20:33:09.000000000 +0200
+++ new/pinentry-0.9.7/doc/stamp-vti 2015-12-07 10:36:06.000000000 +0100
@@ -1,4 +1,4 @@
-@set UPDATED 10 September 2015
+@set UPDATED 16 September 2015
@set UPDATED-MONTH September 2015
-@set EDITION 0.9.6
-@set VERSION 0.9.6
+@set EDITION 0.9.7
+@set VERSION 0.9.7
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pinentry-0.9.6/doc/version.texi new/pinentry-0.9.7/doc/version.texi
--- old/pinentry-0.9.6/doc/version.texi 2015-09-10 20:33:09.000000000 +0200
+++ new/pinentry-0.9.7/doc/version.texi 2015-12-07 10:36:06.000000000 +0100
@@ -1,4 +1,4 @@
-@set UPDATED 10 September 2015
+@set UPDATED 16 September 2015
@set UPDATED-MONTH September 2015
-@set EDITION 0.9.6
-@set VERSION 0.9.6
+@set EDITION 0.9.7
+@set VERSION 0.9.7
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pinentry-0.9.6/gtk+-2/pinentry-gtk-2.c new/pinentry-0.9.7/gtk+-2/pinentry-gtk-2.c
--- old/pinentry-0.9.6/gtk+-2/pinentry-gtk-2.c 2015-09-10 20:21:54.000000000 +0200
+++ new/pinentry-0.9.7/gtk+-2/pinentry-gtk-2.c 2015-09-16 20:38:05.000000000 +0200
@@ -1,7 +1,7 @@
/* pinentry-gtk-2.c
Copyright (C) 1999 Robert Bihlmeyer
Copyright (C) 2001, 2002, 2007, 2015 g10 Code GmbH
- Copyright (C) 2004 by Albrecht Dre�
+ Copyright (C) 2004 by Albrecht Dreß
pinentry-gtk-2 is a pinentry application for the Gtk+-2 widget set.
It tries to follow the Gnome Human Interface Guide as close as
@@ -498,6 +498,20 @@
entry = gtk_entry_new ();
gtk_entry_set_visibility (GTK_ENTRY (entry), FALSE);
+ /* Allow the user to set a narrower invisible character than the
+ large dot currently used by GTK. Examples are "•★Ⓐ" */
+ if (pinentry->invisible_char)
+ {
+ gunichar *uch;
+ /*""*/
+ uch = g_utf8_to_ucs4 (pinentry->invisible_char, -1, NULL, NULL, NULL);
+ if (uch)
+ {
+ gtk_entry_set_invisible_char (GTK_ENTRY (entry), *uch);
+ g_free (uch);
+ }
+ }
+
gtk_widget_set_size_request (entry, 200, -1);
g_signal_connect (G_OBJECT (entry), "changed",
G_CALLBACK (changed_text_handler), entry);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pinentry-0.9.6/m4/qt.m4 new/pinentry-0.9.7/m4/qt.m4
--- old/pinentry-0.9.6/m4/qt.m4 2015-09-10 20:21:54.000000000 +0200
+++ new/pinentry-0.9.7/m4/qt.m4 2015-10-12 15:35:14.000000000 +0200
@@ -28,15 +28,24 @@
AC_DEFUN([FIND_QT],
[
- PKG_CHECK_MODULES(PINENTRY_QT,
- Qt5Core >= 5.0.0 Qt5Gui >= 5.0.0 Qt5Widgets >= 5.0.0,
- [have_qt5_libs="yes"],
- [have_qt5_libs="no"])
+ AC_ARG_ENABLE(pinentry-qt5,
+ AC_HELP_STRING([--disable-pinentry-qt5],
+ [Don't use qt5 even if it is available.]),
+ enable_pinentry_qt5=$enableval,
+ enable_pinentry_qt5="try")
- if "$PKG_CONFIG" --variable qt_config Qt5Core | grep -q "reduce_relocations"; then
- PINENTRY_QT_CFLAGS="$PINENTRY_QT_CFLAGS -fpic"
- fi
+ have_qt5_libs="no";
+
+ if test "$enable_pinentry_qt5" != "no"; then
+ PKG_CHECK_MODULES(PINENTRY_QT,
+ Qt5Core >= 5.0.0 Qt5Gui >= 5.0.0 Qt5Widgets >= 5.0.0,
+ [have_qt5_libs="yes"],
+ [have_qt5_libs="no"])
+ if "$PKG_CONFIG" --variable qt_config Qt5Core | grep -q "reduce_relocations"; then
+ PINENTRY_QT_CFLAGS="$PINENTRY_QT_CFLAGS -fpic"
+ fi
+ fi
if test "$have_qt5_libs" = "yes"; then
AC_CHECK_TOOL(MOC, moc)
AC_MSG_CHECKING([moc version])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pinentry-0.9.6/pinentry/pinentry.c new/pinentry-0.9.7/pinentry/pinentry.c
--- old/pinentry-0.9.6/pinentry/pinentry.c 2015-09-10 20:21:54.000000000 +0200
+++ new/pinentry-0.9.7/pinentry/pinentry.c 2015-09-16 20:47:52.000000000 +0200
@@ -95,6 +95,9 @@
int timout = pinentry.timeout;
+ char *invisible_char = pinentry.invisible_char;
+
+
/* Free any allocated memory. */
if (use_defaults)
{
@@ -127,6 +130,11 @@
/* Reset the pinentry structure. */
memset (&pinentry, 0, sizeof (pinentry));
+ /* Restore options without a default we want to preserve. */
+ pinentry.invisible_char = invisible_char;
+
+ /* Restore other options or set defaults. */
+
if (use_defaults)
{
/* Pinentry timeout in seconds. */
@@ -878,6 +886,14 @@
return gpg_error (GPG_ERR_NOT_SUPPORTED);
#endif
}
+ else if (!strcmp (key, "invisible-char"))
+ {
+ if (pinentry.invisible_char)
+ free (pinentry.invisible_char);
+ pinentry.invisible_char = strdup (value);
+ if (!pinentry.invisible_char)
+ return gpg_error_from_syserror ();
+ }
else
return gpg_error (GPG_ERR_UNKNOWN_OPTION);
return 0;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pinentry-0.9.6/pinentry/pinentry.h new/pinentry-0.9.7/pinentry/pinentry.h
--- old/pinentry-0.9.6/pinentry/pinentry.h 2015-09-10 20:21:54.000000000 +0200
+++ new/pinentry-0.9.7/pinentry/pinentry.h 2015-09-16 20:40:15.000000000 +0200
@@ -193,6 +193,11 @@
to save the assuan ctx. */
void *ctx_assuan;
+ /* An UTF-8 string with an invisible character used to override the
+ default in some pinentries. Only the first character is
+ used. */
+ char *invisible_char;
+
};
typedef struct pinentry *pinentry_t;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pinentry-0.9.6/qt/main.cpp new/pinentry-0.9.7/qt/main.cpp
--- old/pinentry-0.9.6/qt/main.cpp 2015-09-10 20:21:54.000000000 +0200
+++ new/pinentry-0.9.7/qt/main.cpp 2015-12-01 12:52:40.000000000 +0100
@@ -190,15 +190,15 @@
if (!ret)
return -1;
- const char *pin = pinentry.pin().toUtf8().constData();
+ QByteArray pin = pinentry.pin().toUtf8 ();
- int len = strlen (pin);
+ int len = strlen (pin.constData ());
if (len >= 0)
{
pinentry_setbufferlen (pe, len + 1);
if (pe->pin)
{
- strcpy (pe->pin, pin);
+ strcpy (pe->pin, pin.constData ());
return len;
}
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pinentry-0.9.6/secmem/util.c new/pinentry-0.9.7/secmem/util.c
--- old/pinentry-0.9.6/secmem/util.c 2013-03-21 09:43:50.000000000 +0100
+++ new/pinentry-0.9.7/secmem/util.c 2015-12-01 12:53:19.000000000 +0100
@@ -41,7 +41,7 @@
/* Write DATA of size BYTES to FD, until all is written or an error
occurs. */
-ssize_t
+ssize_t
xwrite(int fd, const void *data, size_t bytes)
{
char *ptr;
@@ -68,7 +68,7 @@
#if 0
extern int debug;
-int
+int
debugmsg(const char *fmt, ...)
{
va_list va;
@@ -88,7 +88,7 @@
/* initialize uid variables */
#ifndef HAVE_DOSISH_SYSTEM
-static void
+static void
init_uids(void)
{
real_uid = getuid();
@@ -98,42 +98,8 @@
#endif
-#if 0 /* Not used. */
-/* lower privileges to the real user's */
-void
-lower_privs()
-{
- if (!uid_set)
- init_uids();
- if (real_uid != file_uid) {
-#ifdef HAVE_SETEUID
- if (seteuid(real_uid) < 0) {
- perror("lowering privileges failed");
- exit(EXIT_FAILURE);
- }
-#else
- fprintf(stderr, _("Warning: running q-agent setuid on this system is dangerous\n"));
-#endif /* HAVE_SETEUID */
- }
-}
-#endif /* if 0 */
-
-#if 0 /* Not used. */
-/* raise privileges to the effective user's */
-void
-raise_privs()
-{
- assert(real_uid >= 0); /* lower_privs() must be called before this */
-#ifdef HAVE_SETEUID
- if (real_uid != file_uid && seteuid(file_uid) < 0) {
- perror("Warning: raising privileges failed");
- }
-#endif /* HAVE_SETEUID */
-}
-#endif /* if 0 */
-
/* drop all additional privileges */
-void
+void
drop_privs()
{
#ifndef HAVE_DOSISH_SYSTEM
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pinentry-0.9.6/tty/pinentry-tty.c new/pinentry-0.9.7/tty/pinentry-tty.c
--- old/pinentry-0.9.6/tty/pinentry-tty.c 2015-09-10 20:21:54.000000000 +0200
+++ new/pinentry-0.9.7/tty/pinentry-tty.c 2015-12-01 12:52:40.000000000 +0100
@@ -213,23 +213,28 @@
return -1;
}
- if (pinentry->one_button)
- fprintf (ttyfo, "Press any key to continue.");
- else
- {
- fputc ('[', ttyfo);
- if (ok)
- fputc (tolower (ok), ttyfo);
- if (cancel)
- fputc (tolower (cancel), ttyfo);
- if (notok)
- fputc (tolower (notok), ttyfo);
- fputs("]? ", ttyfo);
- }
-
while (1)
{
- int input = fgetc (ttyfi);
+ int input;
+
+ if (pinentry->one_button)
+ fprintf (ttyfo, "Press any key to continue.");
+ else
+ {
+ fputc ('[', ttyfo);
+ if (ok)
+ fputc (tolower (ok), ttyfo);
+ if (cancel)
+ fputc (tolower (cancel), ttyfo);
+ if (notok)
+ fputc (tolower (notok), ttyfo);
+ fputs("]? ", ttyfo);
+ }
+ fflush (ttyfo);
+
+ input = fgetc (ttyfi);
+ fprintf (ttyfo, "%c\n", input);
+
if (input == EOF || input == 0x4)
/* End of file or control-d (= end of file). */
{
@@ -262,10 +267,12 @@
ret = 1;
break;
}
+ else
+ {
+ fprintf (ttyfo, "Invalid selection.\n");
+ }
}
- fputc('\n', ttyfo);
-
tcsetattr (fileno(ttyfi), TCSANOW, &o_term);
return ret;
@@ -364,7 +371,7 @@
dump_error_text (ttyfo, pinentry->error);
- fprintf (ttyfo, "%s\n ", msg);
+ fprintf (ttyfo, "%s\n", msg);
while (! done)
{