summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjsing <>2018-02-20 17:06:19 +0000
committerjsing <>2018-02-20 17:06:19 +0000
commit3c06749399ec9bdbbde802f1c5aef85cfd04c42e (patch)
treecf09b6e42a2c0f78c8d22a16aa04b3d0a69fcec2
parentcc1f0bce1bf038cad010ba68450bb20f3fd0c6eb (diff)
downloadopenbsd-3c06749399ec9bdbbde802f1c5aef85cfd04c42e.tar.gz
openbsd-3c06749399ec9bdbbde802f1c5aef85cfd04c42e.tar.bz2
openbsd-3c06749399ec9bdbbde802f1c5aef85cfd04c42e.zip
Provide X509_REQ_get0_signature()
-rw-r--r--src/lib/libcrypto/Symbols.list1
-rw-r--r--src/lib/libcrypto/asn1/x_req.c12
-rw-r--r--src/lib/libcrypto/x509/x509.h5
3 files changed, 16 insertions, 2 deletions
diff --git a/src/lib/libcrypto/Symbols.list b/src/lib/libcrypto/Symbols.list
index f57513291e..f446e08ea7 100644
--- a/src/lib/libcrypto/Symbols.list
+++ b/src/lib/libcrypto/Symbols.list
@@ -2750,6 +2750,7 @@ X509_REQ_digest
2750X509_REQ_dup 2750X509_REQ_dup
2751X509_REQ_extension_nid 2751X509_REQ_extension_nid
2752X509_REQ_free 2752X509_REQ_free
2753X509_REQ_get0_signature
2753X509_REQ_get1_email 2754X509_REQ_get1_email
2754X509_REQ_get_attr 2755X509_REQ_get_attr
2755X509_REQ_get_attr_by_NID 2756X509_REQ_get_attr_by_NID
diff --git a/src/lib/libcrypto/asn1/x_req.c b/src/lib/libcrypto/asn1/x_req.c
index 5ffa11e2dd..38a6ec885c 100644
--- a/src/lib/libcrypto/asn1/x_req.c
+++ b/src/lib/libcrypto/asn1/x_req.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: x_req.c,v 1.15 2015/02/11 04:00:39 jsing Exp $ */ 1/* $OpenBSD: x_req.c,v 1.16 2018/02/20 17:06:19 jsing Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -225,3 +225,13 @@ X509_REQ_dup(X509_REQ *x)
225{ 225{
226 return ASN1_item_dup(&X509_REQ_it, x); 226 return ASN1_item_dup(&X509_REQ_it, x);
227} 227}
228
229void
230X509_REQ_get0_signature(const X509_REQ *req, const ASN1_BIT_STRING **psig,
231 const X509_ALGOR **palg)
232{
233 if (psig != NULL)
234 *psig = req->signature;
235 if (palg != NULL)
236 *palg = req->sig_alg;
237}
diff --git a/src/lib/libcrypto/x509/x509.h b/src/lib/libcrypto/x509/x509.h
index 9d02e319aa..26e71ee40e 100644
--- a/src/lib/libcrypto/x509/x509.h
+++ b/src/lib/libcrypto/x509/x509.h
@@ -1,4 +1,4 @@
1/* $OpenBSD: x509.h,v 1.30 2018/02/20 17:04:58 jsing Exp $ */ 1/* $OpenBSD: x509.h,v 1.31 2018/02/20 17:06:19 jsing Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -611,6 +611,9 @@ const ASN1_TIME *X509_CRL_get0_nextUpdate(const X509_CRL *crl);
611void X509_CRL_get0_signature(const X509_CRL *crl, const ASN1_BIT_STRING **psig, 611void X509_CRL_get0_signature(const X509_CRL *crl, const ASN1_BIT_STRING **psig,
612 const X509_ALGOR **palg); 612 const X509_ALGOR **palg);
613 613
614void X509_REQ_get0_signature(const X509_REQ *req, const ASN1_BIT_STRING **psig,
615 const X509_ALGOR **palg);
616
614void X509_CRL_set_default_method(const X509_CRL_METHOD *meth); 617void X509_CRL_set_default_method(const X509_CRL_METHOD *meth);
615X509_CRL_METHOD *X509_CRL_METHOD_new( 618X509_CRL_METHOD *X509_CRL_METHOD_new(
616 int (*crl_init)(X509_CRL *crl), 619 int (*crl_init)(X509_CRL *crl),