Package: libgksu2-0
Version: 2.0.5-2
Severity: important
Tags: patch
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
gksu_sudo_full() sets its end of the pipe from sudo's stderr to be
non-blocking. Once it has found a password prompt and sent the
password, it makes it blocking again. Then it reads from the pipe
and prints what it reads, until that fails. Then it cleans up and
returns.
If sudo does not prompt for a password, the function never sets the
pipe to be non-blocking, so the attempt to read from the pipe fails
immediately with error EAGAIN. It returns, closing its end of the
pipe. The child process will then receive SIGPIPE (or error EPIPE) if
it tries to write to stderr.
To demonstrate this, run:
sudo -v && gksudo "sh -c 'sleep 5; ls >&2'"
This patch fixes the bug:
- --- libgksu-2.0.5.orig/libgksu/libgksu.c
+++ libgksu-2.0.5/libgksu/libgksu.c
@@ -2637,6 +2637,9 @@
if (context->debug)
fprintf (stderr, "No password prompt found; we'll assume we don't
need a password.\n");
+ /* turn NONBLOCK off */
+ fcntl(parent_pipe[0], F_SETFL, fcntl(parent_pipe[0], F_GETFL) &
~O_NONBLOCK);
+
should_display = gconf_client_get_bool (context->gconf_client,
BASE_PATH
"display-no-pass-info", NULL);
- --- END ---
- -- System Information:
Debian Release: lenny/sid
APT prefers unstable
APT policy: (100, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.22-3-686 (SMP w/1 CPU core)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages libgksu2-0 depends on:
ii gconf2 2.20.1-2+b1 GNOME configuration database syste
ii libatk1.0-0 1.20.0-1 The ATK accessibility toolkit
ii libc6 2.7-6 GNU C Library: Shared libraries
ii libcairo2 1.4.14-1 The Cairo 2D vector graphics libra
ii libfontconfig1 2.5.0-2 generic font configuration library
ii libfreetype6 2.3.5-1+b1 FreeType 2 font engine, shared lib
ii libgconf2-4 2.20.1-2+b1 GNOME configuration database syste
ii libglade2-0 1:2.6.2-1 library to load .glade files at ru
ii libglib2.0-0 2.14.5-2 The GLib library of C routines
ii libgnome-keyring0 2.20.3-1 GNOME keyring services library
ii libgtk2.0-0 2.12.5-2 The GTK+ graphical user interface
ii libgtop2-7 2.20.1-1 gtop system monitoring library
ii liborbit2 1:2.14.10-0.1 libraries for ORBit2 - a CORBA ORB
ii libpango1.0-0 1.18.4-1 Layout and rendering of internatio
ii libpng12-0 1.2.15~beta5-3 PNG library - runtime
ii libstartup-notificatio 0.9-1 library for program launch feedbac
ii libx11-6 2:1.0.3-7 X11 client-side library
ii libxml2 2.6.31.dfsg-1 GNOME XML library
ii libxrender1 1:0.9.4-1 X Rendering Extension client libra
ii xauth 1:1.0.2-2 X authentication utility
ii xbase-clients 1:7.3+10 miscellaneous X clients - metapack
ii zlib1g 1:1.2.3.3.dfsg-11 compression library - runtime
Versions of packages libgksu2-0 recommends:
ii sudo 1.6.9p11-1+b1 Provide limited super user privile
- -- no debconf information
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
iD8DBQFHpI3F79ZNCRIGYgcRAs7KAKCOxx+FYLkGWNSwGoQDzLpLgkFDeACgzCx/
5M2J/HVJdeJAF6q1qWKPJ3c=
=ulqn
-----END PGP SIGNATURE-----
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]