diff options
author | Matt Caswell <matt@openssl.org> | 2015-03-12 16:42:55 +0000 |
---|---|---|
committer | Matt Caswell <matt@openssl.org> | 2015-03-17 13:39:53 +0000 |
commit | dfef52f6f277327e118fdd0fe34486852c2789b6 (patch) | |
tree | 76cc9fbc7c6c4d33dc62965a9ebf94c2bbaadea9 /apps/s_time.c | |
parent | 668f6f08c62177ab5893fc26ebb67053aafdffc8 (diff) | |
download | openssl-dfef52f6f277327e118fdd0fe34486852c2789b6.tar.gz |
Fix seg fault in s_time
Passing a negative value for the "-time" option to s_time results in a seg
fault. This commit fixes it so that time has to be greater than 0.
Reviewed-by: Andy Polyakov <appro@openssl.org>
Diffstat (limited to 'apps/s_time.c')
-rw-r--r-- | apps/s_time.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/apps/s_time.c b/apps/s_time.c index 102ee7291b..96e39aa90d 100644 --- a/apps/s_time.c +++ b/apps/s_time.c @@ -283,6 +283,10 @@ static int parseArgs(int argc, char **argv) if (--argc < 1) goto bad; maxTime = atoi(*(++argv)); + if(maxTime <= 0) { + BIO_printf(bio_err, "time must be > 0\n"); + badop = 1; + } } else { BIO_printf(bio_err, "unknown option %s\n", *argv); badop = 1; @@ -527,7 +531,8 @@ int MAIN(int argc, char **argv) nConn, totalTime, ((double)nConn / totalTime), bytes_read); printf ("%d connections in %ld real seconds, %ld bytes read per connection\n", - nConn, (long)time(NULL) - finishtime + maxTime, bytes_read / nConn); + nConn, (long)time(NULL) - finishtime + maxTime, + bytes_read / (nConn?nConn:1)); ret = 0; end: |