diff -Naur shadow-4.0.17-lunar/src/su.c shadow-4.0.17/src/su.c
--- shadow-4.0.17-lunar/src/su.c	2006-06-20 22:00:04.000000000 +0200
+++ shadow-4.0.17/src/su.c	2006-07-18 18:58:03.000000000 +0200
@@ -710,10 +710,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 */
@@ -794,6 +790,8 @@
 		exit (1);
 	}
 #else				/* !USE_PAM */
+	environ = newenvp;	/* make new environment active */
+
 	if (!amroot)		/* no limits if su from root */
 		setup_limits (&pwent);
 
