From 719dd2870dea03000aa2404321a337c7a13166fd Mon Sep 17 00:00:00 2001 From: Adam Ierymenko Date: Mon, 21 Oct 2013 15:47:33 -0400 Subject: Self-test for certificate of membership. --- node/CertificateOfMembership.hpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) (limited to 'node') diff --git a/node/CertificateOfMembership.hpp b/node/CertificateOfMembership.hpp index b5a7947b..7f3dcbb3 100644 --- a/node/CertificateOfMembership.hpp +++ b/node/CertificateOfMembership.hpp @@ -367,6 +367,24 @@ public: return (p - startAt); } + inline bool operator==(const CertificateOfMembership &c) const + throw() + { + if (_signedBy != c._signedBy) + return false; + // We have to compare in depth manually since == only compares id + if (_qualifiers.size() != c._qualifiers.size()) + return false; + for(unsigned long i=0;i<_qualifiers.size();++i) { + const _Qualifier &a = _qualifiers[i]; + const _Qualifier &b = c._qualifiers[i]; + if ((a.id != b.id)||(a.value != b.value)||(a.maxDelta != b.maxDelta)) + return false; + } + return (_signature == c._signature); + } + inline bool operator!=(const CertificateOfMembership &c) const throw() { return (!(*this == c)); } + private: struct _Qualifier { -- cgit v1.2.3