Go to the documentation of this file.
69 #include "../x509/internal.h"
79 return ((*a)->ext_nid - (*b)->ext_nid);
84 if (!ext_list && !(ext_list = sk_X509V3_EXT_METHOD_new(ext_stack_cmp))) {
89 if (!sk_X509V3_EXT_METHOD_push(ext_list,
ext)) {
97 static int ext_cmp(
const void *void_a,
const void *void_b)
101 return ext_stack_cmp(
a,
b);
121 sk_X509V3_EXT_METHOD_sort(ext_list);
122 if (!sk_X509V3_EXT_METHOD_find(ext_list, &
idx, &
tmp))
124 return sk_X509V3_EXT_METHOD_value(ext_list,
idx);
138 if (ext_method == NULL) {
143 if (ext_method->
it != NULL)
145 else if (ext_method->
ext_free != NULL)
157 for (; extlist->
ext_nid != -1; extlist++)
211 const unsigned char *
p;
215 p =
ext->value->data;
227 if (
p !=
ext->value->data +
ext->value->length) {
240 int *out_critical,
int *out_idx)
253 lastpos = *out_idx + 1;
258 for (
i = lastpos;
i < sk_X509_EXTENSION_num(
extensions);
i++) {
267 }
else if (found_ex) {
298 int crit,
unsigned long flags)
300 int errcode, extidx = -1;
324 if (!sk_X509_EXTENSION_delete(*
x, extidx))
353 extmp = sk_X509_EXTENSION_value(*
x, extidx);
355 if (!sk_X509_EXTENSION_set(*
x, extidx,
ext))
360 if ((
ret = *
x) == NULL
361 && (
ret = sk_X509_EXTENSION_new_null()) == NULL)
363 if (!sk_X509_EXTENSION_push(
ret,
ext))
371 sk_X509_EXTENSION_free(
ret);
static void ext_list_free(X509V3_EXT_METHOD *ext)
int X509V3_EXT_add(X509V3_EXT_METHOD *ext)
#define OPENSSL_PUT_ERROR(library, reason)
const X509V3_EXT_METHOD * X509V3_EXT_get(const X509_EXTENSION *ext)
#define X509V3_ADD_DELETE
int X509V3_EXT_free(int nid, void *ext_data)
#define X509V3_ADD_DEFAULT
#define X509V3_R_TRAILING_DATA_IN_EXTENSION
void * X509V3_EXT_d2i(const X509_EXTENSION *ext)
#define ASN1_ITEM_ptr(iptr)
OPENSSL_EXPORT X509_EXTENSION * ex
#define X509V3_R_ERROR_CREATING_EXTENSION
int X509V3_EXT_add_alias(int nid_to, int nid_from)
#define X509V3_ADD_APPEND
#define X509V3_R_EXTENSION_EXISTS
const X509V3_EXT_METHOD * X509V3_EXT_get_nid(int nid)
#define X509v3_get_ext_by_NID
#define X509V3_ADD_REPLACE_EXISTING
#define X509_EXTENSION_free
void * X509V3_get_d2i(const STACK_OF(X509_EXTENSION) *extensions, int nid, int *out_critical, int *out_idx)
#define STANDARD_EXTENSION_COUNT
static const X509V3_EXT_METHOD *const standard_exts[]
int X509V3_EXT_add_list(X509V3_EXT_METHOD *extlist)
static STACK_OF(X509V3_EXT_METHOD)
int X509V3_add_standard_extensions(void)
UniquePtr< SSL_SESSION > ret
#define X509V3_ADD_SILENT
#define X509V3_EXT_DYNAMIC
int X509V3_add1_i2d(STACK_OF(X509_EXTENSION) **x, int nid, void *value, int crit, unsigned long flags)
void X509V3_EXT_cleanup(void)
#define X509V3_ADD_KEEP_EXISTING
#define X509_EXTENSION_get_critical
#define X509V3_ADD_OP_MASK
#define X509V3_R_CANNOT_FIND_FREE_FUNCTION
#define X509V3_R_EXTENSION_NOT_FOUND
#define ERR_R_MALLOC_FAILURE
static int ext_cmp(const void *void_a, const void *void_b)
grpc
Author(s):
autogenerated on Thu Mar 13 2025 03:01:49