aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Willi <martin@revosec.ch>2012-11-27 10:02:37 +0100
committerMartin Willi <martin@revosec.ch>2012-12-19 10:32:07 +0100
commited1c430334761f1c9e9054ced5145d4e4b176b3c (patch)
tree70340fddeab7809c255046b59d9e9adfe3c8dde8
parent9de6a7a85cc64da9951d28b1cf7728ba93a3c97b (diff)
downloadstrongswan-ed1c430334761f1c9e9054ced5145d4e4b176b3c.tar.bz2
strongswan-ed1c430334761f1c9e9054ced5145d4e4b176b3c.tar.xz
certificate_t.has_subject() matches for certificate serialNumber
-rw-r--r--src/libstrongswan/plugins/openssl/openssl_x509.c4
-rw-r--r--src/libstrongswan/plugins/x509/x509_cert.c4
2 files changed, 8 insertions, 0 deletions
diff --git a/src/libstrongswan/plugins/openssl/openssl_x509.c b/src/libstrongswan/plugins/openssl/openssl_x509.c
index b847c0a63..676b97f7a 100644
--- a/src/libstrongswan/plugins/openssl/openssl_x509.c
+++ b/src/libstrongswan/plugins/openssl/openssl_x509.c
@@ -327,6 +327,10 @@ METHOD(certificate_t, has_subject, id_match_t,
{
return ID_MATCH_PERFECT;
}
+ if (chunk_equals(get_serial(this), encoding))
+ {
+ return ID_MATCH_PERFECT;
+ }
}
best = this->subject->matches(this->subject, subject);
enumerator = create_subjectAltName_enumerator(this);
diff --git a/src/libstrongswan/plugins/x509/x509_cert.c b/src/libstrongswan/plugins/x509/x509_cert.c
index c93b83bef..85c481552 100644
--- a/src/libstrongswan/plugins/x509/x509_cert.c
+++ b/src/libstrongswan/plugins/x509/x509_cert.c
@@ -1547,6 +1547,10 @@ METHOD(certificate_t, has_subject, id_match_t,
{
return ID_MATCH_PERFECT;
}
+ if (chunk_equals(this->serialNumber, encoding))
+ {
+ return ID_MATCH_PERFECT;
+ }
}
best = this->subject->matches(this->subject, subject);
enumerator = this->subjectAltNames->create_enumerator(this->subjectAltNames);