summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/x509/x509_ext.c
diff options
context:
space:
mode:
authorryker <>1998-10-05 20:13:14 +0000
committerryker <>1998-10-05 20:13:14 +0000
commitaeeae06a79815dc190061534d47236cec09f9e32 (patch)
tree851692b9c2f9c04f077666855641900f19fdb217 /src/lib/libcrypto/x509/x509_ext.c
parenta4f79641824cbf9f60ca9d1168d1fcc46717a82a (diff)
downloadopenbsd-aeeae06a79815dc190061534d47236cec09f9e32.tar.gz
openbsd-aeeae06a79815dc190061534d47236cec09f9e32.tar.bz2
openbsd-aeeae06a79815dc190061534d47236cec09f9e32.zip
Import of SSLeay-0.9.0b with RSA and IDEA stubbed + OpenBSD build
functionality for shared libs. Note that routines such as sslv2_init and friends that use RSA will not work due to lack of RSA in this library. Needs documentation and help from ports for easy upgrade to full functionality where legally possible.
Diffstat (limited to 'src/lib/libcrypto/x509/x509_ext.c')
-rw-r--r--src/lib/libcrypto/x509/x509_ext.c222
1 files changed, 222 insertions, 0 deletions
diff --git a/src/lib/libcrypto/x509/x509_ext.c b/src/lib/libcrypto/x509/x509_ext.c
new file mode 100644
index 0000000000..1d76ecfcfd
--- /dev/null
+++ b/src/lib/libcrypto/x509/x509_ext.c
@@ -0,0 +1,222 @@
1/* crypto/x509/x509_ext.c */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved.
4 *
5 * This package is an SSL implementation written
6 * by Eric Young (eay@cryptsoft.com).
7 * The implementation was written so as to conform with Netscapes SSL.
8 *
9 * This library is free for commercial and non-commercial use as long as
10 * the following conditions are aheared to. The following conditions
11 * apply to all code found in this distribution, be it the RC4, RSA,
12 * lhash, DES, etc., code; not just the SSL code. The SSL documentation
13 * included with this distribution is covered by the same copyright terms
14 * except that the holder is Tim Hudson (tjh@cryptsoft.com).
15 *
16 * Copyright remains Eric Young's, and as such any Copyright notices in
17 * the code are not to be removed.
18 * If this package is used in a product, Eric Young should be given attribution
19 * as the author of the parts of the library used.
20 * This can be in the form of a textual message at program startup or
21 * in documentation (online or textual) provided with the package.
22 *
23 * Redistribution and use in source and binary forms, with or without
24 * modification, are permitted provided that the following conditions
25 * are met:
26 * 1. Redistributions of source code must retain the copyright
27 * notice, this list of conditions and the following disclaimer.
28 * 2. Redistributions in binary form must reproduce the above copyright
29 * notice, this list of conditions and the following disclaimer in the
30 * documentation and/or other materials provided with the distribution.
31 * 3. All advertising materials mentioning features or use of this software
32 * must display the following acknowledgement:
33 * "This product includes cryptographic software written by
34 * Eric Young (eay@cryptsoft.com)"
35 * The word 'cryptographic' can be left out if the rouines from the library
36 * being used are not cryptographic related :-).
37 * 4. If you include any Windows specific code (or a derivative thereof) from
38 * the apps directory (application code) you must include an acknowledgement:
39 * "This product includes software written by Tim Hudson (tjh@cryptsoft.com)"
40 *
41 * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND
42 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
43 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
44 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
45 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
46 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
47 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
48 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
49 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
50 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
51 * SUCH DAMAGE.
52 *
53 * The licence and distribution terms for any publically available version or
54 * derivative of this code cannot be changed. i.e. this code cannot simply be
55 * copied and put under another distribution licence
56 * [including the GNU Public Licence.]
57 */
58
59#include <stdio.h>
60#include "stack.h"
61#include "cryptlib.h"
62#include "asn1.h"
63#include "objects.h"
64#include "evp.h"
65#include "x509.h"
66
67int X509_CRL_get_ext_count(x)
68X509_CRL *x;
69 {
70 return(X509v3_get_ext_count(x->crl->extensions));
71 }
72
73int X509_CRL_get_ext_by_NID(x,nid,lastpos)
74X509_CRL *x;
75int nid;
76int lastpos;
77 {
78 return(X509v3_get_ext_by_NID(x->crl->extensions,nid,lastpos));
79 }
80
81int X509_CRL_get_ext_by_OBJ(x,obj,lastpos)
82X509_CRL *x;
83ASN1_OBJECT *obj;
84int lastpos;
85 {
86 return(X509v3_get_ext_by_OBJ(x->crl->extensions,obj,lastpos));
87 }
88
89int X509_CRL_get_ext_by_critical(x,crit,lastpos)
90X509_CRL *x;
91int crit;
92int lastpos;
93 {
94 return(X509v3_get_ext_by_critical(x->crl->extensions,crit,lastpos));
95 }
96
97X509_EXTENSION *X509_CRL_get_ext(x,loc)
98X509_CRL *x;
99int loc;
100 {
101 return(X509v3_get_ext(x->crl->extensions,loc));
102 }
103
104X509_EXTENSION *X509_CRL_delete_ext(x,loc)
105X509_CRL *x;
106int loc;
107 {
108 return(X509v3_delete_ext(x->crl->extensions,loc));
109 }
110
111int X509_CRL_add_ext(x,ex,loc)
112X509_CRL *x;
113X509_EXTENSION *ex;
114int loc;
115 {
116 return(X509v3_add_ext(&(x->crl->extensions),ex,loc) != NULL);
117 }
118
119int X509_get_ext_count(x)
120X509 *x;
121 {
122 return(X509v3_get_ext_count(x->cert_info->extensions));
123 }
124
125int X509_get_ext_by_NID(x,nid,lastpos)
126X509 *x;
127int nid;
128int lastpos;
129 {
130 return(X509v3_get_ext_by_NID(x->cert_info->extensions,nid,lastpos));
131 }
132
133int X509_get_ext_by_OBJ(x,obj,lastpos)
134X509 *x;
135ASN1_OBJECT *obj;
136int lastpos;
137 {
138 return(X509v3_get_ext_by_OBJ(x->cert_info->extensions,obj,lastpos));
139 }
140
141int X509_get_ext_by_critical(x,crit,lastpos)
142X509 *x;
143int crit;
144int lastpos;
145 {
146 return(X509v3_get_ext_by_critical(x->cert_info->extensions,crit,lastpos));
147 }
148
149X509_EXTENSION *X509_get_ext(x,loc)
150X509 *x;
151int loc;
152 {
153 return(X509v3_get_ext(x->cert_info->extensions,loc));
154 }
155
156X509_EXTENSION *X509_delete_ext(x,loc)
157X509 *x;
158int loc;
159 {
160 return(X509v3_delete_ext(x->cert_info->extensions,loc));
161 }
162
163int X509_add_ext(x,ex,loc)
164X509 *x;
165X509_EXTENSION *ex;
166int loc;
167 {
168 return(X509v3_add_ext(&(x->cert_info->extensions),ex,loc) != NULL);
169 }
170
171int X509_REVOKED_get_ext_count(x)
172X509_REVOKED *x;
173 {
174 return(X509v3_get_ext_count(x->extensions));
175 }
176
177int X509_REVOKED_get_ext_by_NID(x,nid,lastpos)
178X509_REVOKED *x;
179int nid;
180int lastpos;
181 {
182 return(X509v3_get_ext_by_NID(x->extensions,nid,lastpos));
183 }
184
185int X509_REVOKED_get_ext_by_OBJ(x,obj,lastpos)
186X509_REVOKED *x;
187ASN1_OBJECT *obj;
188int lastpos;
189 {
190 return(X509v3_get_ext_by_OBJ(x->extensions,obj,lastpos));
191 }
192
193int X509_REVOKED_get_ext_by_critical(x,crit,lastpos)
194X509_REVOKED *x;
195int crit;
196int lastpos;
197 {
198 return(X509v3_get_ext_by_critical(x->extensions,crit,lastpos));
199 }
200
201X509_EXTENSION *X509_REVOKED_get_ext(x,loc)
202X509_REVOKED *x;
203int loc;
204 {
205 return(X509v3_get_ext(x->extensions,loc));
206 }
207
208X509_EXTENSION *X509_REVOKED_delete_ext(x,loc)
209X509_REVOKED *x;
210int loc;
211 {
212 return(X509v3_delete_ext(x->extensions,loc));
213 }
214
215int X509_REVOKED_add_ext(x,ex,loc)
216X509_REVOKED *x;
217X509_EXTENSION *ex;
218int loc;
219 {
220 return(X509v3_add_ext(&(x->extensions),ex,loc) != NULL);
221 }
222