diff options
author | djm <> | 2010-10-01 22:59:01 +0000 |
---|---|---|
committer | djm <> | 2010-10-01 22:59:01 +0000 |
commit | fe047d8b632246cb2db3234a0a4f32e5c318857b (patch) | |
tree | 939b752540947d33507b3acc48d76a8bfb7c3dc3 /src/lib/libcrypto/x509v3/v3_lib.c | |
parent | 2ea67f4aa254b09ded62e6e14fc893bbe6381579 (diff) | |
download | openbsd-fe047d8b632246cb2db3234a0a4f32e5c318857b.tar.gz openbsd-fe047d8b632246cb2db3234a0a4f32e5c318857b.tar.bz2 openbsd-fe047d8b632246cb2db3234a0a4f32e5c318857b.zip |
resolve conflicts, fix local changes
Diffstat (limited to 'src/lib/libcrypto/x509v3/v3_lib.c')
-rw-r--r-- | src/lib/libcrypto/x509v3/v3_lib.c | 24 |
1 files changed, 15 insertions, 9 deletions
diff --git a/src/lib/libcrypto/x509v3/v3_lib.c b/src/lib/libcrypto/x509v3/v3_lib.c index df3a48f43e..0f1e1d4422 100644 --- a/src/lib/libcrypto/x509v3/v3_lib.c +++ b/src/lib/libcrypto/x509v3/v3_lib.c | |||
@@ -84,20 +84,24 @@ int X509V3_EXT_add(X509V3_EXT_METHOD *ext) | |||
84 | } | 84 | } |
85 | 85 | ||
86 | static int ext_cmp(const X509V3_EXT_METHOD * const *a, | 86 | static int ext_cmp(const X509V3_EXT_METHOD * const *a, |
87 | const X509V3_EXT_METHOD * const *b) | 87 | const X509V3_EXT_METHOD * const *b) |
88 | { | 88 | { |
89 | return ((*a)->ext_nid - (*b)->ext_nid); | 89 | return ((*a)->ext_nid - (*b)->ext_nid); |
90 | } | 90 | } |
91 | 91 | ||
92 | X509V3_EXT_METHOD *X509V3_EXT_get_nid(int nid) | 92 | DECLARE_OBJ_BSEARCH_CMP_FN(const X509V3_EXT_METHOD *, const X509V3_EXT_METHOD *, |
93 | ext); | ||
94 | IMPLEMENT_OBJ_BSEARCH_CMP_FN(const X509V3_EXT_METHOD *, | ||
95 | const X509V3_EXT_METHOD *, ext); | ||
96 | |||
97 | const X509V3_EXT_METHOD *X509V3_EXT_get_nid(int nid) | ||
93 | { | 98 | { |
94 | X509V3_EXT_METHOD tmp, *t = &tmp, **ret; | 99 | X509V3_EXT_METHOD tmp; |
100 | const X509V3_EXT_METHOD *t = &tmp, * const *ret; | ||
95 | int idx; | 101 | int idx; |
96 | if(nid < 0) return NULL; | 102 | if(nid < 0) return NULL; |
97 | tmp.ext_nid = nid; | 103 | tmp.ext_nid = nid; |
98 | ret = (X509V3_EXT_METHOD **) OBJ_bsearch((char *)&t, | 104 | ret = OBJ_bsearch_ext(&t, standard_exts, STANDARD_EXTENSION_COUNT); |
99 | (char *)standard_exts, STANDARD_EXTENSION_COUNT, | ||
100 | sizeof(X509V3_EXT_METHOD *), (int (*)(const void *, const void *))ext_cmp); | ||
101 | if(ret) return *ret; | 105 | if(ret) return *ret; |
102 | if(!ext_list) return NULL; | 106 | if(!ext_list) return NULL; |
103 | idx = sk_X509V3_EXT_METHOD_find(ext_list, &tmp); | 107 | idx = sk_X509V3_EXT_METHOD_find(ext_list, &tmp); |
@@ -105,7 +109,7 @@ X509V3_EXT_METHOD *X509V3_EXT_get_nid(int nid) | |||
105 | return sk_X509V3_EXT_METHOD_value(ext_list, idx); | 109 | return sk_X509V3_EXT_METHOD_value(ext_list, idx); |
106 | } | 110 | } |
107 | 111 | ||
108 | X509V3_EXT_METHOD *X509V3_EXT_get(X509_EXTENSION *ext) | 112 | const X509V3_EXT_METHOD *X509V3_EXT_get(X509_EXTENSION *ext) |
109 | { | 113 | { |
110 | int nid; | 114 | int nid; |
111 | if((nid = OBJ_obj2nid(ext->object)) == NID_undef) return NULL; | 115 | if((nid = OBJ_obj2nid(ext->object)) == NID_undef) return NULL; |
@@ -122,7 +126,9 @@ int X509V3_EXT_add_list(X509V3_EXT_METHOD *extlist) | |||
122 | 126 | ||
123 | int X509V3_EXT_add_alias(int nid_to, int nid_from) | 127 | int X509V3_EXT_add_alias(int nid_to, int nid_from) |
124 | { | 128 | { |
125 | X509V3_EXT_METHOD *ext, *tmpext; | 129 | const X509V3_EXT_METHOD *ext; |
130 | X509V3_EXT_METHOD *tmpext; | ||
131 | |||
126 | if(!(ext = X509V3_EXT_get_nid(nid_from))) { | 132 | if(!(ext = X509V3_EXT_get_nid(nid_from))) { |
127 | X509V3err(X509V3_F_X509V3_EXT_ADD_ALIAS,X509V3_R_EXTENSION_NOT_FOUND); | 133 | X509V3err(X509V3_F_X509V3_EXT_ADD_ALIAS,X509V3_R_EXTENSION_NOT_FOUND); |
128 | return 0; | 134 | return 0; |
@@ -161,7 +167,7 @@ int X509V3_add_standard_extensions(void) | |||
161 | 167 | ||
162 | void *X509V3_EXT_d2i(X509_EXTENSION *ext) | 168 | void *X509V3_EXT_d2i(X509_EXTENSION *ext) |
163 | { | 169 | { |
164 | X509V3_EXT_METHOD *method; | 170 | const X509V3_EXT_METHOD *method; |
165 | const unsigned char *p; | 171 | const unsigned char *p; |
166 | 172 | ||
167 | if(!(method = X509V3_EXT_get(ext))) return NULL; | 173 | if(!(method = X509V3_EXT_get(ext))) return NULL; |