From 0b0041bda9df8bf704d7aff8c32da0d18cd9eb28 Mon Sep 17 00:00:00 2001 From: Jonas Witschel Date: Wed, 19 May 2021 10:30:41 +0200 Subject: [PATCH] swtpm_cert: rename deprecated libtasn1 types These types have been renamed in libtasn1 version 3.0 (released 2012-10-28). The most recent libtasn1 version 4.17.0 (released 2021-05-13) now prints deprecation warnings that are made fatal by -Werror: ek-cert.c:76:13: error: 'ASN1_ARRAY_TYPE' macro is deprecated, use 'asn1_static_node' instead. [-Werror] 76 | extern const ASN1_ARRAY_TYPE tpm_asn1_tab[]; |^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [...] The new types were introduced almost ten years ago, so they should be pretty universally available by now. Signed-off-by: Jonas Witschel --- src/swtpm_cert/ek-cert.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/swtpm_cert/ek-cert.c b/src/swtpm_cert/ek-cert.c index 651d60f..cc1ec43 100644 --- a/src/swtpm_cert/ek-cert.c +++ b/src/swtpm_cert/ek-cert.c @@ -72,9 +72,9 @@ enum cert_type_t { #define ALLOW_SIGNING_F 2 /* EK can be used for signing */ #define DECRYPTION_F 4 /* EK can be used for decryption; default */ -extern const ASN1_ARRAY_TYPE tpm_asn1_tab[]; +extern const asn1_static_node tpm_asn1_tab[]; -ASN1_TYPE _tpm_asn; +asn1_node _tpm_asn; typedef struct tdTCG_PCCLIENT_STORED_CERT { uint16_t tag; @@ -318,7 +318,7 @@ asn_free(void) } static int -encode_asn1(gnutls_datum_t *asn1, ASN1_TYPE at) +encode_asn1(gnutls_datum_t *asn1, asn1_node at) { int err; @@ -346,7 +346,7 @@ encode_asn1(gnutls_datum_t *asn1, ASN1_TYPE at) } static int -build_tpm_manufacturer_info(ASN1_TYPE *at, +build_tpm_manufacturer_info(asn1_node *at, const char *manufacturer, const char *tpm_model, const char *tpm_version) @@ -428,7 +428,7 @@ create_tpm_manufacturer_info(const char *manufacturer, const char *tpm_version, gnutls_datum_t *asn1) { - ASN1_TYPE at = ASN1_TYPE_EMPTY; + asn1_node at = NULL; int err; err = asn_init(); @@ -460,7 +460,7 @@ create_tpm_manufacturer_info(const char *manufacturer, } static int -build_platf_manufacturer_info(ASN1_TYPE *at, +build_platf_manufacturer_info(asn1_node *at, const char *manufacturer, const char *platf_model, const char *platf_version, @@ -554,7 +554,7 @@ create_platf_manufacturer_info(const char *manufacturer, gnutls_datum_t *asn1, bool forTPM2) { - ASN1_TYPE at = ASN1_TYPE_EMPTY; + asn1_node at = NULL; int err; err = asn_init(); @@ -597,9 +597,9 @@ create_tpm_and_platform_manuf_info( gnutls_datum_t *asn1, bool forTPM2) { - ASN1_TYPE at = ASN1_TYPE_EMPTY; - ASN1_TYPE tpm_at = ASN1_TYPE_EMPTY; - ASN1_TYPE platf_at = ASN1_TYPE_EMPTY; + asn1_node at = NULL; + asn1_node tpm_at = NULL; + asn1_node platf_at = NULL; int err; gnutls_datum_t datum = { .data = NULL, @@ -710,7 +710,7 @@ create_tpm_specification_info(const char *spec_family, unsigned int spec_revision, gnutls_datum_t *asn1) { - ASN1_TYPE at = ASN1_TYPE_EMPTY; + asn1_node at = NULL; int err; unsigned int bigendian; unsigned char twoscomp[1 + sizeof(bigendian)] = { 0, }; @@ -782,7 +782,7 @@ create_tpm_specification_info(const char *spec_family, static int create_cert_extended_key_usage(const char *oid, gnutls_datum_t *asn1) { - ASN1_TYPE at = ASN1_TYPE_EMPTY; + asn1_node at = NULL; int err; err = asn_init();