I wouldn't worry too much about handling PAM not starting. If this occurs then Real Bad Things (TM) have happened to your system. It's probably best to leave the session locked and get a sysadmin to log into a text terminal to fix it (if PAM is truly broken then they might have a hard time doing that).
1357 + // FIXME (andy) would be nice to support a fallback in case PAM
1358 + // is not available.
1359 + if (!InitPam())
1360 + return false;
I wouldn't worry too much about handling PAM not starting. If this occurs then Real Bad Things (TM) have happened to your system. It's probably best to leave the session locked and get a sysadmin to log into a text terminal to fix it (if PAM is truly broken then they might have a hard time doing that).
1357 + // FIXME (andy) would be nice to support a fallback in case PAM
1358 + // is not available.
1359 + if (!InitPam())
1360 + return false;