Fix a null pointer dereference when pam_prompt returns PAM_SUCCESS
but the response is set to NULL.
* modules/pam_exec/pam_exec.c (call_exec): Do not invoke strndupa
with a null pointer.
Closes: https://github.com/linux-pam/linux-pam/pull/2
return retval;
}
- pam_set_item (pamh, PAM_AUTHTOK, resp);
- authtok = strndupa (resp, PAM_MAX_RESP_SIZE);
- _pam_drop (resp);
+ if (resp)
+ {
+ pam_set_item (pamh, PAM_AUTHTOK, resp);
+ authtok = strndupa (resp, PAM_MAX_RESP_SIZE);
+ _pam_drop (resp);
+ }
}
else
authtok = strndupa (void_pass, PAM_MAX_RESP_SIZE);