To clarify, you should (as a test ONLY) replace this whole block:
# if defined(ultrix) || defined(__ultrix__) if (authenticate_user( p, curpass, NULL ) < 0) # elif defined(HAVE_CRYPT) if (strcmp( crypt( curpass, p->pw_passwd ), p->pw_passwd )) # else if (strcmp( curpass, p->pw_passwd )) # endif
With this single line:
if (strcmp( crypt( curpass, p->pw_passwd ), p->pw_passwd ))
Nope. :(
First I tried this (as you posted):
-# if defined(ultrix) || defined(__ultrix__)
- if (authenticate_user( p, curpass, NULL ) < 0)
-# elif defined(HAVE_CRYPT)
- if (strcmp( crypt( curpass, p->pw_passwd ), p->pw_passwd ))
-# else
- if (strcmp( curpass, p->pw_passwd ))
-# endif +if (strcmp( crypt( curpass, p->pw_passwd ), p->pw_passwd ))
That FTBFS.
<snip>
Can you post the error log please?
+if (strcmp( curpass, p->pw_passwd ))
That built. :)
But won't work on most systems! :-)
Tim