]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
ecc ext: check return code of _gnutls_buffer_append_data
authorNikos Mavrogiannopoulos <nmav@redhat.com>
Thu, 21 May 2015 08:41:11 +0000 (10:41 +0200)
committerNikos Mavrogiannopoulos <nmav@redhat.com>
Thu, 21 May 2015 08:41:11 +0000 (10:41 +0200)
lib/ext/ecc.c

index ee13db6ac9cb618739c9db4bc3f979819bc21b9c..68b3f8954277e2f51d1a4dc27f0c1ae44717a5ac 100644 (file)
 #include <gnutls_num.h>
 #include <algorithms.h>
 
-/* Maps record size to numbers according to the
- * extensions draft.
- */
-
 static int _gnutls_supported_ecc_recv_params(gnutls_session_t session,
                                             const uint8_t * data,
                                             size_t data_size);
@@ -254,13 +250,17 @@ _gnutls_supported_ecc_pf_send_params(gnutls_session_t session,
                                     gnutls_buffer_st * extdata)
 {
        const uint8_t p[2] = { 0x01, 0x00 };    /* only support uncompressed point format */
+       int ret;
 
        if (session->security_parameters.entity == GNUTLS_SERVER
            && !_gnutls_session_is_ecc(session))
                return 0;
 
        if (session->internals.priorities.supported_ecc.algorithms > 0) {
-               _gnutls_buffer_append_data(extdata, p, 2);
+               ret = _gnutls_buffer_append_data(extdata, p, 2);
+               if (ret < 0)
+                       return gnutls_assert_val(ret);
+
                return 2;
        }
        return 0;