diff options
Diffstat (limited to 'common-session.c')
-rw-r--r-- | common-session.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/common-session.c b/common-session.c index 8ec7516..f2ccdf7 100644 --- a/common-session.c +++ b/common-session.c @@ -76,6 +76,7 @@ void common_session_init(int sock_in, int sock_out) { update_channel_prio(); now = monotonic_now(); + ses.connect_time = now; ses.last_packet_time_keepalive_recv = now; ses.last_packet_time_idle = now; ses.last_packet_time_any_sent = 0; @@ -486,6 +487,11 @@ static void checktimeouts() { time_t now; now = monotonic_now(); + if (IS_DROPBEAR_SERVER && ses.connect_time != 0 + && now - ses.connect_time >= AUTH_TIMEOUT) { + dropbear_close("Timeout before auth"); + } + /* we can't rekey if we haven't done remote ident exchange yet */ if (ses.remoteident == NULL) { return; |