gecko-dev/security/certverifier/CTDiversityPolicy.cpp
Sergei Chernov b3b80907d0 Bug 1320566 - Certificate Transparency - implement CT Policy. r=Dolske,keeler
MozReview-Commit-ID: LcMdKcgBStG

--HG--
extra : rebase_source : 38b2531e9abb8a84d32c437d13fab881f2c49f18
2017-01-09 08:22:28 +02:00

45 lines
1.3 KiB
C++

/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "CTDiversityPolicy.h"
namespace mozilla { namespace ct {
typedef mozilla::pkix::Result Result;
Result
GetCTLogOperatorsFromVerifiedSCTList(const VerifiedSCTList& list,
CTLogOperatorList& operators)
{
operators.clear();
for (const VerifiedSCT& verifiedSct : list) {
CTLogOperatorId sctLogOperatorId = verifiedSct.logOperatorId;
bool alreadyAdded = false;
for (CTLogOperatorId id : operators) {
if (id == sctLogOperatorId) {
alreadyAdded = true;
break;
}
}
if (!alreadyAdded) {
if (!operators.append(sctLogOperatorId)) {
return Result::FATAL_ERROR_NO_MEMORY;
}
}
}
return Success;
}
Result
CTDiversityPolicy::GetDependentOperators(const UniqueCERTCertList& builtChain,
const CTLogOperatorList& operators,
CTLogOperatorList& dependentOperators)
{
return Success;
}
} } // namespace mozilla::ct