4
0
mirror of https://github.com/QuasarApp/qca.git synced 2025-05-02 06:09:33 +00:00

clazy: Enable container-anti-pattern

Except in the tests where being slow and convenient is better than fast
This commit is contained in:
Albert Astals Cid 2020-02-12 16:55:18 +01:00
parent a29518b978
commit c0ac498159
4 changed files with 102 additions and 113 deletions
.gitlab-ci.yml
examples/certtest
src
unittest/certunittest

@ -22,5 +22,5 @@ build_clazy_clang_tidy:
- apt-get install --yes --no-install-recommends ninja-build libbotan-2-dev libnss3-dev libgcrypt20-dev libpkcs11-helper1-dev clazy clang clang-tidy jq - apt-get install --yes --no-install-recommends ninja-build libbotan-2-dev libnss3-dev libgcrypt20-dev libpkcs11-helper1-dev clazy clang clang-tidy jq
script: script:
- srcdir=`pwd` && mkdir -p /tmp/qca_build && cd /tmp/qca_build && CC=clang CXX=clazy CXXFLAGS="-Werror -Wno-deprecated-declarations" cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -G Ninja $srcdir && cat compile_commands.json | jq '[.[] | select(.file | contains("'"$srcdir"'"))]' > compile_commands.aux.json && mv compile_commands.aux.json compile_commands.json - srcdir=`pwd` && mkdir -p /tmp/qca_build && cd /tmp/qca_build && CC=clang CXX=clazy CXXFLAGS="-Werror -Wno-deprecated-declarations" cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -G Ninja $srcdir && cat compile_commands.json | jq '[.[] | select(.file | contains("'"$srcdir"'"))]' > compile_commands.aux.json && mv compile_commands.aux.json compile_commands.json
- CLAZY_CHECKS="level0,level1,level2,no-container-anti-pattern,no-copyable-polymorphic,no-ctor-missing-parent-argument,no-qstring-allocations,isempty-vs-count,qhash-with-char-pointer-key,qproperty-type-mismatch,qrequiredresult-candidates,signal-with-return-value,thread-with-slots,tr-non-literal,unneeded-cast" ninja - CLAZY_CHECKS="level0,level1,level2,no-copyable-polymorphic,no-ctor-missing-parent-argument,no-qstring-allocations,isempty-vs-count,qhash-with-char-pointer-key,qproperty-type-mismatch,qrequiredresult-candidates,signal-with-return-value,thread-with-slots,tr-non-literal,unneeded-cast" ninja
- "run-clang-tidy -header-filter='.*/qca/.*' -checks='-*,performance-*,modernize-make-unique,modernize-make-shared,modernize-use-override,modernize-use-equals-delete,modernize-use-emplace,modernize-use-bool-literals,modernize-redundant-void-arg,modernize-loop-convert' -config=\"{WarningsAsErrors: '*'}\"" - "run-clang-tidy -header-filter='.*/qca/.*' -checks='-*,performance-*,modernize-make-unique,modernize-make-shared,modernize-use-override,modernize-use-equals-delete,modernize-use-emplace,modernize-use-bool-literals,modernize-redundant-void-arg,modernize-loop-convert' -config=\"{WarningsAsErrors: '*'}\""

@ -55,7 +55,7 @@ static void dumpCertificateInfo( const QCA::CertificateInfo &info)
std::cout << " Country: " << std::endl; std::cout << " Country: " << std::endl;
// As above, however this shows a more compact way to represent // As above, however this shows a more compact way to represent
// the iteration and output. // the iteration and output.
foreach( QString country, info.values(QCA::Country) ) { foreach( QString country, info.values(QCA::Country) ) { //clazy:exclude=container-anti-pattern
std::cout << " " << qPrintable(country) << std::endl; std::cout << " " << qPrintable(country) << std::endl;
} }
} }

@ -1647,25 +1647,16 @@ bool Certificate::matchesHostName(const QString &host) const
QByteArray ipaddr = ipaddr_str2bin(host); QByteArray ipaddr = ipaddr_str2bin(host);
if(!ipaddr.isEmpty()) // ip address if(!ipaddr.isEmpty()) // ip address
{ {
// check iPAddress // check iPAddress, dNSName, commonName
foreach(const QString &s, subjectInfo().values(IPAddress)) const CertificateInfoOrdered subjectInfo = subjectInfoOrdered();
for(const CertificateInfoPair &p : subjectInfo)
{ {
if(cert_match_ipaddress(s, ipaddr)) const CertificateInfoType type = p.type();
if (type == IPAddress || type == DNS || type == CommonName)
{
if(cert_match_ipaddress(p.value(), ipaddr))
return true; return true;
} }
// check dNSName
foreach(const QString &s, subjectInfo().values(DNS))
{
if(cert_match_ipaddress(s, ipaddr))
return true;
}
// check commonName
foreach(const QString &s, subjectInfo().values(CommonName))
{
if(cert_match_ipaddress(s, ipaddr))
return true;
} }
} }
else // domain else // domain
@ -1688,18 +1679,16 @@ bool Certificate::matchesHostName(const QString &host) const
if(name.isEmpty()) if(name.isEmpty())
return false; return false;
// check dNSName // check dNSName, commonName
foreach(const QString &s, subjectInfo().values(DNS)) const CertificateInfoOrdered subjectInfo = subjectInfoOrdered();
for(const CertificateInfoPair &p : subjectInfo)
{ {
if(cert_match_domain(s, name)) const CertificateInfoType type = p.type();
if (type == DNS || type == CommonName)
{
if(cert_match_domain(p.value(), name))
return true; return true;
} }
// check commonName
foreach(const QString &s, subjectInfo().values(CommonName))
{
if(cert_match_domain(s, name))
return true;
} }
} }

@ -257,15 +257,15 @@ void CertUnitTest::checkExpiredClientCerts()
QCA::CertificateInfo subject1 = client1.subjectInfo(); QCA::CertificateInfo subject1 = client1.subjectInfo();
QCOMPARE( subject1.isEmpty(), false ); QCOMPARE( subject1.isEmpty(), false );
QCOMPARE( subject1.values(QCA::Country).contains("de") == true, true ); QCOMPARE( subject1.values(QCA::Country).contains("de") == true, true ); //clazy:exclude=container-anti-pattern
QCOMPARE( subject1.values(QCA::Organization).contains("InsecureTestCertificate") == true, true ); QCOMPARE( subject1.values(QCA::Organization).contains("InsecureTestCertificate") == true, true ); //clazy:exclude=container-anti-pattern
QCOMPARE( subject1.values(QCA::CommonName).contains("Insecure User Test Cert") == true, true ); QCOMPARE( subject1.values(QCA::CommonName).contains("Insecure User Test Cert") == true, true ); //clazy:exclude=container-anti-pattern
QCA::CertificateInfo issuer1 = client1.issuerInfo(); QCA::CertificateInfo issuer1 = client1.issuerInfo();
QCOMPARE( issuer1.isEmpty(), false ); QCOMPARE( issuer1.isEmpty(), false );
QCOMPARE( issuer1.values(QCA::Country).contains("de") == true, true ); QCOMPARE( issuer1.values(QCA::Country).contains("de") == true, true ); //clazy:exclude=container-anti-pattern
QCOMPARE( issuer1.values(QCA::Organization).contains("InsecureTestCertificate") == true, true ); QCOMPARE( issuer1.values(QCA::Organization).contains("InsecureTestCertificate") == true, true ); //clazy:exclude=container-anti-pattern
QCOMPARE( issuer1.values(QCA::CommonName).contains("For Tests Only") == true, true ); QCOMPARE( issuer1.values(QCA::CommonName).contains("For Tests Only") == true, true ); //clazy:exclude=container-anti-pattern
QByteArray subjectKeyID = QCA::Hex().stringToArray("889E7EF729719D7B280F361AAE6D00D39DE1AADB").toByteArray(); QByteArray subjectKeyID = QCA::Hex().stringToArray("889E7EF729719D7B280F361AAE6D00D39DE1AADB").toByteArray();
QCOMPARE( client1.subjectKeyId(), subjectKeyID ); QCOMPARE( client1.subjectKeyId(), subjectKeyID );
@ -365,16 +365,16 @@ void CertUnitTest::checkClientCerts()
QCA::CertificateInfo subject2 = client2.subjectInfo(); QCA::CertificateInfo subject2 = client2.subjectInfo();
QCOMPARE( subject2.isEmpty(), false ); QCOMPARE( subject2.isEmpty(), false );
QVERIFY( subject2.values(QCA::Country).contains("US") ); QVERIFY( subject2.values(QCA::Country).contains("US") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject2.values(QCA::Organization).contains("Qca Development and Test") ); QVERIFY( subject2.values(QCA::Organization).contains("Qca Development and Test") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject2.values(QCA::OrganizationalUnit).contains("Certificate Generation Section") ); QVERIFY( subject2.values(QCA::OrganizationalUnit).contains("Certificate Generation Section") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject2.values(QCA::CommonName).contains("Qca Test Client Certificate") ); QVERIFY( subject2.values(QCA::CommonName).contains("Qca Test Client Certificate") ); //clazy:exclude=container-anti-pattern
QCA::CertificateInfo issuer2 = client2.issuerInfo(); QCA::CertificateInfo issuer2 = client2.issuerInfo();
QCOMPARE( issuer2.isEmpty(), false ); QCOMPARE( issuer2.isEmpty(), false );
QVERIFY( issuer2.values(QCA::Country).contains("AU") ); QVERIFY( issuer2.values(QCA::Country).contains("AU") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer2.values(QCA::Organization).contains("Qca Development and Test") ); QVERIFY( issuer2.values(QCA::Organization).contains("Qca Development and Test") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer2.values(QCA::CommonName).contains("Qca Test Root Certificate") ); QVERIFY( issuer2.values(QCA::CommonName).contains("Qca Test Root Certificate") ); //clazy:exclude=container-anti-pattern
QByteArray subjectKeyID = QCA::Hex().stringToArray("1e604e03127d287ba40427a961b428a2d09b50d1").toByteArray(); QByteArray subjectKeyID = QCA::Hex().stringToArray("1e604e03127d287ba40427a961b428a2d09b50d1").toByteArray();
QCOMPARE( client2.subjectKeyId(), subjectKeyID ); QCOMPARE( client2.subjectKeyId(), subjectKeyID );
@ -545,16 +545,16 @@ void CertUnitTest::altName()
QCA::CertificateInfo subject1 = client1.subjectInfo(); QCA::CertificateInfo subject1 = client1.subjectInfo();
QCOMPARE( subject1.isEmpty(), false ); QCOMPARE( subject1.isEmpty(), false );
QVERIFY( subject1.values(QCA::Country).contains("US") ); QVERIFY( subject1.values(QCA::Country).contains("US") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::Organization).contains("Test Certificates") ); QVERIFY( subject1.values(QCA::Organization).contains("Test Certificates") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::CommonName).contains("Valid RFC822 nameConstraints EE Certificate Test21") ); QVERIFY( subject1.values(QCA::CommonName).contains("Valid RFC822 nameConstraints EE Certificate Test21") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::Email).contains("Test21EE@mailserver.testcertificates.gov") ); QVERIFY( subject1.values(QCA::Email).contains("Test21EE@mailserver.testcertificates.gov") ); //clazy:exclude=container-anti-pattern
QCA::CertificateInfo issuer1 = client1.issuerInfo(); QCA::CertificateInfo issuer1 = client1.issuerInfo();
QCOMPARE( issuer1.isEmpty(), false ); QCOMPARE( issuer1.isEmpty(), false );
QVERIFY( issuer1.values(QCA::Country).contains("US") ); QVERIFY( issuer1.values(QCA::Country).contains("US") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer1.values(QCA::Organization).contains("Test Certificates") ); QVERIFY( issuer1.values(QCA::Organization).contains("Test Certificates") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer1.values(QCA::CommonName).contains("nameConstraints RFC822 CA1") ); QVERIFY( issuer1.values(QCA::CommonName).contains("nameConstraints RFC822 CA1") ); //clazy:exclude=container-anti-pattern
QByteArray subjectKeyID = QCA::Hex().stringToArray("b4200d42cd95ea87d463d54f0ed6d10fe5b73bfb").toByteArray(); QByteArray subjectKeyID = QCA::Hex().stringToArray("b4200d42cd95ea87d463d54f0ed6d10fe5b73bfb").toByteArray();
QCOMPARE( client1.subjectKeyId(), subjectKeyID ); QCOMPARE( client1.subjectKeyId(), subjectKeyID );
@ -599,21 +599,21 @@ void CertUnitTest::extXMPP()
QCA::CertificateInfo subject1 = client1.subjectInfo(); QCA::CertificateInfo subject1 = client1.subjectInfo();
QCOMPARE( subject1.isEmpty(), false ); QCOMPARE( subject1.isEmpty(), false );
QVERIFY( subject1.values(QCA::Country).contains("US") ); QVERIFY( subject1.values(QCA::Country).contains("US") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::Organization).contains("Jabber, Inc.") ); QVERIFY( subject1.values(QCA::Organization).contains("Jabber, Inc.") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::Locality).contains("Denver") ); QVERIFY( subject1.values(QCA::Locality).contains("Denver") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::State).contains("Colorado") ); QVERIFY( subject1.values(QCA::State).contains("Colorado") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::CommonName).contains("demo.jabber.com") ); QVERIFY( subject1.values(QCA::CommonName).contains("demo.jabber.com") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::DNS).contains("demo.jabber.com") ); QVERIFY( subject1.values(QCA::DNS).contains("demo.jabber.com") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::XMPP).contains("demo.jabber.com") ); QVERIFY( subject1.values(QCA::XMPP).contains("demo.jabber.com") ); //clazy:exclude=container-anti-pattern
QCA::CertificateInfo issuer1 = client1.issuerInfo(); QCA::CertificateInfo issuer1 = client1.issuerInfo();
QCOMPARE( issuer1.isEmpty(), false ); QCOMPARE( issuer1.isEmpty(), false );
QVERIFY( issuer1.values(QCA::Country).contains("US") ); QVERIFY( issuer1.values(QCA::Country).contains("US") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer1.values(QCA::Organization).contains("Jabber, Inc.") ); QVERIFY( issuer1.values(QCA::Organization).contains("Jabber, Inc.") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer1.values(QCA::Locality).contains("Denver") ); QVERIFY( issuer1.values(QCA::Locality).contains("Denver") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer1.values(QCA::State).contains("Colorado") ); QVERIFY( issuer1.values(QCA::State).contains("Colorado") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer1.values(QCA::CommonName).contains("demo.jabber.com") ); QVERIFY( issuer1.values(QCA::CommonName).contains("demo.jabber.com") ); //clazy:exclude=container-anti-pattern
} }
} }
} }
@ -662,19 +662,19 @@ void CertUnitTest::altNames76()
QCA::CertificateInfo subject1 = client1.subjectInfo(); QCA::CertificateInfo subject1 = client1.subjectInfo();
QCOMPARE( subject1.isEmpty(), false ); QCOMPARE( subject1.isEmpty(), false );
QVERIFY( subject1.values(QCA::Country).contains("SE") ); QVERIFY( subject1.values(QCA::Country).contains("SE") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::Organization).contains("Stockholms universitet") ); QVERIFY( subject1.values(QCA::Organization).contains("Stockholms universitet") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::CommonName).contains("sip1.su.se") ); QVERIFY( subject1.values(QCA::CommonName).contains("sip1.su.se") ); //clazy:exclude=container-anti-pattern
QCOMPARE( subject1.values(QCA::Email).count(), 0 ); QCOMPARE( subject1.values(QCA::Email).count(), 0 ); //clazy:exclude=container-anti-pattern
QCOMPARE( subject1.values(QCA::DNS).count(), 8 ); QCOMPARE( subject1.values(QCA::DNS).count(), 8 ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::DNS).contains("incomingproxy.sip.su.se") ); QVERIFY( subject1.values(QCA::DNS).contains("incomingproxy.sip.su.se") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::DNS).contains("incomingproxy1.sip.su.se") ); QVERIFY( subject1.values(QCA::DNS).contains("incomingproxy1.sip.su.se") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::DNS).contains("outgoingproxy.sip.su.se") ); QVERIFY( subject1.values(QCA::DNS).contains("outgoingproxy.sip.su.se") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::DNS).contains("outgoingproxy1.sip.su.se") ); QVERIFY( subject1.values(QCA::DNS).contains("outgoingproxy1.sip.su.se") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::DNS).contains("out.sip.su.se") ); QVERIFY( subject1.values(QCA::DNS).contains("out.sip.su.se") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::DNS).contains("appserver.sip.su.se") ); QVERIFY( subject1.values(QCA::DNS).contains("appserver.sip.su.se") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::DNS).contains("appserver1.sip.su.se") ); QVERIFY( subject1.values(QCA::DNS).contains("appserver1.sip.su.se") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::DNS).contains("sip1.su.se") ); QVERIFY( subject1.values(QCA::DNS).contains("sip1.su.se") ); //clazy:exclude=container-anti-pattern
QVERIFY( client1.matchesHostName("incomingproxy.sip.su.se") ); QVERIFY( client1.matchesHostName("incomingproxy.sip.su.se") );
QVERIFY( client1.matchesHostName("incomingproxy1.sip.su.se") ); QVERIFY( client1.matchesHostName("incomingproxy1.sip.su.se") );
@ -687,11 +687,11 @@ void CertUnitTest::altNames76()
QCA::CertificateInfo issuer1 = client1.issuerInfo(); QCA::CertificateInfo issuer1 = client1.issuerInfo();
QCOMPARE( issuer1.isEmpty(), false ); QCOMPARE( issuer1.isEmpty(), false );
QVERIFY( issuer1.values(QCA::Country).contains("SE") ); QVERIFY( issuer1.values(QCA::Country).contains("SE") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer1.values(QCA::Organization).contains("Stockholms universitet") ); QVERIFY( issuer1.values(QCA::Organization).contains("Stockholms universitet") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer1.values(QCA::CommonName).contains("Stockholm University CA") ); QVERIFY( issuer1.values(QCA::CommonName).contains("Stockholm University CA") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer1.values(QCA::URI).contains("http://ca.su.se") ); QVERIFY( issuer1.values(QCA::URI).contains("http://ca.su.se") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer1.values(QCA::Email).contains("ca@su.se") ); QVERIFY( issuer1.values(QCA::Email).contains("ca@su.se") ); //clazy:exclude=container-anti-pattern
QByteArray subjectKeyID = QCA::Hex().stringToArray("3a5c5cd1cc2c9edf73f73bd81b59b1eab83035c5").toByteArray(); QByteArray subjectKeyID = QCA::Hex().stringToArray("3a5c5cd1cc2c9edf73f73bd81b59b1eab83035c5").toByteArray();
QCOMPARE( client1.subjectKeyId(), subjectKeyID ); QCOMPARE( client1.subjectKeyId(), subjectKeyID );
@ -800,15 +800,15 @@ void CertUnitTest::checkExpiredServerCerts()
QCA::CertificateInfo subject1 = server1.subjectInfo(); QCA::CertificateInfo subject1 = server1.subjectInfo();
QCOMPARE( subject1.isEmpty(), false ); QCOMPARE( subject1.isEmpty(), false );
QCOMPARE( subject1.values(QCA::Country).contains("de") == true, true ); QCOMPARE( subject1.values(QCA::Country).contains("de") == true, true ); //clazy:exclude=container-anti-pattern
QCOMPARE( subject1.values(QCA::Organization).contains("InsecureTestCertificate") == true, true ); QCOMPARE( subject1.values(QCA::Organization).contains("InsecureTestCertificate") == true, true ); //clazy:exclude=container-anti-pattern
QCOMPARE( subject1.values(QCA::CommonName).contains("Insecure Server Cert") == true, true ); QCOMPARE( subject1.values(QCA::CommonName).contains("Insecure Server Cert") == true, true ); //clazy:exclude=container-anti-pattern
QCA::CertificateInfo issuer1 = server1.issuerInfo(); QCA::CertificateInfo issuer1 = server1.issuerInfo();
QCOMPARE( issuer1.isEmpty(), false ); QCOMPARE( issuer1.isEmpty(), false );
QCOMPARE( issuer1.values(QCA::Country).contains("de") == true, true ); QCOMPARE( issuer1.values(QCA::Country).contains("de") == true, true ); //clazy:exclude=container-anti-pattern
QCOMPARE( issuer1.values(QCA::Organization).contains("InsecureTestCertificate") == true, true ); QCOMPARE( issuer1.values(QCA::Organization).contains("InsecureTestCertificate") == true, true ); //clazy:exclude=container-anti-pattern
QCOMPARE( issuer1.values(QCA::CommonName).contains("For Tests Only") == true, true ); QCOMPARE( issuer1.values(QCA::CommonName).contains("For Tests Only") == true, true ); //clazy:exclude=container-anti-pattern
QByteArray subjectKeyID = QCA::Hex().stringToArray("0234E2C906F6E0B44253BE04C0CBA7823A6DB509").toByteArray(); QByteArray subjectKeyID = QCA::Hex().stringToArray("0234E2C906F6E0B44253BE04C0CBA7823A6DB509").toByteArray();
QCOMPARE( server1.subjectKeyId(), subjectKeyID ); QCOMPARE( server1.subjectKeyId(), subjectKeyID );
@ -903,17 +903,17 @@ void CertUnitTest::checkServerCerts()
QCA::CertificateInfo subject1 = server1.subjectInfo(); QCA::CertificateInfo subject1 = server1.subjectInfo();
QCOMPARE( subject1.isEmpty(), false ); QCOMPARE( subject1.isEmpty(), false );
QVERIFY( subject1.values(QCA::Country).contains("IL") ); QVERIFY( subject1.values(QCA::Country).contains("IL") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::Organization).contains("Qca Development and Test") ); QVERIFY( subject1.values(QCA::Organization).contains("Qca Development and Test") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::OrganizationalUnit).contains("Server Management Section") ); QVERIFY( subject1.values(QCA::OrganizationalUnit).contains("Server Management Section") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject1.values(QCA::CommonName).contains("Qca Server Test certificate") ); QVERIFY( subject1.values(QCA::CommonName).contains("Qca Server Test certificate") ); //clazy:exclude=container-anti-pattern
QCA::CertificateInfo issuer1 = server1.issuerInfo(); QCA::CertificateInfo issuer1 = server1.issuerInfo();
QCOMPARE( issuer1.isEmpty(), false ); QCOMPARE( issuer1.isEmpty(), false );
QVERIFY( issuer1.values(QCA::Country).contains("AU") ); QVERIFY( issuer1.values(QCA::Country).contains("AU") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer1.values(QCA::Organization).contains("Qca Development and Test") ); QVERIFY( issuer1.values(QCA::Organization).contains("Qca Development and Test") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer1.values(QCA::OrganizationalUnit).contains("Certificate Generation Section") ); QVERIFY( issuer1.values(QCA::OrganizationalUnit).contains("Certificate Generation Section") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer1.values(QCA::CommonName).contains("Qca Test Root Certificate") ); QVERIFY( issuer1.values(QCA::CommonName).contains("Qca Test Root Certificate") ); //clazy:exclude=container-anti-pattern
QByteArray subjectKeyID = QCA::Hex().stringToArray("819870c8b81eab53e72d0446b65790aa0d3eab1a").toByteArray(); QByteArray subjectKeyID = QCA::Hex().stringToArray("819870c8b81eab53e72d0446b65790aa0d3eab1a").toByteArray();
QCOMPARE( server1.subjectKeyId(), subjectKeyID ); QCOMPARE( server1.subjectKeyId(), subjectKeyID );
@ -994,9 +994,9 @@ void CertUnitTest::crl()
QCA::CertificateInfo issuer = crl1.issuerInfo(); QCA::CertificateInfo issuer = crl1.issuerInfo();
QCOMPARE( issuer.isEmpty(), false ); QCOMPARE( issuer.isEmpty(), false );
QVERIFY( issuer.values(QCA::Country).contains("de") ); QVERIFY( issuer.values(QCA::Country).contains("de") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer.values(QCA::Organization).contains("InsecureTestCertificate") ); QVERIFY( issuer.values(QCA::Organization).contains("InsecureTestCertificate") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer.values(QCA::CommonName).contains("For Tests Only") ); QVERIFY( issuer.values(QCA::CommonName).contains("For Tests Only") ); //clazy:exclude=container-anti-pattern
// No keyid extension on this crl // No keyid extension on this crl
QCOMPARE( QCA::arrayToHex( crl1.issuerKeyId() ), QString("") ); QCOMPARE( QCA::arrayToHex( crl1.issuerKeyId() ), QString("") );
@ -1053,9 +1053,9 @@ void CertUnitTest::crl2()
QCA::CertificateInfo issuer = crl1.issuerInfo(); QCA::CertificateInfo issuer = crl1.issuerInfo();
QCOMPARE( issuer.isEmpty(), false ); QCOMPARE( issuer.isEmpty(), false );
QVERIFY( issuer.values(QCA::Country).contains("US") ); QVERIFY( issuer.values(QCA::Country).contains("US") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer.values(QCA::Organization).contains("Test Certificates") ); QVERIFY( issuer.values(QCA::Organization).contains("Test Certificates") ); //clazy:exclude=container-anti-pattern
QVERIFY( issuer.values(QCA::CommonName).contains("Good CA") ); QVERIFY( issuer.values(QCA::CommonName).contains("Good CA") ); //clazy:exclude=container-anti-pattern
QCOMPARE( crl1.thisUpdate(), QDateTime(QDate(2001, 4, 19), QTime(14, 57, 20), Qt::UTC) ); QCOMPARE( crl1.thisUpdate(), QDateTime(QDate(2001, 4, 19), QTime(14, 57, 20), Qt::UTC) );
QCOMPARE( crl1.nextUpdate(), QDateTime(QDate(2011, 4, 19), QTime(14, 57, 20), Qt::UTC) ); QCOMPARE( crl1.nextUpdate(), QDateTime(QDate(2011, 4, 19), QTime(14, 57, 20), Qt::UTC) );
@ -1125,12 +1125,12 @@ void CertUnitTest::csr()
QCOMPARE( csr1.provider()->name(), provider ); QCOMPARE( csr1.provider()->name(), provider );
QCA::CertificateInfo subject = csr1.subjectInfo(); QCA::CertificateInfo subject = csr1.subjectInfo();
QCOMPARE( subject.isEmpty(), false ); QCOMPARE( subject.isEmpty(), false );
QVERIFY( subject.values(QCA::Country).contains("AU") ); QVERIFY( subject.values(QCA::Country).contains("AU") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject.values(QCA::State).contains("Victoria") ); QVERIFY( subject.values(QCA::State).contains("Victoria") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject.values(QCA::Locality).contains("Mitcham") ); QVERIFY( subject.values(QCA::Locality).contains("Mitcham") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject.values(QCA::Organization).contains("GE Interlogix") ); QVERIFY( subject.values(QCA::Organization).contains("GE Interlogix") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject.values(QCA::OrganizationalUnit).contains("Engineering") ); QVERIFY( subject.values(QCA::OrganizationalUnit).contains("Engineering") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject.values(QCA::CommonName).contains("coldfire") ); QVERIFY( subject.values(QCA::CommonName).contains("coldfire") ); //clazy:exclude=container-anti-pattern
QCA::PublicKey pkey = csr1.subjectPublicKey(); QCA::PublicKey pkey = csr1.subjectPublicKey();
QCOMPARE( pkey.isNull(), false ); QCOMPARE( pkey.isNull(), false );
@ -1163,12 +1163,12 @@ void CertUnitTest::csr2()
QCOMPARE( csr1.provider()->name(), provider ); QCOMPARE( csr1.provider()->name(), provider );
QCA::CertificateInfo subject = csr1.subjectInfo(); QCA::CertificateInfo subject = csr1.subjectInfo();
QCOMPARE( subject.isEmpty(), false ); QCOMPARE( subject.isEmpty(), false );
QVERIFY( subject.values(QCA::Country).contains("AI") ); QVERIFY( subject.values(QCA::Country).contains("AI") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject.values(QCA::State).contains("Hutt River Province") ); QVERIFY( subject.values(QCA::State).contains("Hutt River Province") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject.values(QCA::Locality).contains("Lesser Internet") ); QVERIFY( subject.values(QCA::Locality).contains("Lesser Internet") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject.values(QCA::Organization).contains("My Company Ltd") ); QVERIFY( subject.values(QCA::Organization).contains("My Company Ltd") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject.values(QCA::OrganizationalUnit).contains("Backwater Branch Office") ); QVERIFY( subject.values(QCA::OrganizationalUnit).contains("Backwater Branch Office") ); //clazy:exclude=container-anti-pattern
QVERIFY( subject.values(QCA::CommonName).contains("FirstName Surname") ); QVERIFY( subject.values(QCA::CommonName).contains("FirstName Surname") ); //clazy:exclude=container-anti-pattern
QCA::PublicKey pkey = csr1.subjectPublicKey(); QCA::PublicKey pkey = csr1.subjectPublicKey();
QCOMPARE( pkey.isNull(), false ); QCOMPARE( pkey.isNull(), false );