added the create_crluri_iterator method
authorAndreas Steffen <andreas.steffen@strongswan.org>
Sat, 24 Feb 2007 23:21:45 +0000 (23:21 -0000)
committerAndreas Steffen <andreas.steffen@strongswan.org>
Sat, 24 Feb 2007 23:21:45 +0000 (23:21 -0000)
src/libstrongswan/crypto/x509.c
src/libstrongswan/crypto/x509.h

index fcbd5dc..f2e87d2 100755 (executable)
@@ -1045,6 +1045,14 @@ static cert_status_t get_status(const private_x509_t *this)
 }
 
 /**
+ * Implements x509_t.create_crluri_iterator
+ */
+static iterator_t *create_crluri_iterator(const private_x509_t *this)
+{
+       return this->crlDistributionPoints->create_iterator(this->crlDistributionPoints, TRUE);
+}
+
+/**
  * Implements x509_t.verify
  */
 static bool verify(const private_x509_t *this, const rsa_public_key_t *signer)
@@ -1228,6 +1236,7 @@ x509_t *x509_create_from_chunk(chunk_t chunk)
        this->public.get_until = (time_t (*) (const x509_t*))get_until;
        this->public.set_status = (void (*) (x509_t*,cert_status_t))set_status;
        this->public.get_status = (cert_status_t (*) (const x509_t*))get_status;
+       this->public.create_crluri_iterator = (iterator_t* (*) (const x509_t*))create_crluri_iterator;
        this->public.verify = (bool (*) (const x509_t*,const rsa_public_key_t*))verify;
        this->public.destroy = (void (*) (x509_t*))destroy;
        
index fd12914..824a4e1 100755 (executable)
@@ -141,6 +141,14 @@ struct x509_t {
        identification_t *(*get_subject) (const x509_t *this);
 
        /**
+        * @brief Create an iterator for the crlDistributionPoints.
+        * 
+        * @param this                          calling object
+        * @return                                      iterator for crlDistributionPoints
+        */
+       iterator_t *(*create_crluri_iterator) (const x509_t *this);
+
+       /**
         * @brief Check if a certificate is trustworthy
         * 
         * @param this                  calling object