summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2016-09-09 14:43:09 -0400
committerNick Mathewson <nickm@torproject.org>2016-11-03 08:39:31 -0400
commit67e66898d2b77940199fe23843e148ab836ff431 (patch)
tree7a2ddcd3a1f896acbaa85c099abcf1182e353a68
parent88c2a6b9361d7d624f9d34dc855b940554a05fb3 (diff)
downloadtor-67e66898d2b77940199fe23843e148ab836ff431.tar.gz
tor-67e66898d2b77940199fe23843e148ab836ff431.zip
For testing: add a tor_x509_cert_dup().
-rw-r--r--src/common/tortls.c7
-rw-r--r--src/common/tortls.h1
2 files changed, 8 insertions, 0 deletions
diff --git a/src/common/tortls.c b/src/common/tortls.c
index 33bd334a12..0315398946 100644
--- a/src/common/tortls.c
+++ b/src/common/tortls.c
@@ -683,6 +683,13 @@ MOCK_IMPL(STATIC tor_x509_cert_t *,
return cert;
}
+/** Return a copy of <b>cert</b> */
+tor_x509_cert_t *
+tor_x509_cert_dup(const tor_x509_cert_t *cert)
+{
+ return tor_x509_cert_new(X509_dup(cert->cert));
+}
+
/** Read a DER-encoded X509 cert, of length exactly <b>certificate_len</b>,
* from a <b>certificate</b>. Return a newly allocated tor_x509_cert_t on
* success and NULL on failure. */
diff --git a/src/common/tortls.h b/src/common/tortls.h
index 3adb1b2f6e..6510fdbe64 100644
--- a/src/common/tortls.h
+++ b/src/common/tortls.h
@@ -176,6 +176,7 @@ extern uint64_t total_bytes_written_by_tls;
#endif /* endif TORTLS_PRIVATE */
+tor_x509_cert_t *tor_x509_cert_dup(const tor_x509_cert_t *cert);
const char *tor_tls_err_to_string(int err);
void tor_tls_get_state_description(tor_tls_t *tls, char *buf, size_t sz);