]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
_gnutls_parse_record_buffered_msgs: eliminate local variable usage
authorDaiki Ueno <dueno@redhat.com>
Fri, 27 Jul 2018 04:10:37 +0000 (06:10 +0200)
committerDaiki Ueno <dueno@redhat.com>
Mon, 6 Aug 2018 10:36:39 +0000 (12:36 +0200)
If `remain > 0` is true, `recv_buf[0].length > 0` always holds.
Combine those conditions and remove the `remain` utilizing MIN().

This is to make the incomplete header handling case easier.

Signed-off-by: Daiki Ueno <dueno@redhat.com>
lib/buffers.c

index 53cd16ca08090f26326049fccdc46bc8e3cfba11..220b7af9b308d4bc95dafa1dc7a2e6ac9082f8ca 100644 (file)
@@ -1196,7 +1196,7 @@ int _gnutls_parse_record_buffered_msgs(gnutls_session_t session)
                return GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE;
 
        if (!IS_DTLS(session)) {
-               ssize_t remain, append, header_size;
+               ssize_t append, header_size;
 
                do {
                        if (bufel->type != GNUTLS_HANDSHAKE)
@@ -1204,18 +1204,12 @@ int _gnutls_parse_record_buffered_msgs(gnutls_session_t session)
                                    gnutls_assert_val
                                    (GNUTLS_E_UNEXPECTED_PACKET);
 
-                       /* if we have a half received message then complete it.
-                        */
-                       remain = recv_buf[0].length -
-                           recv_buf[0].data.length;
-
                        /* this is the rest of a previous message */
                        if (session->internals.handshake_recv_buffer_size >
-                           0 && recv_buf[0].length > 0 && remain > 0) {
-                               if ((ssize_t) msg.size <= remain)
-                                       append = msg.size;
-                               else
-                                       append = remain;
+                           0 && recv_buf[0].length > recv_buf[0].data.length) {
+                               append = MIN(msg.size,
+                                            recv_buf[0].length -
+                                            recv_buf[0].data.length);
 
                                ret =
                                    _gnutls_buffer_append_data(&recv_buf