Bug 1935611 - Fix libyuv/libpng link failed for loongarch64. r=glandium,tnikkel,ng
[gecko.git] / security / manager / ssl / PSMIPCTypes.ipdlh
blob54bce317c2039706d475f5e444238cf5b06b6502
1 /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* vim: set sw=2 ts=8 et tw=80 ft=cpp : */
4 /* This Source Code Form is subject to the terms of the Mozilla Public
5  * License, v. 2.0. If a copy of the MPL was not distributed with this
6  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
8 namespace mozilla {
9 namespace psm {
11 struct ByteArray{
12   uint8_t[] data;
15 // For ECKey, RSAKey, and Certificate, slotType indicates which slot this object
16 // should exist on:
17 // 1: modern (supports EC, RSA-PSS)
18 // 2: legacy (only supports RSA PKCS#1v1.5)
20 struct ECKey{
21   uint8_t[] params; // the EC point representing this key
22   uint8_t[] cert; // the encoded certificate containing this key
23   uint32_t slotType;
26 struct RSAKey{
27   uint8_t[] modulus; // the modulus of this RSA key
28   uint8_t[] cert; // the encoded certificate containing this key
29   uint32_t slotType;
32 struct Certificate{
33   uint8_t[] der; // the encoding of this certificate
34   uint32_t slotType;
37 // Helper type for sending keys and certificates over IPC for use by IPC client
38 // certs.
39 union IPCClientCertObject{
40   ECKey;
41   RSAKey;
42   Certificate;
45 struct DelegatedCredentialInfoArg {
46   uint32_t scheme;
47   uint32_t authKeyBits;
50 } // namespace psm
51 } // namespace mozilla