From 55bbff11ec96f74b27afc36dd8ca3e34ff425b40 Mon Sep 17 00:00:00 2001 From: Martin Willi Date: Tue, 24 Oct 2006 08:46:17 +0000 Subject: linked list cleanups added list methods invoke(), destroy_offset(), destroy_function() simplified list destruction when destroying its items --- src/libstrongswan/crypto/x509.c | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) (limited to 'src/libstrongswan/crypto/x509.c') diff --git a/src/libstrongswan/crypto/x509.c b/src/libstrongswan/crypto/x509.c index 4c5e014c8..9f59a0ee4 100755 --- a/src/libstrongswan/crypto/x509.c +++ b/src/libstrongswan/crypto/x509.c @@ -1188,19 +1188,10 @@ static void __attribute__ ((constructor))print_register() */ static void destroy(private_x509_t *this) { - identification_t *id; - while (this->subjectAltNames->remove_last(this->subjectAltNames, (void**)&id) == SUCCESS) - { - id->destroy(id); - } - this->subjectAltNames->destroy(this->subjectAltNames); - - while (this->crlDistributionPoints->remove_last(this->crlDistributionPoints, (void**)&id) == SUCCESS) - { - id->destroy(id); - } - this->crlDistributionPoints->destroy(this->crlDistributionPoints); - + this->subjectAltNames->destroy_offset(this->subjectAltNames, + offsetof(identification_t, destroy)); + this->crlDistributionPoints->destroy_offset(this->crlDistributionPoints, + offsetof(identification_t, destroy)); DESTROY_IF(this->issuer); DESTROY_IF(this->subject); DESTROY_IF(this->public_key); -- cgit v1.2.3