summaryrefslogtreecommitdiff
path: root/clientloop.c
diff options
context:
space:
mode:
Diffstat (limited to 'clientloop.c')
-rw-r--r--clientloop.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/clientloop.c b/clientloop.c
index a2d2d1d07..52667017c 100644
--- a/clientloop.c
+++ b/clientloop.c
@@ -110,6 +110,10 @@
110#include "match.h" 110#include "match.h"
111#include "msg.h" 111#include "msg.h"
112 112
113#ifdef GSSAPI
114#include "ssh-gss.h"
115#endif
116
113/* import options */ 117/* import options */
114extern Options options; 118extern Options options;
115 119
@@ -1429,6 +1433,13 @@ client_loop(int have_pty, int escape_char_arg, int ssh2_chan_id)
1429 /* Do channel operations unless rekeying in progress. */ 1433 /* Do channel operations unless rekeying in progress. */
1430 if (!rekeying) { 1434 if (!rekeying) {
1431 channel_after_select(readset, writeset); 1435 channel_after_select(readset, writeset);
1436
1437 if (options.gss_renewal_rekey &&
1438 ssh_gssapi_credentials_updated(GSS_C_NO_CONTEXT)) {
1439 debug("credentials updated - forcing rekey");
1440 need_rekeying = 1;
1441 }
1442
1432 if (need_rekeying || packet_need_rekeying()) { 1443 if (need_rekeying || packet_need_rekeying()) {
1433 debug("need rekeying"); 1444 debug("need rekeying");
1434 xxx_kex->done = 0; 1445 xxx_kex->done = 0;