redfish_codegen/models/manager_network_protocol/v1_9_1/
snmp_protocol.rs

1// Generated by redfish-codegen. Do not modify.
2
3use crate::models;
4
5/// The settings for a network protocol associated with a manager.
6#[derive(Clone, Debug, serde::Deserialize, serde::Serialize)]
7#[derive(derivative::Derivative)]
8#[derivative(Default)]
9pub struct SNMPProtocol {
10    #[serde(rename = "AuthenticationProtocol")]
11    #[serde(default, skip_serializing_if = "Option::is_none")]
12    pub authentication_protocol: Option<models::manager_network_protocol::v1_9_1::SNMPAuthenticationProtocols>,
13    #[serde(rename = "CommunityAccessMode")]
14    #[serde(default, skip_serializing_if = "Option::is_none")]
15    pub community_access_mode: Option<models::manager_network_protocol::v1_9_1::SNMPCommunityAccessMode>,
16    /// The SNMP community strings.
17    #[serde(rename = "CommunityStrings")]
18    #[serde(default, skip_serializing_if = "Option::is_none")]
19    pub community_strings: Option<Vec<models::manager_network_protocol::v1_9_1::SNMPCommunity>>,
20    /// Indicates if access via SNMPv1 is enabled.
21    #[serde(rename = "EnableSNMPv1")]
22    #[serde(default, skip_serializing_if = "Option::is_none")]
23    pub enable_snm_pv_1: Option<bool>,
24    /// Indicates if access via SNMPv2c is enabled.
25    #[serde(rename = "EnableSNMPv2c")]
26    #[serde(default, skip_serializing_if = "Option::is_none")]
27    pub enable_snm_pv_2: Option<bool>,
28    /// Indicates if access via SNMPv3 is enabled.
29    #[serde(rename = "EnableSNMPv3")]
30    #[serde(default, skip_serializing_if = "Option::is_none")]
31    pub enable_snm_pv_3: Option<bool>,
32    #[serde(rename = "EncryptionProtocol")]
33    #[serde(default, skip_serializing_if = "Option::is_none")]
34    pub encryption_protocol: Option<models::manager_network_protocol::v1_9_1::SNMPEncryptionProtocols>,
35    #[serde(rename = "EngineId")]
36    #[serde(default, skip_serializing_if = "Option::is_none")]
37    pub engine_id: Option<models::manager_network_protocol::v1_9_1::EngineId>,
38    /// Indicates if the community strings should be hidden.
39    #[serde(rename = "HideCommunityStrings")]
40    #[serde(default, skip_serializing_if = "Option::is_none")]
41    pub hide_community_strings: Option<bool>,
42    /// The protocol port.
43    #[serde(rename = "Port")]
44    #[serde(default, skip_serializing_if = "Option::is_none")]
45    pub port: Option<i64>,
46    /// An indication of whether the protocol is enabled.
47    #[serde(rename = "ProtocolEnabled")]
48    #[serde(default, skip_serializing_if = "Option::is_none")]
49    pub protocol_enabled: Option<bool>,
50}
51
52impl crate::Metadata<'static> for SNMPProtocol {
53    const JSON_SCHEMA: &'static str = "ManagerNetworkProtocol.v1_9_1.json";
54}