>>> On a whim I tried this really big >>> hammer. I created a patch to strip from the kdebase code all >>> references of consolekit.c and CONSOLE_KIT. Seemed like a >>> reasonable idea. >>> >>> No luck. Still can't login with KDM. >>> >>> Would somebody please provide me a >>> knee-bone-connected-to-the-thigh-bone explanation or simple >>> flow chart how KDM runs through everything? I'm still >>> leaning toward this being an authentication problem. Perhaps >>> with some kind of flow chart I can try something. >> >> Some progress. >> >> I tried some different -debug options with kdm. I saw an error message >> "password verify failed." The only place the message is found is in >> kdm/backend/client.c. >> >> Any ideas where to attack next? >> >> Darrell >> > > Hi Darrell, > > That snippet you posted above I think contains a very important clue to > the solution. > > In kdm/backend/client.c , try commenting out the #ifdefs for HAVE_CRYPT. > I am pretty sure that HAVE_CRYPT is not being set by CMake, which would > cause non-PAM (encrypted) password checks to fail. > > If this temporary hack fixes the problem, a simple fix to CMake should > squash this bug for good! > > Tim 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 )) Tim