globus_gsi_proxy_ssl 6.5
Loading...
Searching...
No Matches
proxycertinfo.h
Go to the documentation of this file.
1/*
2 * Copyright 1999-2006 University of Chicago
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17#ifndef HEADER_PROXYCERTINFO_H
18#define HEADER_PROXYCERTINFO_H
19
26#ifndef GLOBUS_GLOBAL_DOCUMENT_SET
31#endif
32
58#include "proxypolicy.h"
59#include <openssl/asn1.h>
60#include <openssl/x509.h>
61#include <openssl/x509v3.h>
62#include <string.h>
63
64#ifdef __cplusplus
65extern "C" {
66#endif
67
77#define PROXYCERTINFO_OLD_OID "1.3.6.1.4.1.3536.1.222"
78#define PROXYCERTINFO_OID "1.3.6.1.5.5.7.1.14"
79#define PROXYCERTINFO_SN "PROXYCERTINFO"
80#define PROXYCERTINFO_LN "Proxy Certificate Info Extension"
81#define PROXYCERTINFO_OLD_SN "OLD_PROXYCERTINFO"
82#define PROXYCERTINFO_OLD_LN "Proxy Certificate Info Extension (old OID)"
83
84/*
85 * Used for error checking
86 */
87#define ASN1_F_PROXYCERTINFO_NEW 430
88#define ASN1_F_D2I_PROXYCERTINFO 431
89
90#ifndef GLOBUS_DEPRECATED
91#define GLOBUS_DEPRECATED_IN_PROXYCERTINFO_H
92#if __GNUC__
93# define GLOBUS_DEPRECATED(func) func __attribute__((deprecated))
94#elif defined(_MSC_VER)
95# define GLOBUS_DEPRECATED(func) __declspec(deprecated) func
96#else
97# define GLOBUS_DEPRECATED(func) func
98#endif
99#endif
100
101/*
102 * The PROXYCERTINFO functions are deprecated, as OpenSSL has provided
103 * its own data structure since 0.9.8.
104 */
105/* data structures */
106
125{
126 ASN1_INTEGER * path_length; /* [ OPTIONAL ] */
127 PROXYPOLICY * policy;
128};
129
130typedef struct PROXYCERTINFO_st PROXYCERTINFO;
131
132#ifdef DECLARE_STACK_OF
133DECLARE_STACK_OF(PROXYCERTINFO)
134#endif
135
136DECLARE_ASN1_FUNCTIONS(PROXYCERTINFO)
137
138/* macros */
139
140#define d2i_PROXYCERTINFO_bio(bp, pci) \
141 (PROXYCERTINFO *) ASN1_d2i_bio((char *(*)()) PROXYCERTINFO_new, \
142 (char *(*)()) d2i_PROXYCERTINFO, \
143 (bp), (unsigned char **) pci)
144
145#define i2d_PROXYCERTINFO_bio(bp, pci) \
146 ASN1_i2d_bio(i2d_PROXYCERTINFO, bp, \
147 (unsigned char *)pci)
148
149/* functions */
150
151#if OPENSSL_VERSION_NUMBER < 0x10000000L
152ASN1_METHOD * PROXYCERTINFO_asn1_meth();
153#endif
154
155GLOBUS_DEPRECATED(
156PROXYCERTINFO * PROXYCERTINFO_dup(
157#if OPENSSL_VERSION_NUMBER >= 0x30000000L
158 const
159#endif
160 PROXYCERTINFO * cert_info));
161
162GLOBUS_DEPRECATED(int PROXYCERTINFO_cmp(
163 const PROXYCERTINFO * a,
164 const PROXYCERTINFO * b));
165
166GLOBUS_DEPRECATED(int PROXYCERTINFO_print(
167 BIO * bp,
168 PROXYCERTINFO * cert_info));
169
170GLOBUS_DEPRECATED(int PROXYCERTINFO_print_fp(
171 FILE * fp,
172 PROXYCERTINFO * cert_info));
173
174GLOBUS_DEPRECATED(int PROXYCERTINFO_set_policy(
175 PROXYCERTINFO * cert_info,
176 PROXYPOLICY * policy));
177
178GLOBUS_DEPRECATED(PROXYPOLICY * PROXYCERTINFO_get_policy(
179 PROXYCERTINFO * cert_info));
180
181GLOBUS_DEPRECATED(int PROXYCERTINFO_set_path_length(
182 PROXYCERTINFO * cert_info,
183 long path_length));
184
185GLOBUS_DEPRECATED(long PROXYCERTINFO_get_path_length(
186 PROXYCERTINFO * cert_info));
187
188GLOBUS_DEPRECATED(X509V3_EXT_METHOD * PROXYCERTINFO_x509v3_ext_meth());
189
190X509V3_EXT_METHOD * PROXYCERTINFO_OLD_x509v3_ext_meth();
191
192GLOBUS_DEPRECATED(STACK_OF(CONF_VALUE) * i2v_PROXYCERTINFO(
193 struct v3_ext_method * method,
194 PROXYCERTINFO * ext,
195 STACK_OF(CONF_VALUE) * extlist));
196
197#ifdef __cplusplus
198}
199#endif
200
201#ifdef GLOBUS_DEPRECATED_IN_PROXYCERTINFO_H
202# ifdef GLOBUS_DEPRECATED
203# undef GLOBUS_DEPRECATED
204# endif
205# undef GLOBUS_DEPRECATED_IN_PROXYCERTINFO_H
206#endif
207
208#endif /* HEADER_PROXYCERTINFO_H */
Proxy Policy.
Definition proxycertinfo.h:125
Definition proxypolicy.h:88