diff options
-rw-r--r-- | src/session.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/session.c b/src/session.c index 01b540f6..fb967aef 100644 --- a/src/session.c +++ b/src/session.c @@ -599,7 +599,11 @@ int ssh_handle_packets_termination(ssh_session session, } } - ssh_timestamp_init(&ts); + /* avoid unnecessary syscall for the SSH_TIMEOUT_NONBLOCKING case */ + if (timeout != SSH_TIMEOUT_NONBLOCKING) { + ssh_timestamp_init(&ts); + } + tm = timeout; while(!fct(user)) { ret = ssh_handle_packets(session, tm); |