From: Andreas Steffen Date: Tue, 22 Dec 2009 10:58:30 +0000 (+0100) Subject: added create_ipAddrBlock_enumerator() method to x509_t X-Git-Tag: 4.3.6~84 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=91e35b7c9ec356d7ba08e0672926dd2a80efefde;p=thirdparty%2Fstrongswan.git added create_ipAddrBlock_enumerator() method to x509_t --- diff --git a/src/libstrongswan/credentials/certificates/x509.h b/src/libstrongswan/credentials/certificates/x509.h index a671ce220b..37c59a963d 100644 --- a/src/libstrongswan/credentials/certificates/x509.h +++ b/src/libstrongswan/credentials/certificates/x509.h @@ -121,6 +121,13 @@ struct x509_t { * @return enumerator over URIs as char* */ enumerator_t* (*create_ocsp_uri_enumerator)(x509_t *this); + + /** + * Create an enumerator over all ipAddrBlocks. + * + * @return enumerator over ipAddrBlocks as traffic_selector_t* + */ + enumerator_t* (*create_ipAddrBlock_enumerator)(x509_t *this); }; #endif /** X509_H_ @}*/ diff --git a/src/libstrongswan/plugins/x509/x509_cert.c b/src/libstrongswan/plugins/x509/x509_cert.c index 74a2967f01..c3c377d089 100644 --- a/src/libstrongswan/plugins/x509/x509_cert.c +++ b/src/libstrongswan/plugins/x509/x509_cert.c @@ -1323,6 +1323,14 @@ static enumerator_t* create_crl_uri_enumerator(private_x509_cert_t *this) return this->crl_uris->create_enumerator(this->crl_uris); } +/** + * Implementation of x509_cert_t.create_ipAddrBlock_enumerator. + */ +static enumerator_t* create_ipAddrBlock_enumerator(private_x509_cert_t *this) +{ + return this->ipAddrBlocks->create_enumerator(this->ipAddrBlocks); +} + /** * Implementation of certificate_t.destroy. */ @@ -1379,6 +1387,7 @@ static private_x509_cert_t* create_empty(void) this->public.interface.create_subjectAltName_enumerator = (enumerator_t* (*)(x509_t*))create_subjectAltName_enumerator; this->public.interface.create_crl_uri_enumerator = (enumerator_t* (*)(x509_t*))create_crl_uri_enumerator; this->public.interface.create_ocsp_uri_enumerator = (enumerator_t* (*)(x509_t*))create_ocsp_uri_enumerator; + this->public.interface.create_ipAddrBlock_enumerator = (enumerator_t* (*)(x509_t*))create_ipAddrBlock_enumerator; this->encoding = chunk_empty; this->encoding_hash = chunk_empty;