Package: libpam-encfs
Version: 0.1.4.1-4
Severity: normal
Tags: squeeze upstream

libpam-encfs does not read encfs's stderr and so, can't display any error
message from it. That's why we can't have any information from syslog, except
that message:

pam_encfs[11974]: exitcode : 1, errorstring :

This little patch copy stderr on stdout, verbose mode has to be disable as
pam-encfs will only read 512 characters from encfs output.

-- System Information:
Debian Release: 6.0.3
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.32-5-xen-amd64 (SMP w/1 CPU core)
Locale: LANG=en_US, LC_CTYPE=fr_FR@euro (charmap=ISO-8859-15)
Shell: /bin/sh linked to /bin/bash

Versions of packages libpam-encfs depends on:
ii  encfs                 1.7.2-1            encrypted virtual filesystem
ii  libc6                 2.11.2-10          Embedded GNU C Library: Shared lib
ii  libpam0g              1.1.1-6.1+squeeze1 Pluggable Authentication Modules l

libpam-encfs recommends no packages.

libpam-encfs suggests no packages.

-- Configuration Files:
/etc/security/pam_encfs.conf changed [not included]

-- no debconf information
--- libpam-encfs-0.1.4.1/pam_encfs.c	2006-07-28 13:44:15.000000000 +0200
+++ /tmp/tmp/null/pam_encfs.c	2011-11-14 11:48:16.000000000 +0100
@@ -80,6 +80,7 @@
 
 #define READ_END 0
 #define WRITE_END 1
+#define ERROR_END 2
 #define USERNAME_MAX		127
 #define PATH_MAX		256
 #define BUFSIZE ((USERNAME_MAX +1) + ((PATH_MAX+1) * 2))
@@ -542,7 +543,9 @@
 
             close(inpipe[READ_END]);
             dup2(inpipe[WRITE_END], fileno(stdout));
+            dup2(inpipe[WRITE_END], fileno(stderr));
             close(inpipe[WRITE_END]);
+            close(inpipe[ERROR_END]);
 
             // For some reason the current directory has to be set to targetpath (or path?) before exec'ing encfs through gdm
             chdir(targetpath);

Reply via email to