diff -Naur shadow-4.0.14-lunar/src/su.c shadow-4.0.14/src/su.c
--- shadow-4.0.14-lunar/src/su.c	2006-03-15 08:34:12.000000000 +0100
+++ shadow-4.0.14/src/su.c	2006-03-15 08:43:40.000000000 +0100
@@ -708,10 +708,6 @@
 		addenv ("PATH", cp);
 	}
 
-#ifndef USE_PAM
-	/* setup the environment for PAM later on, else we run into auth problems */
-	environ = newenvp;	/* make new environment active */
-#endif
 
 	if (getenv ("IFS"))	/* don't export user IFS ... */
 		addenv ("IFS= \t\n", NULL);	/* ... instead, set a safe IFS */
@@ -790,6 +786,8 @@
 		exit (1);
 	}
 #else				/* !USE_PAM */
+	environ = newenvp;      /* make new environment active */
+
 	if (!amroot)		/* no limits if su from root */
 		setup_limits (&pwent);
 
