Mercurial > mxe-octave
view src/msvc-gnutls-1.patch @ 4375:7208df703412
sundials-ida: add new package
* src/sundials-ida.mk: new file
* index.html: add sundials-ida
* dist-files.mk: add sundials-ida.mk
author | John D |
---|---|
date | Fri, 07 Apr 2017 09:55:29 -0400 |
parents | 55c51f5ec98d |
children |
line wrap: on
line source
diff -ur gnutls-3.2.3-orig/extra/Makefile.am gnutls-3.2.3/extra/Makefile.am --- gnutls-3.2.3-orig/extra/Makefile.am 2013-06-06 17:13:52 -0400 +++ gnutls-3.2.3/extra/Makefile.am 2013-11-06 09:39:56 -0500 @@ -45,7 +45,9 @@ # OpenSSL -libgnutls_openssl_la_LDFLAGS = -no-undefined +libgnutls_openssl_la_LDFLAGS = \ + -no-undefined \ + -export-symbols-regex '^(SSL|SSLv3|SSLv23|TLSv1|OpenSSL|X509|BIO|ERR|RAND|MD5|RIPEMD160)_.*' if ENABLE_OPENSSL lib_LTLIBRARIES = libgnutls-openssl.la @@ -70,7 +72,7 @@ libgnutls_openssl_la_LDFLAGS += \ -Wl,--output-def,libgnutls-openssl-$(DLL_VERSION).def libgnutls-openssl-$(DLL_VERSION).def: libgnutls-openssl.la -defexec_DATA += libgnutls-openssl-$(DLL_VERSION).def +#defexec_DATA += libgnutls-openssl-$(DLL_VERSION).def endif endif diff -ur gnutls-3.2.3-orig/lib/Makefile.am gnutls-3.2.3/lib/Makefile.am --- gnutls-3.2.3-orig/lib/Makefile.am 2013-07-29 03:53:00 -0400 +++ gnutls-3.2.3/lib/Makefile.am 2013-11-06 14:10:20 -0500 @@ -37,7 +37,7 @@ -I$(srcdir)/includes \ -I$(builddir)/includes \ -I$(srcdir)/x509 \ - $(LIBTASN1_CFLAGS) \ + $(LIBTASN1_CFLAGS) -DASN1_STATIC \ $(P11_KIT_CFLAGS) if ENABLE_OPENPGP @@ -108,6 +108,8 @@ # Separate so we can create the documentation +libgnutls_la_CPPFLAGS = $(AM_CPPFLAGS) -DGNUTLS_BUILDING + libgnutls_la_SOURCES = $(HFILES) $(COBJECTS) $(SRP_COBJECTS) \ $(PSK_COBJECTS) \ gnutls.asn pkix.asn libgnutls.map @@ -149,7 +151,7 @@ libgnutls_la_LDFLAGS += -Wl,--output-def,libgnutls-$(DLL_VERSION).def libgnutls-$(DLL_VERSION).def: libgnutls.la defexecdir = $(bindir) -defexec_DATA = libgnutls-$(DLL_VERSION).def +#defexec_DATA = libgnutls-$(DLL_VERSION).def DISTCLEANFILES += $(defexec_DATA) endif @@ -162,7 +164,7 @@ # C++ library if ENABLE_CXX -libgnutlsxx_la_CPPFLAGS = -I$(top_srcdir)/includes -I$(top_builddir)/includes -I$(srcdir)/includes +libgnutlsxx_la_CPPFLAGS = -I$(top_srcdir)/includes -I$(top_builddir)/includes -I$(srcdir)/includes -DGNUTLSXX_BUILDING AM_CXXFLAGS = \ -I$(srcdir)/includes \ @@ -198,7 +200,8 @@ if HAVE_LD_OUTPUT_DEF libgnutls_xssl_la_LDFLAGS += \ - -Wl,--output-def,libgnutls-xssl-$(DLL_VERSION).def + -Wl,--output-def,libgnutls-xssl-$(DLL_VERSION).def \ + -export-symbols-regex '^(xssl_).*' libgnutls-xssl-$(DLL_VERSION).def: libgnutls-xssl.la -defexec_DATA += libgnutls-xssl-$(DLL_VERSION).def +#defexec_DATA += libgnutls-xssl-$(DLL_VERSION).def endif diff -ur gnutls-3.2.3-orig/lib/accelerated/Makefile.am gnutls-3.2.3/lib/accelerated/Makefile.am --- gnutls-3.2.3-orig/lib/accelerated/Makefile.am 2013-06-06 17:13:52 -0400 +++ gnutls-3.2.3/lib/accelerated/Makefile.am 2013-11-06 09:39:57 -0500 @@ -21,6 +21,7 @@ AM_CFLAGS = $(WERROR_CFLAGS) $(WSTACK_CFLAGS) $(WARN_CFLAGS) $(NETTLE_CFLAGS) SUBDIRS = AM_CPPFLAGS = \ + -DGNUTLS_BUILDING \ -I$(srcdir)/../../gl \ -I$(builddir)/../../gl \ -I$(srcdir)/../includes \ diff -ur gnutls-3.2.3-orig/lib/accelerated/x86/Makefile.am gnutls-3.2.3/lib/accelerated/x86/Makefile.am --- gnutls-3.2.3-orig/lib/accelerated/x86/Makefile.am 2013-06-06 17:13:52 -0400 +++ gnutls-3.2.3/lib/accelerated/x86/Makefile.am 2013-11-06 09:39:57 -0500 @@ -21,6 +21,7 @@ AM_LIBTOOLFLAGS=--tag=CC AM_CFLAGS = $(WERROR_CFLAGS) $(WSTACK_CFLAGS) $(WARN_CFLAGS) $(NETTLE_CFLAGS) AM_CPPFLAGS = -I$(srcdir)/../../../gl \ + -DGNUTLS_BUILDING \ -I$(builddir)/../../../gl \ -I$(srcdir)/../../includes \ -I$(builddir)/../../includes \ diff -ur gnutls-3.2.3-orig/lib/accelerated/x86/aes-gcm-padlock.c gnutls-3.2.3/lib/accelerated/x86/aes-gcm-padlock.c --- gnutls-3.2.3-orig/lib/accelerated/x86/aes-gcm-padlock.c 2013-02-10 05:29:54 -0500 +++ gnutls-3.2.3/lib/accelerated/x86/aes-gcm-padlock.c 2013-11-06 09:39:57 -0500 @@ -153,14 +153,15 @@ } const gnutls_crypto_cipher_st aes_gcm_padlock_struct = { - .init = aes_gcm_cipher_init, - .setkey = aes_gcm_cipher_setkey, - .setiv = aes_gcm_setiv, - .encrypt = aes_gcm_encrypt, - .decrypt = aes_gcm_decrypt, - .deinit = aes_gcm_deinit, - .tag = aes_gcm_tag, - .auth = aes_gcm_auth, + aes_gcm_cipher_init, + aes_gcm_cipher_setkey, + aes_gcm_setiv, + aes_gcm_encrypt, + aes_gcm_decrypt, + aes_gcm_auth, + aes_gcm_tag, + aes_gcm_deinit, + NULL }; #endif diff -ur gnutls-3.2.3-orig/lib/accelerated/x86/aes-gcm-x86.c gnutls-3.2.3/lib/accelerated/x86/aes-gcm-x86.c --- gnutls-3.2.3-orig/lib/accelerated/x86/aes-gcm-x86.c 2013-02-10 05:29:54 -0500 +++ gnutls-3.2.3/lib/accelerated/x86/aes-gcm-x86.c 2013-11-06 09:39:57 -0500 @@ -259,12 +259,13 @@ } const gnutls_crypto_cipher_st aes_gcm_struct = { - .init = aes_gcm_cipher_init, - .setkey = aes_gcm_cipher_setkey, - .setiv = aes_gcm_setiv, - .encrypt = aes_gcm_encrypt, - .decrypt = aes_gcm_decrypt, - .deinit = aes_gcm_deinit, - .tag = aes_gcm_tag, - .auth = aes_gcm_auth, + aes_gcm_cipher_init, + aes_gcm_cipher_setkey, + aes_gcm_setiv, + aes_gcm_encrypt, + aes_gcm_decrypt, + aes_gcm_auth, + aes_gcm_tag, + aes_gcm_deinit, + NULL }; diff -ur gnutls-3.2.3-orig/lib/accelerated/x86/aes-padlock.c gnutls-3.2.3/lib/accelerated/x86/aes-padlock.c --- gnutls-3.2.3-orig/lib/accelerated/x86/aes-padlock.c 2013-02-10 05:29:54 -0500 +++ gnutls-3.2.3/lib/accelerated/x86/aes-padlock.c 2013-11-06 09:39:57 -0500 @@ -159,12 +159,15 @@ } static const gnutls_crypto_cipher_st aes_padlock_struct = { - .init = aes_cipher_init, - .setkey = padlock_aes_cipher_setkey, - .setiv = aes_setiv, - .encrypt = padlock_aes_cbc_encrypt, - .decrypt = padlock_aes_cbc_decrypt, - .deinit = aes_deinit, + aes_cipher_init, + padlock_aes_cipher_setkey, + aes_setiv, + padlock_aes_cbc_encrypt, + padlock_aes_cbc_decrypt, + NULL, + NULL, + aes_deinit, + NULL }; static int diff -ur gnutls-3.2.3-orig/lib/accelerated/x86/aes-x86.c gnutls-3.2.3/lib/accelerated/x86/aes-x86.c --- gnutls-3.2.3-orig/lib/accelerated/x86/aes-x86.c 2013-02-10 05:29:54 -0500 +++ gnutls-3.2.3/lib/accelerated/x86/aes-x86.c 2013-11-06 09:39:57 -0500 @@ -114,12 +114,15 @@ } static const gnutls_crypto_cipher_st cipher_struct = { - .init = aes_cipher_init, - .setkey = aes_cipher_setkey, - .setiv = aes_setiv, - .encrypt = aes_encrypt, - .decrypt = aes_decrypt, - .deinit = aes_deinit, + aes_cipher_init, + aes_cipher_setkey, + aes_setiv, + aes_encrypt, + aes_decrypt, + NULL, + NULL, + aes_deinit, + NULL }; static unsigned diff -ur gnutls-3.2.3-orig/lib/accelerated/x86/hmac-padlock.c gnutls-3.2.3/lib/accelerated/x86/hmac-padlock.c --- gnutls-3.2.3-orig/lib/accelerated/x86/hmac-padlock.c 2013-05-25 04:52:07 -0400 +++ gnutls-3.2.3/lib/accelerated/x86/hmac-padlock.c 2013-11-06 10:05:17 -0500 @@ -333,23 +333,23 @@ } const gnutls_crypto_mac_st hmac_sha_padlock_struct = { - .init = NULL, - .setkey = NULL, - .setnonce = NULL, - .hash = NULL, - .output = NULL, - .deinit = NULL, - .fast = wrap_padlock_hmac_fast + /*.init =*/ NULL, + /*.setkey =*/ NULL, + /*.setnonce =*/ NULL, + /*.hash =*/ NULL, + /*.output =*/ NULL, + /*.deinit =*/ NULL, + /*.fast =*/ wrap_padlock_hmac_fast }; const gnutls_crypto_mac_st hmac_sha_padlock_nano_struct = { - .init = wrap_padlock_hmac_init, - .setkey = wrap_padlock_hmac_setkey, - .setnonce = NULL, - .hash = wrap_padlock_hmac_update, - .output = wrap_padlock_hmac_output, - .deinit = wrap_padlock_hmac_deinit, - .fast = wrap_padlock_hmac_fast, + /*.init =*/ wrap_padlock_hmac_init, + /*.setkey =*/ wrap_padlock_hmac_setkey, + /*.setnonce =*/ NULL, + /*.hash =*/ wrap_padlock_hmac_update, + /*.output =*/ wrap_padlock_hmac_output, + /*.deinit =*/ wrap_padlock_hmac_deinit, + /*.fast =*/ wrap_padlock_hmac_fast, }; #endif /* HAVE_LIBNETTLE */ diff -ur gnutls-3.2.3-orig/lib/accelerated/x86/sha-padlock.c gnutls-3.2.3/lib/accelerated/x86/sha-padlock.c --- gnutls-3.2.3-orig/lib/accelerated/x86/sha-padlock.c 2013-05-08 14:32:30 -0400 +++ gnutls-3.2.3/lib/accelerated/x86/sha-padlock.c 2013-11-06 10:03:49 -0500 @@ -374,19 +374,19 @@ const struct nettle_hash padlock_sha512 = _NETTLE_HASH(sha512, SHA512); const gnutls_crypto_digest_st sha_padlock_struct = { - .init = NULL, - .hash = NULL, - .output = NULL, - .deinit = NULL, - .fast = wrap_padlock_hash_fast + /*.init =*/ NULL, + /*.hash =*/ NULL, + /*.output =*/ NULL, + /*.deinit =*/ NULL, + /*.fast =*/ wrap_padlock_hash_fast }; const gnutls_crypto_digest_st sha_padlock_nano_struct = { - .init = wrap_padlock_hash_init, - .hash = wrap_padlock_hash_update, - .output = wrap_padlock_hash_output, - .deinit = wrap_padlock_hash_deinit, - .fast = wrap_padlock_hash_fast, + /*.init =*/ wrap_padlock_hash_init, + /*.hash =*/ wrap_padlock_hash_update, + /*.output =*/ wrap_padlock_hash_output, + /*.deinit =*/ wrap_padlock_hash_deinit, + /*.fast =*/ wrap_padlock_hash_fast, }; #endif /* HAVE_LIBNETTLE */ diff -ur gnutls-3.2.3-orig/lib/algorithms/Makefile.am gnutls-3.2.3/lib/algorithms/Makefile.am --- gnutls-3.2.3-orig/lib/algorithms/Makefile.am 2013-06-06 17:13:52 -0400 +++ gnutls-3.2.3/lib/algorithms/Makefile.am 2013-11-06 09:39:57 -0500 @@ -20,6 +20,7 @@ AM_CFLAGS = $(WERROR_CFLAGS) $(WSTACK_CFLAGS) $(WARN_CFLAGS) $(NETTLE_CFLAGS) AM_CPPFLAGS = \ + -DGNUTLS_BUILDING \ -I$(srcdir)/../../gl \ -I$(builddir)/../../gl \ -I$(srcdir)/../includes \ diff -ur gnutls-3.2.3-orig/lib/algorithms/ecc.c gnutls-3.2.3/lib/algorithms/ecc.c --- gnutls-3.2.3-orig/lib/algorithms/ecc.c 2013-05-25 06:12:26 -0400 +++ gnutls-3.2.3/lib/algorithms/ecc.c 2013-11-06 10:01:19 -0500 @@ -31,39 +31,39 @@ static const gnutls_ecc_curve_entry_st ecc_curves[] = { { - .name = "SECP192R1", - .oid = "1.2.840.10045.3.1.1", - .id = GNUTLS_ECC_CURVE_SECP192R1, - .tls_id = 19, - .size = 24, + /*.name =*/ "SECP192R1", + /*.oid =*/ "1.2.840.10045.3.1.1", + /*.id =*/ GNUTLS_ECC_CURVE_SECP192R1, + /*.tls_id =*/ 19, + /*.size =*/ 24, }, { - .name = "SECP224R1", - .oid = "1.3.132.0.33", - .id = GNUTLS_ECC_CURVE_SECP224R1, - .tls_id = 21, - .size = 28, + /*.name =*/ "SECP224R1", + /*.oid =*/ "1.3.132.0.33", + /*.id =*/ GNUTLS_ECC_CURVE_SECP224R1, + /*.tls_id =*/ 21, + /*.size =*/ 28, }, { - .name = "SECP256R1", - .oid = "1.2.840.10045.3.1.7", - .id = GNUTLS_ECC_CURVE_SECP256R1, - .tls_id = 23, - .size = 32, + /*.name =*/ "SECP256R1", + /*.oid =*/ "1.2.840.10045.3.1.7", + /*.id =*/ GNUTLS_ECC_CURVE_SECP256R1, + /*.tls_id =*/ 23, + /*.size =*/ 32, }, { - .name = "SECP384R1", - .oid = "1.3.132.0.34", - .id = GNUTLS_ECC_CURVE_SECP384R1, - .tls_id = 24, - .size = 48, + /*.name =*/ "SECP384R1", + /*.oid =*/ "1.3.132.0.34", + /*.id =*/ GNUTLS_ECC_CURVE_SECP384R1, + /*.tls_id =*/ 24, + /*.size =*/ 48, }, { - .name = "SECP521R1", - .oid = "1.3.132.0.35", - .id = GNUTLS_ECC_CURVE_SECP521R1, - .tls_id = 25, - .size = 66, + /*.name =*/ "SECP521R1", + /*.oid =*/ "1.3.132.0.35", + /*.id =*/ GNUTLS_ECC_CURVE_SECP521R1, + /*.tls_id =*/ 25, + /*.size =*/ 66, }, {0, 0, 0} }; diff -ur gnutls-3.2.3-orig/lib/auth/Makefile.am gnutls-3.2.3/lib/auth/Makefile.am --- gnutls-3.2.3-orig/lib/auth/Makefile.am 2013-06-06 17:13:52 -0400 +++ gnutls-3.2.3/lib/auth/Makefile.am 2013-11-06 14:26:44 -0500 @@ -20,6 +20,8 @@ AM_CFLAGS = $(WERROR_CFLAGS) $(WSTACK_CFLAGS) $(WARN_CFLAGS) $(NETTLE_CFLAGS) AM_CPPFLAGS = \ + -DGNUTLS_BUILDING \ + -DASN1_STATIC \ -I$(srcdir)/../../gl \ -I$(builddir)/../../gl \ -I$(srcdir)/../includes \ diff -ur gnutls-3.2.3-orig/lib/ext/Makefile.am gnutls-3.2.3/lib/ext/Makefile.am --- gnutls-3.2.3-orig/lib/ext/Makefile.am 2013-06-06 17:13:52 -0400 +++ gnutls-3.2.3/lib/ext/Makefile.am 2013-11-06 09:39:57 -0500 @@ -20,6 +20,7 @@ AM_CFLAGS = $(WERROR_CFLAGS) $(WSTACK_CFLAGS) $(WARN_CFLAGS) $(NETTLE_CFLAGS) AM_CPPFLAGS = \ + -DGNUTLS_BUILDING \ -I$(srcdir)/../../gl \ -I$(builddir)/../../gl \ -I$(srcdir)/../includes \ diff -ur gnutls-3.2.3-orig/lib/ext/alpn.c gnutls-3.2.3/lib/ext/alpn.c --- gnutls-3.2.3-orig/lib/ext/alpn.c 2013-05-25 06:12:26 -0400 +++ gnutls-3.2.3/lib/ext/alpn.c 2013-11-06 12:50:34 -0500 @@ -38,15 +38,15 @@ extension_entry_st ext_mod_alpn = { - .name = "ALPN", - .type = GNUTLS_EXTENSION_ALPN, - .parse_type = GNUTLS_EXT_APPLICATION, + /*.name =*/ "ALPN", + /*.type =*/ GNUTLS_EXTENSION_ALPN, + /*.parse_type =*/ GNUTLS_EXT_APPLICATION, - .recv_func = _gnutls_alpn_recv_params, - .send_func = _gnutls_alpn_send_params, - .pack_func = _gnutls_alpn_pack, - .unpack_func = _gnutls_alpn_unpack, - .deinit_func = _gnutls_alpn_deinit_data, + /*.recv_func =*/ _gnutls_alpn_recv_params, + /*.send_func =*/ _gnutls_alpn_send_params, + /*.deinit_func =*/ _gnutls_alpn_deinit_data, + /*.pack_func =*/ _gnutls_alpn_pack, + /*.unpack_func =*/ _gnutls_alpn_unpack, }; static int diff -ur gnutls-3.2.3-orig/lib/ext/cert_type.c gnutls-3.2.3/lib/ext/cert_type.c --- gnutls-3.2.3-orig/lib/ext/cert_type.c 2013-05-25 06:12:26 -0400 +++ gnutls-3.2.3/lib/ext/cert_type.c 2013-11-06 09:39:57 -0500 @@ -43,15 +43,15 @@ gnutls_buffer_st * extdata); extension_entry_st ext_mod_cert_type = { - .name = "CERT TYPE", - .type = GNUTLS_EXTENSION_CERT_TYPE, - .parse_type = GNUTLS_EXT_TLS, + "CERT TYPE", + GNUTLS_EXTENSION_CERT_TYPE, + GNUTLS_EXT_TLS, - .recv_func = _gnutls_cert_type_recv_params, - .send_func = _gnutls_cert_type_send_params, - .pack_func = NULL, - .unpack_func = NULL, - .deinit_func = NULL + _gnutls_cert_type_recv_params, + _gnutls_cert_type_send_params, + NULL, + NULL, + NULL }; /* diff -ur gnutls-3.2.3-orig/lib/ext/ecc.c gnutls-3.2.3/lib/ext/ecc.c --- gnutls-3.2.3-orig/lib/ext/ecc.c 2013-05-25 06:12:26 -0400 +++ gnutls-3.2.3/lib/ext/ecc.c 2013-11-06 09:39:57 -0500 @@ -49,27 +49,27 @@ gnutls_buffer_st * extdata); extension_entry_st ext_mod_supported_ecc = { - .name = "SUPPORTED ECC", - .type = GNUTLS_EXTENSION_SUPPORTED_ECC, - .parse_type = GNUTLS_EXT_TLS, + "SUPPORTED ECC", + GNUTLS_EXTENSION_SUPPORTED_ECC, + GNUTLS_EXT_TLS, - .recv_func = _gnutls_supported_ecc_recv_params, - .send_func = _gnutls_supported_ecc_send_params, - .pack_func = NULL, - .unpack_func = NULL, - .deinit_func = NULL + _gnutls_supported_ecc_recv_params, + _gnutls_supported_ecc_send_params, + NULL, + NULL, + NULL }; extension_entry_st ext_mod_supported_ecc_pf = { - .name = "SUPPORTED ECC POINT FORMATS", - .type = GNUTLS_EXTENSION_SUPPORTED_ECC_PF, - .parse_type = GNUTLS_EXT_TLS, + "SUPPORTED ECC POINT FORMATS", + GNUTLS_EXTENSION_SUPPORTED_ECC_PF, + GNUTLS_EXT_TLS, - .recv_func = _gnutls_supported_ecc_pf_recv_params, - .send_func = _gnutls_supported_ecc_pf_send_params, - .pack_func = NULL, - .unpack_func = NULL, - .deinit_func = NULL + _gnutls_supported_ecc_pf_recv_params, + _gnutls_supported_ecc_pf_send_params, + NULL, + NULL, + NULL }; /* diff -ur gnutls-3.2.3-orig/lib/ext/heartbeat.c gnutls-3.2.3/lib/ext/heartbeat.c --- gnutls-3.2.3-orig/lib/ext/heartbeat.c 2013-06-08 02:50:45 -0400 +++ gnutls-3.2.3/lib/ext/heartbeat.c 2013-11-06 09:39:57 -0500 @@ -484,15 +484,15 @@ } extension_entry_st ext_mod_heartbeat = { - .name = "HEARTBEAT", - .type = GNUTLS_EXTENSION_HEARTBEAT, - .parse_type = GNUTLS_EXT_TLS, + "HEARTBEAT", + GNUTLS_EXTENSION_HEARTBEAT, + GNUTLS_EXT_TLS, - .recv_func = _gnutls_heartbeat_recv_params, - .send_func = _gnutls_heartbeat_send_params, - .pack_func = _gnutls_heartbeat_pack, - .unpack_func = _gnutls_heartbeat_unpack, - .deinit_func = NULL + _gnutls_heartbeat_recv_params, + _gnutls_heartbeat_send_params, + NULL, + _gnutls_heartbeat_pack, + _gnutls_heartbeat_unpack }; #else diff -ur gnutls-3.2.3-orig/lib/ext/max_record.c gnutls-3.2.3/lib/ext/max_record.c --- gnutls-3.2.3-orig/lib/ext/max_record.c 2013-05-25 06:12:26 -0400 +++ gnutls-3.2.3/lib/ext/max_record.c 2013-11-06 09:39:57 -0500 @@ -48,15 +48,15 @@ extension_entry_st ext_mod_max_record_size = { - .name = "MAX RECORD SIZE", - .type = GNUTLS_EXTENSION_MAX_RECORD_SIZE, - .parse_type = GNUTLS_EXT_TLS, + "MAX RECORD SIZE", + GNUTLS_EXTENSION_MAX_RECORD_SIZE, + GNUTLS_EXT_TLS, - .recv_func = _gnutls_max_record_recv_params, - .send_func = _gnutls_max_record_send_params, - .pack_func = _gnutls_max_record_pack, - .unpack_func = _gnutls_max_record_unpack, - .deinit_func = NULL + _gnutls_max_record_recv_params, + _gnutls_max_record_send_params, + NULL, + _gnutls_max_record_pack, + _gnutls_max_record_unpack }; /* diff -ur gnutls-3.2.3-orig/lib/ext/new_record_padding.c gnutls-3.2.3/lib/ext/new_record_padding.c --- gnutls-3.2.3-orig/lib/ext/new_record_padding.c 2013-07-28 03:31:47 -0400 +++ gnutls-3.2.3/lib/ext/new_record_padding.c 2013-11-06 12:54:19 -0500 @@ -37,16 +37,16 @@ static int new_record_padding_before_epoch_change(gnutls_session_t session); extension_entry_st ext_mod_new_record_padding = { - .name = "NEW_RECORD_PADDING", - .type = GNUTLS_EXTENSION_NEW_RECORD_PADDING, - .parse_type = GNUTLS_EXT_TLS, + /*.name =*/ "NEW_RECORD_PADDING", + /*.type =*/ GNUTLS_EXTENSION_NEW_RECORD_PADDING, + /*.parse_type =*/ GNUTLS_EXT_TLS, - .recv_func = new_record_padding_recv_params, - .send_func = new_record_padding_send_params, - .pack_func = NULL, - .unpack_func = NULL, - .deinit_func = NULL, - .epoch_func = new_record_padding_before_epoch_change + /*.recv_func =*/ new_record_padding_recv_params, + /*.send_func =*/ new_record_padding_send_params, + /*.deinit_func =*/ NULL, + /*.pack_func =*/ NULL, + /*.unpack_func =*/ NULL, + /*.epoch_func =*/ new_record_padding_before_epoch_change }; static int diff -ur gnutls-3.2.3-orig/lib/ext/safe_renegotiation.c gnutls-3.2.3/lib/ext/safe_renegotiation.c --- gnutls-3.2.3-orig/lib/ext/safe_renegotiation.c 2013-05-25 06:12:26 -0400 +++ gnutls-3.2.3/lib/ext/safe_renegotiation.c 2013-11-06 09:39:57 -0500 @@ -31,15 +31,15 @@ static void _gnutls_sr_deinit_data (extension_priv_data_t priv); extension_entry_st ext_mod_sr = { - .name = "SAFE RENEGOTIATION", - .type = GNUTLS_EXTENSION_SAFE_RENEGOTIATION, - .parse_type = GNUTLS_EXT_MANDATORY, + "SAFE RENEGOTIATION", + GNUTLS_EXTENSION_SAFE_RENEGOTIATION, + GNUTLS_EXT_MANDATORY, - .recv_func = _gnutls_sr_recv_params, - .send_func = _gnutls_sr_send_params, - .pack_func = NULL, - .unpack_func = NULL, - .deinit_func = _gnutls_sr_deinit_data, + _gnutls_sr_recv_params, + _gnutls_sr_send_params, + _gnutls_sr_deinit_data, + NULL, + NULL }; int diff -ur gnutls-3.2.3-orig/lib/ext/server_name.c gnutls-3.2.3/lib/ext/server_name.c --- gnutls-3.2.3-orig/lib/ext/server_name.c 2013-05-25 06:12:26 -0400 +++ gnutls-3.2.3/lib/ext/server_name.c 2013-11-06 09:39:57 -0500 @@ -40,15 +40,15 @@ extension_entry_st ext_mod_server_name = { - .name = "SERVER NAME", - .type = GNUTLS_EXTENSION_SERVER_NAME, - .parse_type = GNUTLS_EXT_APPLICATION, + "SERVER NAME", + GNUTLS_EXTENSION_SERVER_NAME, + GNUTLS_EXT_APPLICATION, - .recv_func = _gnutls_server_name_recv_params, - .send_func = _gnutls_server_name_send_params, - .pack_func = _gnutls_server_name_pack, - .unpack_func = _gnutls_server_name_unpack, - .deinit_func = _gnutls_server_name_deinit_data, + _gnutls_server_name_recv_params, + _gnutls_server_name_send_params, + _gnutls_server_name_deinit_data, + _gnutls_server_name_pack, + _gnutls_server_name_unpack }; /* diff -ur gnutls-3.2.3-orig/lib/ext/session_ticket.c gnutls-3.2.3/lib/ext/session_ticket.c --- gnutls-3.2.3-orig/lib/ext/session_ticket.c 2013-05-25 06:12:26 -0400 +++ gnutls-3.2.3/lib/ext/session_ticket.c 2013-11-06 09:39:57 -0500 @@ -52,15 +52,15 @@ static void session_ticket_deinit_data (extension_priv_data_t priv); extension_entry_st ext_mod_session_ticket = { - .name = "SESSION TICKET", - .type = GNUTLS_EXTENSION_SESSION_TICKET, - .parse_type = GNUTLS_EXT_MANDATORY, + "SESSION TICKET", + GNUTLS_EXTENSION_SESSION_TICKET, + GNUTLS_EXT_MANDATORY, - .recv_func = session_ticket_recv_params, - .send_func = session_ticket_send_params, - .pack_func = session_ticket_pack, - .unpack_func = session_ticket_unpack, - .deinit_func = session_ticket_deinit_data, + session_ticket_recv_params, + session_ticket_send_params, + session_ticket_deinit_data, + session_ticket_pack, + session_ticket_unpack }; #define SESSION_KEY_SIZE (SESSION_TICKET_KEY_NAME_SIZE+SESSION_TICKET_KEY_SIZE+SESSION_TICKET_MAC_SECRET_SIZE) diff -ur gnutls-3.2.3-orig/lib/ext/signature.c gnutls-3.2.3/lib/ext/signature.c --- gnutls-3.2.3-orig/lib/ext/signature.c 2013-06-10 03:19:30 -0400 +++ gnutls-3.2.3/lib/ext/signature.c 2013-11-06 09:39:57 -0500 @@ -46,15 +46,15 @@ extension_priv_data_t * _priv); extension_entry_st ext_mod_sig = { - .name = "SIGNATURE ALGORITHMS", - .type = GNUTLS_EXTENSION_SIGNATURE_ALGORITHMS, - .parse_type = GNUTLS_EXT_TLS, + "SIGNATURE ALGORITHMS", + GNUTLS_EXTENSION_SIGNATURE_ALGORITHMS, + GNUTLS_EXT_TLS, - .recv_func = _gnutls_signature_algorithm_recv_params, - .send_func = _gnutls_signature_algorithm_send_params, - .pack_func = signature_algorithms_pack, - .unpack_func = signature_algorithms_unpack, - .deinit_func = signature_algorithms_deinit_data, + _gnutls_signature_algorithm_recv_params, + _gnutls_signature_algorithm_send_params, + signature_algorithms_deinit_data, + signature_algorithms_pack, + signature_algorithms_unpack }; typedef struct diff -ur gnutls-3.2.3-orig/lib/ext/srp.c gnutls-3.2.3/lib/ext/srp.c --- gnutls-3.2.3-orig/lib/ext/srp.c 2013-05-25 06:12:26 -0400 +++ gnutls-3.2.3/lib/ext/srp.c 2013-11-06 09:39:57 -0500 @@ -42,15 +42,15 @@ static int _gnutls_srp_send_params (gnutls_session_t state, gnutls_buffer_st * extdata); extension_entry_st ext_mod_srp = { - .name = "SRP", - .type = GNUTLS_EXTENSION_SRP, - .parse_type = GNUTLS_EXT_TLS, + "SRP", + GNUTLS_EXTENSION_SRP, + GNUTLS_EXT_TLS, - .recv_func = _gnutls_srp_recv_params, - .send_func = _gnutls_srp_send_params, - .pack_func = _gnutls_srp_pack, - .unpack_func = _gnutls_srp_unpack, - .deinit_func = _gnutls_srp_deinit_data + _gnutls_srp_recv_params, + _gnutls_srp_send_params, + _gnutls_srp_deinit_data, + _gnutls_srp_pack, + _gnutls_srp_unpack }; diff -ur gnutls-3.2.3-orig/lib/ext/srtp.c gnutls-3.2.3/lib/ext/srtp.c --- gnutls-3.2.3-orig/lib/ext/srtp.c 2013-07-13 05:42:56 -0400 +++ gnutls-3.2.3/lib/ext/srtp.c 2013-11-06 09:39:57 -0500 @@ -40,15 +40,15 @@ extension_entry_st ext_mod_srtp = { - .name = "SRTP", - .type = GNUTLS_EXTENSION_SRTP, - .parse_type = GNUTLS_EXT_APPLICATION, + "SRTP", + GNUTLS_EXTENSION_SRTP, + GNUTLS_EXT_APPLICATION, - .recv_func = _gnutls_srtp_recv_params, - .send_func = _gnutls_srtp_send_params, - .pack_func = _gnutls_srtp_pack, - .unpack_func = _gnutls_srtp_unpack, - .deinit_func = _gnutls_srtp_deinit_data, + _gnutls_srtp_recv_params, + _gnutls_srtp_send_params, + _gnutls_srtp_deinit_data, + _gnutls_srtp_pack, + _gnutls_srtp_unpack }; typedef struct diff -ur gnutls-3.2.3-orig/lib/ext/status_request.c gnutls-3.2.3/lib/ext/status_request.c --- gnutls-3.2.3-orig/lib/ext/status_request.c 2013-05-25 06:12:26 -0400 +++ gnutls-3.2.3/lib/ext/status_request.c 2013-11-06 09:39:57 -0500 @@ -508,14 +508,14 @@ } extension_entry_st ext_mod_status_request = { - .name = "STATUS REQUEST", - .type = GNUTLS_EXTENSION_STATUS_REQUEST, - .parse_type = GNUTLS_EXT_TLS, - .recv_func = _gnutls_status_request_recv_params, - .send_func = _gnutls_status_request_send_params, - .pack_func = _gnutls_status_request_pack, - .unpack_func = _gnutls_status_request_unpack, - .deinit_func = _gnutls_status_request_deinit_data + "STATUS REQUEST", + GNUTLS_EXTENSION_STATUS_REQUEST, + GNUTLS_EXT_TLS, + _gnutls_status_request_recv_params, + _gnutls_status_request_send_params, + _gnutls_status_request_deinit_data, + _gnutls_status_request_pack, + _gnutls_status_request_unpack }; /* Functions to be called from handshake */ diff -ur gnutls-3.2.3-orig/lib/extras/Makefile.am gnutls-3.2.3/lib/extras/Makefile.am --- gnutls-3.2.3-orig/lib/extras/Makefile.am 2013-06-06 17:13:52 -0400 +++ gnutls-3.2.3/lib/extras/Makefile.am 2013-11-06 09:39:57 -0500 @@ -20,6 +20,7 @@ AM_CFLAGS = $(WERROR_CFLAGS) $(WSTACK_CFLAGS) $(WARN_CFLAGS) $(NETTLE_CFLAGS) AM_CPPFLAGS = \ + -DGNUTLS_BUILDING \ -I$(srcdir)/../../gl \ -I$(builddir)/../../gl \ -I$(srcdir)/../includes \ diff -ur gnutls-3.2.3-orig/lib/gnutls_cipher.c gnutls-3.2.3/lib/gnutls_cipher.c --- gnutls-3.2.3-orig/lib/gnutls_cipher.c 2013-07-28 03:51:38 -0400 +++ gnutls-3.2.3/lib/gnutls_cipher.c 2013-11-06 13:18:32 -0500 @@ -659,7 +659,7 @@ */ if (explicit_iv && _gnutls_auth_cipher_is_aead(¶ms->read.cipher_state)) { - uint8_t nonce[blocksize]; + uint8_t *nonce = _alloca(blocksize * sizeof(uint8_t)); /* Values in AEAD are pretty fixed in TLS 1.2 for 128-bit block */ if (unlikely(params->read.IV.data == NULL || params->read.IV.size != 4)) @@ -855,7 +855,7 @@ */ if (explicit_iv && _gnutls_auth_cipher_is_aead(¶ms->read.cipher_state)) { - uint8_t nonce[blocksize]; + uint8_t * nonce; /* Values in AEAD are pretty fixed in TLS 1.2 for 128-bit block */ if (params->read.IV.data == NULL || params->read.IV.size != 4) @@ -864,6 +864,7 @@ if (ciphertext->size < tag_size+AEAD_EXPLICIT_DATA_SIZE + 2) return gnutls_assert_val(GNUTLS_E_UNEXPECTED_PACKET_LENGTH); + nonce = (uint8_t *) malloc (sizeof (uint8_t) * blocksize); memcpy(nonce, params->read.IV.data, AEAD_IMPLICIT_DATA_SIZE); memcpy(&nonce[AEAD_IMPLICIT_DATA_SIZE], ciphertext->data, AEAD_EXPLICIT_DATA_SIZE); @@ -873,6 +874,7 @@ ciphertext->size -= AEAD_EXPLICIT_DATA_SIZE; length_to_decrypt = ciphertext->size - tag_size; + free (nonce); } else if (iv_size > 0) { /* a stream cipher with explicit IV */ diff -ur gnutls-3.2.3-orig/lib/gnutls_global.h gnutls-3.2.3/lib/gnutls_global.h --- gnutls-3.2.3-orig/lib/gnutls_global.h 2013-03-27 12:58:30 -0400 +++ gnutls-3.2.3/lib/gnutls_global.h 2013-11-06 13:48:03 -0500 @@ -28,8 +28,8 @@ int gnutls_is_secure_memory (const void *mem); -extern ASN1_TYPE _gnutls_pkix1_asn; -extern ASN1_TYPE _gnutls_gnutls_asn; +extern GNUTLS_EXPORTED ASN1_TYPE _gnutls_pkix1_asn; +extern GNUTLS_EXPORTED ASN1_TYPE _gnutls_gnutls_asn; /* removed const from node_asn* to * prevent warnings, since libtasn1 doesn't @@ -38,9 +38,9 @@ #define _gnutls_get_gnutls_asn() ((ASN1_TYPE) _gnutls_gnutls_asn) #define _gnutls_get_pkix() ((ASN1_TYPE) _gnutls_pkix1_asn) -extern gnutls_log_func _gnutls_log_func; -extern gnutls_audit_log_func _gnutls_audit_log_func; -extern int _gnutls_log_level; +extern GNUTLS_EXPORTED gnutls_log_func _gnutls_log_func; +extern GNUTLS_EXPORTED gnutls_audit_log_func _gnutls_audit_log_func; +extern GNUTLS_EXPORTED int _gnutls_log_level; extern int gnutls_crypto_init (void); extern void gnutls_crypto_deinit (void); void _gnutls_priority_prefer_aes_gcm(void); diff -ur gnutls-3.2.3-orig/lib/gnutls_mpi.h gnutls-3.2.3/lib/gnutls_mpi.h --- gnutls-3.2.3-orig/lib/gnutls_mpi.h 2013-03-27 12:58:30 -0400 +++ gnutls-3.2.3/lib/gnutls_mpi.h 2013-11-06 09:39:58 -0500 @@ -28,7 +28,7 @@ #include <crypto-backend.h> extern int crypto_bigint_prio; -extern gnutls_crypto_bigint_st _gnutls_mpi_ops; +extern GNUTLS_EXPORTED gnutls_crypto_bigint_st _gnutls_mpi_ops; bigint_t _gnutls_mpi_randomize (bigint_t, unsigned int bits, gnutls_rnd_level_t level); diff -ur gnutls-3.2.3-orig/lib/gnutls_range.c gnutls-3.2.3/lib/gnutls_range.c --- gnutls-3.2.3-orig/lib/gnutls_range.c 2013-07-26 01:58:21 -0400 +++ gnutls-3.2.3/lib/gnutls_range.c 2013-11-06 13:15:31 -0500 @@ -186,11 +186,13 @@ } else { + ssize_t this_pad; + ret = _gnutls_range_max_lh_pad (session, orig_low, max_frag); if (ret < 0) return gnutls_assert_val(ret); - ssize_t this_pad = MIN (ret, orig_high - orig_low); + this_pad = MIN (ret, orig_high - orig_low); _gnutls_set_range (next, orig_low, orig_low + this_pad); _gnutls_set_range (remainder, 0, diff -ur gnutls-3.2.3-orig/lib/gnutls_x509.c gnutls-3.2.3/lib/gnutls_x509.c --- gnutls-3.2.3-orig/lib/gnutls_x509.c 2013-07-19 04:44:08 -0400 +++ gnutls-3.2.3/lib/gnutls_x509.c 2013-11-06 09:39:58 -0500 @@ -1725,8 +1725,10 @@ int ca_list_size) { int ret, i, j; - gnutls_x509_crt_t new_list[ca_list_size]; + gnutls_x509_crt_t * new_list; + new_list = (gnutls_x509_crt_t *) malloc (sizeof (gnutls_x509_crt_t) * + ca_list_size); for (i = 0; i < ca_list_size; i++) { ret = gnutls_x509_crt_init (&new_list[i]); @@ -1757,12 +1759,16 @@ goto cleanup; } + free (new_list); + return ret; cleanup: for (j=0;j<i;i++) gnutls_x509_crt_deinit(new_list[j]); + free (new_list); + return ret; } @@ -1988,7 +1994,10 @@ int crl_list_size) { int ret, i, j; - gnutls_x509_crl_t new_crl[crl_list_size]; + gnutls_x509_crl_t * new_crl; + + new_crl = (gnutls_x509_crl_t *) malloc (sizeof (gnutls_x509_crl_t) * + crl_list_size); for (i = 0; i < crl_list_size; i++) { @@ -2014,12 +2023,16 @@ goto cleanup; } + free (new_crl); + return ret; cleanup: for (j=0;j<i;j++) gnutls_x509_crl_deinit(new_crl[j]); + free (new_crl); + return ret; } diff -ur gnutls-3.2.3-orig/lib/includes/gnutls/gnutls.h.in gnutls-3.2.3/lib/includes/gnutls/gnutls.h.in --- gnutls-3.2.3-orig/lib/includes/gnutls/gnutls.h.in 2013-07-25 07:33:02 -0400 +++ gnutls-3.2.3/lib/includes/gnutls/gnutls.h.in 2013-11-06 09:39:58 -0500 @@ -36,6 +36,16 @@ #ifndef GNUTLS_H #define GNUTLS_H +#ifdef _MSC_VER +# ifdef GNUTLS_BUILDING +# define GNUTLS_EXPORTED __declspec(dllexport) +# else +# define GNUTLS_EXPORTED __declspec(dllimport) +# endif +#else +# define GNUTLS_EXPORTED +#endif + /* Get size_t. */ #include <stddef.h> /* Get ssize_t. */ @@ -1436,13 +1446,13 @@ void gnutls_global_set_time_function (gnutls_time_func time_func); /* For use in callbacks */ - extern gnutls_alloc_function gnutls_malloc; - extern gnutls_alloc_function gnutls_secure_malloc; - extern gnutls_realloc_function gnutls_realloc; - extern gnutls_calloc_function gnutls_calloc; - extern gnutls_free_function gnutls_free; + extern GNUTLS_EXPORTED gnutls_alloc_function gnutls_malloc; + extern GNUTLS_EXPORTED gnutls_alloc_function gnutls_secure_malloc; + extern GNUTLS_EXPORTED gnutls_realloc_function gnutls_realloc; + extern GNUTLS_EXPORTED gnutls_calloc_function gnutls_calloc; + extern GNUTLS_EXPORTED gnutls_free_function gnutls_free; - extern char *(*gnutls_strdup) (const char *); + extern GNUTLS_EXPORTED char *(*gnutls_strdup) (const char *); typedef void (*gnutls_log_func) (int, const char *); typedef void (*gnutls_audit_log_func) (gnutls_session_t, const char *); @@ -1603,20 +1613,20 @@ /* The static parameters defined in draft-ietf-tls-srp-05 * Those should be used as input to gnutls_srp_verifier(). */ - extern const gnutls_datum_t gnutls_srp_4096_group_prime; - extern const gnutls_datum_t gnutls_srp_4096_group_generator; + extern GNUTLS_EXPORTED const gnutls_datum_t gnutls_srp_4096_group_prime; + extern GNUTLS_EXPORTED const gnutls_datum_t gnutls_srp_4096_group_generator; - extern const gnutls_datum_t gnutls_srp_3072_group_prime; - extern const gnutls_datum_t gnutls_srp_3072_group_generator; + extern GNUTLS_EXPORTED const gnutls_datum_t gnutls_srp_3072_group_prime; + extern GNUTLS_EXPORTED const gnutls_datum_t gnutls_srp_3072_group_generator; - extern const gnutls_datum_t gnutls_srp_2048_group_prime; - extern const gnutls_datum_t gnutls_srp_2048_group_generator; + extern GNUTLS_EXPORTED const gnutls_datum_t gnutls_srp_2048_group_prime; + extern GNUTLS_EXPORTED const gnutls_datum_t gnutls_srp_2048_group_generator; - extern const gnutls_datum_t gnutls_srp_1536_group_prime; - extern const gnutls_datum_t gnutls_srp_1536_group_generator; + extern GNUTLS_EXPORTED const gnutls_datum_t gnutls_srp_1536_group_prime; + extern GNUTLS_EXPORTED const gnutls_datum_t gnutls_srp_1536_group_generator; - extern const gnutls_datum_t gnutls_srp_1024_group_prime; - extern const gnutls_datum_t gnutls_srp_1024_group_generator; + extern GNUTLS_EXPORTED const gnutls_datum_t gnutls_srp_1024_group_prime; + extern GNUTLS_EXPORTED const gnutls_datum_t gnutls_srp_1024_group_generator; typedef int gnutls_srp_server_credentials_function (gnutls_session_t, const char *username, diff -ur gnutls-3.2.3-orig/lib/includes/gnutls/gnutlsxx.h gnutls-3.2.3/lib/includes/gnutls/gnutlsxx.h --- gnutls-3.2.3-orig/lib/includes/gnutls/gnutlsxx.h 2013-02-10 05:29:54 -0500 +++ gnutls-3.2.3/lib/includes/gnutls/gnutlsxx.h 2013-11-06 09:39:58 -0500 @@ -27,10 +27,20 @@ #include <vector> #include <gnutls/gnutls.h> +#ifdef _MSC_VER +# ifdef GNUTLSXX_BUILDING +# define GNUTLSXX_EXPORTED __declspec(dllexport) +# else +# define GNUTLSXX_EXPORTED __declspec(dllimport) +# endif +#else +# define GNUTLSXX_EXPORTED +#endif + namespace gnutls { - class noncopyable + class GNUTLSXX_EXPORTED noncopyable { protected: noncopyable () @@ -47,7 +57,7 @@ }; - class exception:public std::exception + class GNUTLSXX_EXPORTED exception:public std::exception { public: exception (int x); @@ -58,7 +68,7 @@ }; - class dh_params:private noncopyable + class GNUTLSXX_EXPORTED dh_params:private noncopyable { public: dh_params (); @@ -80,7 +90,7 @@ }; - class rsa_params:private noncopyable + class GNUTLSXX_EXPORTED rsa_params:private noncopyable { public: rsa_params (); @@ -106,7 +116,7 @@ gnutls_rsa_params_t params; }; - class session:private noncopyable + class GNUTLSXX_EXPORTED session:private noncopyable { protected: gnutls_session_t s; @@ -220,10 +230,14 @@ }; // interface for databases - class DB:private noncopyable + class GNUTLSXX_EXPORTED DB:private noncopyable { public: +#ifdef _MSC_VER + virtual ~ DB () { }; +#else virtual ~ DB () = 0; +#endif virtual bool store (const gnutls_datum_t & key, const gnutls_datum_t & data) = 0; virtual bool retrieve (const gnutls_datum_t & key, @@ -231,7 +245,7 @@ virtual bool remove (const gnutls_datum_t & key) = 0; }; - class server_session:public session + class GNUTLSXX_EXPORTED server_session:public session { public: server_session (); @@ -255,7 +269,7 @@ void set_certificate_request (gnutls_certificate_request_t); }; - class client_session:public session + class GNUTLSXX_EXPORTED client_session:public session { public: client_session (); @@ -268,7 +282,7 @@ }; - class credentials:private noncopyable + class GNUTLSXX_EXPORTED credentials:private noncopyable { public: virtual ~ credentials () @@ -285,7 +299,7 @@ void *cred; }; - class certificate_credentials:public credentials + class GNUTLSXX_EXPORTED certificate_credentials:public credentials { public: ~certificate_credentials (); @@ -332,13 +346,13 @@ gnutls_certificate_credentials_t cred; }; - class certificate_server_credentials:public certificate_credentials + class GNUTLSXX_EXPORTED certificate_server_credentials:public certificate_credentials { public: void set_params_function (gnutls_params_function * func); }; - class certificate_client_credentials:public certificate_credentials + class GNUTLSXX_EXPORTED certificate_client_credentials:public certificate_credentials { public: }; @@ -346,7 +360,7 @@ - class anon_server_credentials:public credentials + class GNUTLSXX_EXPORTED anon_server_credentials:public credentials { public: anon_server_credentials (); @@ -357,7 +371,7 @@ gnutls_anon_server_credentials_t cred; }; - class anon_client_credentials:public credentials + class GNUTLSXX_EXPORTED anon_client_credentials:public credentials { public: anon_client_credentials (); @@ -367,7 +381,7 @@ }; - class srp_server_credentials:public credentials + class GNUTLSXX_EXPORTED srp_server_credentials:public credentials { public: srp_server_credentials (); @@ -380,7 +394,7 @@ gnutls_srp_server_credentials_t cred; }; - class srp_client_credentials:public credentials + class GNUTLSXX_EXPORTED srp_client_credentials:public credentials { public: srp_client_credentials (); @@ -393,7 +407,7 @@ }; - class psk_server_credentials:public credentials + class GNUTLSXX_EXPORTED psk_server_credentials:public credentials { public: psk_server_credentials (); @@ -407,7 +421,7 @@ gnutls_psk_server_credentials_t cred; }; - class psk_client_credentials:public credentials + class GNUTLSXX_EXPORTED psk_client_credentials:public credentials { public: psk_client_credentials (); diff -ur gnutls-3.2.3-orig/lib/minitasn1/Makefile.am gnutls-3.2.3/lib/minitasn1/Makefile.am --- gnutls-3.2.3-orig/lib/minitasn1/Makefile.am 2012-12-03 14:36:50 -0500 +++ gnutls-3.2.3/lib/minitasn1/Makefile.am 2013-11-06 09:39:58 -0500 @@ -21,6 +21,8 @@ # MA 02110-1301, USA AM_CPPFLAGS = -DASN1_BUILDING \ + -DASN1_STATIC \ + -DGNUTLS_BUILDING \ -I$(srcdir)/../../gl \ -I$(builddir)/../../gl \ -I$(srcdir)/.. diff -ur gnutls-3.2.3-orig/lib/minitasn1/coding.c gnutls-3.2.3/lib/minitasn1/coding.c --- gnutls-3.2.3-orig/lib/minitasn1/coding.c 2013-05-25 06:12:26 -0400 +++ gnutls-3.2.3/lib/minitasn1/coding.c 2013-11-06 13:11:34 -0500 @@ -519,28 +519,44 @@ const tag_and_class_st _asn1_tags[] = { - [ASN1_ETYPE_GENERALSTRING] = {ASN1_TAG_GENERALSTRING, ASN1_CLASS_UNIVERSAL, "type:GENERALSTRING"}, - [ASN1_ETYPE_NUMERIC_STRING] = {ASN1_TAG_NUMERIC_STRING, ASN1_CLASS_UNIVERSAL, "type:NUMERIC_STR"}, - [ASN1_ETYPE_IA5_STRING] = {ASN1_TAG_IA5_STRING, ASN1_CLASS_UNIVERSAL, "type:IA5_STR"}, - [ASN1_ETYPE_TELETEX_STRING] = {ASN1_TAG_TELETEX_STRING, ASN1_CLASS_UNIVERSAL, "type:TELETEX_STR"}, - [ASN1_ETYPE_PRINTABLE_STRING] = {ASN1_TAG_PRINTABLE_STRING, ASN1_CLASS_UNIVERSAL, "type:PRINTABLE_STR"}, - [ASN1_ETYPE_UNIVERSAL_STRING] = {ASN1_TAG_UNIVERSAL_STRING, ASN1_CLASS_UNIVERSAL, "type:UNIVERSAL_STR"}, - [ASN1_ETYPE_BMP_STRING] = {ASN1_TAG_BMP_STRING, ASN1_CLASS_UNIVERSAL, "type:BMP_STR"}, - [ASN1_ETYPE_UTF8_STRING] = {ASN1_TAG_UTF8_STRING, ASN1_CLASS_UNIVERSAL, "type:UTF8_STR"}, - [ASN1_ETYPE_VISIBLE_STRING] = {ASN1_TAG_VISIBLE_STRING, ASN1_CLASS_UNIVERSAL, "type:VISIBLE_STR"}, - [ASN1_ETYPE_OCTET_STRING] = {ASN1_TAG_OCTET_STRING, ASN1_CLASS_UNIVERSAL, "type:OCT_STR"}, - [ASN1_ETYPE_BIT_STRING] = {ASN1_TAG_BIT_STRING, ASN1_CLASS_UNIVERSAL, "type:BIT_STR"}, - [ASN1_ETYPE_OBJECT_ID] = {ASN1_TAG_OBJECT_ID, ASN1_CLASS_UNIVERSAL, "type:OBJ_ID"}, - [ASN1_ETYPE_NULL] = {ASN1_TAG_NULL, ASN1_CLASS_UNIVERSAL, "type:NULL"}, - [ASN1_ETYPE_BOOLEAN] = {ASN1_TAG_BOOLEAN, ASN1_CLASS_UNIVERSAL, "type:BOOLEAN"}, - [ASN1_ETYPE_INTEGER] = {ASN1_TAG_INTEGER, ASN1_CLASS_UNIVERSAL, "type:INTEGER"}, - [ASN1_ETYPE_ENUMERATED] = {ASN1_TAG_ENUMERATED, ASN1_CLASS_UNIVERSAL, "type:ENUMERATED"}, - [ASN1_ETYPE_SEQUENCE] = {ASN1_TAG_SEQUENCE, ASN1_CLASS_UNIVERSAL | ASN1_CLASS_STRUCTURED, "type:SEQUENCE"}, - [ASN1_ETYPE_SEQUENCE_OF] ={ASN1_TAG_SEQUENCE, ASN1_CLASS_UNIVERSAL | ASN1_CLASS_STRUCTURED, "type:SEQ_OF"}, - [ASN1_ETYPE_SET] = {ASN1_TAG_SET, ASN1_CLASS_UNIVERSAL | ASN1_CLASS_STRUCTURED, "type:SET"}, - [ASN1_ETYPE_SET_OF] = {ASN1_TAG_SET, ASN1_CLASS_UNIVERSAL | ASN1_CLASS_STRUCTURED, "type:SET_OF"}, - [ASN1_ETYPE_GENERALIZED_TIME] = {ASN1_TAG_GENERALIZEDTime, ASN1_CLASS_UNIVERSAL, "type:GENERALIZED_TIME"}, - [ASN1_ETYPE_UTC_TIME] = {ASN1_TAG_UTCTime, ASN1_CLASS_UNIVERSAL, "type:UTC_TIME"}, + { 0, 0, NULL }, + { 0, 0, NULL }, + { 0, 0, NULL }, + /*[ASN1_ETYPE_INTEGER] =*/ {ASN1_TAG_INTEGER, ASN1_CLASS_UNIVERSAL, "type:INTEGER"}, + /*[ASN1_ETYPE_BOOLEAN] =*/ {ASN1_TAG_BOOLEAN, ASN1_CLASS_UNIVERSAL, "type:BOOLEAN"}, + /*[ASN1_ETYPE_SEQUENCE] =*/ {ASN1_TAG_SEQUENCE, ASN1_CLASS_UNIVERSAL | ASN1_CLASS_STRUCTURED, "type:SEQUENCE"}, + /*[ASN1_ETYPE_BIT_STRING] =*/ {ASN1_TAG_BIT_STRING, ASN1_CLASS_UNIVERSAL, "type:BIT_STR"}, + /*[ASN1_ETYPE_OCTET_STRING] =*/ {ASN1_TAG_OCTET_STRING, ASN1_CLASS_UNIVERSAL, "type:OCT_STR"}, + { 0, 0, NULL }, + { 0, 0, NULL }, + { 0, 0, NULL }, + /*[ASN1_ETYPE_SEQUENCE_OF] =*/{ASN1_TAG_SEQUENCE, ASN1_CLASS_UNIVERSAL | ASN1_CLASS_STRUCTURED, "type:SEQ_OF"}, + /*[ASN1_ETYPE_OBJECT_ID] =*/ {ASN1_TAG_OBJECT_ID, ASN1_CLASS_UNIVERSAL, "type:OBJ_ID"}, + { 0, 0, NULL }, + /*[ASN1_ETYPE_SET] =*/ {ASN1_TAG_SET, ASN1_CLASS_UNIVERSAL | ASN1_CLASS_STRUCTURED, "type:SET"}, + /*[ASN1_ETYPE_SET_OF] =*/ {ASN1_TAG_SET, ASN1_CLASS_UNIVERSAL | ASN1_CLASS_STRUCTURED, "type:SET_OF"}, + { 0, 0, NULL }, + { 0, 0, NULL }, + { 0, 0, NULL }, + { 0, 0, NULL }, + /*[ASN1_ETYPE_NULL] =*/ {ASN1_TAG_NULL, ASN1_CLASS_UNIVERSAL, "type:NULL"}, + /*[ASN1_ETYPE_ENUMERATED] =*/ {ASN1_TAG_ENUMERATED, ASN1_CLASS_UNIVERSAL, "type:ENUMERATED"}, + { 0, 0, NULL }, + { 0, 0, NULL }, + { 0, 0, NULL }, + { 0, 0, NULL }, + { 0, 0, NULL }, + /*[ASN1_ETYPE_GENERALSTRING] =*/ {ASN1_TAG_GENERALSTRING, ASN1_CLASS_UNIVERSAL, "type:GENERALSTRING"}, + /*[ASN1_ETYPE_NUMERIC_STRING] =*/ {ASN1_TAG_NUMERIC_STRING, ASN1_CLASS_UNIVERSAL, "type:NUMERIC_STR"}, + /*[ASN1_ETYPE_IA5_STRING] =*/ {ASN1_TAG_IA5_STRING, ASN1_CLASS_UNIVERSAL, "type:IA5_STR"}, + /*[ASN1_ETYPE_TELETEX_STRING] =*/ {ASN1_TAG_TELETEX_STRING, ASN1_CLASS_UNIVERSAL, "type:TELETEX_STR"}, + /*[ASN1_ETYPE_PRINTABLE_STRING] =*/ {ASN1_TAG_PRINTABLE_STRING, ASN1_CLASS_UNIVERSAL, "type:PRINTABLE_STR"}, + /*[ASN1_ETYPE_UNIVERSAL_STRING] =*/ {ASN1_TAG_UNIVERSAL_STRING, ASN1_CLASS_UNIVERSAL, "type:UNIVERSAL_STR"}, + /*[ASN1_ETYPE_BMP_STRING] =*/ {ASN1_TAG_BMP_STRING, ASN1_CLASS_UNIVERSAL, "type:BMP_STR"}, + /*[ASN1_ETYPE_UTF8_STRING] =*/ {ASN1_TAG_UTF8_STRING, ASN1_CLASS_UNIVERSAL, "type:UTF8_STR"}, + /*[ASN1_ETYPE_VISIBLE_STRING] =*/ {ASN1_TAG_VISIBLE_STRING, ASN1_CLASS_UNIVERSAL, "type:VISIBLE_STR"}, + /*[ASN1_ETYPE_UTC_TIME] =*/ {ASN1_TAG_UTCTime, ASN1_CLASS_UNIVERSAL, "type:UTC_TIME"}, + /*[ASN1_ETYPE_GENERALIZED_TIME] =*/ {ASN1_TAG_GENERALIZEDTime, ASN1_CLASS_UNIVERSAL, "type:GENERALIZED_TIME"}, }; unsigned int _asn1_tags_size = sizeof(_asn1_tags)/sizeof(_asn1_tags[0]); diff -ur gnutls-3.2.3-orig/lib/nettle/Makefile.am gnutls-3.2.3/lib/nettle/Makefile.am --- gnutls-3.2.3-orig/lib/nettle/Makefile.am 2013-06-19 13:05:19 -0400 +++ gnutls-3.2.3/lib/nettle/Makefile.am 2013-11-06 09:39:58 -0500 @@ -24,6 +24,7 @@ $(GMP_CFLAGS) AM_CPPFLAGS = \ + -DGNUTLS_BUILDING \ -I$(srcdir)/../../gl \ -I$(builddir)/../../gl \ -I$(srcdir)/../includes \ diff -ur gnutls-3.2.3-orig/lib/nettle/cipher.c gnutls-3.2.3/lib/nettle/cipher.c --- gnutls-3.2.3-orig/lib/nettle/cipher.c 2013-05-27 18:19:21 -0400 +++ gnutls-3.2.3/lib/nettle/cipher.c 2013-11-06 09:39:58 -0500 @@ -394,13 +394,13 @@ } gnutls_crypto_cipher_st _gnutls_cipher_ops = { - .init = wrap_nettle_cipher_init, - .exists = wrap_nettle_cipher_exists, - .setiv = wrap_nettle_cipher_setiv, - .setkey = wrap_nettle_cipher_setkey, - .encrypt = wrap_nettle_cipher_encrypt, - .decrypt = wrap_nettle_cipher_decrypt, - .deinit = wrap_nettle_cipher_close, - .auth = wrap_nettle_cipher_auth, - .tag = wrap_nettle_cipher_tag, + wrap_nettle_cipher_init, + wrap_nettle_cipher_setkey, + wrap_nettle_cipher_setiv, + wrap_nettle_cipher_encrypt, + wrap_nettle_cipher_decrypt, + wrap_nettle_cipher_auth, + wrap_nettle_cipher_tag, + wrap_nettle_cipher_close, + wrap_nettle_cipher_exists }; diff -ur gnutls-3.2.3-orig/lib/nettle/mac.c gnutls-3.2.3/lib/nettle/mac.c --- gnutls-3.2.3-orig/lib/nettle/mac.c 2013-05-25 06:12:26 -0400 +++ gnutls-3.2.3/lib/nettle/mac.c 2013-11-06 09:49:12 -0500 @@ -448,21 +448,21 @@ } gnutls_crypto_mac_st _gnutls_mac_ops = { - .init = wrap_nettle_mac_init, - .setkey = wrap_nettle_mac_set_key, - .setnonce = wrap_nettle_mac_set_nonce, - .hash = wrap_nettle_mac_update, - .output = wrap_nettle_mac_output, - .deinit = wrap_nettle_mac_deinit, - .fast = wrap_nettle_mac_fast, - .exists = wrap_nettle_mac_exists, + /*.init =*/ wrap_nettle_mac_init, + /*.setkey =*/ wrap_nettle_mac_set_key, + /*.setnonce =*/ wrap_nettle_mac_set_nonce, + /*.hash =*/ wrap_nettle_mac_update, + /*.output =*/ wrap_nettle_mac_output, + /*.deinit =*/ wrap_nettle_mac_deinit, + /*.fast =*/ wrap_nettle_mac_fast, + /*.exists =*/ wrap_nettle_mac_exists, }; gnutls_crypto_digest_st _gnutls_digest_ops = { - .init = wrap_nettle_hash_init, - .hash = wrap_nettle_hash_update, - .output = wrap_nettle_hash_output, - .deinit = wrap_nettle_hash_deinit, - .fast = wrap_nettle_hash_fast, - .exists = wrap_nettle_hash_exists, + /*.init =*/ wrap_nettle_hash_init, + /*.hash =*/ wrap_nettle_hash_update, + /*.output =*/ wrap_nettle_hash_output, + /*.deinit =*/ wrap_nettle_hash_deinit, + /*.fast =*/ wrap_nettle_hash_fast, + /*.exists =*/ wrap_nettle_hash_exists, }; diff -ur gnutls-3.2.3-orig/lib/nettle/mpi.c gnutls-3.2.3/lib/nettle/mpi.c --- gnutls-3.2.3-orig/lib/nettle/mpi.c 2013-05-25 06:12:26 -0400 +++ gnutls-3.2.3/lib/nettle/mpi.c 2013-11-06 09:55:25 -0500 @@ -625,28 +625,28 @@ int crypto_bigint_prio = INT_MAX; gnutls_crypto_bigint_st _gnutls_mpi_ops = { - .bigint_new = wrap_nettle_mpi_new, - .bigint_cmp = wrap_nettle_mpi_cmp, - .bigint_cmp_ui = wrap_nettle_mpi_cmp_ui, - .bigint_mod = wrap_nettle_mpi_mod, - .bigint_set = wrap_nettle_mpi_set, - .bigint_set_ui = wrap_nettle_mpi_set_ui, - .bigint_get_nbits = wrap_nettle_mpi_get_nbits, - .bigint_powm = wrap_nettle_mpi_powm, - .bigint_addm = wrap_nettle_mpi_addm, - .bigint_subm = wrap_nettle_mpi_subm, - .bigint_add = wrap_nettle_mpi_add, - .bigint_sub = wrap_nettle_mpi_sub, - .bigint_add_ui = wrap_nettle_mpi_add_ui, - .bigint_sub_ui = wrap_nettle_mpi_sub_ui, - .bigint_mul = wrap_nettle_mpi_mul, - .bigint_mulm = wrap_nettle_mpi_mulm, - .bigint_mul_ui = wrap_nettle_mpi_mul_ui, - .bigint_div = wrap_nettle_mpi_div, - .bigint_prime_check = wrap_nettle_prime_check, - .bigint_release = wrap_nettle_mpi_release, - .bigint_clear = wrap_nettle_mpi_clear, - .bigint_print = wrap_nettle_mpi_print, - .bigint_scan = wrap_nettle_mpi_scan, - .bigint_generate_group = wrap_nettle_generate_group + /*.bigint_new =*/ wrap_nettle_mpi_new, + /*.bigint_release =*/ wrap_nettle_mpi_release, + /*.bigint_clear =*/ wrap_nettle_mpi_clear, + /*.bigint_cmp =*/ wrap_nettle_mpi_cmp, + /*.bigint_cmp_ui =*/ wrap_nettle_mpi_cmp_ui, + /*.bigint_mod =*/ wrap_nettle_mpi_mod, + /*.bigint_set =*/ wrap_nettle_mpi_set, + /*.bigint_set_ui =*/ wrap_nettle_mpi_set_ui, + /*.bigint_get_nbits =*/ wrap_nettle_mpi_get_nbits, + /*.bigint_powm =*/ wrap_nettle_mpi_powm, + /*.bigint_addm =*/ wrap_nettle_mpi_addm, + /*.bigint_subm =*/ wrap_nettle_mpi_subm, + /*.bigint_mulm =*/ wrap_nettle_mpi_mulm, + /*.bigint_add =*/ wrap_nettle_mpi_add, + /*.bigint_sub =*/ wrap_nettle_mpi_sub, + /*.bigint_mul =*/ wrap_nettle_mpi_mul, + /*.bigint_add_ui =*/ wrap_nettle_mpi_add_ui, + /*.bigint_sub_ui =*/ wrap_nettle_mpi_sub_ui, + /*.bigint_mul_ui =*/ wrap_nettle_mpi_mul_ui, + /*.bigint_div =*/ wrap_nettle_mpi_div, + /*.bigint_prime_check =*/ wrap_nettle_prime_check, + /*.bigint_generate_group =*/ wrap_nettle_generate_group, + /*.bigint_scan =*/ wrap_nettle_mpi_scan, + /*.bigint_print =*/ wrap_nettle_mpi_print }; diff -ur gnutls-3.2.3-orig/lib/nettle/pk.c gnutls-3.2.3/lib/nettle/pk.c --- gnutls-3.2.3-orig/lib/nettle/pk.c 2013-05-26 06:01:21 -0400 +++ gnutls-3.2.3/lib/nettle/pk.c 2013-11-06 09:39:58 -0500 @@ -1158,13 +1158,13 @@ int crypto_pk_prio = INT_MAX; gnutls_crypto_pk_st _gnutls_pk_ops = { - .hash_algorithm = wrap_nettle_hash_algorithm, - .encrypt = _wrap_nettle_pk_encrypt, - .decrypt = _wrap_nettle_pk_decrypt, - .sign = _wrap_nettle_pk_sign, - .verify = _wrap_nettle_pk_verify, - .verify_params = wrap_nettle_pk_verify_params, - .generate = wrap_nettle_pk_generate_params, - .pk_fixup_private_params = wrap_nettle_pk_fixup, - .derive = _wrap_nettle_pk_derive, + _wrap_nettle_pk_encrypt, + _wrap_nettle_pk_decrypt, + _wrap_nettle_pk_sign, + _wrap_nettle_pk_verify, + wrap_nettle_hash_algorithm, + wrap_nettle_pk_verify_params, + wrap_nettle_pk_generate_params, + wrap_nettle_pk_fixup, + _wrap_nettle_pk_derive }; diff -ur gnutls-3.2.3-orig/lib/nettle/rnd.c gnutls-3.2.3/lib/nettle/rnd.c --- gnutls-3.2.3-orig/lib/nettle/rnd.c 2013-05-25 06:12:26 -0400 +++ gnutls-3.2.3/lib/nettle/rnd.c 2013-11-06 09:56:48 -0500 @@ -485,8 +485,8 @@ int crypto_rnd_prio = INT_MAX; gnutls_crypto_rnd_st _gnutls_rnd_ops = { - .init = wrap_nettle_rnd_init, - .deinit = wrap_nettle_rnd_deinit, - .rnd = wrap_nettle_rnd, - .rnd_refresh = wrap_nettle_rnd_refresh, + /*.init =*/ wrap_nettle_rnd_init, + /*.rnd =*/ wrap_nettle_rnd, + /*.rnd_refresh =*/ wrap_nettle_rnd_refresh, + /*.deinit =*/ wrap_nettle_rnd_deinit }; diff -ur gnutls-3.2.3-orig/lib/opencdk/Makefile.am gnutls-3.2.3/lib/opencdk/Makefile.am --- gnutls-3.2.3-orig/lib/opencdk/Makefile.am 2013-06-06 17:13:52 -0400 +++ gnutls-3.2.3/lib/opencdk/Makefile.am 2013-11-06 09:39:58 -0500 @@ -21,6 +21,7 @@ AM_CFLAGS = $(NETTLE_CFLAGS) AM_CPPFLAGS = \ + -DGNUTLS_BUILDING \ -I$(srcdir)/../../gl \ -I$(builddir)/../../gl \ -I$(srcdir)/../includes \ diff -ur gnutls-3.2.3-orig/lib/openpgp/Makefile.am gnutls-3.2.3/lib/openpgp/Makefile.am --- gnutls-3.2.3-orig/lib/openpgp/Makefile.am 2013-06-06 17:13:52 -0400 +++ gnutls-3.2.3/lib/openpgp/Makefile.am 2013-11-06 09:39:58 -0500 @@ -20,6 +20,7 @@ AM_CFLAGS = $(WERROR_CFLAGS) $(WSTACK_CFLAGS) $(WARN_CFLAGS) $(NETTLE_CFLAGS) AM_CPPFLAGS = \ + -DGNUTLS_BUILDING \ -I$(srcdir)/../../gl \ -I$(builddir)/../../gl \ -I$(srcdir)/../includes \ diff -ur gnutls-3.2.3-orig/lib/tpm.c gnutls-3.2.3/lib/tpm.c --- gnutls-3.2.3-orig/lib/tpm.c 2013-05-25 06:09:44 -0400 +++ gnutls-3.2.3/lib/tpm.c 2013-11-06 13:25:56 -0500 @@ -27,10 +27,10 @@ * Carolin Latze <latze@angry-red-pla.net> and Tobias Soder */ +#include <gnutls_int.h> #include <gnutls/gnutls.h> #include <gnutls/abstract.h> #include <gnutls/tpm.h> -#include <gnutls_int.h> #ifdef HAVE_TROUSERS diff -ur gnutls-3.2.3-orig/lib/x509/Makefile.am gnutls-3.2.3/lib/x509/Makefile.am --- gnutls-3.2.3-orig/lib/x509/Makefile.am 2013-06-06 17:13:52 -0400 +++ gnutls-3.2.3/lib/x509/Makefile.am 2013-11-06 13:34:31 -0500 @@ -18,6 +18,8 @@ AM_CFLAGS = $(WERROR_CFLAGS) $(WSTACK_CFLAGS) $(WARN_CFLAGS) $(NETTLE_CFLAGS) AM_CPPFLAGS = \ + -DGNUTLS_BUILDING \ + -DASN1_STATIC \ -I$(srcdir)/../../gl \ -I$(builddir)/../../gl \ -I$(srcdir)/../includes \ diff -ur gnutls-3.2.3-orig/src/benchmark-cipher.c gnutls-3.2.3/src/benchmark-cipher.c --- gnutls-3.2.3-orig/src/benchmark-cipher.c 2013-05-08 14:32:30 -0400 +++ gnutls-3.2.3/src/benchmark-cipher.c 2013-11-06 14:39:15 -0500 @@ -201,9 +201,10 @@ void benchmark_cipher (int init, int debug_level) { + int size = 16; + gnutls_global_set_log_function (tls_log_func); gnutls_global_set_log_level (debug_level); - int size = 16; if (init) { diff -ur gnutls-3.2.3-orig/src/cli.c gnutls-3.2.3/src/cli.c --- gnutls-3.2.3-orig/src/cli.c 2013-06-10 13:24:12 -0400 +++ gnutls-3.2.3/src/cli.c 2013-11-06 14:43:12 -0500 @@ -668,7 +668,7 @@ { unsigned proto_n = STACKCT_OPT(ALPN); char** protos = (void*)STACKLST_OPT(ALPN); - gnutls_datum_t p[proto_n]; + gnutls_datum_t* p = _alloca(proto_n * sizeof(gnutls_datum_t)); for (i=0;i<proto_n;i++) { diff -ur gnutls-3.2.3-orig/src/libopts/autoopts/options.h gnutls-3.2.3/src/libopts/autoopts/options.h --- gnutls-3.2.3-orig/src/libopts/autoopts/options.h 2013-05-08 14:32:30 -0400 +++ gnutls-3.2.3/src/libopts/autoopts/options.h 2013-11-06 09:39:58 -0500 @@ -64,7 +64,7 @@ # if defined(HAVE_STDBOOL_H) # include <stdbool.h> -# else +# elif !defined(_GL_STDBOOL_H) typedef enum { false = 0, true = 1 } _Bool; # define bool _Bool diff -ur gnutls-3.2.3-orig/src/libopts/autoopts.c gnutls-3.2.3/src/libopts/autoopts.c --- gnutls-3.2.3-orig/src/libopts/autoopts.c 2013-05-08 14:32:30 -0400 +++ gnutls-3.2.3/src/libopts/autoopts.c 2013-11-06 10:12:59 -0500 @@ -96,10 +96,18 @@ # include "compat/pathfind.c" #endif +#ifdef _MSC_VER +# define fprintf _fprintf_p +# define snprintf _sprintf_p +# define vsnprintf _vsprintf_p +#endif + #ifndef HAVE_SNPRINTF -# define vsnprintf option_vsnprintf -# define snprintf option_snprintf -# include "compat/snprintf.c" +# ifndef _MSC_VER +# define vsnprintf option_vsnprintf +# define snprintf option_snprintf +# include "compat/snprintf.c" +# endif #endif #ifndef HAVE_STRDUP diff -ur gnutls-3.2.3-orig/src/libopts/compat/compat.h gnutls-3.2.3/src/libopts/compat/compat.h --- gnutls-3.2.3-orig/src/libopts/compat/compat.h 2013-05-08 14:32:30 -0400 +++ gnutls-3.2.3/src/libopts/compat/compat.h 2013-11-06 09:39:58 -0500 @@ -59,7 +59,9 @@ #ifdef HAVE_SYS_MMAN_H # include <sys/mman.h> #endif -#include <sys/param.h> +#if HAVE_SYS_PARAM_H +# include <sys/param.h> +#endif #if HAVE_SYS_PROCSET_H # include <sys/procset.h> #endif @@ -328,7 +330,9 @@ # define HAVE_WINT_T 1 #endif #ifndef HAVE_PID_T +# ifndef pid_t typedef signed int pid_t; +# endif # define HAVE_PID_T 1 #endif diff -ur gnutls-3.2.3-orig/src/libopts/compat/pathfind.c gnutls-3.2.3/src/libopts/compat/pathfind.c --- gnutls-3.2.3-orig/src/libopts/compat/pathfind.c 2013-05-08 14:32:30 -0400 +++ gnutls-3.2.3/src/libopts/compat/pathfind.c 2013-11-06 09:39:58 -0500 @@ -13,6 +13,11 @@ #include "compat.h" #ifndef HAVE_PATHFIND +#if defined(_MSC_VER) && !defined(R_OK) +# define X_OK 1 +# define W_OK 2 +# define R_OK 4 +#endif #if defined(__windows__) && !defined(__CYGWIN__) static char * pathfind( char const * path, diff -ur gnutls-3.2.3-orig/src/libopts/configfile.c gnutls-3.2.3/src/libopts/configfile.c --- gnutls-3.2.3-orig/src/libopts/configfile.c 2013-05-08 14:32:30 -0400 +++ gnutls-3.2.3/src/libopts/configfile.c 2013-11-06 09:39:58 -0500 @@ -28,6 +28,11 @@ * 13aa749a5b0a454917a944ed8fffc530b784f5ead522b1aacaf4ec8aa55a6239 COPYING.mbsd */ +#ifndef S_ISDIR +# define S_ISDIR(m) (((m) & _S_IFMT) == _S_IFDIR) +# define S_ISREG(m) (((m) & _S_IFMT) == _S_IFREG) +#endif + /* = = = START-STATIC-FORWARD = = = */ static void file_preset(tOptions * opts, char const * fname, int dir); diff -ur gnutls-3.2.3-orig/src/libopts/m4/libopts.m4 gnutls-3.2.3/src/libopts/m4/libopts.m4 --- gnutls-3.2.3-orig/src/libopts/m4/libopts.m4 2013-05-21 14:26:32 -0400 +++ gnutls-3.2.3/src/libopts/m4/libopts.m4 2013-11-06 11:31:21 -0500 @@ -72,7 +72,7 @@ ${lo_have_typ_hdr} || \ ]AC_MSG_ERROR([you must have inttypes.h or stdint.h on your system])[ - for f in sys_types sys_param sys_stat \ + for f in sys_types sys_stat \ string errno stdlib memory setjmp do eval as_ac_var=\${ac_cv_header_${f}_h} test "X${as_ac_var}" = Xyes || { diff -ur gnutls-3.2.3-orig/tests/cert-tests/dane gnutls-3.2.3/tests/cert-tests/dane --- gnutls-3.2.3-orig/tests/cert-tests/dane 2013-02-27 11:28:17 -0500 +++ gnutls-3.2.3/tests/cert-tests/dane 2013-11-06 09:39:58 -0500 @@ -27,6 +27,10 @@ test -e $DANETOOL || exit 77 +if test ! -x "$DANETOOL"; then + exit 77 +fi + $DANETOOL --tlsa-rr --load-certificate $srcdir/cert-ecc256.pem --host www.example.com --outfile tmp-dane.rr 2>/dev/null diff $srcdir/dane-test.rr tmp-dane.rr diff -ur gnutls-3.2.3-orig/tests/chainverify.c gnutls-3.2.3/tests/chainverify.c --- gnutls-3.2.3-orig/tests/chainverify.c 2013-05-08 14:32:30 -0400 +++ gnutls-3.2.3/tests/chainverify.c 2013-11-06 09:39:58 -0500 @@ -803,6 +803,8 @@ * systems only. Disable it on windows. */ #ifdef _WIN32 + if (debug) + success ("Ignoring test under Win32\n"); exit(77); #endif diff -ur gnutls-3.2.3-orig/tests/openpgp-auth.c gnutls-3.2.3/tests/openpgp-auth.c --- gnutls-3.2.3-orig/tests/openpgp-auth.c 2013-05-08 14:32:30 -0400 +++ gnutls-3.2.3/tests/openpgp-auth.c 2013-11-06 09:39:58 -0500 @@ -309,6 +309,8 @@ void doit () { + if (debug) + success ("Ignoring test on Win32 platform\n"); exit (77); } #endif diff -ur gnutls-3.2.3-orig/tests/openpgp-auth2.c gnutls-3.2.3/tests/openpgp-auth2.c --- gnutls-3.2.3-orig/tests/openpgp-auth2.c 2013-05-08 14:32:30 -0400 +++ gnutls-3.2.3/tests/openpgp-auth2.c 2013-11-06 09:39:59 -0500 @@ -23,12 +23,13 @@ #include <config.h> #endif -#if !defined(_WIN32) - #include <gnutls/gnutls.h> #include <gnutls/openpgp.h> #include "utils.h" + +#if !defined(_WIN32) + #include <read-file.h> #include <unistd.h> @@ -262,6 +263,8 @@ void doit () { + if (debug) + success ("Ignoring test on Win32 platform\n"); exit (77); } #endif diff -ur gnutls-3.2.3-orig/tests/rng-fork.c gnutls-3.2.3/tests/rng-fork.c --- gnutls-3.2.3-orig/tests/rng-fork.c 2013-05-08 14:32:30 -0400 +++ gnutls-3.2.3/tests/rng-fork.c 2013-11-06 09:39:59 -0500 @@ -107,6 +107,8 @@ void doit (void) { + if (debug) + success ("Ignoring test on Win32 platform\n"); exit (77); } #endif diff -ur gnutls-3.2.3-orig/tests/slow/cipher-test.c gnutls-3.2.3/tests/slow/cipher-test.c --- gnutls-3.2.3-orig/tests/slow/cipher-test.c 2013-05-08 14:32:30 -0400 +++ gnutls-3.2.3/tests/slow/cipher-test.c 2013-11-06 09:39:59 -0500 @@ -1,3 +1,7 @@ +#ifdef HAVE_CONFIG_H +#include <config.h> +#endif + #include <stdint.h> #include <stdio.h> #include <string.h> @@ -45,75 +49,74 @@ "\x58\xe2\xfc\xce\xfa\x7e\x30\x61\x36\x7f\x1d\x57\xa4\xe7\x45\x5a"}, #endif { - .key = (void*) + (void*) "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - .auth = NULL, - .auth_size = 0, - .plaintext = (void*) + NULL, + 0, + (void*) "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - .plaintext_size = 16, - .ciphertext = (void*) + 16, + (void*)"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", + (void*) "\x03\x88\xda\xce\x60\xb6\xa3\x92\xf3\x28\xc2\xb9\x71\xb2\xfe\x78", - .iv = (void*)"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - .tag = (void*) + (void*) "\xab\x6e\x47\xd4\x2c\xec\x13\xbd\xf5\x3a\x67\xb2\x12\x57\xbd\xdf"}, { - .key = (void*) + (void*) "\xfe\xff\xe9\x92\x86\x65\x73\x1c\x6d\x6a\x8f\x94\x67\x30\x83\x08", - .auth = (void*) + (void*) "\xfe\xed\xfa\xce\xde\xad\xbe\xef\xfe\xed\xfa\xce\xde\xad\xbe\xef\xab\xad\xda\xd2", - .auth_size = 20, - .plaintext = (void*) + 20, + (void*) "\xd9\x31\x32\x25\xf8\x84\x06\xe5\xa5\x59\x09\xc5\xaf\xf5\x26\x9a\x86\xa7\xa9\x53\x15\x34\xf7\xda\x2e\x4c\x30\x3d\x8a\x31\x8a\x72\x1c\x3c\x0c\x95\x95\x68\x09\x53\x2f\xcf\x0e\x24\x49\xa6\xb5\x25\xb1\x6a\xed\xf5\xaa\x0d\xe6\x57\xba\x63\x7b\x39", - .plaintext_size = 60, - .ciphertext = (void*) + 60, + (void*)"\xca\xfe\xba\xbe\xfa\xce\xdb\xad\xde\xca\xf8\x88", + (void*) "\x42\x83\x1e\xc2\x21\x77\x74\x24\x4b\x72\x21\xb7\x84\xd0\xd4\x9c\xe3\xaa\x21\x2f\x2c\x02\xa4\xe0\x35\xc1\x7e\x23\x29\xac\xa1\x2e\x21\xd5\x14\xb2\x54\x66\x93\x1c\x7d\x8f\x6a\x5a\xac\x84\xaa\x05\x1b\xa3\x0b\x39\x6a\x0a\xac\x97\x3d\x58\xe0\x91", - .iv = (void*)"\xca\xfe\xba\xbe\xfa\xce\xdb\xad\xde\xca\xf8\x88", - .tag = (void*) + (void*) "\x5b\xc9\x4f\xbc\x32\x21\xa5\xdb\x94\xfa\xe9\x5a\xe7\x12\x1a\x47"} }; struct aes_vectors_st aes_vectors[] = { { - .key = (uint8_t *) "\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - .plaintext = (uint8_t *) + (uint8_t *) "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - .ciphertext = (uint8_t *) + (uint8_t *) "\x4b\xc3\xf8\x83\x45\x0c\x11\x3c\x64\xca\x42\xe1\x11\x2a\x9e\x87", }, { - .key = (uint8_t *) + (uint8_t *) "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - .plaintext = (uint8_t *) + (uint8_t *) "\xf3\x44\x81\xec\x3c\xc6\x27\xba\xcd\x5d\xc3\xfb\x08\xf2\x73\xe6", - .ciphertext = (uint8_t *) + (uint8_t *) "\x03\x36\x76\x3e\x96\x6d\x92\x59\x5a\x56\x7c\xc9\xce\x53\x7f\x5e", }, { - .key = (uint8_t *) + (uint8_t *) "\x10\xa5\x88\x69\xd7\x4b\xe5\xa3\x74\xcf\x86\x7c\xfb\x47\x38\x59", - .plaintext = (uint8_t *) + (uint8_t *) "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - .ciphertext = (uint8_t *) + (uint8_t *) "\x6d\x25\x1e\x69\x44\xb0\x51\xe0\x4e\xaa\x6f\xb4\xdb\xf7\x84\x65", }, { - .key = (uint8_t *) + (uint8_t *) "\xca\xea\x65\xcd\xbb\x75\xe9\x16\x9e\xcd\x22\xeb\xe6\xe5\x46\x75", - .plaintext = (uint8_t *) + (uint8_t *) "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - .ciphertext = (uint8_t *) + (uint8_t *) "\x6e\x29\x20\x11\x90\x15\x2d\xf4\xee\x05\x81\x39\xde\xf6\x10\xbb", }, { - .key = (uint8_t *) + (uint8_t *) "\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe", - .plaintext = (uint8_t *) + (uint8_t *) "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00", - .ciphertext = (uint8_t *) + (uint8_t *) "\x9b\xa4\xa9\x14\x3f\x4e\x5d\x40\x48\x52\x1c\x4f\x88\x77\xd8\x8e", }, }; @@ -352,128 +355,121 @@ } hash_vectors[] = { { - .name = "SHA1", - .algorithm = GNUTLS_MAC_SHA1, - .key = NULL, - .plaintext = + "SHA1", + GNUTLS_MAC_SHA1, + NULL, + 0, (uint8_t *) "what do ya want for nothing?", - .plaintext_size = sizeof ("what do ya want for nothing?") - 1, - .output = (uint8_t *) "\x8f\x82\x03\x94\xf9\x53\x35\x18\x20\x45\xda\x24\xf3\x4d\xe5\x2b\xf8\xbc\x34\x32", - .output_size = 20, + 20, }, { - .name = "SHA1", - .algorithm = GNUTLS_MAC_SHA1, - .key = NULL, - .plaintext = + "SHA1", + GNUTLS_MAC_SHA1, + NULL, + 0, (uint8_t *) "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopqabcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopqabcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq", - .plaintext_size = sizeof + sizeof ("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopqabcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopqabcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq") - 1, - .output = (uint8_t *) "\xbe\xae\xd1\x6d\x65\x8e\xc7\x92\x9e\xdf\xd6\x2b\xfa\xfe\xac\x29\x9f\x0d\x74\x4d", - .output_size = 20, + 20, }, { - .name = "SHA256", - .algorithm = GNUTLS_MAC_SHA256, - .key = NULL, - .plaintext = + "SHA256", + GNUTLS_MAC_SHA256, + NULL, + 0, (uint8_t *) "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq", - .plaintext_size = sizeof + sizeof ("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq") - 1, - .output = (uint8_t *) "\x24\x8d\x6a\x61\xd2\x06\x38\xb8\xe5\xc0\x26\x93\x0c\x3e\x60\x39\xa3\x3c\xe4\x59\x64\xff\x21\x67\xf6\xec\xed\xd4\x19\xdb\x06\xc1", - .output_size = 32, + 32, }, { - .name = "SHA256", - .algorithm = GNUTLS_MAC_SHA256, - .key = NULL, - .plaintext = + "SHA256", + GNUTLS_MAC_SHA256, + NULL, + 0, (uint8_t *) "abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopqabcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopqabcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq", - .plaintext_size = sizeof + sizeof ("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopqabcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopqabcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq") - 1, - .output = (uint8_t *) "\x50\xea\x82\x5d\x96\x84\xf4\x22\x9c\xa2\x9f\x1f\xec\x51\x15\x93\xe2\x81\xe4\x6a\x14\x0d\x81\xe0\x00\x5f\x8f\x68\x86\x69\xa0\x6c", - .output_size = 32, + 32, }, { - .name = "SHA512", - .algorithm = GNUTLS_MAC_SHA512, - .key = NULL, - .plaintext = + "SHA512", + GNUTLS_MAC_SHA512, + NULL, + 0, (uint8_t *) "abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmnhijklmnoijklmnopjklmnopqklmnopqrlmnopqrsmnopqrstnopqrstu", - .plaintext_size = sizeof + sizeof ("abcdefghbcdefghicdefghijdefghijkefghijklfghijklmghijklmnhijklmnoijklmnopjklmnopqklmnopqrlmnopqrsmnopqrstnopqrstu") - 1, - .output = (uint8_t *) "\x8e\x95\x9b\x75\xda\xe3\x13\xda\x8c\xf4\xf7\x28\x14\xfc\x14\x3f\x8f\x77\x79\xc6\xeb\x9f\x7f\xa1\x72\x99\xae\xad\xb6\x88\x90\x18\x50\x1d\x28\x9e\x49\x00\xf7\xe4\x33\x1b\x99\xde\xc4\xb5\x43\x3a\xc7\xd3\x29\xee\xb6\xdd\x26\x54\x5e\x96\xe5\x5b\x87\x4b\xe9\x09", - .output_size = 64, + 64, }, { - .name = "HMAC-MD5",.algorithm = GNUTLS_MAC_MD5,.key = - (uint8_t *) "Jefe",.key_size = 4,.plaintext = - (uint8_t *) "what do ya want for nothing?",. - plaintext_size = - sizeof ("what do ya want for nothing?") - 1,.output = + "HMAC-MD5",GNUTLS_MAC_MD5, + (uint8_t *) "Jefe",4, + (uint8_t *) "what do ya want for nothing?", + sizeof ("what do ya want for nothing?") - 1, (uint8_t *) - "\x75\x0c\x78\x3e\x6a\xb0\xb5\x03\xea\xa8\x6e\x31\x0a\x5d\xb7\x38",.output_size - = 16,} + "\x75\x0c\x78\x3e\x6a\xb0\xb5\x03\xea\xa8\x6e\x31\x0a\x5d\xb7\x38", + 16,} , /* from rfc4231 */ { - .name = "HMAC-SHA2-224",.algorithm = GNUTLS_MAC_SHA224,.key = + "HMAC-SHA2-224",GNUTLS_MAC_SHA224, (uint8_t *) - "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b",.key_size - = 20,.plaintext = (uint8_t *) "Hi There",.plaintext_size = - sizeof ("Hi There") - 1,.output = + "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b", + 20,(uint8_t *) "Hi There", + sizeof ("Hi There") - 1, (uint8_t *) - "\x89\x6f\xb1\x12\x8a\xbb\xdf\x19\x68\x32\x10\x7c\xd4\x9d\xf3\x3f\x47\xb4\xb1\x16\x99\x12\xba\x4f\x53\x68\x4b\x22",.output_size - = 28,} + "\x89\x6f\xb1\x12\x8a\xbb\xdf\x19\x68\x32\x10\x7c\xd4\x9d\xf3\x3f\x47\xb4\xb1\x16\x99\x12\xba\x4f\x53\x68\x4b\x22", + 28,} , { - .name = "HMAC-SHA2-256",.algorithm = GNUTLS_MAC_SHA256,.key = + "HMAC-SHA2-256",GNUTLS_MAC_SHA256, (uint8_t *) - "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b",.key_size - = 20,.plaintext = (uint8_t *) "Hi There",.plaintext_size = - sizeof ("Hi There") - 1,.output = + "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b", + 20,(uint8_t *) "Hi There", + sizeof ("Hi There") - 1, (uint8_t *) - "\xb0\x34\x4c\x61\xd8\xdb\x38\x53\x5c\xa8\xaf\xce\xaf\x0b\xf1\x2b\x88\x1d\xc2\x00\xc9\x83\x3d\xa7\x26\xe9\x37\x6c\x2e\x32\xcf\xf7",.output_size - = 32,} + "\xb0\x34\x4c\x61\xd8\xdb\x38\x53\x5c\xa8\xaf\xce\xaf\x0b\xf1\x2b\x88\x1d\xc2\x00\xc9\x83\x3d\xa7\x26\xe9\x37\x6c\x2e\x32\xcf\xf7", + 32,} , { - .name = "HMAC-SHA2-384",.algorithm = GNUTLS_MAC_SHA384,.key = + "HMAC-SHA2-384",GNUTLS_MAC_SHA384, (uint8_t *) - "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b",.key_size - = 20,.plaintext = (uint8_t *) "Hi There",.plaintext_size = - sizeof ("Hi There") - 1,.output = + "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b", + 20,(uint8_t *) "Hi There", + sizeof ("Hi There") - 1, (uint8_t *) - "\xaf\xd0\x39\x44\xd8\x48\x95\x62\x6b\x08\x25\xf4\xab\x46\x90\x7f\x15\xf9\xda\xdb\xe4\x10\x1e\xc6\x82\xaa\x03\x4c\x7c\xeb\xc5\x9c\xfa\xea\x9e\xa9\x07\x6e\xde\x7f\x4a\xf1\x52\xe8\xb2\xfa\x9c\xb6",.output_size - = 48,} + "\xaf\xd0\x39\x44\xd8\x48\x95\x62\x6b\x08\x25\xf4\xab\x46\x90\x7f\x15\xf9\xda\xdb\xe4\x10\x1e\xc6\x82\xaa\x03\x4c\x7c\xeb\xc5\x9c\xfa\xea\x9e\xa9\x07\x6e\xde\x7f\x4a\xf1\x52\xe8\xb2\xfa\x9c\xb6", + 48,} , { - .name = "HMAC-SHA2-512",.algorithm = GNUTLS_MAC_SHA512,.key = + "HMAC-SHA2-512",GNUTLS_MAC_SHA512, (uint8_t *) - "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b",.key_size - = 20,.plaintext = (uint8_t *) "Hi There",.plaintext_size = - sizeof ("Hi There") - 1,.output = + "\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b\x0b", + 20,(uint8_t *) "Hi There", + sizeof ("Hi There") - 1, (uint8_t *) - "\x87\xaa\x7c\xde\xa5\xef\x61\x9d\x4f\xf0\xb4\x24\x1a\x1d\x6c\xb0\x23\x79\xf4\xe2\xce\x4e\xc2\x78\x7a\xd0\xb3\x05\x45\xe1\x7c\xde\xda\xa8\x33\xb7\xd6\xb8\xa7\x02\x03\x8b\x27\x4e\xae\xa3\xf4\xe4\xbe\x9d\x91\x4e\xeb\x61\xf1\x70\x2e\x69\x6c\x20\x3a\x12\x68\x54",.output_size - = 64,} + "\x87\xaa\x7c\xde\xa5\xef\x61\x9d\x4f\xf0\xb4\x24\x1a\x1d\x6c\xb0\x23\x79\xf4\xe2\xce\x4e\xc2\x78\x7a\xd0\xb3\x05\x45\xe1\x7c\xde\xda\xa8\x33\xb7\xd6\xb8\xa7\x02\x03\x8b\x27\x4e\xae\xa3\xf4\xe4\xbe\x9d\x91\x4e\xeb\x61\xf1\x70\x2e\x69\x6c\x20\x3a\x12\x68\x54", + 64,} ,}; #define HASH_DATA_SIZE 64