Bug#706762: unblock: libpam-mklocaluser/0.8 to fix #706753 (serious)
user release.debian.org@packages.debian.org
usertags 706762 = pu
tags 706762 + wheezy
thanks
On 2013-05-04 14:53, Petter Reinholdtsen wrote:
> [...]
>
> Please unblock package libpam-mklocaluser.
>
> Yesterday we in Debian Edu discovered that the wheezy version of
> libpam-mklocaluser did not work, because what seem to be changed
> behaviour in the subprocess module of python. A fix was just uploaded,
> rewriting the runcmd() command to work with newer (and as far as I know
> older) versions of python.
>
> The same binary package should work in wheezy and unstable (and in
> squeeze), as the package only contain a python script and there is no
> need to rebuild anything to track binary dependency changes.
>
> Here is the complete diff between the version currently in wheezy and
> the one just uploaded to unstable.
>
Too late for r0, lets look at this for r1.
~Niels
> diff -Nru libpam-mklocaluser-0.7/debian/changelog libpam-mklocaluser-0.8/debian/changelog
> --- libpam-mklocaluser-0.7/debian/changelog 2011-07-28 19:20:37.000000000 +0200
> +++ libpam-mklocaluser-0.8/debian/changelog 2013-05-04 13:34:42.000000000 +0200
> @@ -1,3 +1,9 @@
> +libpam-mklocaluser (0.8) unstable; urgency=low
> +
> + * Rewrite runcmd() to work with Python on Wheezy (Closes: #706753).
> +
> + -- Petter Reinholdtsen <pere@debian.org> Sat, 04 May 2013 08:25:53 +0200
> +
> libpam-mklocaluser (0.7) unstable; urgency=low
>
> * Rewrite how Popen() is used to ensure the script wait for the
> diff -Nru libpam-mklocaluser-0.7/debian/pam-python.py libpam-mklocaluser-0.8/debian/pam-python.py
> --- libpam-mklocaluser-0.7/debian/pam-python.py 2011-07-26 16:18:23.000000000 +0200
> +++ libpam-mklocaluser-0.8/debian/pam-python.py 2013-05-04 13:35:27.000000000 +0200
> @@ -16,13 +16,16 @@
> import syslog
>
> def runcmd(pamh, cmd):
> - proc = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE,)
> + proc = subprocess.Popen(cmd, shell=True, \
> + stdout=subprocess.PIPE, \
> + stderr=subprocess.PIPE,)
> while proc.poll() == None:
> pass
> - result = proc.communicate(input=None)[0]
> - if result != 0:
> - syslog.syslog("Command %(command)s failed with %(msg)s" % ( cmd, proc.stderr.read()) )
> -# print "output: %s" % output
> + (resultstdout, resultstderr) = proc.communicate(input=None)
> + if proc.returncode != 0:
> + msg = "Command '%s' failed with %s" % ( cmd, resultstderr.strip())
> + syslog.syslog(msg)
> +# print "output: %s" % msg
>
> def check_and_create_localuser(pamh, user):
> # Location of local users
>
> unblock libpam-mklocaluser/0.8
>
> -- System Information:
> Debian Release: 7.0
> APT prefers testing
> APT policy: (500, 'testing')
> Architecture: i386 (i686)
>
> Kernel: Linux 3.2.0-4-686-pae (SMP w/1 CPU core)
> Locale: LANG=nb_NO.UTF-8, LC_CTYPE=nb_NO.UTF-8 (charmap=UTF-8)
> Shell: /bin/sh linked to /bin/dash
>
Reply to: