yp-tools/yp-tools-2.12-adjunct.patch

20 lines
978 B
Diff

diff -up yp-tools-2.12/src/yppasswd.c.adjunct yp-tools-2.12/src/yppasswd.c
--- yp-tools-2.12/src/yppasswd.c.adjunct 2012-04-23 13:17:47.000988833 +0200
+++ yp-tools-2.12/src/yppasswd.c 2012-04-23 13:18:01.209802938 +0200
@@ -450,6 +450,7 @@
passwdlen = get_passwd_len (pwd->pw_passwd);
if (pwd->pw_passwd[0]
&& 0 != strcmp (pwd->pw_passwd, "x") /* don't check shadow passwords */
+ && 0 != strncmp (pwd->pw_passwd, "##", 2) /* don't check passwords using passwd.adjunct feature */
&& uid)
{
char *crypted = crypt(pwdstr, pwd->pw_passwd);
@@ -774,6 +775,7 @@
/* We can't check the password with shadow passwords enabled. We
* leave the checking to yppasswdd */
if (uid != 0 && strcmp (pwd->pw_passwd, "x") != 0 &&
+ 0 != strncmp (pwd->pw_passwd, "##", 2) && /* don't check passwords using passwd.adjunct feature */
strcmp (pwd->pw_passwd, hashpass ) != 0)
{
int passwdlen = get_passwd_len (pwd->pw_passwd);