From: Bodo Möller Date: Fri, 30 Dec 2005 23:51:36 +0000 (+0000) Subject: Rewrite timeout computation in a way that is less prone to overflow. X-Git-Tag: OpenSSL_0_9_8k^2~1625 X-Git-Url: https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff_plain;h=7476f3ac3bdbcfb4f73317d28aed35740fc74287;ds=sidebyside Rewrite timeout computation in a way that is less prone to overflow. (Problem reported by Peter Sylvester.) --- diff --git a/ssl/ssl_sess.c b/ssl/ssl_sess.c index 5286964e69..7a4bb92b5c 100644 --- a/ssl/ssl_sess.c +++ b/ssl/ssl_sess.c @@ -389,7 +389,7 @@ int ssl_get_prev_session(SSL *s, unsigned char *session_id, int len) CRYPTO_add(&ret->references,1,CRYPTO_LOCK_SSL_SESSION); #endif - if ((long)(ret->time+ret->timeout) < (long)time(NULL)) /* timeout */ + if (ret->timeout < (long)(time(NULL) - ret->time)) /* timeout */ { s->ctx->stats.sess_timeout++; /* remove it from the cache */