63 #include "../internal.h"
64 #include "../x509/internal.h"
77 CERTIFICATEPOLICIES *policies,
int crit)
84 if (sk_POLICYINFO_num(policies) == 0)
89 for (
i = 0;
i < sk_POLICYINFO_num(policies);
i++) {
90 policy = sk_POLICYINFO_value(policies,
i);
97 sk_X509_POLICY_DATA_sort(cache->data);
104 }
else if (sk_X509_POLICY_DATA_find(cache->data, NULL,
data)) {
107 }
else if (!sk_X509_POLICY_DATA_push(cache->data,
data))
130 CERTIFICATEPOLICIES *ext_cpols = NULL;
131 POLICY_MAPPINGS *ext_pmaps = NULL;
142 x->policy_cache = cache;
245 cache =
x->policy_cache;
252 if (
x->policy_cache == NULL)
254 cache =
x->policy_cache;
267 sk_X509_POLICY_DATA_sort(cache->data);
268 if (!sk_X509_POLICY_DATA_find(cache->data, &
idx, &
tmp))
270 return sk_X509_POLICY_DATA_value(cache->data,
idx);
276 return OBJ_cmp((*a)->valid_policy, (*b)->valid_policy);