return cert;
}
-#ifdef USE_GNUTLS
static void gnutls_export_X509_fp(FILE *fp, gnutls_x509_crt_t x509_cert, gnutls_x509_crt_fmt_t format)
{
char output[10*1024];
g_warning("couldn't export cert %s (%zd)\n", gnutls_strerror(r), cert_size);
return;
}
+
debug_print("writing %zd bytes\n",cert_size);
if (fwrite(&output, 1, cert_size, fp) < cert_size) {
- g_warning("failed to write cert\n");
+ g_warning("failed to write cert: %d %s\n", errno, strerror(errno));
}
}
}
gnutls_x509_privkey_init(&key);
- if ((r = gnutls_x509_privkey_import(key, &tmp, (format == 0)?GNUTLS_X509_FMT_DER:GNUTLS_X509_FMT_PEM)) < 0) {
+ if ((r = gnutls_x509_privkey_import(key, &tmp, format)) < 0) {
debug_print("key import failed: %s\n", gnutls_strerror(r));
gnutls_x509_privkey_deinit(key);
key = NULL;
gnutls_pkcs12_init(&p12);
- if ((r = gnutls_pkcs12_import(p12, &tmp, (format == 0)?GNUTLS_X509_FMT_DER:GNUTLS_X509_FMT_PEM,0)) < 0) {
+ if ((r = gnutls_pkcs12_import(p12, &tmp, format, 0)) < 0) {
log_error(LOG_PROTOCOL, _("Cannot import P12 certificate file (%s)\n"),
gnutls_strerror(r));
gnutls_pkcs12_deinit(p12);
return p12;
}
-#endif
-
static void ssl_certificate_save (SSLCertificate *cert)
{
gchar *file, *port;
debug_print("got cert %p\n", cert);
gnutls_x509_crt_deinit(tmp_x509);
}
+
fclose(fp);
g_free(file);