From 3d3ea1027d2c023360d7c66ea1775b040c65fc96 Mon Sep 17 00:00:00 2001 From: beck Date: Thu, 24 Apr 2014 06:02:58 +0000 Subject: [PATCH] A fantastic way to make a large unsigned number is to assign a small signed one to it.. Some people on OpenSSL's list noticed - http://marc.info/?l=openssl-dev&m=139809485525663&w=2 This should fix that, and make sure we don't try to write out insane amounts of stuff. ok miod@ tedu@ --- lib/libssl/s3_pkt.c | 2 ++ lib/libssl/src/ssl/s3_pkt.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/lib/libssl/s3_pkt.c b/lib/libssl/s3_pkt.c index 5ef25a4059f..2a88b148521 100644 --- a/lib/libssl/s3_pkt.c +++ b/lib/libssl/s3_pkt.c @@ -564,6 +564,8 @@ ssl3_write_bytes(SSL *s, int type, const void *buf_, int len) } } + if (len < tot) + len = tot; n = (len - tot); for (;;) { if (n > s->max_send_fragment) diff --git a/lib/libssl/src/ssl/s3_pkt.c b/lib/libssl/src/ssl/s3_pkt.c index 5ef25a4059f..2a88b148521 100644 --- a/lib/libssl/src/ssl/s3_pkt.c +++ b/lib/libssl/src/ssl/s3_pkt.c @@ -564,6 +564,8 @@ ssl3_write_bytes(SSL *s, int type, const void *buf_, int len) } } + if (len < tot) + len = tot; n = (len - tot); for (;;) { if (n > s->max_send_fragment) -- 2.20.1