globus_gsi_proxy_ssl  5.15
proxypolicy.h
Go to the documentation of this file.
1 
2 
3 #ifndef HEADER_PROXYPOLICY_H
4 #define HEADER_PROXYPOLICY_H
5 
26 #include <openssl/x509.h>
27 #include <openssl/x509v3.h>
28 #include <string.h>
29 
30 #ifdef __cplusplus
31 extern "C" {
32 #endif
33 
34 #define ANY_LANGUAGE_OID "1.3.6.1.5.5.7.21.0"
35 #define ANY_LANGUAGE_SN "ANY_LANGUAGE"
36 #define ANY_LANGUAGE_LN "Any Language"
37 
38 #define IMPERSONATION_PROXY_OID "1.3.6.1.5.5.7.21.1"
39 #define IMPERSONATION_PROXY_SN "IMPERSONATION_PROXY"
40 #define IMPERSONATION_PROXY_LN "GSI impersonation proxy"
41 
42 #define INDEPENDENT_PROXY_OID "1.3.6.1.5.5.7.21.2"
43 #define INDEPENDENT_PROXY_SN "INDEPENDENT_PROXY"
44 #define INDEPENDENT_PROXY_LN "GSI independent proxy"
45 
46 #define LIMITED_PROXY_OID "1.3.6.1.4.1.3536.1.1.1.9"
47 #define LIMITED_PROXY_SN "LIMITED_PROXY"
48 #define LIMITED_PROXY_LN "GSI limited proxy"
49 
50 /* Used for error handling */
51 #define ASN1_F_PROXYPOLICY_NEW 450
52 #define ASN1_F_D2I_PROXYPOLICY 451
53 
54 /* data structures */
55 
72 {
73  ASN1_OBJECT * policy_language;
74  ASN1_OCTET_STRING * policy;
75 };
76 
77 typedef struct PROXYPOLICY_st PROXYPOLICY;
78 
79 #ifdef DECLARE_STACK_OF
80 DECLARE_STACK_OF(PROXYPOLICY)
81 #endif
82 DECLARE_ASN1_FUNCTIONS(PROXYPOLICY)
83 
84 /* functions */
85 
86 #if OPENSSL_VERSION_NUMBER < 0x10000000L
87 ASN1_METHOD * PROXYPOLICY_asn1_meth();
88 #endif
89 
90 #ifdef DECLARE_ASN1_DUP_FUNCTION
91 DECLARE_ASN1_DUP_FUNCTION(PROXYPOLICY)
92 #else
93 PROXYPOLICY * PROXYPOLICY_dup(
94  PROXYPOLICY * policy);
95 #endif
96 
97 int PROXYPOLICY_cmp(
98  const PROXYPOLICY * a,
99  const PROXYPOLICY * b);
100 
101 int PROXYPOLICY_print(
102  BIO * bp,
103  PROXYPOLICY * policy);
104 
105 int PROXYPOLICY_print_fp(
106  FILE * fp,
107  PROXYPOLICY * policy);
108 
109 int PROXYPOLICY_set_policy_language(
110  PROXYPOLICY * policy,
111  ASN1_OBJECT * policy_language);
112 
113 ASN1_OBJECT * PROXYPOLICY_get_policy_language(
114  PROXYPOLICY * policy);
115 
116 int PROXYPOLICY_set_policy(
117  PROXYPOLICY * proxypolicy,
118  unsigned char * policy,
119  int length);
120 
121 unsigned char * PROXYPOLICY_get_policy(
122  PROXYPOLICY * policy,
123  int * length);
124 
125 X509V3_EXT_METHOD * PROXYPOLICY_x509v3_ext_meth();
126 
127 STACK_OF(CONF_VALUE) * i2v_PROXYPOLICY(
128  struct v3_ext_method * method,
129  PROXYPOLICY * ext,
130  STACK_OF(CONF_VALUE) * extlist);
131 
132 #ifdef __cplusplus
133 }
134 #endif
135 
136 #endif /* HEADER_PROXYPOLICY_H */
Definition: proxypolicy.h:72