diff options
author | Nikos Mavrogiannopoulos <nmav@redhat.com> | 2015-08-21 11:34:39 +0200 |
---|---|---|
committer | Nikos Mavrogiannopoulos <nmav@redhat.com> | 2015-08-21 11:35:07 +0200 |
commit | 64f128e22940eb11717b24541b50947a2227c806 (patch) | |
tree | 4bf0381e656cb934d54283391bfe34bcf7679bac | |
parent | 8e6902b1ce99ebf4d3ad4e00a375290968c35504 (diff) | |
download | gnutls-64f128e22940eb11717b24541b50947a2227c806.tar.gz |
certtool: allow exporting very long CRLs
-rw-r--r-- | src/certtool.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/certtool.c b/src/certtool.c index 0ab0d846bc..d94af73ecb 100644 --- a/src/certtool.c +++ b/src/certtool.c @@ -1688,8 +1688,8 @@ print_certificate_info(gnutls_x509_crt_t crt, FILE * out, unsigned int all) static void print_crl_info(gnutls_x509_crl_t crl, FILE * out) { gnutls_datum_t data; + gnutls_datum_t cout; int ret; - size_t size; if (outcert_format == GNUTLS_X509_FMT_PEM) { ret = gnutls_x509_crl_print(crl, full_format, &data); @@ -1702,16 +1702,15 @@ static void print_crl_info(gnutls_x509_crl_t crl, FILE * out) gnutls_free(data.data); } - size = lbuffer_size; ret = - gnutls_x509_crl_export(crl, outcert_format, lbuffer, - &size); + gnutls_x509_crl_export2(crl, outcert_format, &cout); if (ret < 0) { fprintf(stderr, "crl_export: %s\n", gnutls_strerror(ret)); exit(1); } - fwrite(lbuffer, 1, size, outfile); + fwrite(cout.data, 1, cout.size, outfile); + gnutls_free(cout.data); } void crl_info(void) |