Go to the documentation of this file.
70 #include "../x509/internal.h"
124 if (!strncmp(cnf->
name,
"fullname", 9)) {
125 fnm = gnames_from_sectname(
ctx, cnf->
value);
128 }
else if (!strcmp(cnf->
name,
"relativename")) {
145 if (!
ret || sk_X509_NAME_ENTRY_num(rnm) <= 0)
150 if (sk_X509_NAME_ENTRY_value(rnm,
151 sk_X509_NAME_ENTRY_num(rnm) - 1)->
set) {
168 (*pdp)->name.fullname = fnm;
171 (*pdp)->name.relativename = rnm;
185 {0,
"Unused",
"unused"},
186 {1,
"Key Compromise",
"keyCompromise"},
187 {2,
"CA Compromise",
"CACompromise"},
188 {3,
"Affiliation Changed",
"affiliationChanged"},
189 {4,
"Superseded",
"superseded"},
190 {5,
"Cessation Of Operation",
"cessationOfOperation"},
191 {6,
"Certificate Hold",
"certificateHold"},
192 {7,
"Privilege Withdrawn",
"privilegeWithdrawn"},
193 {8,
"AA Compromise",
"AACompromise"},
209 for (
i = 0;
i < sk_CONF_VALUE_num(rsk);
i++) {
210 bnam = sk_CONF_VALUE_value(rsk,
i)->name;
217 if (!strcmp(pbn->
sname, bnam)) {
264 for (
i = 0;
i < sk_CONF_VALUE_num(nval);
i++) {
266 cnf = sk_CONF_VALUE_value(nval,
i);
272 if (!strcmp(cnf->
name,
"reasons")) {
275 }
else if (!strcmp(cnf->
name,
"CRLissuer")) {
277 if (!
point->CRLissuer)
294 GENERAL_NAMES *gens = NULL;
298 if (!(crld = sk_DIST_POINT_new_null()))
300 for (
i = 0;
i < sk_CONF_VALUE_num(nval);
i++) {
302 cnf = sk_CONF_VALUE_value(nval,
i);
312 if (!sk_DIST_POINT_push(crld,
point)) {
321 if (!sk_GENERAL_NAME_push(gens,
gen))
326 if (!sk_DIST_POINT_push(crld,
point)) {
332 point->distpoint->name.fullname = gens;
333 point->distpoint->type = 0;
427 for (
i = 0;
i < sk_CONF_VALUE_num(nval);
i++) {
428 cnf = sk_CONF_VALUE_value(nval,
i);
436 if (!strcmp(
name,
"onlyuser")) {
439 }
else if (!strcmp(
name,
"onlyCA")) {
442 }
else if (!strcmp(
name,
"onlyAA")) {
445 }
else if (!strcmp(
name,
"indirectCRL")) {
448 }
else if (!strcmp(
name,
"onlysomereasons")) {
469 for (
i = 0;
i < sk_GENERAL_NAME_num(gens);
i++) {
479 if (dpn->
type == 0) {
484 ntmp.entries = dpn->
name.relativename;
522 for (
i = 0;
i < sk_DIST_POINT_num(crld);
i++) {
524 point = sk_DIST_POINT_value(crld,
i);
525 if (
point->distpoint)
529 if (
point->CRLissuer) {
542 if (!dpn || (dpn->
type != 1))
544 frag = dpn->
name.relativename;
548 for (
i = 0;
i < sk_X509_NAME_ENTRY_num(frag);
i++) {
549 ne = sk_X509_NAME_ENTRY_value(frag,
i);
#define X509_NAME_print_ex
const X509V3_EXT_METHOD v3_idp
#define X509_NAME_ENTRY_free
#define ASN1_CHOICE_END_cb(stname, tname, selname)
#define X509V3_NAME_from_section
#define OPENSSL_PUT_ERROR(library, reason)
#define ASN1_IMP_SET_OF(stname, field, type, tag)
ASN1_CHOICE_cb(DIST_POINT_NAME, dpn_cb)
#define ASN1_IMP_SEQUENCE_OF(stname, field, type, tag)
#define X509V3_get_section
#define GENERAL_NAMES_new
static int set_dist_point_name(DIST_POINT_NAME **pdp, X509V3_CTX *ctx, CONF_VALUE *cnf)
#define ASN1_ITEM_ref(name)
#define X509V3_conf_err(val)
static int print_distpoint(BIO *out, DIST_POINT_NAME *dpn, int indent)
#define ISSUING_DIST_POINT_new
#define ASN1_BIT_STRING_set_bit
#define IMPLEMENT_ASN1_FUNCTIONS(stname)
union DIST_POINT_NAME_st::@371 name
static int set_reasons(ASN1_BIT_STRING **preas, char *value)
OPENSSL_EXPORT ASN1_BIT_STRING * ASN1_BIT_STRING_new(void)
static int i2r_crldp(const X509V3_EXT_METHOD *method, void *pcrldp, BIO *out, int indent)
ASN1_BIT_STRING * onlysomereasons
#define ASN1_TFLG_SEQUENCE_OF
static DIST_POINT * crldp_from_section(X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval)
#define X509V3_R_SECTION_NOT_FOUND
#define X509V3_R_INVALID_NAME
const X509V3_EXT_METHOD v3_crld
ASN1_ITEM_TEMPLATE(CERTIFICATEPOLICIES)
int DIST_POINT_set_dpname(DIST_POINT_NAME *dpn, X509_NAME *iname)
static STACK_OF(GENERAL_NAME)
static int i2r_idp(const X509V3_EXT_METHOD *method, void *pidp, BIO *out, int indent)
#define NID_crl_distribution_points
#define X509_NAME_add_entry
#define X509V3_section_free
static int print_gens(BIO *out, STACK_OF(GENERAL_NAME) *gens, int indent)
const X509V3_EXT_METHOD v3_freshest_crl
#define GENERAL_NAME_print
#define ASN1_SEQUENCE(tname)
OPENSSL_EXPORT GENERAL_NAME * gen
#define ASN1_IMP_OPT(stname, field, type, tag)
#define GENERAL_NAMES_free
#define v2i_GENERAL_NAMES
#define ASN1_BIT_STRING_get_bit
static int print_reasons(BIO *out, const char *rname, ASN1_BIT_STRING *rflags, int indent)
#define ASN1_EX_TEMPLATE_TYPE(flags, tag, name, type)
#define X509V3_R_INVALID_MULTIPLE_RDNS
#define GENERAL_NAME_free
ASN1_SEQUENCE_END(X509_NAME_ENTRY)
#define X509V3_parse_list
#define ASN1_IMP_SEQUENCE_OF_OPT(stname, field, type, tag)
#define X509V3_EXT_MULTILINE
static int dpn_cb(int operation, ASN1_VALUE **pval, const ASN1_ITEM *it, void *exarg)
#define ISSUING_DIST_POINT_free
#define ASN1_EXP_OPT(stname, field, type, tag)
UniquePtr< SSL_SESSION > ret
#define DIST_POINT_NAME_new
struct ASN1_VALUE_st ASN1_VALUE
#define X509V3_get_value_bool
OPENSSL_EXPORT X509_NAME * X509_NAME_dup(X509_NAME *xn)
static void * v2i_crld(const X509V3_EXT_METHOD *method, X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval)
#define NID_issuing_distribution_point
#define ASN1_OP_FREE_POST
static const BIT_STRING_BITNAME reason_flags[]
DIST_POINT_NAME * distpoint
#define X509V3_R_DISTPOINT_ALREADY_SET
#define ASN1_ITEM_TEMPLATE_END(tname)
#define ERR_R_MALLOC_FAILURE
static void * v2i_idp(const X509V3_EXT_METHOD *method, X509V3_CTX *ctx, STACK_OF(CONF_VALUE) *nval)
grpc
Author(s):
autogenerated on Fri May 16 2025 03:00:50