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