summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/x509v3/v3_pcia.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libcrypto/x509v3/v3_pcia.c')
-rw-r--r--src/lib/libcrypto/x509v3/v3_pcia.c54
1 files changed, 51 insertions, 3 deletions
diff --git a/src/lib/libcrypto/x509v3/v3_pcia.c b/src/lib/libcrypto/x509v3/v3_pcia.c
index c7df225290..07e294e633 100644
--- a/src/lib/libcrypto/x509v3/v3_pcia.c
+++ b/src/lib/libcrypto/x509v3/v3_pcia.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: v3_pcia.c,v 1.4 2014/06/12 15:49:31 deraadt Exp $ */ 1/* $OpenBSD: v3_pcia.c,v 1.5 2015/02/09 16:03:11 jsing Exp $ */
2/* Contributed to the OpenSSL Project 2004 2/* Contributed to the OpenSSL Project 2004
3 * by Richard Levitte (richard@levitte.org) 3 * by Richard Levitte (richard@levitte.org)
4 */ 4 */
@@ -43,7 +43,31 @@ ASN1_SEQUENCE(PROXY_POLICY) = {
43 ASN1_OPT(PROXY_POLICY, policy, ASN1_OCTET_STRING) 43 ASN1_OPT(PROXY_POLICY, policy, ASN1_OCTET_STRING)
44} ASN1_SEQUENCE_END(PROXY_POLICY) 44} ASN1_SEQUENCE_END(PROXY_POLICY)
45 45
46IMPLEMENT_ASN1_FUNCTIONS(PROXY_POLICY) 46
47PROXY_POLICY *
48d2i_PROXY_POLICY(PROXY_POLICY **a, const unsigned char **in, long len)
49{
50 return (PROXY_POLICY *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
51 &PROXY_POLICY_it);
52}
53
54int
55i2d_PROXY_POLICY(PROXY_POLICY *a, unsigned char **out)
56{
57 return ASN1_item_i2d((ASN1_VALUE *)a, out, &PROXY_POLICY_it);
58}
59
60PROXY_POLICY *
61PROXY_POLICY_new(void)
62{
63 return (PROXY_POLICY *)ASN1_item_new(&PROXY_POLICY_it);
64}
65
66void
67PROXY_POLICY_free(PROXY_POLICY *a)
68{
69 ASN1_item_free((ASN1_VALUE *)a, &PROXY_POLICY_it);
70}
47 71
48ASN1_SEQUENCE(PROXY_CERT_INFO_EXTENSION) = { 72ASN1_SEQUENCE(PROXY_CERT_INFO_EXTENSION) = {
49 ASN1_OPT(PROXY_CERT_INFO_EXTENSION, pcPathLengthConstraint, 73 ASN1_OPT(PROXY_CERT_INFO_EXTENSION, pcPathLengthConstraint,
@@ -51,4 +75,28 @@ ASN1_SEQUENCE(PROXY_CERT_INFO_EXTENSION) = {
51 ASN1_SIMPLE(PROXY_CERT_INFO_EXTENSION, proxyPolicy, PROXY_POLICY) 75 ASN1_SIMPLE(PROXY_CERT_INFO_EXTENSION, proxyPolicy, PROXY_POLICY)
52} ASN1_SEQUENCE_END(PROXY_CERT_INFO_EXTENSION) 76} ASN1_SEQUENCE_END(PROXY_CERT_INFO_EXTENSION)
53 77
54IMPLEMENT_ASN1_FUNCTIONS(PROXY_CERT_INFO_EXTENSION) 78
79PROXY_CERT_INFO_EXTENSION *
80d2i_PROXY_CERT_INFO_EXTENSION(PROXY_CERT_INFO_EXTENSION **a, const unsigned char **in, long len)
81{
82 return (PROXY_CERT_INFO_EXTENSION *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
83 &PROXY_CERT_INFO_EXTENSION_it);
84}
85
86int
87i2d_PROXY_CERT_INFO_EXTENSION(PROXY_CERT_INFO_EXTENSION *a, unsigned char **out)
88{
89 return ASN1_item_i2d((ASN1_VALUE *)a, out, &PROXY_CERT_INFO_EXTENSION_it);
90}
91
92PROXY_CERT_INFO_EXTENSION *
93PROXY_CERT_INFO_EXTENSION_new(void)
94{
95 return (PROXY_CERT_INFO_EXTENSION *)ASN1_item_new(&PROXY_CERT_INFO_EXTENSION_it);
96}
97
98void
99PROXY_CERT_INFO_EXTENSION_free(PROXY_CERT_INFO_EXTENSION *a)
100{
101 ASN1_item_free((ASN1_VALUE *)a, &PROXY_CERT_INFO_EXTENSION_it);
102}