summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/x509v3/v3_info.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/x509v3/v3_info.c')
-rw-r--r--src/lib/libcrypto/x509v3/v3_info.c54
1 files changed, 51 insertions, 3 deletions
diff --git a/src/lib/libcrypto/x509v3/v3_info.c b/src/lib/libcrypto/x509v3/v3_info.c
index 0a4df34078..d9fa133308 100644
--- a/src/lib/libcrypto/x509v3/v3_info.c
+++ b/src/lib/libcrypto/x509v3/v3_info.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: v3_info.c,v 1.20 2015/02/07 13:19:15 doug Exp $ */ 1/* $OpenBSD: v3_info.c,v 1.21 2015/02/09 16:03:11 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 */
@@ -98,14 +98,62 @@ ASN1_SEQUENCE(ACCESS_DESCRIPTION) = {
98 ASN1_SIMPLE(ACCESS_DESCRIPTION, location, GENERAL_NAME) 98 ASN1_SIMPLE(ACCESS_DESCRIPTION, location, GENERAL_NAME)
99} ASN1_SEQUENCE_END(ACCESS_DESCRIPTION) 99} ASN1_SEQUENCE_END(ACCESS_DESCRIPTION)
100 100
101IMPLEMENT_ASN1_FUNCTIONS(ACCESS_DESCRIPTION) 101
102ACCESS_DESCRIPTION *
103d2i_ACCESS_DESCRIPTION(ACCESS_DESCRIPTION **a, const unsigned char **in, long len)
104{
105 return (ACCESS_DESCRIPTION *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
106 &ACCESS_DESCRIPTION_it);
107}
108
109int
110i2d_ACCESS_DESCRIPTION(ACCESS_DESCRIPTION *a, unsigned char **out)
111{
112 return ASN1_item_i2d((ASN1_VALUE *)a, out, &ACCESS_DESCRIPTION_it);
113}
114
115ACCESS_DESCRIPTION *
116ACCESS_DESCRIPTION_new(void)
117{
118 return (ACCESS_DESCRIPTION *)ASN1_item_new(&ACCESS_DESCRIPTION_it);
119}
120
121void
122ACCESS_DESCRIPTION_free(ACCESS_DESCRIPTION *a)
123{
124 ASN1_item_free((ASN1_VALUE *)a, &ACCESS_DESCRIPTION_it);
125}
102 126
103ASN1_ITEM_TEMPLATE(AUTHORITY_INFO_ACCESS) = 127ASN1_ITEM_TEMPLATE(AUTHORITY_INFO_ACCESS) =
104 ASN1_EX_TEMPLATE_TYPE(ASN1_TFLG_SEQUENCE_OF, 0, GeneralNames, 128 ASN1_EX_TEMPLATE_TYPE(ASN1_TFLG_SEQUENCE_OF, 0, GeneralNames,
105 ACCESS_DESCRIPTION) 129 ACCESS_DESCRIPTION)
106ASN1_ITEM_TEMPLATE_END(AUTHORITY_INFO_ACCESS) 130ASN1_ITEM_TEMPLATE_END(AUTHORITY_INFO_ACCESS)
107 131
108IMPLEMENT_ASN1_FUNCTIONS(AUTHORITY_INFO_ACCESS) 132
133AUTHORITY_INFO_ACCESS *
134d2i_AUTHORITY_INFO_ACCESS(AUTHORITY_INFO_ACCESS **a, const unsigned char **in, long len)
135{
136 return (AUTHORITY_INFO_ACCESS *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
137 &AUTHORITY_INFO_ACCESS_it);
138}
139
140int
141i2d_AUTHORITY_INFO_ACCESS(AUTHORITY_INFO_ACCESS *a, unsigned char **out)
142{
143 return ASN1_item_i2d((ASN1_VALUE *)a, out, &AUTHORITY_INFO_ACCESS_it);
144}
145
146AUTHORITY_INFO_ACCESS *
147AUTHORITY_INFO_ACCESS_new(void)
148{
149 return (AUTHORITY_INFO_ACCESS *)ASN1_item_new(&AUTHORITY_INFO_ACCESS_it);
150}
151
152void
153AUTHORITY_INFO_ACCESS_free(AUTHORITY_INFO_ACCESS *a)
154{
155 ASN1_item_free((ASN1_VALUE *)a, &AUTHORITY_INFO_ACCESS_it);
156}
109 157
110static STACK_OF(CONF_VALUE) * 158static STACK_OF(CONF_VALUE) *
111i2v_AUTHORITY_INFO_ACCESS(X509V3_EXT_METHOD *method, 159i2v_AUTHORITY_INFO_ACCESS(X509V3_EXT_METHOD *method,