summaryrefslogtreecommitdiff
path: root/src/lib/libtls/tls_keypair.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libtls/tls_keypair.c')
-rw-r--r--src/lib/libtls/tls_keypair.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/lib/libtls/tls_keypair.c b/src/lib/libtls/tls_keypair.c
index a12d21d0da..ffda91df8e 100644
--- a/src/lib/libtls/tls_keypair.c
+++ b/src/lib/libtls/tls_keypair.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: tls_keypair.c,v 1.8 2021/01/05 17:37:12 jsing Exp $ */ 1/* $OpenBSD: tls_keypair.c,v 1.9 2024/03/26 06:24:52 joshua Exp $ */
2/* 2/*
3 * Copyright (c) 2014 Joel Sing <jsing@openbsd.org> 3 * Copyright (c) 2014 Joel Sing <jsing@openbsd.org>
4 * 4 *
@@ -144,19 +144,22 @@ tls_keypair_load_cert(struct tls_keypair *keypair, struct tls_error *error,
144 *cert = NULL; 144 *cert = NULL;
145 145
146 if (keypair->cert_mem == NULL) { 146 if (keypair->cert_mem == NULL) {
147 tls_error_set(error, "keypair has no certificate"); 147 tls_error_set(error, TLS_ERROR_UNKNOWN,
148 "keypair has no certificate");
148 goto err; 149 goto err;
149 } 150 }
150 if ((cert_bio = BIO_new_mem_buf(keypair->cert_mem, 151 if ((cert_bio = BIO_new_mem_buf(keypair->cert_mem,
151 keypair->cert_len)) == NULL) { 152 keypair->cert_len)) == NULL) {
152 tls_error_set(error, "failed to create certificate bio"); 153 tls_error_set(error, TLS_ERROR_UNKNOWN,
154 "failed to create certificate bio");
153 goto err; 155 goto err;
154 } 156 }
155 if ((*cert = PEM_read_bio_X509(cert_bio, NULL, tls_password_cb, 157 if ((*cert = PEM_read_bio_X509(cert_bio, NULL, tls_password_cb,
156 NULL)) == NULL) { 158 NULL)) == NULL) {
157 if ((ssl_err = ERR_peek_error()) != 0) 159 if ((ssl_err = ERR_peek_error()) != 0)
158 errstr = ERR_error_string(ssl_err, NULL); 160 errstr = ERR_error_string(ssl_err, NULL);
159 tls_error_set(error, "failed to load certificate: %s", errstr); 161 tls_error_set(error, TLS_ERROR_UNKNOWN,
162 "failed to load certificate: %s", errstr);
160 goto err; 163 goto err;
161 } 164 }
162 165