summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/asn1/p8_pkey.c
diff options
context:
space:
mode:
authorjsing <>2015-02-09 15:05:59 +0000
committerjsing <>2015-02-09 15:05:59 +0000
commit714f82ff1b6302b27dcbcff8136087833e23251d (patch)
tree80e095d0af9796de5fe6127773c94c044f1f68bd /src/lib/libcrypto/asn1/p8_pkey.c
parent9e99e3c7210b10eacf8cf3b559238c15b31f6438 (diff)
downloadopenbsd-714f82ff1b6302b27dcbcff8136087833e23251d.tar.gz
openbsd-714f82ff1b6302b27dcbcff8136087833e23251d.tar.bz2
openbsd-714f82ff1b6302b27dcbcff8136087833e23251d.zip
Expand the IMPLEMENT_ASN1_FUNCTIONS macro so that the code is visible and
functions can be readily located. Change has been scripted and the generated assembly only differs by changes to line numbers. Discussed with beck@ miod@ tedu@
Diffstat (limited to 'src/lib/libcrypto/asn1/p8_pkey.c')
-rw-r--r--src/lib/libcrypto/asn1/p8_pkey.c28
1 files changed, 26 insertions, 2 deletions
diff --git a/src/lib/libcrypto/asn1/p8_pkey.c b/src/lib/libcrypto/asn1/p8_pkey.c
index 3aacecb8fb..f8688ebc17 100644
--- a/src/lib/libcrypto/asn1/p8_pkey.c
+++ b/src/lib/libcrypto/asn1/p8_pkey.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: p8_pkey.c,v 1.12 2014/07/11 08:44:47 jsing Exp $ */ 1/* $OpenBSD: p8_pkey.c,v 1.13 2015/02/09 15:05:59 jsing Exp $ */
2/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL 2/* Written by Dr Stephen N Henson (steve@openssl.org) for the OpenSSL
3 * project 1999. 3 * project 1999.
4 */ 4 */
@@ -82,7 +82,31 @@ ASN1_SEQUENCE_cb(PKCS8_PRIV_KEY_INFO, pkey_cb) = {
82 ASN1_IMP_SET_OF_OPT(PKCS8_PRIV_KEY_INFO, attributes, X509_ATTRIBUTE, 0) 82 ASN1_IMP_SET_OF_OPT(PKCS8_PRIV_KEY_INFO, attributes, X509_ATTRIBUTE, 0)
83} ASN1_SEQUENCE_END_cb(PKCS8_PRIV_KEY_INFO, PKCS8_PRIV_KEY_INFO) 83} ASN1_SEQUENCE_END_cb(PKCS8_PRIV_KEY_INFO, PKCS8_PRIV_KEY_INFO)
84 84
85IMPLEMENT_ASN1_FUNCTIONS(PKCS8_PRIV_KEY_INFO) 85
86PKCS8_PRIV_KEY_INFO *
87d2i_PKCS8_PRIV_KEY_INFO(PKCS8_PRIV_KEY_INFO **a, const unsigned char **in, long len)
88{
89 return (PKCS8_PRIV_KEY_INFO *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
90 &PKCS8_PRIV_KEY_INFO_it);
91}
92
93int
94i2d_PKCS8_PRIV_KEY_INFO(PKCS8_PRIV_KEY_INFO *a, unsigned char **out)
95{
96 return ASN1_item_i2d((ASN1_VALUE *)a, out, &PKCS8_PRIV_KEY_INFO_it);
97}
98
99PKCS8_PRIV_KEY_INFO *
100PKCS8_PRIV_KEY_INFO_new(void)
101{
102 return (PKCS8_PRIV_KEY_INFO *)ASN1_item_new(&PKCS8_PRIV_KEY_INFO_it);
103}
104
105void
106PKCS8_PRIV_KEY_INFO_free(PKCS8_PRIV_KEY_INFO *a)
107{
108 ASN1_item_free((ASN1_VALUE *)a, &PKCS8_PRIV_KEY_INFO_it);
109}
86 110
87int 111int
88PKCS8_pkey_set0(PKCS8_PRIV_KEY_INFO *priv, ASN1_OBJECT *aobj, int version, 112PKCS8_pkey_set0(PKCS8_PRIV_KEY_INFO *priv, ASN1_OBJECT *aobj, int version,