diff options
Diffstat (limited to 'session.c')
-rw-r--r-- | session.c | 10 |
1 files changed, 8 insertions, 2 deletions
@@ -2678,13 +2678,19 @@ do_cleanup(struct ssh *ssh, Authctxt *authctxt) | |||
2678 | 2678 | ||
2679 | #ifdef KRB5 | 2679 | #ifdef KRB5 |
2680 | if (options.kerberos_ticket_cleanup && | 2680 | if (options.kerberos_ticket_cleanup && |
2681 | authctxt->krb5_ctx) | 2681 | authctxt->krb5_ctx) { |
2682 | temporarily_use_uid(authctxt->pw); | ||
2682 | krb5_cleanup_proc(authctxt); | 2683 | krb5_cleanup_proc(authctxt); |
2684 | restore_uid(); | ||
2685 | } | ||
2683 | #endif | 2686 | #endif |
2684 | 2687 | ||
2685 | #ifdef GSSAPI | 2688 | #ifdef GSSAPI |
2686 | if (options.gss_cleanup_creds) | 2689 | if (options.gss_cleanup_creds) { |
2690 | temporarily_use_uid(authctxt->pw); | ||
2687 | ssh_gssapi_cleanup_creds(); | 2691 | ssh_gssapi_cleanup_creds(); |
2692 | restore_uid(); | ||
2693 | } | ||
2688 | #endif | 2694 | #endif |
2689 | 2695 | ||
2690 | /* remove agent socket */ | 2696 | /* remove agent socket */ |