You should add some debugging to print the return value of pam_open_session() to make sure it is not actually returning PAM_SUCCESS. If memory serves, when you have multiple session modules you can end up with PAM_SUCCESS as long as the later ones succeed. - todd