1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* vim: set ts=2 et sw=2 tw=80: */
3 /* This Source Code Form is subject to the terms of the Mozilla Public
4 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
5 * You can obtain one at http://mozilla.org/MPL/2.0/. */
7 include protocol PVerifySSLServerCert;
8 include protocol PSelectTLSClientAuthCert;
9 include protocol PIPCClientCerts;
10 include protocol PWebSocketConnection;
14 using mozilla::OriginAttributes from "mozilla/ipc/BackgroundUtils.h";
20 * PSocketProcessBackground is the top level IPC protocol between
21 * a background task queue in the socket process and the parent process.
22 * We use this to create several IPC protocols between the socket process
23 * and the parent process.
26 sync protocol PSocketProcessBackground
29 async InitVerifySSLServerCert(
30 Endpoint<PVerifySSLServerCertParent> aEndpoint,
31 ByteArray[] aPeerCertChain,
34 OriginAttributes aOriginAttributes,
35 ByteArray? aStapledOCSPResponse,
36 ByteArray? aSctsFromTLSExtension,
37 DelegatedCredentialInfoArg? aDcInfo,
38 uint32_t aProviderFlags,
39 uint32_t aCertVerifierFlags);
41 async InitSelectTLSClientAuthCert(
42 Endpoint<PSelectTLSClientAuthCertParent> aEndpoint,
44 OriginAttributes aOriginAttributes,
46 uint32_t aProviderFlags,
47 uint32_t aProviderTlsFlags,
48 ByteArray aServerCertBytes,
52 async InitIPCClientCerts(Endpoint<PIPCClientCertsParent> aEndpoint);
54 async InitWebSocketConnection(Endpoint<PWebSocketConnectionParent> aEndpoint,
55 uint32_t aListenerId);
59 } // namespace mozilla