summaryrefslogtreecommitdiff
path: root/src/lib
diff options
context:
space:
mode:
authorjob <>2021-09-02 14:11:20 +0000
committerjob <>2021-09-02 14:11:20 +0000
commitf8d2ca55e0deef329fbfad1cff4e4c971e484f99 (patch)
tree7d5d75010c73e9cc8cd70385249f5f4d770827c5 /src/lib
parent9cae6d95e090d122cbe30281f60a9422f887463f (diff)
downloadopenbsd-f8d2ca55e0deef329fbfad1cff4e4c971e484f99.tar.gz
openbsd-f8d2ca55e0deef329fbfad1cff4e4c971e484f99.tar.bz2
openbsd-f8d2ca55e0deef329fbfad1cff4e4c971e484f99.zip
Unroll IMPLEMENT_ASN1_FUNCTIONS()
OK jsing@
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/libcrypto/x509/x509_addr.c103
-rw-r--r--src/lib/libcrypto/x509/x509_asid.c102
2 files changed, 197 insertions, 8 deletions
diff --git a/src/lib/libcrypto/x509/x509_addr.c b/src/lib/libcrypto/x509/x509_addr.c
index 4258dbc40c..5aff2700fb 100644
--- a/src/lib/libcrypto/x509/x509_addr.c
+++ b/src/lib/libcrypto/x509/x509_addr.c
@@ -54,10 +54,105 @@ ASN1_ITEM_TEMPLATE(IPAddrBlocks) =
54 IPAddrBlocks, IPAddressFamily) 54 IPAddrBlocks, IPAddressFamily)
55static_ASN1_ITEM_TEMPLATE_END(IPAddrBlocks) 55static_ASN1_ITEM_TEMPLATE_END(IPAddrBlocks)
56 56
57IMPLEMENT_ASN1_FUNCTIONS(IPAddressRange) 57IPAddressRange *
58IMPLEMENT_ASN1_FUNCTIONS(IPAddressOrRange) 58d2i_IPAddressRange(IPAddressRange **a, const unsigned char **in, long len)
59IMPLEMENT_ASN1_FUNCTIONS(IPAddressChoice) 59{
60IMPLEMENT_ASN1_FUNCTIONS(IPAddressFamily) 60 return (IPAddressRange *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
61 (&(IPAddressRange_it)));
62}
63
64int
65i2d_IPAddressRange(IPAddressRange *a, unsigned char **out)
66{
67 return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(IPAddressRange_it)));
68}
69
70IPAddressRange *
71IPAddressRange_new(void)
72{
73 return (IPAddressRange *)ASN1_item_new((&(IPAddressRange_it)));
74}
75
76void
77IPAddressRange_free(IPAddressRange *a)
78{
79 ASN1_item_free((ASN1_VALUE *)a, (&(IPAddressRange_it)));
80}
81
82IPAddressOrRange *
83d2i_IPAddressOrRange(IPAddressOrRange **a, const unsigned char **in, long len)
84{
85 return (IPAddressOrRange *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
86 (&(IPAddressOrRange_it)));
87}
88
89int
90i2d_IPAddressOrRange(IPAddressOrRange *a, unsigned char ** out)
91{
92 return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(IPAddressOrRange_it)));
93}
94
95IPAddressOrRange *
96IPAddressOrRange_new(void)
97{
98 return (IPAddressOrRange *)ASN1_item_new((&(IPAddressOrRange_it)));
99}
100
101void
102IPAddressOrRange_free(IPAddressOrRange *a) {
103 ASN1_item_free((ASN1_VALUE *)a, (&(IPAddressOrRange_it)));
104}
105
106IPAddressChoice *
107d2i_IPAddressChoice(IPAddressChoice **a, const unsigned char **in, long len)
108{
109 return (IPAddressChoice *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
110 (&(IPAddressChoice_it)));
111}
112
113int
114i2d_IPAddressChoice(IPAddressChoice *a, unsigned char **out)
115{
116 return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(IPAddressChoice_it)));
117}
118
119IPAddressChoice *
120IPAddressChoice_new(void)
121{
122 return (IPAddressChoice *)ASN1_item_new((&(IPAddressChoice_it)));
123
124}
125
126void
127IPAddressChoice_free(IPAddressChoice *a)
128{
129 ASN1_item_free((ASN1_VALUE *)a, (&(IPAddressChoice_it)));
130}
131
132IPAddressFamily *
133d2i_IPAddressFamily(IPAddressFamily **a, const unsigned char **in, long len)
134{
135 return (IPAddressFamily *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
136 (&(IPAddressFamily_it)));
137}
138
139int
140i2d_IPAddressFamily(IPAddressFamily *a, unsigned char **out)
141{
142 return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(IPAddressFamily_it)));
143}
144
145IPAddressFamily *
146IPAddressFamily_new(void)
147{
148 return (IPAddressFamily *)ASN1_item_new((&(IPAddressFamily_it)));
149}
150
151void
152IPAddressFamily_free(IPAddressFamily *a)
153{
154 ASN1_item_free((ASN1_VALUE *)a, (&(IPAddressFamily_it)));
155}
61 156
62/* 157/*
63 * How much buffer space do we need for a raw address? 158 * How much buffer space do we need for a raw address?
diff --git a/src/lib/libcrypto/x509/x509_asid.c b/src/lib/libcrypto/x509/x509_asid.c
index ac68572672..a9a13fff8b 100644
--- a/src/lib/libcrypto/x509/x509_asid.c
+++ b/src/lib/libcrypto/x509/x509_asid.c
@@ -50,10 +50,104 @@ ASN1_SEQUENCE(ASIdentifiers) = {
50 ASN1_EXP_OPT(ASIdentifiers, rdi, ASIdentifierChoice, 1) 50 ASN1_EXP_OPT(ASIdentifiers, rdi, ASIdentifierChoice, 1)
51} ASN1_SEQUENCE_END(ASIdentifiers) 51} ASN1_SEQUENCE_END(ASIdentifiers)
52 52
53IMPLEMENT_ASN1_FUNCTIONS(ASRange) 53ASRange *
54IMPLEMENT_ASN1_FUNCTIONS(ASIdOrRange) 54d2i_ASRange(ASRange **a, const unsigned char **in, long len)
55IMPLEMENT_ASN1_FUNCTIONS(ASIdentifierChoice) 55{
56IMPLEMENT_ASN1_FUNCTIONS(ASIdentifiers) 56 return (ASRange *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
57 (&(ASRange_it)));
58}
59
60int
61i2d_ASRange(ASRange *a, unsigned char **out)
62{
63 return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(ASRange_it)));
64}
65
66ASRange *
67ASRange_new(void)
68{
69 return (ASRange *)ASN1_item_new((&(ASRange_it)));
70}
71
72void
73ASRange_free(ASRange *a)
74{
75 ASN1_item_free((ASN1_VALUE *)a, (&(ASRange_it)));
76}
77
78ASIdOrRange *
79d2i_ASIdOrRange(ASIdOrRange **a, const unsigned char **in, long len)
80{
81 return (ASIdOrRange *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
82 (&(ASIdOrRange_it)));
83}
84
85int
86i2d_ASIdOrRange(ASIdOrRange *a, unsigned char **out)
87{
88 return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(ASIdOrRange_it)));
89}
90
91ASIdOrRange *
92ASIdOrRange_new(void)
93{
94 return (ASIdOrRange *)ASN1_item_new((&(ASIdOrRange_it)));
95}
96
97void
98ASIdOrRange_free(ASIdOrRange *a)
99{
100 ASN1_item_free((ASN1_VALUE *)a, (&(ASIdOrRange_it)));
101}
102
103ASIdentifierChoice *
104d2i_ASIdentifierChoice(ASIdentifierChoice **a, const unsigned char **in, long len)
105{
106 return (ASIdentifierChoice *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
107 (&(ASIdentifierChoice_it)));
108}
109
110int
111i2d_ASIdentifierChoice(ASIdentifierChoice *a, unsigned char **out)
112{
113 return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(ASIdentifierChoice_it)));
114
115}
116
117ASIdentifierChoice *
118ASIdentifierChoice_new(void)
119{
120 return (ASIdentifierChoice *)ASN1_item_new((&(ASIdentifierChoice_it)));
121}
122
123void
124ASIdentifierChoice_free(ASIdentifierChoice *a)
125{
126 ASN1_item_free((ASN1_VALUE *)a, (&(ASIdentifierChoice_it)));
127}
128
129ASIdentifiers *
130d2i_ASIdentifiers(ASIdentifiers **a, const unsigned char **in, long len)
131{
132 return (ASIdentifiers *)ASN1_item_d2i((ASN1_VALUE **)a, in, len,
133 (&(ASIdentifiers_it)));
134}
135
136int
137i2d_ASIdentifiers(ASIdentifiers *a, unsigned char **out)
138{
139 return ASN1_item_i2d((ASN1_VALUE *)a, out, (&(ASIdentifiers_it)));
140}
141
142ASIdentifiers *ASIdentifiers_new(void)
143{
144 return (ASIdentifiers *)ASN1_item_new((&(ASIdentifiers_it)));
145}
146
147void ASIdentifiers_free(ASIdentifiers *a)
148{
149 ASN1_item_free((ASN1_VALUE *)a, (&(ASIdentifiers_it)));
150}
57 151
58/* 152/*
59 * i2r method for an ASIdentifierChoice. 153 * i2r method for an ASIdentifierChoice.