From: Christos Tsantilas Date: Tue, 13 Nov 2012 18:19:17 +0000 (+0200) Subject: merge from SslServerCertValidator r12332 X-Git-Tag: SQUID_3_4_0_1~458^2~6 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=637c35b2073582f30a4601f98b19fc5fc9c6e976;p=thirdparty%2Fsquid.git merge from SslServerCertValidator r12332 --- 637c35b2073582f30a4601f98b19fc5fc9c6e976 diff --cc src/acl/CertificateData.cc index 4651e2480a,9c069ecc6d..bf0995f62c --- a/src/acl/CertificateData.cc +++ b/src/acl/CertificateData.cc @@@ -38,22 -36,10 +36,21 @@@ #include "acl/CertificateData.h" #include "acl/Checklist.h" #include "cache_cf.h" - #include "protos.h" #include "wordlist.h" -ACLCertificateData::ACLCertificateData(SSLGETATTRIBUTE *sslStrategy) : attribute (NULL), values (), sslAttributeCall (sslStrategy) -{} +ACLCertificateData::ACLCertificateData(Ssl::GETX509ATTRIBUTE *sslStrategy, const char *attrs, bool optionalAttr) : validAttributesStr(attrs), attributeIsOptional(optionalAttr), attribute (NULL), values (), sslAttributeCall (sslStrategy) +{ + if (attrs) { + size_t current; + size_t next = -1; + std::string valid(attrs); + do { + current = next + 1; + next = valid.find_first_of( "|", current); + validAttributes.push_back(valid.substr( current, next - current )); + } while (next != std::string::npos); + } +} ACLCertificateData::ACLCertificateData(ACLCertificateData const &old) : attribute (NULL), values (old.values), sslAttributeCall (old.sslAttributeCall) {