xref: /openbmc/bmcweb/features/redfish/include/generated/enums/aggregation_source.hpp (revision 40e9b92ec19acffb46f83a6e55b18974da5d708e)
1*40e9b92eSEd Tanous // SPDX-License-Identifier: Apache-2.0
2*40e9b92eSEd Tanous // SPDX-FileCopyrightText: Copyright OpenBMC Authors
3853c0dc5SEd Tanous #pragma once
4853c0dc5SEd Tanous #include <nlohmann/json.hpp>
5853c0dc5SEd Tanous 
6853c0dc5SEd Tanous namespace aggregation_source
7853c0dc5SEd Tanous {
8853c0dc5SEd Tanous // clang-format off
9853c0dc5SEd Tanous 
10853c0dc5SEd Tanous enum class SNMPAuthenticationProtocols{
11853c0dc5SEd Tanous     Invalid,
12853c0dc5SEd Tanous     None,
13853c0dc5SEd Tanous     CommunityString,
14853c0dc5SEd Tanous     HMAC_MD5,
15853c0dc5SEd Tanous     HMAC_SHA96,
16853c0dc5SEd Tanous     HMAC128_SHA224,
17853c0dc5SEd Tanous     HMAC192_SHA256,
18853c0dc5SEd Tanous     HMAC256_SHA384,
19853c0dc5SEd Tanous     HMAC384_SHA512,
20853c0dc5SEd Tanous };
21853c0dc5SEd Tanous 
22853c0dc5SEd Tanous enum class SNMPEncryptionProtocols{
23853c0dc5SEd Tanous     Invalid,
24853c0dc5SEd Tanous     None,
25853c0dc5SEd Tanous     CBC_DES,
26853c0dc5SEd Tanous     CFB128_AES128,
272ae81db9SGunnar Mills     CFB128_AES192,
282ae81db9SGunnar Mills     CFB128_AES256,
29853c0dc5SEd Tanous };
30853c0dc5SEd Tanous 
31853c0dc5SEd Tanous enum class AggregationType{
32853c0dc5SEd Tanous     Invalid,
33853c0dc5SEd Tanous     NotificationsOnly,
34853c0dc5SEd Tanous     Full,
35853c0dc5SEd Tanous };
36853c0dc5SEd Tanous 
37a8d8f9d8SEd Tanous enum class UserAuthenticationMethod{
38a8d8f9d8SEd Tanous     Invalid,
39a8d8f9d8SEd Tanous     PublicKey,
40a8d8f9d8SEd Tanous     Password,
41a8d8f9d8SEd Tanous };
42a8d8f9d8SEd Tanous 
43853c0dc5SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(SNMPAuthenticationProtocols, {
44853c0dc5SEd Tanous     {SNMPAuthenticationProtocols::Invalid, "Invalid"},
45853c0dc5SEd Tanous     {SNMPAuthenticationProtocols::None, "None"},
46853c0dc5SEd Tanous     {SNMPAuthenticationProtocols::CommunityString, "CommunityString"},
47853c0dc5SEd Tanous     {SNMPAuthenticationProtocols::HMAC_MD5, "HMAC_MD5"},
48853c0dc5SEd Tanous     {SNMPAuthenticationProtocols::HMAC_SHA96, "HMAC_SHA96"},
49853c0dc5SEd Tanous     {SNMPAuthenticationProtocols::HMAC128_SHA224, "HMAC128_SHA224"},
50853c0dc5SEd Tanous     {SNMPAuthenticationProtocols::HMAC192_SHA256, "HMAC192_SHA256"},
51853c0dc5SEd Tanous     {SNMPAuthenticationProtocols::HMAC256_SHA384, "HMAC256_SHA384"},
52853c0dc5SEd Tanous     {SNMPAuthenticationProtocols::HMAC384_SHA512, "HMAC384_SHA512"},
53853c0dc5SEd Tanous });
54853c0dc5SEd Tanous 
55853c0dc5SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(SNMPEncryptionProtocols, {
56853c0dc5SEd Tanous     {SNMPEncryptionProtocols::Invalid, "Invalid"},
57853c0dc5SEd Tanous     {SNMPEncryptionProtocols::None, "None"},
58853c0dc5SEd Tanous     {SNMPEncryptionProtocols::CBC_DES, "CBC_DES"},
59853c0dc5SEd Tanous     {SNMPEncryptionProtocols::CFB128_AES128, "CFB128_AES128"},
602ae81db9SGunnar Mills     {SNMPEncryptionProtocols::CFB128_AES192, "CFB128_AES192"},
612ae81db9SGunnar Mills     {SNMPEncryptionProtocols::CFB128_AES256, "CFB128_AES256"},
62853c0dc5SEd Tanous });
63853c0dc5SEd Tanous 
64853c0dc5SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(AggregationType, {
65853c0dc5SEd Tanous     {AggregationType::Invalid, "Invalid"},
66853c0dc5SEd Tanous     {AggregationType::NotificationsOnly, "NotificationsOnly"},
67853c0dc5SEd Tanous     {AggregationType::Full, "Full"},
68853c0dc5SEd Tanous });
69853c0dc5SEd Tanous 
70a8d8f9d8SEd Tanous NLOHMANN_JSON_SERIALIZE_ENUM(UserAuthenticationMethod, {
71a8d8f9d8SEd Tanous     {UserAuthenticationMethod::Invalid, "Invalid"},
72a8d8f9d8SEd Tanous     {UserAuthenticationMethod::PublicKey, "PublicKey"},
73a8d8f9d8SEd Tanous     {UserAuthenticationMethod::Password, "Password"},
74a8d8f9d8SEd Tanous });
75a8d8f9d8SEd Tanous 
76853c0dc5SEd Tanous }
77853c0dc5SEd Tanous // clang-format on
78