diff options
Diffstat (limited to 'libpam/pam_end.c')
-rw-r--r-- | libpam/pam_end.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/libpam/pam_end.c b/libpam/pam_end.c index de1c26ed..f400c325 100644 --- a/libpam/pam_end.c +++ b/libpam/pam_end.c @@ -73,6 +73,15 @@ int pam_end(pam_handle_t *pamh, int pam_status) _pam_drop(pamh->former.substates); + _pam_overwrite(pamh->xdisplay); + _pam_drop(pamh->xdisplay); + + _pam_overwrite(pamh->xauth.name); + _pam_drop(pamh->xauth.name); + _pam_overwrite_n(pamh->xauth.data, pamh->xauth.datalen); + _pam_drop(pamh->xauth.data); + _pam_overwrite_n(&pamh->xauth, sizeof(pamh->xauth)); + /* and finally liberate the memory for the pam_handle structure */ _pam_drop(pamh); |