#include "services/network/public/cpp/cert_verifier/mojo_cert_verifier.h"
#include <memory>
#include "base/functional/callback.h"
#include "base/memory/raw_ptr.h"
#include "mojo/public/cpp/bindings/pending_remote.h"
#include "mojo/public/cpp/bindings/receiver.h"
#include "net/base/net_errors.h"
#include "services/network/public/mojom/cert_verifier_service.mojom.h"
namespace cert_verifier {
namespace {
class CertVerifierRequestImpl : public mojom::CertVerifierRequest,
public net::CertVerifier::Request { … };
}
class MojoCertVerifier::MojoReconnector
: public mojom::URLLoaderFactoryConnector { … };
MojoCertVerifier::MojoCertVerifier(
mojo::PendingRemote<mojom::CertVerifierService> mojo_cert_verifier,
mojo::PendingReceiver<mojom::CertVerifierServiceClient> client_receiver,
mojo::PendingRemote<network::mojom::URLLoaderFactory> url_loader_factory,
base::RepeatingCallback<void(
mojo::PendingReceiver<network::mojom::URLLoaderFactory>)> reconnector)
: … { … }
MojoCertVerifier::~MojoCertVerifier() = default;
int MojoCertVerifier::Verify(
const net::CertVerifier::RequestParams& params,
net::CertVerifyResult* verify_result,
net::CompletionOnceCallback callback,
std::unique_ptr<net::CertVerifier::Request>* out_req,
const net::NetLogWithSource& net_log) { … }
void MojoCertVerifier::SetConfig(const net::CertVerifier::Config& config) { … }
void MojoCertVerifier::AddObserver(Observer* observer) { … }
void MojoCertVerifier::RemoveObserver(Observer* observer) { … }
void MojoCertVerifier::OnCertVerifierChanged() { … }
void MojoCertVerifier::FlushForTesting() { … }
}