Package: release.debian.org User: release.debian....@packages.debian.org Usertags: unblock Severity: normal User: debian-...@lists.debian.org Usertags: debian-edu
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. 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 <p...@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 -- Happy hacking Petter Reinholdtsen -- To UNSUBSCRIBE, email to debian-release-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/2flppx652km....@diskless.uio.no