xref: /openbmc/bmcweb/features/redfish/include/generated/enums/manager_account.hpp (revision c6d7a45d427f9a6d9e761afcf305761dca60d7cf)
140e9b92eSEd Tanous // SPDX-License-Identifier: Apache-2.0
240e9b92eSEd Tanous // SPDX-FileCopyrightText: Copyright OpenBMC Authors
30ec8b83dSEd Tanous #pragma once
40ec8b83dSEd Tanous #include <nlohmann/json.hpp>
50ec8b83dSEd Tanous 
60ec8b83dSEd Tanous namespace manager_account
70ec8b83dSEd Tanous {
80ec8b83dSEd Tanous // clang-format off
90ec8b83dSEd Tanous 
100ec8b83dSEd Tanous enum class AccountTypes{
110ec8b83dSEd Tanous     Invalid,
120ec8b83dSEd Tanous     Redfish,
130ec8b83dSEd Tanous     SNMP,
140ec8b83dSEd Tanous     OEM,
150ec8b83dSEd Tanous     HostConsole,
160ec8b83dSEd Tanous     ManagerConsole,
170ec8b83dSEd Tanous     IPMI,
180ec8b83dSEd Tanous     KVMIP,
190ec8b83dSEd Tanous     VirtualMedia,
200ec8b83dSEd Tanous     WebUI,
21*c6d7a45dSGunnar Mills     ControlPanel,
220ec8b83dSEd Tanous };
230ec8b83dSEd Tanous 
240ec8b83dSEd Tanous enum class SNMPAuthenticationProtocols{
250ec8b83dSEd Tanous     Invalid,
260ec8b83dSEd Tanous     None,
270ec8b83dSEd Tanous     HMAC_MD5,
280ec8b83dSEd Tanous     HMAC_SHA96,
290ec8b83dSEd Tanous     HMAC128_SHA224,
300ec8b83dSEd Tanous     HMAC192_SHA256,
310ec8b83dSEd Tanous     HMAC256_SHA384,
320ec8b83dSEd Tanous     HMAC384_SHA512,
330ec8b83dSEd Tanous };
340ec8b83dSEd Tanous 
350ec8b83dSEd Tanous enum class SNMPEncryptionProtocols{
360ec8b83dSEd Tanous     Invalid,
370ec8b83dSEd Tanous     None,
380ec8b83dSEd Tanous     CBC_DES,
390ec8b83dSEd Tanous     CFB128_AES128,
402ae81db9SGunnar Mills     CFB128_AES192,
412ae81db9SGunnar Mills     CFB128_AES256,
420ec8b83dSEd Tanous };
430ec8b83dSEd Tanous 
440ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(AccountTypes, {
450ec8b83dSEd Tanous     {AccountTypes::Invalid, "Invalid"},
460ec8b83dSEd Tanous     {AccountTypes::Redfish, "Redfish"},
470ec8b83dSEd Tanous     {AccountTypes::SNMP, "SNMP"},
480ec8b83dSEd Tanous     {AccountTypes::OEM, "OEM"},
490ec8b83dSEd Tanous     {AccountTypes::HostConsole, "HostConsole"},
500ec8b83dSEd Tanous     {AccountTypes::ManagerConsole, "ManagerConsole"},
510ec8b83dSEd Tanous     {AccountTypes::IPMI, "IPMI"},
520ec8b83dSEd Tanous     {AccountTypes::KVMIP, "KVMIP"},
530ec8b83dSEd Tanous     {AccountTypes::VirtualMedia, "VirtualMedia"},
540ec8b83dSEd Tanous     {AccountTypes::WebUI, "WebUI"},
55*c6d7a45dSGunnar Mills     {AccountTypes::ControlPanel, "ControlPanel"},
560ec8b83dSEd Tanous });
570ec8b83dSEd Tanous 
580ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(SNMPAuthenticationProtocols, {
590ec8b83dSEd Tanous     {SNMPAuthenticationProtocols::Invalid, "Invalid"},
600ec8b83dSEd Tanous     {SNMPAuthenticationProtocols::None, "None"},
610ec8b83dSEd Tanous     {SNMPAuthenticationProtocols::HMAC_MD5, "HMAC_MD5"},
620ec8b83dSEd Tanous     {SNMPAuthenticationProtocols::HMAC_SHA96, "HMAC_SHA96"},
630ec8b83dSEd Tanous     {SNMPAuthenticationProtocols::HMAC128_SHA224, "HMAC128_SHA224"},
640ec8b83dSEd Tanous     {SNMPAuthenticationProtocols::HMAC192_SHA256, "HMAC192_SHA256"},
650ec8b83dSEd Tanous     {SNMPAuthenticationProtocols::HMAC256_SHA384, "HMAC256_SHA384"},
660ec8b83dSEd Tanous     {SNMPAuthenticationProtocols::HMAC384_SHA512, "HMAC384_SHA512"},
670ec8b83dSEd Tanous });
680ec8b83dSEd Tanous 
690ec8b83dSEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(SNMPEncryptionProtocols, {
700ec8b83dSEd Tanous     {SNMPEncryptionProtocols::Invalid, "Invalid"},
710ec8b83dSEd Tanous     {SNMPEncryptionProtocols::None, "None"},
720ec8b83dSEd Tanous     {SNMPEncryptionProtocols::CBC_DES, "CBC_DES"},
730ec8b83dSEd Tanous     {SNMPEncryptionProtocols::CFB128_AES128, "CFB128_AES128"},
742ae81db9SGunnar Mills     {SNMPEncryptionProtocols::CFB128_AES192, "CFB128_AES192"},
752ae81db9SGunnar Mills     {SNMPEncryptionProtocols::CFB128_AES256, "CFB128_AES256"},
760ec8b83dSEd Tanous });
770ec8b83dSEd Tanous 
780ec8b83dSEd Tanous }
790ec8b83dSEd Tanous // clang-format on
80