From: Michael Tuexen Date: Mon, 18 Mar 2013 14:30:38 +0000 (+0000) Subject: Avoid unnecessary fragmentation. X-Git-Tag: OpenSSL_1_0_2-beta1~400 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=3f84d34c3729a6db7d9908219ab2b53f052e6d08;p=oweals%2Fopenssl.git Avoid unnecessary fragmentation. (cherry picked from commit 80ccc66d7eedb2d06050130c77c482ae1584199a) --- diff --git a/ssl/d1_both.c b/ssl/d1_both.c index 373285885c..bb9be8ad65 100644 --- a/ssl/d1_both.c +++ b/ssl/d1_both.c @@ -313,9 +313,10 @@ int dtls1_do_write(SSL *s, int type) s->init_off -= DTLS1_HM_HEADER_LENGTH; s->init_num += DTLS1_HM_HEADER_LENGTH; - /* write atleast DTLS1_HM_HEADER_LENGTH bytes */ - if ( len <= DTLS1_HM_HEADER_LENGTH) - len += DTLS1_HM_HEADER_LENGTH; + if ( s->init_num > curr_mtu) + len = curr_mtu; + else + len = s->init_num; } dtls1_fix_message_header(s, frag_off,