f2fdff
diff -up Linux-PAM-1.1.5/modules/pam_unix/pam_unix.8.xml.no-fallback Linux-PAM-1.1.5/modules/pam_unix/pam_unix.8.xml
f2fdff
--- Linux-PAM-1.1.5/modules/pam_unix/pam_unix.8.xml.no-fallback	2011-06-21 11:04:56.000000000 +0200
f2fdff
+++ Linux-PAM-1.1.5/modules/pam_unix/pam_unix.8.xml	2012-05-09 11:54:34.442036404 +0200
f2fdff
@@ -265,11 +265,10 @@
f2fdff
         <listitem>
f2fdff
           <para>
f2fdff
             When a user changes their password next,
f2fdff
-            encrypt it with the SHA256 algorithm. If the
f2fdff
-            SHA256 algorithm is not known to the <citerefentry>
f2fdff
+            encrypt it with the SHA256 algorithm. The
f2fdff
+            SHA256 algorithm must be supported by the <citerefentry>
f2fdff
 	    <refentrytitle>crypt</refentrytitle><manvolnum>3</manvolnum>
f2fdff
-            </citerefentry> function,
f2fdff
-            fall back to MD5.
f2fdff
+            </citerefentry> function.
f2fdff
           </para>
f2fdff
         </listitem>
f2fdff
       </varlistentry>
f2fdff
@@ -280,11 +279,10 @@
f2fdff
         <listitem>
f2fdff
           <para>
f2fdff
             When a user changes their password next,
f2fdff
-            encrypt it with the SHA512 algorithm. If the
f2fdff
-            SHA512 algorithm is not known to the <citerefentry>
f2fdff
+            encrypt it with the SHA512 algorithm. The
f2fdff
+            SHA512 algorithm must be supported by the <citerefentry>
f2fdff
 	    <refentrytitle>crypt</refentrytitle><manvolnum>3</manvolnum>
f2fdff
-            </citerefentry> function,
f2fdff
-            fall back to MD5.
f2fdff
+            </citerefentry> function.
f2fdff
           </para>
f2fdff
         </listitem>
f2fdff
       </varlistentry>
f2fdff
@@ -295,11 +293,10 @@
f2fdff
         <listitem>
f2fdff
           <para>
f2fdff
             When a user changes their password next,
f2fdff
-            encrypt it with the blowfish algorithm. If the
f2fdff
-            blowfish algorithm is not known to the <citerefentry>
f2fdff
+            encrypt it with the blowfish algorithm. The
f2fdff
+            blowfish algorithm must be supported by the <citerefentry>
f2fdff
 	    <refentrytitle>crypt</refentrytitle><manvolnum>3</manvolnum>
f2fdff
-            </citerefentry> function,
f2fdff
-            fall back to MD5.
f2fdff
+            </citerefentry> function.
f2fdff
           </para>
f2fdff
         </listitem>
f2fdff
       </varlistentry>
f2fdff
diff -up Linux-PAM-1.1.5/modules/pam_unix/passverify.c.no-fallback Linux-PAM-1.1.5/modules/pam_unix/passverify.c
f2fdff
--- Linux-PAM-1.1.5/modules/pam_unix/passverify.c.no-fallback	2012-05-09 11:48:12.409632377 +0200
f2fdff
+++ Linux-PAM-1.1.5/modules/pam_unix/passverify.c	2012-05-09 11:48:36.953172291 +0200
f2fdff
@@ -427,15 +427,14 @@ PAMH_ARG_DECL(char * create_password_has
f2fdff
 	if (!sp || strncmp(algoid, sp, strlen(algoid)) != 0) {
f2fdff
 		/* libxcrypt/libc doesn't know the algorithm, use MD5 */
f2fdff
 		pam_syslog(pamh, LOG_ERR,
f2fdff
-			   "Algo %s not supported by the crypto backend, "
f2fdff
-			   "falling back to MD5\n",
f2fdff
+			   "Algo %s not supported by the crypto backend.\n",
f2fdff
 			   on(UNIX_BLOWFISH_PASS, ctrl) ? "blowfish" :
f2fdff
 			   on(UNIX_SHA256_PASS, ctrl) ? "sha256" :
f2fdff
 			   on(UNIX_SHA512_PASS, ctrl) ? "sha512" : algoid);
f2fdff
 		if(sp) {
f2fdff
 		   memset(sp, '\0', strlen(sp));
f2fdff
 		}
f2fdff
-		return crypt_md5_wrapper(password);
f2fdff
+		return NULL;
f2fdff
 	}
f2fdff
 
f2fdff
 	return x_strdup(sp);