Go to the documentation of this file.
66 #include "../internal.h"
67 #include "../x509v3/internal.h"
85 #define string_stack_free(sk) sk_OPENSSL_STRING_pop_free(sk, str_free)
88 const char *
name,
size_t namelen)
92 if (
name == NULL || namelen == 0) {
113 if (param->hosts == NULL &&
114 (param->hosts = sk_OPENSSL_STRING_new_null()) == NULL) {
119 if (!sk_OPENSSL_STRING_push(param->hosts,
copy)) {
121 if (sk_OPENSSL_STRING_num(param->hosts) == 0) {
122 sk_OPENSSL_STRING_free(param->hosts);
144 if (param->policies) {
146 param->policies = NULL;
222 #define test_x509_verify_param_copy(field, def) \
224 ((src->field != (def)) && (to_default || (dest->field == (def)))))
228 #define x509_verify_param_copy(field, def) \
229 if (test_x509_verify_param_copy(field, def)) \
230 dest->field = src->field
235 unsigned long inh_flags;
236 int to_default, to_overwrite;
288 if (
dest->hosts == NULL)
312 unsigned long save_flags =
to->inh_flags;
316 to->inh_flags = save_flags;
321 const char *src,
size_t srclen)
324 if (src == NULL || srclen == 0) {
397 if (!param->policies) {
398 param->policies = sk_ASN1_OBJECT_new_null();
399 if (!param->policies)
402 if (!sk_ASN1_OBJECT_push(param->policies, policy))
418 param->policies = NULL;
422 param->policies = sk_ASN1_OBJECT_new_null();
423 if (!param->policies)
426 for (
i = 0;
i < sk_ASN1_OBJECT_num(policies);
i++) {
427 oid = sk_ASN1_OBJECT_value(policies,
i);
431 if (!sk_ASN1_OBJECT_push(param->policies, doid)) {
441 const char *
name,
size_t namelen)
451 const char *
name,
size_t namelen)
472 const char *email,
size_t emaillen)
485 const unsigned char *ip,
size_t iplen)
487 if ((iplen != 4 && iplen != 16) ||
489 (
char *)ip, iplen)) {
499 unsigned char ipout[16];
518 #define vpm_empty_id NULL, 0U, NULL, NULL, 0, NULL, 0, 0
548 (
char *)
"smime_sign",
558 (
char *)
"ssl_client",
568 (
char *)
"ssl_server",
583 return strcmp((*a)->name, (*b)->name);
590 param_table = sk_X509_VERIFY_PARAM_new(param_cmp);
596 sk_X509_VERIFY_PARAM_sort(param_table);
597 if (sk_X509_VERIFY_PARAM_find(param_table, &
idx, param)) {
598 ptmp = sk_X509_VERIFY_PARAM_value(param_table,
idx);
600 (void)sk_X509_VERIFY_PARAM_delete(param_table,
idx);
603 if (!sk_X509_VERIFY_PARAM_push(param_table, param))
612 num += sk_X509_VERIFY_PARAM_num(param_table);
621 return sk_X509_VERIFY_PARAM_value(param_table,
id -
num);
632 sk_X509_VERIFY_PARAM_sort(param_table);
633 if (sk_X509_VERIFY_PARAM_find(param_table, &
idx, &pm))
634 return sk_X509_VERIFY_PARAM_value(param_table,
idx);
638 for (
i = 0;
i < limit;
i++) {
const X509_VERIFY_PARAM * X509_VERIFY_PARAM_lookup(const char *name)
int X509_VERIFY_PARAM_inherit(X509_VERIFY_PARAM *dest, const X509_VERIFY_PARAM *src)
int X509_VERIFY_PARAM_get_count(void)
int X509_VERIFY_PARAM_set1(X509_VERIFY_PARAM *to, const X509_VERIFY_PARAM *from)
#define X509_PURPOSE_SSL_CLIENT
#define X509_V_FLAG_POLICY_CHECK
int X509_VERIFY_PARAM_set_flags(X509_VERIFY_PARAM *param, unsigned long flags)
static const X509_VERIFY_PARAM default_table[]
static int int_x509_param_set1(char **pdest, size_t *pdestlen, const char *src, size_t srclen)
#define X509_TRUST_SSL_SERVER
#define X509_PURPOSE_SMIME_SIGN
static int copy(grpc_slice_buffer *input, grpc_slice_buffer *output)
#define X509_V_FLAG_POLICY_MASK
#define x509_verify_param_copy(field, def)
static void * OPENSSL_memchr(const void *s, int c, size_t n)
int X509_VERIFY_PARAM_set1_host(X509_VERIFY_PARAM *param, const char *name, size_t namelen)
static void * OPENSSL_memset(void *dst, int c, size_t n)
static STACK_OF(X509_VERIFY_PARAM)
int X509_VERIFY_PARAM_add0_policy(X509_VERIFY_PARAM *param, ASN1_OBJECT *policy)
int X509_VERIFY_PARAM_set1_name(X509_VERIFY_PARAM *param, const char *name)
void X509_VERIFY_PARAM_table_cleanup(void)
char * X509_VERIFY_PARAM_get0_peername(X509_VERIFY_PARAM *param)
static void str_free(char *s)
#define X509_PURPOSE_SSL_SERVER
void X509_VERIFY_PARAM_set_depth(X509_VERIFY_PARAM *param, int depth)
int X509_VERIFY_PARAM_get_depth(const X509_VERIFY_PARAM *param)
#define X509_VP_FLAG_ONCE
int X509_VERIFY_PARAM_set_trust(X509_VERIFY_PARAM *param, int trust)
#define X509_V_FLAG_TRUSTED_FIRST
#define X509_VP_FLAG_DEFAULT
#define string_stack_free(sk)
int X509_VERIFY_PARAM_set1_policies(X509_VERIFY_PARAM *param, STACK_OF(ASN1_OBJECT) *policies)
int X509_VERIFY_PARAM_add1_host(X509_VERIFY_PARAM *param, const char *name, size_t namelen)
#define X509_VP_FLAG_OVERWRITE
int X509_VERIFY_PARAM_set1_ip_asc(X509_VERIFY_PARAM *param, const char *ipasc)
#define X509_VP_FLAG_RESET_FLAGS
void X509_VERIFY_PARAM_free(X509_VERIFY_PARAM *param)
const char * X509_VERIFY_PARAM_get0_name(const X509_VERIFY_PARAM *param)
UniquePtr< SSL_SESSION > ret
int X509_VERIFY_PARAM_clear_flags(X509_VERIFY_PARAM *param, unsigned long flags)
int X509_VERIFY_PARAM_add0_table(X509_VERIFY_PARAM *param)
#define X509_VP_FLAG_LOCKED
int X509_VERIFY_PARAM_set_purpose(X509_VERIFY_PARAM *param, int purpose)
#define test_x509_verify_param_copy(field, def)
void X509_VERIFY_PARAM_set_hostflags(X509_VERIFY_PARAM *param, unsigned int flags)
int X509_VERIFY_PARAM_set1_email(X509_VERIFY_PARAM *param, const char *email, size_t emaillen)
const X509_VERIFY_PARAM * X509_VERIFY_PARAM_get0(int id)
int X509_VERIFY_PARAM_set1_ip(X509_VERIFY_PARAM *param, const unsigned char *ip, size_t iplen)
#define X509_TRUST_SSL_CLIENT
static char * str_copy(char *s)
X509_VERIFY_PARAM * X509_VERIFY_PARAM_new(void)
void X509_VERIFY_PARAM_set_time(X509_VERIFY_PARAM *param, time_t t)
unsigned long X509_VERIFY_PARAM_get_flags(X509_VERIFY_PARAM *param)
#define X509_V_FLAG_USE_CHECK_TIME
static void x509_verify_param_zero(X509_VERIFY_PARAM *param)
static int int_x509_param_set_hosts(X509_VERIFY_PARAM *param, int mode, const char *name, size_t namelen)
grpc
Author(s):
autogenerated on Fri May 16 2025 03:00:56