This aligns the behavior to the documentation.
Signed-off-by: Daiki Ueno <ueno@gnu.org>
if (!cert->modified && cert->der.size) {
if (format == GNUTLS_X509_FMT_DER)
return _gnutls_set_datum(out, cert->der.data, cert->der.size);
- else
- return _gnutls_fbase64_encode(PEM_X509_CERT2, cert->der.data,
- cert->der.size, out);
-
+ else {
+ int ret = _gnutls_fbase64_encode(PEM_X509_CERT2,
+ cert->der.data,
+ cert->der.size,
+ out);
+ if (ret < 0)
+ return ret;
+ return 0;
+ }
}
return _gnutls_x509_export_int2(cert->cert, format, PEM_X509_CERT2,
fail("gnutls_x509_crt_export2: %s\n", gnutls_strerror(ret));
exit(1);
}
+ assert(ret == 0);
gnutls_x509_crt_deinit(crt);
if (scert.size != mcert->size || memcmp(scert.data, mcert->data, mcert->size) != 0) {
fail("gnutls_x509_crt_export2: %s\n", gnutls_strerror(ret));
exit(1);
}
+ assert(ret == 0);
gnutls_x509_crt_deinit(crt);
if (ccert.size != mcert->size || memcmp(ccert.data, mcert->data, mcert->size) != 0) {