Simplified format of x509 CRL URI parsing/enumerator

This commit is contained in:
Martin Willi
2011-01-05 16:46:03 +01:00
parent e24a02a28f
commit a6478a0402
9 changed files with 179 additions and 231 deletions
-1
View File
@@ -41,7 +41,6 @@ ENUM(builder_part_names, BUILD_FROM_FILE, BUILD_END,
"BUILD_CA_CERT",
"BUILD_CERT",
"BUILD_CRL_DISTRIBUTION_POINTS",
"BUILD_CRL_ISSUER",
"BUILD_OCSP_ACCESS_LOCATIONS",
"BUILD_PATHLEN",
"BUILD_PERMITTED_NAME_CONSTRAINTS",
+1 -3
View File
@@ -87,10 +87,8 @@ enum builder_part_t {
BUILD_CA_CERT,
/** a certificate, certificate_t* */
BUILD_CERT,
/** CRL distribution point URIs, linked_list_t* containing char* */
/** CRL distribution point URIs, x509_cdp_t* */
BUILD_CRL_DISTRIBUTION_POINTS,
/** CRL issuer for all distribution points follow up, identification_t* */
BUILD_CRL_ISSUER,
/** OCSP AuthorityInfoAccess locations, linked_list_t* containing char* */
BUILD_OCSP_ACCESS_LOCATIONS,
/** certificate path length constraint */
@@ -29,6 +29,7 @@
typedef struct x509_t x509_t;
typedef struct x509_cert_policy_t x509_cert_policy_t;
typedef struct x509_policy_mapping_t x509_policy_mapping_t;
typedef struct x509_cdp_t x509_cdp_t;
typedef enum x509_flag_t x509_flag_t;
/**
@@ -77,6 +78,16 @@ struct x509_policy_mapping_t {
chunk_t subject;
};
/**
* X.509 CRL distributionPoint
*/
struct x509_cdp_t {
/** CDP URI, as string */
char *uri;
/** CRL issuer */
identification_t *issuer;
};
/**
* X.509 certificate interface.
*
@@ -143,7 +154,7 @@ struct x509_t {
/**
* Create an enumerator over all CRL URIs and CRL Issuers.
*
* @return enumerator over URIs (char*, identificiation_t*)
* @return enumerator over x509_cdp_t
*/
enumerator_t* (*create_crl_uri_enumerator)(x509_t *this);