diff options
Diffstat (limited to '')
-rw-r--r-- | src/core/hle/service/ssl/ssl_types.h | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/src/core/hle/service/ssl/ssl_types.h b/src/core/hle/service/ssl/ssl_types.h new file mode 100644 index 000000000..dbc3dbf64 --- /dev/null +++ b/src/core/hle/service/ssl/ssl_types.h @@ -0,0 +1,107 @@ +// SPDX-FileCopyrightText: Copyright 2024 yuzu Emulator Project +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "common/common_types.h" + +namespace Service::SSL { + +enum class CaCertificateId : s32 { + All = -1, + NintendoCAG3 = 1, + NintendoClass2CAG3 = 2, + NintendoRootCAG4 = 3, + AmazonRootCA1 = 1000, + StarfieldServicesRootCertificateAuthorityG2 = 1001, + AddTrustExternalCARoot = 1002, + COMODOCertificationAuthority = 1003, + UTNDATACorpSGC = 1004, + UTNUSERFirstHardware = 1005, + BaltimoreCyberTrustRoot = 1006, + CybertrustGlobalRoot = 1007, + VerizonGlobalRootCA = 1008, + DigiCertAssuredIDRootCA = 1009, + DigiCertAssuredIDRootG2 = 1010, + DigiCertGlobalRootCA = 1011, + DigiCertGlobalRootG2 = 1012, + DigiCertHighAssuranceEVRootCA = 1013, + EntrustnetCertificationAuthority2048 = 1014, + EntrustRootCertificationAuthority = 1015, + EntrustRootCertificationAuthorityG2 = 1016, + GeoTrustGlobalCA2 = 1017, + GeoTrustGlobalCA = 1018, + GeoTrustPrimaryCertificationAuthorityG3 = 1019, + GeoTrustPrimaryCertificationAuthority = 1020, + GlobalSignRootCA = 1021, + GlobalSignRootCAR2 = 1022, + GlobalSignRootCAR3 = 1023, + GoDaddyClass2CertificationAuthority = 1024, + GoDaddyRootCertificateAuthorityG2 = 1025, + StarfieldClass2CertificationAuthority = 1026, + StarfieldRootCertificateAuthorityG2 = 1027, + thawtePrimaryRootCAG3 = 1028, + thawtePrimaryRootCA = 1029, + VeriSignClass3PublicPrimaryCertificationAuthorityG3 = 1030, + VeriSignClass3PublicPrimaryCertificationAuthorityG5 = 1031, + VeriSignUniversalRootCertificationAuthority = 1032, + DSTRootCAX3 = 1033, + USERTrustRsaCertificationAuthority = 1034, + ISRGRootX10 = 1035, + USERTrustEccCertificationAuthority = 1036, + COMODORsaCertificationAuthority = 1037, + COMODOEccCertificationAuthority = 1038, + AmazonRootCA2 = 1039, + AmazonRootCA3 = 1040, + AmazonRootCA4 = 1041, + DigiCertAssuredIDRootG3 = 1042, + DigiCertGlobalRootG3 = 1043, + DigiCertTrustedRootG4 = 1044, + EntrustRootCertificationAuthorityEC1 = 1045, + EntrustRootCertificationAuthorityG4 = 1046, + GlobalSignECCRootCAR4 = 1047, + GlobalSignECCRootCAR5 = 1048, + GlobalSignECCRootCAR6 = 1049, + GTSRootR1 = 1050, + GTSRootR2 = 1051, + GTSRootR3 = 1052, + GTSRootR4 = 1053, + SecurityCommunicationRootCA = 1054, + GlobalSignRootE4 = 1055, + GlobalSignRootR4 = 1056, + TTeleSecGlobalRootClass2 = 1057, + DigiCertTLSECCP384RootG5 = 1058, + DigiCertTLSRSA4096RootG5 = 1059, +}; + +enum class TrustedCertStatus : s32 { + Invalid = -1, + Removed = 0, + EnabledTrusted = 1, + EnabledNotTrusted = 2, + Revoked = 3, +}; + +struct BuiltInCertificateInfo { + CaCertificateId cert_id; + TrustedCertStatus status; + u64 der_size; + u64 der_offset; +}; +static_assert(sizeof(BuiltInCertificateInfo) == 0x18, "BuiltInCertificateInfo has incorrect size."); + +struct CertStoreHeader { + u32 magic; + u32 num_entries; +}; +static_assert(sizeof(CertStoreHeader) == 0x8, "CertStoreHeader has incorrect size."); + +struct CertStoreEntry { + CaCertificateId certificate_id; + TrustedCertStatus certificate_status; + u32 der_size; + u32 der_offset; +}; +static_assert(sizeof(CertStoreEntry) == 0x10, "CertStoreEntry has incorrect size."); + +} // namespace Service::SSL |