From 3559fa16f5b5966386a353b6dd824134f9c2c13b Mon Sep 17 00:00:00 2001 From: Mark Sanders Date: Thu, 21 Mar 2024 13:56:50 -0400 Subject: [PATCH] refactor(opinetcommon): port config api for basic operation Signed-off-by: Mark Sanders --- network/opinetcommon/README.md | 24 + network/opinetcommon/networkethernet.proto | 217 +++ ...terfaces.proto => networkinterfaces.proto} | 47 +- network/opinetcommon/networkvlan.proto | 166 ++ network/opinetcommon/v1alpha1/autogen.md | 853 ++++++++-- .../v1alpha1/gen/go/networkethernet.pb.go | 1288 +++++++++++++++ ...terfaces.pb.go => networkinterfaces.pb.go} | 860 +++++----- ...es.pb.gw.go => networkinterfaces.pb.gw.go} | 6 +- ...rpc.pb.go => networkinterfaces_grpc.pb.go} | 10 +- .../v1alpha1/gen/go/networkvlan.pb.go | 1391 +++++++++++++++++ .../gen/python/networkethernet_pb2.py | 57 + .../gen/python/networkethernet_pb2_grpc.py | 4 + ...rfaces_pb2.py => networkinterfaces_pb2.py} | 88 +- ..._grpc.py => networkinterfaces_pb2_grpc.py} | 38 +- .../v1alpha1/gen/python/networkvlan_pb2.py | 57 + .../gen/python/networkvlan_pb2_grpc.py | 4 + 16 files changed, 4469 insertions(+), 641 deletions(-) create mode 100644 network/opinetcommon/networkethernet.proto rename network/opinetcommon/{openconfig_interfaces.proto => networkinterfaces.proto} (86%) create mode 100644 network/opinetcommon/networkvlan.proto create mode 100644 network/opinetcommon/v1alpha1/gen/go/networkethernet.pb.go rename network/opinetcommon/v1alpha1/gen/go/{openconfig_interfaces.pb.go => networkinterfaces.pb.go} (58%) rename network/opinetcommon/v1alpha1/gen/go/{openconfig_interfaces.pb.gw.go => networkinterfaces.pb.gw.go} (98%) rename network/opinetcommon/v1alpha1/gen/go/{openconfig_interfaces_grpc.pb.go => networkinterfaces_grpc.pb.go} (97%) create mode 100644 network/opinetcommon/v1alpha1/gen/go/networkvlan.pb.go create mode 100644 network/opinetcommon/v1alpha1/gen/python/networkethernet_pb2.py create mode 100644 network/opinetcommon/v1alpha1/gen/python/networkethernet_pb2_grpc.py rename network/opinetcommon/v1alpha1/gen/python/{openconfig_interfaces_pb2.py => networkinterfaces_pb2.py} (53%) rename network/opinetcommon/v1alpha1/gen/python/{openconfig_interfaces_pb2_grpc.py => networkinterfaces_pb2_grpc.py} (72%) create mode 100644 network/opinetcommon/v1alpha1/gen/python/networkvlan_pb2.py create mode 100644 network/opinetcommon/v1alpha1/gen/python/networkvlan_pb2_grpc.py diff --git a/network/opinetcommon/README.md b/network/opinetcommon/README.md index 604b170f..8bca4831 100644 --- a/network/opinetcommon/README.md +++ b/network/opinetcommon/README.md @@ -1 +1,25 @@ # OPI Network Common APIs + +The common network capabilities need to build on the general capabilities that exist across various use cases for network operations and configuration. This includes (but is not limited to): + +- Physical ports +- Logical ports +- Layer 2 interfaces, switches, bridges +- Layer 3 routing operations + +The objective of the network common API is to define the characteristics that are common for the general network operations and capture them in this common API. These characteristics are the building blocks that can be used across use cases and allow the basic setup of the physical and logical ports, VLANs, LAG interfaces, switches, etc. + +## Demos + +## Clients + +## Reference implementations + +## Basic Network Tenants + +### Port/Interface + +## Documentation for reference to other specifications and implementations + +- Openconfig +- diff --git a/network/opinetcommon/networkethernet.proto b/network/opinetcommon/networkethernet.proto new file mode 100644 index 00000000..68c607be --- /dev/null +++ b/network/opinetcommon/networkethernet.proto @@ -0,0 +1,217 @@ +// SPDX-License-Identifier: Apache-2.0 +// Copyright (c) 2024 Dell Inc, or its subsidiaries. +// +// Derived from the OpenConfig interfaces model github.com/openconfig/public/release/models/interfaces +// +// (-- api-linter: core::0141::forbidden-types=disabled +// aip.dev/not-precedent: counters, mtu, index must be uint and not int. --) +syntax = "proto3"; + +package opi_api.network.opinetcommon.v1alpha1; + +option java_package = "opi_api.network.opinetcommon.v1alpha1"; +option java_multiple_files = true; +option java_outer_classname = "NetworkEthernetProto"; + +option go_package = "github.com/opiproject/opi-api/network/opinetcommon/v1alpha1/gen/go"; + +import "networkvlan.proto"; + +import "google/api/field_behavior.proto"; + +// Ethernet Configuration +message EthernetConfig { + // MAC address to assign to the Ethernet Interface if not assigned + string mac_address = 1 [(google.api.field_behavior) = OPTIONAL]; + // Set to TRUE to request autonegotiate the transmission parameters + // with the peer interface + bool auto_negotiate = 2 [(google.api.field_behavior) = OPTIONAL]; + // Used when full autonegotiation is not desired by setting to TRUE + // and setting auto_negotiate to FALSE. It is ignored when auto-negotiate + // is set to TRUE. + bool standalone_link_training = 3 [(google.api.field_behavior) = OPTIONAL]; + // Optionally sets the duplex mode that is advertised to the peer interface + EthDuplexMode duplex_mode = 4 [(google.api.field_behavior) = OPTIONAL]; + // Optionally sets the port speed that is advertised to the peer interface + EthPortSpeed port_speed = 5 [(google.api.field_behavior) = OPTIONAL]; + // Override for the negotiated flow control on the interface + bool enable_flow_control = 6 [(google.api.field_behavior) = OPTIONAL]; + // FEC applied to the physical channel of the interface + EthFecMode fec_mode = 7 [(google.api.field_behavior) = OPTIONAL]; +} + +// Ethernet receive frame distribution counters +message EthernetInDistribution { + // Receive counter for 64 byte frames + uint64 rx_frames_octets64 = 1; + // Receive counter for 65 to 127 byte frames + uint64 rx_frames_octets65_to127 = 2; + // Receive counter for 128 to 255 byte frames + uint64 rx_frames_octets128_to255 = 3; + // receive counter for 256 to 511 byte frames + uint64 rx_frames_octets256_to511 = 4; + // receive counter for 512 to 1023 byte frames + uint64 rx_frames_octets512_to1023 = 5; + // receive counter for 1024 to 1518 byte frames + uint64 rx_frames_octets1024_to1518 = 6; +} + +// Ethernet Interface Counters +message EthernetCounters { + // received mac control frame counter + uint64 rx_mac_control_frames = 1; + // received mac pause frame counter + uint64 rx_mac_pause_frames = 2; + // frames received that were oversized on the interface + // (larger then 1518 octets) + uint64 rx_oversize_frames = 3; + // frames received that were undersized on the interface + // (smaller then 64 octets) + uint64 rx_undersize_frames = 4; + // Number of jabber frames received on the interface. + // Jabber frames are typically defined as oversize frames which also + // have a bad CRC + uint64 rx_jabber_frames = 5; + // The total number of frames received that were less than 64 octets + // in length (excluding framing bits but including FCS octets) + // and had either a bad Frame Check Sequence (FCS) with an integral + // number of octets (FCS Error) or a bad FCS with a non-integral number + // of octets (Alignment Error) + uint64 rx_fragment_frames = 6; + // Number of 802.1q tagged frames received on the interface + uint64 rx_ieee8021q_frames = 7; + // The total number of frames received that had FCS errors + uint64 rx_crc_errors = 8; + // The number of received errored blocks + uint64 rx_block_errors = 9; + // The number of received errored frames due to a carrier issue + uint64 rx_carrier_errors = 10; + // The number of received errored frames due to interrupted transmission + // issue + uint64 rx_interrupted_tx = 11; + // The number of received errored frames due to late collision issue + uint64 rx_late_collision = 12; + // The number of received errored frames due to MAC errors received + uint64 rx_mac_errors_rx = 13; + // The number of received errored frames due to single collision issue + uint64 rx_single_collision = 14; + // The number of received errored frames due to symbol error + uint64 rx_symbol_error = 15; + // The total number frames received that are well-formed but dropped due + // to exceeding the maximum frame size on the interface + uint64 rx_maxsize_exceeded = 16; + // MAC layer control frames sent on the interface + uint64 out_mac_control_frames = 17; + // MAC layer PAUSE frames sent on the interface + uint64 out_mac_pause_frames = 18; + // Number of 802.1q tagged frames sent on the interface + uint64 out_ieee8021q_frames = 19; + // The number of sent errored frames due to MAC errors transmitted + uint64 out_mac_errors_tx = 20; + // Receive Frame Distribution counters + EthernetInDistribution eth_rx_distribution = 21; +} + +// Ethernet interface state settings +message EthernetState { + // MAC address to assign to the Ethernet Interface if not assigned or + // being overridden. + string mac_address = 1; + // Set to TRUE to request autonegotiate the transmission parameters + // with the peer interface + bool auto_negotiate = 2; + // Used when full autonegotiation is not desired by setting to TRUE + // and setting auto_negotiate to FALSE. It is ignored when auto-negotiate + // is set to TRUE. + bool standalone_link_training = 3; + // The duplex mode that is negotiated or set interface + EthDuplexMode duplex_mode = 4; + // The port speed that is negotiated or set for the interface + EthPortSpeed port_speed = 5; + // Override for the negotiated flow control on the interface + bool enable_flow_control = 6; + // FEC applied to the physical channel of the interface + EthFecMode fec_mode = 7; + // Hardware MAC address defined for the interface + string hw_mac_address = 8; + // Negotiated Duplex mode for the interface + EthDuplexMode negotiated_duplex_mode = 9; + // Negotiated Port Speed for the interface + EthPortSpeed negotiated_port_speed = 10; + // Ethernet port counters + EthernetCounters counters = 11; +} + +// Ethernet Interface +message EthernetIf { + // Ethernet Interface Configuration settings + EthernetConfig config = 1; + // Ethernet Interface State information + EthernetState state = 2; + // Switched VLAN Interface configuration for interface + VlanSwitchedIf switched_vlan = 3; +} + +// Ethernet Duplex Mode Definitions +enum EthDuplexMode { + // Unspecified - interface will negotiate duplex speed directly + ETH_DUPLEX_MODE_UNSPECIFIED = 0; + // Specify Full Duplex mode in autonegotiation + ETH_DUPLEX_MODE_FULL = 1; + // Specify Half Duplex mode in autonegotiation + ETH_DUPLEX_MODE_HALF = 2; +} + +// Ethernet Port Speed Definitions +enum EthPortSpeed { + // Unspecified - interface will negotiate port speed with the peer interface + ETH_PORT_SPEED_UNSPECIFIED = 0; + // 10M port speed + ETH_PORT_SPEED_10M = 1; + // 100M port speed + ETH_PORT_SPEED_100M = 2; + // 1G port speed + ETH_PORT_SPEED_1G = 3; + // 2.5G port speed + ETH_PORT_SPEED_2500M = 4; + // 5G port speed + ETH_PORT_SPEED_5G = 5; + // 10G port speed + ETH_PORT_SPEED_10G = 6; + // 25G port speed + ETH_PORT_SPEED_25G = 7; + // 40G port speed + ETH_PORT_SPEED_40G = 8; + // 50G port speed + ETH_PORT_SPEED_50G = 9; + // 100G port speed + ETH_PORT_SPEED_100G = 10; + // 200G port speed + ETH_PORT_SPEED_200G = 11; + // 400G port speed + ETH_PORT_SPEED_400G = 12; + // 600G port speed + ETH_PORT_SPEED_600G = 13; + // 800G port speed + ETH_PORT_SPEED_800G = 14; + // Interface speed is unknown. Systems may report + // speed UNKNOWN when an interface is down or unpopuplated + ETH_PORT_SPEED_UNKNOWN = 15; +} + +// Ethernet Forward Error Correction Mode Definitions +enum EthFecMode { + // Unspecified + ETH_FEC_MODE_UNSPECIFIED = 0; + // Firecode for NRZ channels with less then 100G + ETH_FEC_MODE_FC = 1; + // RS528 is used for channels with NRZ modulation. This FEC is designed to + // comply with IEEE 802.3, Clause 91. + ETH_FEC_MODE_RS528 = 2; + // RS544 is used for channels with PAM4 modulation + ETH_FEC_MODE_RS544 = 3; + // RS544-2x-interleave is used for channels with PAM4 modulation + ETH_FEC_MODE_RS544_2X_INTERLEAVE = 4; + // FEC is administratively disabled + ETH_FEC_MODE_DISABLED = 5; +} diff --git a/network/opinetcommon/openconfig_interfaces.proto b/network/opinetcommon/networkinterfaces.proto similarity index 86% rename from network/opinetcommon/openconfig_interfaces.proto rename to network/opinetcommon/networkinterfaces.proto index 90e1f237..8f69f43e 100644 --- a/network/opinetcommon/openconfig_interfaces.proto +++ b/network/opinetcommon/networkinterfaces.proto @@ -1,6 +1,8 @@ -// openconfig_interfaces.proto file +// SPDX-License-Identifier: Apache-2.0 +// Copyright (c) 2023-2024 Dell Inc, or its subsidiaries. +// // Derived from the OpenConfig interfaces model github.com/openconfig/public/release/models/interfaces -// Copyright (c) 2023 Dell Inc, or its subsidiaries. +// // (-- api-linter: core::0141::forbidden-types=disabled // aip.dev/not-precedent: counters, mtu, index must be uint and not int. --) syntax = "proto3"; @@ -9,11 +11,14 @@ package opi_api.network.opinetcommon.v1alpha1; option java_package = "opi_api.network.opinetcommon.v1alpha1"; option java_multiple_files = true; -option java_outer_classname = "OpenconfigInterfacesProto"; +option java_outer_classname = "NetworkInterfacesProto"; option go_package = "github.com/opiproject/opi-api/network/opinetcommon/v1alpha1/gen/go"; import "networktypes.proto"; +import "networkvlan.proto"; +import "networkethernet.proto"; + import "google/api/client.proto"; import "google/api/resource.proto"; import "google/api/annotations.proto"; @@ -65,6 +70,8 @@ message Config { string description = 5 [(google.api.field_behavior) = REQUIRED]; // Setting for enabling/disabling the interface bool enabled = 6 [(google.api.field_behavior) = REQUIRED]; + // VLAN Tag Protocol Identifier (TPID) + TpidTypes tpid = 7 [(google.api.field_behavior) = OPTIONAL]; } // Statistics Counters for the interface - ro @@ -103,7 +110,7 @@ message Counters { uint64 out_errors = 16 [(google.api.field_behavior) = OUTPUT_ONLY]; // Carrier transition count uint64 carrier_transitions = 17 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Last Clear + // Timestamp of the last time the interface counters were cleared uint64 last_clear = 18 [(google.api.field_behavior) = OUTPUT_ONLY]; } @@ -132,27 +139,35 @@ message State { OperState oper_state = 9 [(google.api.field_behavior) = OUTPUT_ONLY]; // Last Change uint64 last_change = 10 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Logical interface + // Logical interface - when set to true indicates a logical interface with + // no associated physical port or channel bool logical = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; - // Management interface indicator + // Management interface - when set to true indicates a dedicated management + // interface that is independent of the dataplane interfaces such as an out + // of band management network bool management = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; - // CPU + // CPU interface - when set to true the interface is for traffic handled by + // the system CPU or control plane bool cpu = 13 [(google.api.field_behavior) = OUTPUT_ONLY]; // Interface Statistics Counters Counters counters = 14 [(google.api.field_behavior) = OUTPUT_ONLY]; + // VLAN Tag Protocol Identifier + TpidTypes tpid = 15 [(google.api.field_behavior) = OUTPUT_ONLY]; } //Interface - physical or virtual interface reported +// (-- api-linter: core::0123::resource-annotation=disabled +// aip.dev/not-precedent: the name field is an opaque object --) message NetInterface { option (google.api.resource) = { - type: "opi_api.network.common.v1alpha1/NetInterface" + type: "opi_api.network.opinetcommon.v1alpha1/NetInterface" pattern: "netInterface/{interface}" singular: "netInterface" plural: "netInterfaces" }; // Name of the interface. This is an opaque object that is not // user settable. It is returned by the created object - string name = 1 [(google.api.field_behavior) = IDENTIFIER]; + string name = 1 [(google.api.field_behavior) = IDENTIFIER]; // Configuration settings - rw Config config = 2 [(google.api.field_behavior) = REQUIRED]; // Interface State and Statistics - ro @@ -204,12 +219,18 @@ message NetInterface { // Subinterface State and Statistics State state = 3 [(google.api.field_behavior) = OUTPUT_ONLY]; + + // Subinterface VLAN + VlanIf vlan = 4 [(google.api.field_behavior) = OPTIONAL]; } // Subinterface Settings repeated Subinterface subinterface = 2 [(google.api.field_behavior) = OPTIONAL]; } // Subinterfaces assigned to the interface Subinterfaces subinterfaces = 5 [(google.api.field_behavior) = OPTIONAL]; + + // Ethernet interface + EthernetIf ethernet = 6 [(google.api.field_behavior) = OPTIONAL]; } // Get Interface Request @@ -246,10 +267,10 @@ message ListNetInterfacesResponse { message UpdateNetInterfaceRequest { // Interface update settings NetInterface net_interface = 1 [(google.api.field_behavior) = REQUIRED]; - // The list of fields to update. - google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = OPTIONAL]; - // If set to true, and the object is not found, a new object will be created. - // In this situation, `update_mask` is ignored. + // list of fields to update + google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = OPTIONAL]; + // If set to true, and the object is found, a new object will be created. + // In this situation, 'update_mask' is ignored. bool allow_missing = 3 [(google.api.field_behavior) = OPTIONAL]; } diff --git a/network/opinetcommon/networkvlan.proto b/network/opinetcommon/networkvlan.proto new file mode 100644 index 00000000..526c0103 --- /dev/null +++ b/network/opinetcommon/networkvlan.proto @@ -0,0 +1,166 @@ +// SPDX-License-Identifier: Apache-2.0 +// Copyright (c) 2024 Dell Inc, or its subsidiaries. +// +// Derived from the OpenConfig interfaces model github.com/openconfig/public/release/models/vlan +// +// (-- api-linter: core::0141::forbidden-types=disabled +// aip.dev/not-precedent: counters, mtu, index must be uint and not int. --) +syntax = "proto3"; + +package opi_api.network.opinetcommon.v1alpha1; + +option java_package = "opi_api.network.opinetcommon.v1alpha1"; +option java_multiple_files = true; +option java_outer_classname = "NetworkVlanProto"; + +option go_package = "github.com/opiproject/opi-api/network/opinetcommon/v1alpha1/gen/go"; + +// Switched VLAN Configuration Settings that are part of the Ethernet interface +message SwitchedVlanSetting { + // Setting for the VLAN interface to access or trunk mode + VlanIfMode vlan_interface_mode = 1; + // VLAN ID when the mode is set to trunk mode + uint32 native_vlan = 2; + // VLAN ID when the mode is set to access mode + uint32 access_vlan = 3; + // Allowed VLANs may be specified for trunk mode interfaces + string trunk_vlans = 4; +} + +// VLAN settings associated with the Ethernet Interface +message VlanSwitchedIf { + // Configuration parameters for VLAN + SwitchedVlanSetting config = 1; + // State variables for VLAN + SwitchedVlanSetting state = 2; +} + +// VLAN Ingress and Egress Settings +message VlanIngressEgressSetting { + // VLAN stack behaviors for packets that arrive or are transmitted on + // this subinterface after their VLAN idenitifer(s) have been matched + VlanStackAction vlanstackaction = 1; + // VLAN identifier - (1-4094) and will utilize 16 bits max + uint32 vlan_id = 2; + // The tag protocol identifier field (TPID) that is used by the action + // configured by 'vlan-stack-action' when modifying the VLAN stack. + TpidTypes tpid = 3; +} + +// VLAN Interface Configuration +message VlanIf { + // Configuration for VLAN tag matching schemes + message VlanMatch { + // Single Tagged matching of exact VLAN identifier + message SingleTagged { + // Configuration for matching single-tagged packets with an exact + // VLAN identifier + message SingleTagConfig { + // Single tag VLAN Identifier (1-4094) + uint32 vlan_id = 1; + } + // Configuration for exact matching of single tagged packets + SingleTagConfig config = 1; + + // State for matching single-tagged packets with an exact VLAN + message SingleTagState { + // Single tag VLAN Identifier configured (1-4094) + uint32 vlan_id = 1; + } + // State for exact matching of single tagged packets + SingleTagState state = 2; + } + // Single tagged VLAN exact matching + SingleTagged singletagged = 1; + + // Single tagged list matching configuration + message SingleTaggedList { + // Configuration for matching single-tagged packets with a list of + // VLAN identifiers + message TagListConfig { + // List of VLAN identifiers for single-tagged packets + repeated uint32 vlan_id = 1; + } + // Configuration for single tagged VLAN list + TagListConfig config = 1; + + // State for matching single-tagged packets with a list of VLAN + // identifiers + message TagListStatus { + // List of VLAN identifiers configured for single-tagged packets + repeated uint32 vlanid = 1; + } + // State for sintle tagged list + TagListStatus status = 2; + } + // Single tag list VLAN matching + SingleTaggedList singletaggedlist = 2; + + } + // VLAN Tag matching schemes + VlanMatch match = 1; + + // Ingress VLAN stack behaviors for packets that arrive on this subinterface + // after their VLAN idenitifer(s) have been matched + message VlanIngressMapping { + // Configuration for ingress VLAN and label behaviors for packets that + // arrive on this subinterface + VlanIngressEgressSetting config = 1; + // State for ingress VLAN and label behaviors for packets that arrive + // on this subinterface + VlanIngressEgressSetting state = 2; + } + // Ingress VLAN stack behaviors after received packets have matched + VlanIngressMapping ingressmapping = 2; + + // Egress VLAN stack behaviors for packets that are destined for output via + // this subinterface + message VlanEgressMapping { + // Configuration for egress VLAN stack behaviors for packets that are + // destined for output via this subinterface + VlanIngressEgressSetting config = 1; + // State for engress VLAN stack behaviors for packets that are destined + // for output via this subinterface + VlanIngressEgressSetting state = 2; + } + // Egress VLAN stack behaviors for output packets + VlanEgressMapping egressmapping = 3; +} + +// Tag Protocol Identifier (TPID) Types Enumeration +enum TpidTypes { + // Unspecified + TPID_TYPES_UNSPECIFIED = 0; + // Default value for 802.1q single-tagged VLANs + TPID_TYPES_0X8100 = 1; + // Value for 802.1ad provider bridging, QinQ, or stacked VLANs + TPID_TYPES_0X88A8 = 2; + // Alternate TPID value + TPID_TYPES_0X9100 = 3; + // Alternate TPID value + TPID_TYPES_0X9200 = 4; + // Any - Wildcard that matches any of the singly or multiply tagged VLANS + TPID_TYPES_ANY = 5; +} + +// Vlan Stack Action to be performed on the VLAN stack +enum VlanStackAction { + // No action to perform on the VLAN Stack + VLAN_STACK_ACTION_UNSPECIFIED = 0; + // PUSH a VLAN onto the VLAN Stack + VLAN_STACK_ACTION_PUSH = 1; + // POP a VLAN from the VLAN Stack + VLAN_STACK_ACTION_POP = 2; + // SWAP the VLAN at the top of the VLAN Stack + VLAN_STACK_ACTION_SWAP = 3; +} + +// VLAN Interface Mode +enum VlanIfMode { + // Interface Mode Unspecified + VLAN_IF_MODE_UNSPECIFIED = 0; + // Interface mode ACCESS + VLAN_IF_MODE_ACCESS = 1; + // Interface mode TRUNK + VLAN_IF_MODE_TRUNK = 2; +} \ No newline at end of file diff --git a/network/opinetcommon/v1alpha1/autogen.md b/network/opinetcommon/v1alpha1/autogen.md index 82c1f5cb..c865a9b5 100644 --- a/network/opinetcommon/v1alpha1/autogen.md +++ b/network/opinetcommon/v1alpha1/autogen.md @@ -3,6 +3,38 @@ ## Table of Contents +- [networkethernet.proto](#networkethernet-proto) + - [EthernetConfig](#opi_api-network-opinetcommon-v1alpha1-EthernetConfig) + - [EthernetCounters](#opi_api-network-opinetcommon-v1alpha1-EthernetCounters) + - [EthernetIf](#opi_api-network-opinetcommon-v1alpha1-EthernetIf) + - [EthernetInDistribution](#opi_api-network-opinetcommon-v1alpha1-EthernetInDistribution) + - [EthernetState](#opi_api-network-opinetcommon-v1alpha1-EthernetState) + + - [EthDuplexMode](#opi_api-network-opinetcommon-v1alpha1-EthDuplexMode) + - [EthFecMode](#opi_api-network-opinetcommon-v1alpha1-EthFecMode) + - [EthPortSpeed](#opi_api-network-opinetcommon-v1alpha1-EthPortSpeed) + +- [networkinterfaces.proto](#networkinterfaces-proto) + - [Config](#opi_api-network-opinetcommon-v1alpha1-Config) + - [Counters](#opi_api-network-opinetcommon-v1alpha1-Counters) + - [GetNetInterfaceRequest](#opi_api-network-opinetcommon-v1alpha1-GetNetInterfaceRequest) + - [ListNetInterfacesRequest](#opi_api-network-opinetcommon-v1alpha1-ListNetInterfacesRequest) + - [ListNetInterfacesResponse](#opi_api-network-opinetcommon-v1alpha1-ListNetInterfacesResponse) + - [NetInterface](#opi_api-network-opinetcommon-v1alpha1-NetInterface) + - [NetInterface.HoldTime](#opi_api-network-opinetcommon-v1alpha1-NetInterface-HoldTime) + - [NetInterface.HoldTime.HoldConfig](#opi_api-network-opinetcommon-v1alpha1-NetInterface-HoldTime-HoldConfig) + - [NetInterface.HoldTime.HoldState](#opi_api-network-opinetcommon-v1alpha1-NetInterface-HoldTime-HoldState) + - [NetInterface.Subinterfaces](#opi_api-network-opinetcommon-v1alpha1-NetInterface-Subinterfaces) + - [NetInterface.Subinterfaces.Subinterface](#opi_api-network-opinetcommon-v1alpha1-NetInterface-Subinterfaces-Subinterface) + - [NetInterface.Subinterfaces.Subinterface.SubifConfig](#opi_api-network-opinetcommon-v1alpha1-NetInterface-Subinterfaces-Subinterface-SubifConfig) + - [State](#opi_api-network-opinetcommon-v1alpha1-State) + - [UpdateNetInterfaceRequest](#opi_api-network-opinetcommon-v1alpha1-UpdateNetInterfaceRequest) + + - [InterfaceType](#opi_api-network-opinetcommon-v1alpha1-InterfaceType) + - [OperState](#opi_api-network-opinetcommon-v1alpha1-OperState) + + - [NetInterfaceService](#opi_api-network-opinetcommon-v1alpha1-NetInterfaceService) + - [networktypes.proto](#networktypes-proto) - [AddressRange](#opi_api-network-opinetcommon-v1alpha1-AddressRange) - [Encap](#opi_api-network-opinetcommon-v1alpha1-Encap) @@ -33,31 +65,560 @@ - [SecurityRuleAction](#opi_api-network-opinetcommon-v1alpha1-SecurityRuleAction) - [WildcardMatch](#opi_api-network-opinetcommon-v1alpha1-WildcardMatch) -- [openconfig_interfaces.proto](#openconfig_interfaces-proto) - - [Config](#opi_api-network-opinetcommon-v1alpha1-Config) - - [Counters](#opi_api-network-opinetcommon-v1alpha1-Counters) - - [GetNetInterfaceRequest](#opi_api-network-opinetcommon-v1alpha1-GetNetInterfaceRequest) - - [ListNetInterfacesRequest](#opi_api-network-opinetcommon-v1alpha1-ListNetInterfacesRequest) - - [ListNetInterfacesResponse](#opi_api-network-opinetcommon-v1alpha1-ListNetInterfacesResponse) - - [NetInterface](#opi_api-network-opinetcommon-v1alpha1-NetInterface) - - [NetInterface.HoldTime](#opi_api-network-opinetcommon-v1alpha1-NetInterface-HoldTime) - - [NetInterface.HoldTime.HoldConfig](#opi_api-network-opinetcommon-v1alpha1-NetInterface-HoldTime-HoldConfig) - - [NetInterface.HoldTime.HoldState](#opi_api-network-opinetcommon-v1alpha1-NetInterface-HoldTime-HoldState) - - [NetInterface.Subinterfaces](#opi_api-network-opinetcommon-v1alpha1-NetInterface-Subinterfaces) - - [NetInterface.Subinterfaces.Subinterface](#opi_api-network-opinetcommon-v1alpha1-NetInterface-Subinterfaces-Subinterface) - - [NetInterface.Subinterfaces.Subinterface.SubifConfig](#opi_api-network-opinetcommon-v1alpha1-NetInterface-Subinterfaces-Subinterface-SubifConfig) - - [State](#opi_api-network-opinetcommon-v1alpha1-State) - - [UpdateNetInterfaceRequest](#opi_api-network-opinetcommon-v1alpha1-UpdateNetInterfaceRequest) +- [networkvlan.proto](#networkvlan-proto) + - [SwitchedVlanSetting](#opi_api-network-opinetcommon-v1alpha1-SwitchedVlanSetting) + - [VlanIf](#opi_api-network-opinetcommon-v1alpha1-VlanIf) + - [VlanIf.VlanEgressMapping](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanEgressMapping) + - [VlanIf.VlanIngressMapping](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanIngressMapping) + - [VlanIf.VlanMatch](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanMatch) + - [VlanIf.VlanMatch.SingleTagged](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanMatch-SingleTagged) + - [VlanIf.VlanMatch.SingleTagged.SingleTagConfig](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanMatch-SingleTagged-SingleTagConfig) + - [VlanIf.VlanMatch.SingleTagged.SingleTagState](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanMatch-SingleTagged-SingleTagState) + - [VlanIf.VlanMatch.SingleTaggedList](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanMatch-SingleTaggedList) + - [VlanIf.VlanMatch.SingleTaggedList.TagListConfig](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanMatch-SingleTaggedList-TagListConfig) + - [VlanIf.VlanMatch.SingleTaggedList.TagListStatus](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanMatch-SingleTaggedList-TagListStatus) + - [VlanIngressEgressSetting](#opi_api-network-opinetcommon-v1alpha1-VlanIngressEgressSetting) + - [VlanSwitchedIf](#opi_api-network-opinetcommon-v1alpha1-VlanSwitchedIf) - - [InterfaceType](#opi_api-network-opinetcommon-v1alpha1-InterfaceType) - - [OperState](#opi_api-network-opinetcommon-v1alpha1-OperState) - - - [NetInterfaceService](#opi_api-network-opinetcommon-v1alpha1-NetInterfaceService) + - [TpidTypes](#opi_api-network-opinetcommon-v1alpha1-TpidTypes) + - [VlanIfMode](#opi_api-network-opinetcommon-v1alpha1-VlanIfMode) + - [VlanStackAction](#opi_api-network-opinetcommon-v1alpha1-VlanStackAction) - [Scalar Value Types](#scalar-value-types) + +

Top

+ +## networkethernet.proto +SPDX-License-Identifier: Apache-2.0 +Copyright (c) 2024 Dell Inc, or its subsidiaries. + +Derived from the OpenConfig interfaces model github.com/openconfig/public/release/models/interfaces + +(-- api-linter: core::0141::forbidden-types=disabled + aip.dev/not-precedent: counters, mtu, index must be uint and not int. --) + + + + +### EthernetConfig +Ethernet Configuration + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| mac_address | [string](#string) | | MAC address to assign to the Ethernet Interface if not assigned | +| auto_negotiate | [bool](#bool) | | Set to TRUE to request autonegotiate the transmission parameters with the peer interface | +| standalone_link_training | [bool](#bool) | | Used when full autonegotiation is not desired by setting to TRUE and setting auto_negotiate to FALSE. It is ignored when auto-negotiate is set to TRUE. | +| duplex_mode | [EthDuplexMode](#opi_api-network-opinetcommon-v1alpha1-EthDuplexMode) | | Optionally sets the duplex mode that is advertised to the peer interface | +| port_speed | [EthPortSpeed](#opi_api-network-opinetcommon-v1alpha1-EthPortSpeed) | | Optionally sets the port speed that is advertised to the peer interface | +| enable_flow_control | [bool](#bool) | | Override for the negotiated flow control on the interface | +| fec_mode | [EthFecMode](#opi_api-network-opinetcommon-v1alpha1-EthFecMode) | | FEC applied to the physical channel of the interface | + + + + + + + + +### EthernetCounters +Ethernet Interface Counters + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| rx_mac_control_frames | [uint64](#uint64) | | received mac control frame counter | +| rx_mac_pause_frames | [uint64](#uint64) | | received mac pause frame counter | +| rx_oversize_frames | [uint64](#uint64) | | frames received that were oversized on the interface (larger then 1518 octets) | +| rx_undersize_frames | [uint64](#uint64) | | frames received that were undersized on the interface (smaller then 64 octets) | +| rx_jabber_frames | [uint64](#uint64) | | Number of jabber frames received on the interface. Jabber frames are typically defined as oversize frames which also have a bad CRC | +| rx_fragment_frames | [uint64](#uint64) | | The total number of frames received that were less than 64 octets in length (excluding framing bits but including FCS octets) and had either a bad Frame Check Sequence (FCS) with an integral number of octets (FCS Error) or a bad FCS with a non-integral number of octets (Alignment Error) | +| rx_ieee8021q_frames | [uint64](#uint64) | | Number of 802.1q tagged frames received on the interface | +| rx_crc_errors | [uint64](#uint64) | | The total number of frames received that had FCS errors | +| rx_block_errors | [uint64](#uint64) | | The number of received errored blocks | +| rx_carrier_errors | [uint64](#uint64) | | The number of received errored frames due to a carrier issue | +| rx_interrupted_tx | [uint64](#uint64) | | The number of received errored frames due to interrupted transmission issue | +| rx_late_collision | [uint64](#uint64) | | The number of received errored frames due to late collision issue | +| rx_mac_errors_rx | [uint64](#uint64) | | The number of received errored frames due to MAC errors received | +| rx_single_collision | [uint64](#uint64) | | The number of received errored frames due to single collision issue | +| rx_symbol_error | [uint64](#uint64) | | The number of received errored frames due to symbol error | +| rx_maxsize_exceeded | [uint64](#uint64) | | The total number frames received that are well-formed but dropped due to exceeding the maximum frame size on the interface | +| out_mac_control_frames | [uint64](#uint64) | | MAC layer control frames sent on the interface | +| out_mac_pause_frames | [uint64](#uint64) | | MAC layer PAUSE frames sent on the interface | +| out_ieee8021q_frames | [uint64](#uint64) | | Number of 802.1q tagged frames sent on the interface | +| out_mac_errors_tx | [uint64](#uint64) | | The number of sent errored frames due to MAC errors transmitted | +| eth_rx_distribution | [EthernetInDistribution](#opi_api-network-opinetcommon-v1alpha1-EthernetInDistribution) | | Receive Frame Distribution counters | + + + + + + + + +### EthernetIf +Ethernet Interface + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| config | [EthernetConfig](#opi_api-network-opinetcommon-v1alpha1-EthernetConfig) | | Ethernet Interface Configuration settings | +| state | [EthernetState](#opi_api-network-opinetcommon-v1alpha1-EthernetState) | | Ethernet Interface State information | +| switched_vlan | [VlanSwitchedIf](#opi_api-network-opinetcommon-v1alpha1-VlanSwitchedIf) | | Switched VLAN Interface configuration for interface | + + + + + + + + +### EthernetInDistribution +Ethernet receive frame distribution counters + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| rx_frames_octets64 | [uint64](#uint64) | | Receive counter for 64 byte frames | +| rx_frames_octets65_to127 | [uint64](#uint64) | | Receive counter for 65 to 127 byte frames | +| rx_frames_octets128_to255 | [uint64](#uint64) | | Receive counter for 128 to 255 byte frames | +| rx_frames_octets256_to511 | [uint64](#uint64) | | receive counter for 256 to 511 byte frames | +| rx_frames_octets512_to1023 | [uint64](#uint64) | | receive counter for 512 to 1023 byte frames | +| rx_frames_octets1024_to1518 | [uint64](#uint64) | | receive counter for 1024 to 1518 byte frames | + + + + + + + + +### EthernetState +Ethernet interface state settings + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| mac_address | [string](#string) | | MAC address to assign to the Ethernet Interface if not assigned or being overridden. | +| auto_negotiate | [bool](#bool) | | Set to TRUE to request autonegotiate the transmission parameters with the peer interface | +| standalone_link_training | [bool](#bool) | | Used when full autonegotiation is not desired by setting to TRUE and setting auto_negotiate to FALSE. It is ignored when auto-negotiate is set to TRUE. | +| duplex_mode | [EthDuplexMode](#opi_api-network-opinetcommon-v1alpha1-EthDuplexMode) | | The duplex mode that is negotiated or set interface | +| port_speed | [EthPortSpeed](#opi_api-network-opinetcommon-v1alpha1-EthPortSpeed) | | The port speed that is negotiated or set for the interface | +| enable_flow_control | [bool](#bool) | | Override for the negotiated flow control on the interface | +| fec_mode | [EthFecMode](#opi_api-network-opinetcommon-v1alpha1-EthFecMode) | | FEC applied to the physical channel of the interface | +| hw_mac_address | [string](#string) | | Hardware MAC address defined for the interface | +| negotiated_duplex_mode | [EthDuplexMode](#opi_api-network-opinetcommon-v1alpha1-EthDuplexMode) | | Negotiated Duplex mode for the interface | +| negotiated_port_speed | [EthPortSpeed](#opi_api-network-opinetcommon-v1alpha1-EthPortSpeed) | | Negotiated Port Speed for the interface | +| counters | [EthernetCounters](#opi_api-network-opinetcommon-v1alpha1-EthernetCounters) | | Ethernet port counters | + + + + + + + + + + +### EthDuplexMode +Ethernet Duplex Mode Definitions + +| Name | Number | Description | +| ---- | ------ | ----------- | +| ETH_DUPLEX_MODE_UNSPECIFIED | 0 | Unspecified - interface will negotiate duplex speed directly | +| ETH_DUPLEX_MODE_FULL | 1 | Specify Full Duplex mode in autonegotiation | +| ETH_DUPLEX_MODE_HALF | 2 | Specify Half Duplex mode in autonegotiation | + + + + + +### EthFecMode +Ethernet Forward Error Correction Mode Definitions + +| Name | Number | Description | +| ---- | ------ | ----------- | +| ETH_FEC_MODE_UNSPECIFIED | 0 | Unspecified | +| ETH_FEC_MODE_FC | 1 | Firecode for NRZ channels with less then 100G | +| ETH_FEC_MODE_RS528 | 2 | RS528 is used for channels with NRZ modulation. This FEC is designed to comply with IEEE 802.3, Clause 91. | +| ETH_FEC_MODE_RS544 | 3 | RS544 is used for channels with PAM4 modulation | +| ETH_FEC_MODE_RS544_2X_INTERLEAVE | 4 | RS544-2x-interleave is used for channels with PAM4 modulation | +| ETH_FEC_MODE_DISABLED | 5 | FEC is administratively disabled | + + + + + +### EthPortSpeed +Ethernet Port Speed Definitions + +| Name | Number | Description | +| ---- | ------ | ----------- | +| ETH_PORT_SPEED_UNSPECIFIED | 0 | Unspecified - interface will negotiate port speed with the peer interface | +| ETH_PORT_SPEED_10M | 1 | 10M port speed | +| ETH_PORT_SPEED_100M | 2 | 100M port speed | +| ETH_PORT_SPEED_1G | 3 | 1G port speed | +| ETH_PORT_SPEED_2500M | 4 | 2.5G port speed | +| ETH_PORT_SPEED_5G | 5 | 5G port speed | +| ETH_PORT_SPEED_10G | 6 | 10G port speed | +| ETH_PORT_SPEED_25G | 7 | 25G port speed | +| ETH_PORT_SPEED_40G | 8 | 40G port speed | +| ETH_PORT_SPEED_50G | 9 | 50G port speed | +| ETH_PORT_SPEED_100G | 10 | 100G port speed | +| ETH_PORT_SPEED_200G | 11 | 200G port speed | +| ETH_PORT_SPEED_400G | 12 | 400G port speed | +| ETH_PORT_SPEED_600G | 13 | 600G port speed | +| ETH_PORT_SPEED_800G | 14 | 800G port speed | +| ETH_PORT_SPEED_UNKNOWN | 15 | Interface speed is unknown. Systems may report speed UNKNOWN when an interface is down or unpopuplated | + + + + + + + + + + + +

Top

+ +## networkinterfaces.proto +SPDX-License-Identifier: Apache-2.0 +Copyright (c) 2023-2024 Dell Inc, or its subsidiaries. + +Derived from the OpenConfig interfaces model github.com/openconfig/public/release/models/interfaces + +(-- api-linter: core::0141::forbidden-types=disabled + aip.dev/not-precedent: counters, mtu, index must be uint and not int. --) + + + + +### Config +Interface config +(-- api-linter: core::0123::resource-annotation=disabled + aip.dev/not-precedent: the name field is an opaque object --) + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Name of the interface. This is the opaque object used for designating the created interface. | +| type | [InterfaceType](#opi_api-network-opinetcommon-v1alpha1-InterfaceType) | | Type of interface - Ethernet and others | +| mtu | [uint32](#uint32) | | MTU for the interface that can be configured | +| loopback_mode | [bool](#bool) | | Setting the loopback mode of the interface | +| description | [string](#string) | | Description of the interface and usage | +| enabled | [bool](#bool) | | Setting for enabling/disabling the interface | +| tpid | [TpidTypes](#opi_api-network-opinetcommon-v1alpha1-TpidTypes) | | VLAN Tag Protocol Identifier (TPID) | + + + + + + + + +### Counters +Statistics Counters for the interface - ro + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| rx_octets | [uint64](#uint64) | | Received Octet counter | +| rx_packets | [uint64](#uint64) | | Received Packet counter | +| rx_unicast_pkts | [uint64](#uint64) | | Unicast packets received counter | +| rx_broadcast_pkts | [uint64](#uint64) | | Broadcast packets received counter | +| rx_multicast_pkts | [uint64](#uint64) | | multicast packets received counter | +| rx_discards | [uint64](#uint64) | | discarded received packets counter | +| rx_errors | [uint64](#uint64) | | Receive error counter | +| rx_unknown_protos | [uint64](#uint64) | | Unknown received protocol counter | +| rx_fcs_errors | [uint64](#uint64) | | Received FCS error counter | +| out_octets | [uint64](#uint64) | | Transmit octet counter | +| out_packets | [uint64](#uint64) | | Transmit packet counter | +| out_unicast_pkts | [uint64](#uint64) | | Unicast packet transmit counter | +| out_broadcast_pkts | [uint64](#uint64) | | Broadcast packet transmit counter | +| out_multicast_pkts | [uint64](#uint64) | | Multicast packet transmit counter | +| out_discards | [uint64](#uint64) | | Discarded transmit packet counter | +| out_errors | [uint64](#uint64) | | Transmit error counter | +| carrier_transitions | [uint64](#uint64) | | Carrier transition count | +| last_clear | [uint64](#uint64) | | Timestamp of the last time the interface counters were cleared | + + + + + + + + +### GetNetInterfaceRequest +Get Interface Request + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Name of interface requested | + + + + + + + + +### ListNetInterfacesRequest +List Interfaces Request + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| parent | [string](#string) | | parent | +| page_size | [int32](#int32) | | page size | +| page_token | [string](#string) | | page token | + + + + + + + + +### ListNetInterfacesResponse +List of Interfaces Response + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| net_interfaces | [NetInterface](#opi_api-network-opinetcommon-v1alpha1-NetInterface) | repeated | List of interfaces | +| next_page_token | [string](#string) | | next page token | + + + + + + + + +### NetInterface +Interface - physical or virtual interface reported +(-- api-linter: core::0123::resource-annotation=disabled + aip.dev/not-precedent: the name field is an opaque object --) + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Name of the interface. This is an opaque object that is not user settable. It is returned by the created object | +| config | [Config](#opi_api-network-opinetcommon-v1alpha1-Config) | | Configuration settings - rw | +| state | [State](#opi_api-network-opinetcommon-v1alpha1-State) | | Interface State and Statistics - ro | +| holdtime | [NetInterface.HoldTime](#opi_api-network-opinetcommon-v1alpha1-NetInterface-HoldTime) | | Hold Time Settings | +| subinterfaces | [NetInterface.Subinterfaces](#opi_api-network-opinetcommon-v1alpha1-NetInterface-Subinterfaces) | | Subinterfaces assigned to the interface | +| ethernet | [EthernetIf](#opi_api-network-opinetcommon-v1alpha1-EthernetIf) | | Ethernet interface | + + + + + + + + +### NetInterface.HoldTime +Hold Time Settings + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| hold_config | [NetInterface.HoldTime.HoldConfig](#opi_api-network-opinetcommon-v1alpha1-NetInterface-HoldTime-HoldConfig) | | Hold Time Config | +| hold_state | [NetInterface.HoldTime.HoldState](#opi_api-network-opinetcommon-v1alpha1-NetInterface-HoldTime-HoldState) | | Hold State Settings | + + + + + + + + +### NetInterface.HoldTime.HoldConfig +Hold Time Config - rw + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| up | [uint32](#uint32) | | Hold time up | +| down | [uint32](#uint32) | | Hold time down | + + + + + + + + +### NetInterface.HoldTime.HoldState +Hold State Settings - ro + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| up | [uint32](#uint32) | | Hold state up | +| down | [uint32](#uint32) | | Hold state down | + + + + + + + + +### NetInterface.Subinterfaces +Subinterfaces settings - VLAN, etc. + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| subinterface | [NetInterface.Subinterfaces.Subinterface](#opi_api-network-opinetcommon-v1alpha1-NetInterface-Subinterfaces-Subinterface) | repeated | Subinterface Settings | + + + + + + + + +### NetInterface.Subinterfaces.Subinterface +Subinterface settings + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| index | [int64](#int64) | | Subinterface index | +| subif_config | [NetInterface.Subinterfaces.Subinterface.SubifConfig](#opi_api-network-opinetcommon-v1alpha1-NetInterface-Subinterfaces-Subinterface-SubifConfig) | | Subinterface Configuration | +| state | [State](#opi_api-network-opinetcommon-v1alpha1-State) | | Subinterface State and Statistics | +| vlan | [VlanIf](#opi_api-network-opinetcommon-v1alpha1-VlanIf) | | Subinterface VLAN | + + + + + + + + +### NetInterface.Subinterfaces.Subinterface.SubifConfig +Subinterface configuration + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| index | [uint64](#uint64) | | Subinterface Index | +| description | [string](#string) | | Subinterface description | +| enabled | [bool](#bool) | | Subinterface enabled | + + + + + + + + +### State +Interface State information - ro +(-- api-linter: core::0123::resource-annotation=disabled + aip.dev/not-precedent: the name field is an opaque object --) + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| name | [string](#string) | | Name of the interface. This is the opaque object used for designating the created interface. | +| type | [InterfaceType](#opi_api-network-opinetcommon-v1alpha1-InterfaceType) | | Interface type indicator | +| mtu | [uint32](#uint32) | | Configured MTU size | +| loopback_mode | [bool](#bool) | | Configured Loopback mode | +| description | [string](#string) | | Interface description | +| enabled | [bool](#bool) | | Interface enabled indicator | +| ifindex | [uint32](#uint32) | | Interface Index | +| admin_state | [AdminState](#opi_api-network-opinetcommon-v1alpha1-AdminState) | | Admin State | +| oper_state | [OperState](#opi_api-network-opinetcommon-v1alpha1-OperState) | | Operational State | +| last_change | [uint64](#uint64) | | Last Change | +| logical | [bool](#bool) | | Logical interface - when set to true indicates a logical interface with no associated physical port or channel | +| management | [bool](#bool) | | Management interface - when set to true indicates a dedicated management interface that is independent of the dataplane interfaces such as an out of band management network | +| cpu | [bool](#bool) | | CPU interface - when set to true the interface is for traffic handled by the system CPU or control plane | +| counters | [Counters](#opi_api-network-opinetcommon-v1alpha1-Counters) | | Interface Statistics Counters | +| tpid | [TpidTypes](#opi_api-network-opinetcommon-v1alpha1-TpidTypes) | | VLAN Tag Protocol Identifier | + + + + + + + + +### UpdateNetInterfaceRequest +Update Interface Request + + +| Field | Type | Label | Description | +| ----- | ---- | ----- | ----------- | +| net_interface | [NetInterface](#opi_api-network-opinetcommon-v1alpha1-NetInterface) | | Interface update settings | +| update_mask | [google.protobuf.FieldMask](#google-protobuf-FieldMask) | | list of fields to update | +| allow_missing | [bool](#bool) | | If set to true, and the object is found, a new object will be created. In this situation, 'update_mask' is ignored. | + + + + + + + + + + +### InterfaceType +Interface Types Enumeration + +| Name | Number | Description | +| ---- | ------ | ----------- | +| INTERFACE_TYPE_UNSPECIFIED | 0 | Interface Unspecified | +| INTERFACE_TYPE_ETHERNET | 1 | Ethernet Interface | +| INTERFACE_TYPE_LOOPBACK | 2 | Loopback Interface | + + + + + +### OperState +Operational State Enumeration + +| Name | Number | Description | +| ---- | ------ | ----------- | +| OPER_STATE_UNSPECIFIED | 0 | Unspecified | +| OPER_STATE_UP | 2 | Operational Up | +| OPER_STATE_DOWN | 3 | Operational Down | +| OPER_STATE_TESTING | 4 | Operational Testing | +| OPER_STATE_UNKNOWN | 5 | Unknown | +| OPER_STATE_DORMANT | 6 | Dormant | +| OPER_STATE_NOT_PRESENT | 7 | Not Present | +| OPER_STATE_LOWER_LAYER_DOWN | 8 | Lower Layer Down | + + + + + + + + + +### NetInterfaceService +Service functions for Network Interface exported by the server + +| Method Name | Request Type | Response Type | Description | +| ----------- | ------------ | ------------- | ------------| +| GetNetInterface | [GetNetInterfaceRequest](#opi_api-network-opinetcommon-v1alpha1-GetNetInterfaceRequest) | [NetInterface](#opi_api-network-opinetcommon-v1alpha1-NetInterface) | Retrieves the interface information for a given interface | +| ListNetInterfaces | [ListNetInterfacesRequest](#opi_api-network-opinetcommon-v1alpha1-ListNetInterfacesRequest) | [ListNetInterfacesResponse](#opi_api-network-opinetcommon-v1alpha1-ListNetInterfacesResponse) | Retrieves the set of interfaces on the device | +| UpdateNetInterface | [UpdateNetInterfaceRequest](#opi_api-network-opinetcommon-v1alpha1-UpdateNetInterfaceRequest) | [NetInterface](#opi_api-network-opinetcommon-v1alpha1-NetInterface) | A method for setting or changing configuration of an interface | + + + + +

Top

@@ -502,330 +1063,280 @@ WildcardMatch options - +

Top

-## openconfig_interfaces.proto -openconfig_interfaces.proto file -Derived from the OpenConfig interfaces model github.com/openconfig/public/release/models/interfaces -Copyright (c) 2023 Dell Inc, or its subsidiaries. +## networkvlan.proto +SPDX-License-Identifier: Apache-2.0 +Copyright (c) 2024 Dell Inc, or its subsidiaries. + +Derived from the OpenConfig interfaces model github.com/openconfig/public/release/models/vlan + (-- api-linter: core::0141::forbidden-types=disabled aip.dev/not-precedent: counters, mtu, index must be uint and not int. --) - + -### Config -Interface config -(-- api-linter: core::0123::resource-annotation=disabled - aip.dev/not-precedent: the name field is an opaque object --) +### SwitchedVlanSetting +Switched VLAN Configuration Settings that are part of the Ethernet interface | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | -| name | [string](#string) | | Name of the interface. This is the opaque object used for designating the created interface. | -| type | [InterfaceType](#opi_api-network-opinetcommon-v1alpha1-InterfaceType) | | Type of interface - Ethernet and others | -| mtu | [uint32](#uint32) | | MTU for the interface that can be configured | -| loopback_mode | [bool](#bool) | | Setting the loopback mode of the interface | -| description | [string](#string) | | Description of the interface and usage | -| enabled | [bool](#bool) | | Setting for enabling/disabling the interface | +| vlan_interface_mode | [VlanIfMode](#opi_api-network-opinetcommon-v1alpha1-VlanIfMode) | | Setting for the VLAN interface to access or trunk mode | +| native_vlan | [uint32](#uint32) | | VLAN ID when the mode is set to trunk mode | +| access_vlan | [uint32](#uint32) | | VLAN ID when the mode is set to access mode | +| trunk_vlans | [string](#string) | | Allowed VLANs may be specified for trunk mode interfaces | - + -### Counters -Statistics Counters for the interface - ro +### VlanIf +VLAN Interface Configuration | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | -| rx_octets | [uint64](#uint64) | | Received Octet counter | -| rx_packets | [uint64](#uint64) | | Received Packet counter | -| rx_unicast_pkts | [uint64](#uint64) | | Unicast packets received counter | -| rx_broadcast_pkts | [uint64](#uint64) | | Broadcast packets received counter | -| rx_multicast_pkts | [uint64](#uint64) | | multicast packets received counter | -| rx_discards | [uint64](#uint64) | | discarded received packets counter | -| rx_errors | [uint64](#uint64) | | Receive error counter | -| rx_unknown_protos | [uint64](#uint64) | | Unknown received protocol counter | -| rx_fcs_errors | [uint64](#uint64) | | Received FCS error counter | -| out_octets | [uint64](#uint64) | | Transmit octet counter | -| out_packets | [uint64](#uint64) | | Transmit packet counter | -| out_unicast_pkts | [uint64](#uint64) | | Unicast packet transmit counter | -| out_broadcast_pkts | [uint64](#uint64) | | Broadcast packet transmit counter | -| out_multicast_pkts | [uint64](#uint64) | | Multicast packet transmit counter | -| out_discards | [uint64](#uint64) | | Discarded transmit packet counter | -| out_errors | [uint64](#uint64) | | Transmit error counter | -| carrier_transitions | [uint64](#uint64) | | Carrier transition count | -| last_clear | [uint64](#uint64) | | Last Clear | +| match | [VlanIf.VlanMatch](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanMatch) | | VLAN Tag matching schemes | +| ingressmapping | [VlanIf.VlanIngressMapping](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanIngressMapping) | | Ingress VLAN stack behaviors after received packets have matched | +| egressmapping | [VlanIf.VlanEgressMapping](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanEgressMapping) | | Egress VLAN stack behaviors for output packets | - + -### GetNetInterfaceRequest -Get Interface Request +### VlanIf.VlanEgressMapping +Egress VLAN stack behaviors for packets that are destined for output via +this subinterface | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | -| name | [string](#string) | | Name of interface requested | +| config | [VlanIngressEgressSetting](#opi_api-network-opinetcommon-v1alpha1-VlanIngressEgressSetting) | | Configuration for egress VLAN stack behaviors for packets that are destined for output via this subinterface | +| state | [VlanIngressEgressSetting](#opi_api-network-opinetcommon-v1alpha1-VlanIngressEgressSetting) | | State for engress VLAN stack behaviors for packets that are destined for output via this subinterface | - + -### ListNetInterfacesRequest -List Interfaces Request +### VlanIf.VlanIngressMapping +Ingress VLAN stack behaviors for packets that arrive on this subinterface +after their VLAN idenitifer(s) have been matched | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | -| parent | [string](#string) | | parent | -| page_size | [int32](#int32) | | page size | -| page_token | [string](#string) | | page token | +| config | [VlanIngressEgressSetting](#opi_api-network-opinetcommon-v1alpha1-VlanIngressEgressSetting) | | Configuration for ingress VLAN and label behaviors for packets that arrive on this subinterface | +| state | [VlanIngressEgressSetting](#opi_api-network-opinetcommon-v1alpha1-VlanIngressEgressSetting) | | State for ingress VLAN and label behaviors for packets that arrive on this subinterface | - + -### ListNetInterfacesResponse -List of Interfaces Response +### VlanIf.VlanMatch +Configuration for VLAN tag matching schemes | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | -| net_interfaces | [NetInterface](#opi_api-network-opinetcommon-v1alpha1-NetInterface) | repeated | List of interfaces | -| next_page_token | [string](#string) | | next page token | +| singletagged | [VlanIf.VlanMatch.SingleTagged](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanMatch-SingleTagged) | | Single tagged VLAN exact matching | +| singletaggedlist | [VlanIf.VlanMatch.SingleTaggedList](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanMatch-SingleTaggedList) | | Single tag list VLAN matching | - + -### NetInterface -Interface - physical or virtual interface reported +### VlanIf.VlanMatch.SingleTagged +Single Tagged matching of exact VLAN identifier | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | -| name | [string](#string) | | Name of the interface. This is an opaque object that is not user settable. It is returned by the created object | -| config | [Config](#opi_api-network-opinetcommon-v1alpha1-Config) | | Configuration settings - rw | -| state | [State](#opi_api-network-opinetcommon-v1alpha1-State) | | Interface State and Statistics - ro | -| holdtime | [NetInterface.HoldTime](#opi_api-network-opinetcommon-v1alpha1-NetInterface-HoldTime) | | Hold Time Settings | -| subinterfaces | [NetInterface.Subinterfaces](#opi_api-network-opinetcommon-v1alpha1-NetInterface-Subinterfaces) | | Subinterfaces assigned to the interface | +| config | [VlanIf.VlanMatch.SingleTagged.SingleTagConfig](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanMatch-SingleTagged-SingleTagConfig) | | Configuration for exact matching of single tagged packets | +| state | [VlanIf.VlanMatch.SingleTagged.SingleTagState](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanMatch-SingleTagged-SingleTagState) | | State for exact matching of single tagged packets | - + -### NetInterface.HoldTime -Hold Time Settings +### VlanIf.VlanMatch.SingleTagged.SingleTagConfig +Configuration for matching single-tagged packets with an exact +VLAN identifier | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | -| hold_config | [NetInterface.HoldTime.HoldConfig](#opi_api-network-opinetcommon-v1alpha1-NetInterface-HoldTime-HoldConfig) | | Hold Time Config | -| hold_state | [NetInterface.HoldTime.HoldState](#opi_api-network-opinetcommon-v1alpha1-NetInterface-HoldTime-HoldState) | | Hold State Settings | +| vlan_id | [uint32](#uint32) | | Single tag VLAN Identifier (1-4094) | - + -### NetInterface.HoldTime.HoldConfig -Hold Time Config - rw +### VlanIf.VlanMatch.SingleTagged.SingleTagState +State for matching single-tagged packets with an exact VLAN | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | -| up | [uint32](#uint32) | | Hold time up | -| down | [uint32](#uint32) | | Hold time down | +| vlan_id | [uint32](#uint32) | | Single tag VLAN Identifier configured (1-4094) | - + -### NetInterface.HoldTime.HoldState -Hold State Settings - ro +### VlanIf.VlanMatch.SingleTaggedList +Single tagged list matching configuration | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | -| up | [uint32](#uint32) | | Hold state up | -| down | [uint32](#uint32) | | Hold state down | +| config | [VlanIf.VlanMatch.SingleTaggedList.TagListConfig](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanMatch-SingleTaggedList-TagListConfig) | | Configuration for single tagged VLAN list | +| status | [VlanIf.VlanMatch.SingleTaggedList.TagListStatus](#opi_api-network-opinetcommon-v1alpha1-VlanIf-VlanMatch-SingleTaggedList-TagListStatus) | | State for sintle tagged list | - + -### NetInterface.Subinterfaces -Subinterfaces settings - VLAN, etc. +### VlanIf.VlanMatch.SingleTaggedList.TagListConfig +Configuration for matching single-tagged packets with a list of +VLAN identifiers | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | -| subinterface | [NetInterface.Subinterfaces.Subinterface](#opi_api-network-opinetcommon-v1alpha1-NetInterface-Subinterfaces-Subinterface) | repeated | Subinterface Settings | +| vlan_id | [uint32](#uint32) | repeated | List of VLAN identifiers for single-tagged packets | - + -### NetInterface.Subinterfaces.Subinterface -Subinterface settings +### VlanIf.VlanMatch.SingleTaggedList.TagListStatus +State for matching single-tagged packets with a list of VLAN +identifiers | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | -| index | [int64](#int64) | | Subinterface index | -| subif_config | [NetInterface.Subinterfaces.Subinterface.SubifConfig](#opi_api-network-opinetcommon-v1alpha1-NetInterface-Subinterfaces-Subinterface-SubifConfig) | | Subinterface Configuration | -| state | [State](#opi_api-network-opinetcommon-v1alpha1-State) | | Subinterface State and Statistics | +| vlanid | [uint32](#uint32) | repeated | List of VLAN identifiers configured for single-tagged packets | - + -### NetInterface.Subinterfaces.Subinterface.SubifConfig -Subinterface configuration +### VlanIngressEgressSetting +VLAN Ingress and Egress Settings | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | -| index | [uint64](#uint64) | | Subinterface Index | -| description | [string](#string) | | Subinterface description | -| enabled | [bool](#bool) | | Subinterface enabled | +| vlanstackaction | [VlanStackAction](#opi_api-network-opinetcommon-v1alpha1-VlanStackAction) | | VLAN stack behaviors for packets that arrive or are transmitted on this subinterface after their VLAN idenitifer(s) have been matched | +| vlan_id | [uint32](#uint32) | | VLAN identifier - (1-4094) and will utilize 16 bits max | +| tpid | [TpidTypes](#opi_api-network-opinetcommon-v1alpha1-TpidTypes) | | The tag protocol identifier field (TPID) that is used by the action configured by 'vlan-stack-action' when modifying the VLAN stack. | - + -### State -Interface State information - ro -(-- api-linter: core::0123::resource-annotation=disabled - aip.dev/not-precedent: the name field is an opaque object --) +### VlanSwitchedIf +VLAN settings associated with the Ethernet Interface | Field | Type | Label | Description | | ----- | ---- | ----- | ----------- | -| name | [string](#string) | | Name of the interface. This is the opaque object used for designating the created interface. | -| type | [InterfaceType](#opi_api-network-opinetcommon-v1alpha1-InterfaceType) | | Interface type indicator | -| mtu | [uint32](#uint32) | | Configured MTU size | -| loopback_mode | [bool](#bool) | | Configured Loopback mode | -| description | [string](#string) | | Interface description | -| enabled | [bool](#bool) | | Interface enabled indicator | -| ifindex | [uint32](#uint32) | | Interface Index | -| admin_state | [AdminState](#opi_api-network-opinetcommon-v1alpha1-AdminState) | | Admin State | -| oper_state | [OperState](#opi_api-network-opinetcommon-v1alpha1-OperState) | | Operational State | -| last_change | [uint64](#uint64) | | Last Change | -| logical | [bool](#bool) | | Logical interface | -| management | [bool](#bool) | | Management interface indicator | -| cpu | [bool](#bool) | | CPU | -| counters | [Counters](#opi_api-network-opinetcommon-v1alpha1-Counters) | | Interface Statistics Counters | - - - +| config | [SwitchedVlanSetting](#opi_api-network-opinetcommon-v1alpha1-SwitchedVlanSetting) | | Configuration parameters for VLAN | +| state | [SwitchedVlanSetting](#opi_api-network-opinetcommon-v1alpha1-SwitchedVlanSetting) | | State variables for VLAN | - - -### UpdateNetInterfaceRequest -Update Interface Request -| Field | Type | Label | Description | -| ----- | ---- | ----- | ----------- | -| net_interface | [NetInterface](#opi_api-network-opinetcommon-v1alpha1-NetInterface) | | Interface update settings | -| update_mask | [google.protobuf.FieldMask](#google-protobuf-FieldMask) | | The list of fields to update. | -| allow_missing | [bool](#bool) | | If set to true, and the object is not found, a new object will be created. In this situation, `update_mask` is ignored. | + + +### TpidTypes +Tag Protocol Identifier (TPID) Types Enumeration +| Name | Number | Description | +| ---- | ------ | ----------- | +| TPID_TYPES_UNSPECIFIED | 0 | Unspecified | +| TPID_TYPES_0X8100 | 1 | Default value for 802.1q single-tagged VLANs | +| TPID_TYPES_0X88A8 | 2 | Value for 802.1ad provider bridging, QinQ, or stacked VLANs | +| TPID_TYPES_0X9100 | 3 | Alternate TPID value | +| TPID_TYPES_0X9200 | 4 | Alternate TPID value | +| TPID_TYPES_ANY | 5 | Any - Wildcard that matches any of the singly or multiply tagged VLANS | - - + -### InterfaceType -Interface Types Enumeration +### VlanIfMode +VLAN Interface Mode | Name | Number | Description | | ---- | ------ | ----------- | -| INTERFACE_TYPE_UNSPECIFIED | 0 | Interface Unspecified | -| INTERFACE_TYPE_ETHERNET | 1 | Ethernet Interface | -| INTERFACE_TYPE_LOOPBACK | 2 | Loopback Interface | +| VLAN_IF_MODE_UNSPECIFIED | 0 | Interface Mode Unspecified | +| VLAN_IF_MODE_ACCESS | 1 | Interface mode ACCESS | +| VLAN_IF_MODE_TRUNK | 2 | Interface mode TRUNK | - + -### OperState -Operational State Enumeration +### VlanStackAction +Vlan Stack Action to be performed on the VLAN stack | Name | Number | Description | | ---- | ------ | ----------- | -| OPER_STATE_UNSPECIFIED | 0 | Unspecified | -| OPER_STATE_UP | 2 | Operational Up | -| OPER_STATE_DOWN | 3 | Operational Down | -| OPER_STATE_TESTING | 4 | Operational Testing | -| OPER_STATE_UNKNOWN | 5 | Unknown | -| OPER_STATE_DORMANT | 6 | Dormant | -| OPER_STATE_NOT_PRESENT | 7 | Not Present | -| OPER_STATE_LOWER_LAYER_DOWN | 8 | Lower Layer Down | +| VLAN_STACK_ACTION_UNSPECIFIED | 0 | No action to perform on the VLAN Stack | +| VLAN_STACK_ACTION_PUSH | 1 | PUSH a VLAN onto the VLAN Stack | +| VLAN_STACK_ACTION_POP | 2 | POP a VLAN from the VLAN Stack | +| VLAN_STACK_ACTION_SWAP | 3 | SWAP the VLAN at the top of the VLAN Stack | - - - -### NetInterfaceService -Service functions for Network Interface exported by the server - -| Method Name | Request Type | Response Type | Description | -| ----------- | ------------ | ------------- | ------------| -| GetNetInterface | [GetNetInterfaceRequest](#opi_api-network-opinetcommon-v1alpha1-GetNetInterfaceRequest) | [NetInterface](#opi_api-network-opinetcommon-v1alpha1-NetInterface) | Retrieves the interface information for a given interface | -| ListNetInterfaces | [ListNetInterfacesRequest](#opi_api-network-opinetcommon-v1alpha1-ListNetInterfacesRequest) | [ListNetInterfacesResponse](#opi_api-network-opinetcommon-v1alpha1-ListNetInterfacesResponse) | Retrieves the set of interfaces on the device | -| UpdateNetInterface | [UpdateNetInterfaceRequest](#opi_api-network-opinetcommon-v1alpha1-UpdateNetInterfaceRequest) | [NetInterface](#opi_api-network-opinetcommon-v1alpha1-NetInterface) | A method for setting or changing configuration of an interface | - diff --git a/network/opinetcommon/v1alpha1/gen/go/networkethernet.pb.go b/network/opinetcommon/v1alpha1/gen/go/networkethernet.pb.go new file mode 100644 index 00000000..57310784 --- /dev/null +++ b/network/opinetcommon/v1alpha1/gen/go/networkethernet.pb.go @@ -0,0 +1,1288 @@ +// SPDX-License-Identifier: Apache-2.0 +// Copyright (c) 2024 Dell Inc, or its subsidiaries. +// +// Derived from the OpenConfig interfaces model github.com/openconfig/public/release/models/interfaces +// +// (-- api-linter: core::0141::forbidden-types=disabled +// aip.dev/not-precedent: counters, mtu, index must be uint and not int. --) + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.31.0 +// protoc (unknown) +// source: networkethernet.proto + +package _go + +import ( + _ "google.golang.org/genproto/googleapis/api/annotations" + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// Ethernet Duplex Mode Definitions +type EthDuplexMode int32 + +const ( + // Unspecified - interface will negotiate duplex speed directly + EthDuplexMode_ETH_DUPLEX_MODE_UNSPECIFIED EthDuplexMode = 0 + // Specify Full Duplex mode in autonegotiation + EthDuplexMode_ETH_DUPLEX_MODE_FULL EthDuplexMode = 1 + // Specify Half Duplex mode in autonegotiation + EthDuplexMode_ETH_DUPLEX_MODE_HALF EthDuplexMode = 2 +) + +// Enum value maps for EthDuplexMode. +var ( + EthDuplexMode_name = map[int32]string{ + 0: "ETH_DUPLEX_MODE_UNSPECIFIED", + 1: "ETH_DUPLEX_MODE_FULL", + 2: "ETH_DUPLEX_MODE_HALF", + } + EthDuplexMode_value = map[string]int32{ + "ETH_DUPLEX_MODE_UNSPECIFIED": 0, + "ETH_DUPLEX_MODE_FULL": 1, + "ETH_DUPLEX_MODE_HALF": 2, + } +) + +func (x EthDuplexMode) Enum() *EthDuplexMode { + p := new(EthDuplexMode) + *p = x + return p +} + +func (x EthDuplexMode) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (EthDuplexMode) Descriptor() protoreflect.EnumDescriptor { + return file_networkethernet_proto_enumTypes[0].Descriptor() +} + +func (EthDuplexMode) Type() protoreflect.EnumType { + return &file_networkethernet_proto_enumTypes[0] +} + +func (x EthDuplexMode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use EthDuplexMode.Descriptor instead. +func (EthDuplexMode) EnumDescriptor() ([]byte, []int) { + return file_networkethernet_proto_rawDescGZIP(), []int{0} +} + +// Ethernet Port Speed Definitions +type EthPortSpeed int32 + +const ( + // Unspecified - interface will negotiate port speed with the peer interface + EthPortSpeed_ETH_PORT_SPEED_UNSPECIFIED EthPortSpeed = 0 + // 10M port speed + EthPortSpeed_ETH_PORT_SPEED_10M EthPortSpeed = 1 + // 100M port speed + EthPortSpeed_ETH_PORT_SPEED_100M EthPortSpeed = 2 + // 1G port speed + EthPortSpeed_ETH_PORT_SPEED_1G EthPortSpeed = 3 + // 2.5G port speed + EthPortSpeed_ETH_PORT_SPEED_2500M EthPortSpeed = 4 + // 5G port speed + EthPortSpeed_ETH_PORT_SPEED_5G EthPortSpeed = 5 + // 10G port speed + EthPortSpeed_ETH_PORT_SPEED_10G EthPortSpeed = 6 + // 25G port speed + EthPortSpeed_ETH_PORT_SPEED_25G EthPortSpeed = 7 + // 40G port speed + EthPortSpeed_ETH_PORT_SPEED_40G EthPortSpeed = 8 + // 50G port speed + EthPortSpeed_ETH_PORT_SPEED_50G EthPortSpeed = 9 + // 100G port speed + EthPortSpeed_ETH_PORT_SPEED_100G EthPortSpeed = 10 + // 200G port speed + EthPortSpeed_ETH_PORT_SPEED_200G EthPortSpeed = 11 + // 400G port speed + EthPortSpeed_ETH_PORT_SPEED_400G EthPortSpeed = 12 + // 600G port speed + EthPortSpeed_ETH_PORT_SPEED_600G EthPortSpeed = 13 + // 800G port speed + EthPortSpeed_ETH_PORT_SPEED_800G EthPortSpeed = 14 + // Interface speed is unknown. Systems may report + // speed UNKNOWN when an interface is down or unpopuplated + EthPortSpeed_ETH_PORT_SPEED_UNKNOWN EthPortSpeed = 15 +) + +// Enum value maps for EthPortSpeed. +var ( + EthPortSpeed_name = map[int32]string{ + 0: "ETH_PORT_SPEED_UNSPECIFIED", + 1: "ETH_PORT_SPEED_10M", + 2: "ETH_PORT_SPEED_100M", + 3: "ETH_PORT_SPEED_1G", + 4: "ETH_PORT_SPEED_2500M", + 5: "ETH_PORT_SPEED_5G", + 6: "ETH_PORT_SPEED_10G", + 7: "ETH_PORT_SPEED_25G", + 8: "ETH_PORT_SPEED_40G", + 9: "ETH_PORT_SPEED_50G", + 10: "ETH_PORT_SPEED_100G", + 11: "ETH_PORT_SPEED_200G", + 12: "ETH_PORT_SPEED_400G", + 13: "ETH_PORT_SPEED_600G", + 14: "ETH_PORT_SPEED_800G", + 15: "ETH_PORT_SPEED_UNKNOWN", + } + EthPortSpeed_value = map[string]int32{ + "ETH_PORT_SPEED_UNSPECIFIED": 0, + "ETH_PORT_SPEED_10M": 1, + "ETH_PORT_SPEED_100M": 2, + "ETH_PORT_SPEED_1G": 3, + "ETH_PORT_SPEED_2500M": 4, + "ETH_PORT_SPEED_5G": 5, + "ETH_PORT_SPEED_10G": 6, + "ETH_PORT_SPEED_25G": 7, + "ETH_PORT_SPEED_40G": 8, + "ETH_PORT_SPEED_50G": 9, + "ETH_PORT_SPEED_100G": 10, + "ETH_PORT_SPEED_200G": 11, + "ETH_PORT_SPEED_400G": 12, + "ETH_PORT_SPEED_600G": 13, + "ETH_PORT_SPEED_800G": 14, + "ETH_PORT_SPEED_UNKNOWN": 15, + } +) + +func (x EthPortSpeed) Enum() *EthPortSpeed { + p := new(EthPortSpeed) + *p = x + return p +} + +func (x EthPortSpeed) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (EthPortSpeed) Descriptor() protoreflect.EnumDescriptor { + return file_networkethernet_proto_enumTypes[1].Descriptor() +} + +func (EthPortSpeed) Type() protoreflect.EnumType { + return &file_networkethernet_proto_enumTypes[1] +} + +func (x EthPortSpeed) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use EthPortSpeed.Descriptor instead. +func (EthPortSpeed) EnumDescriptor() ([]byte, []int) { + return file_networkethernet_proto_rawDescGZIP(), []int{1} +} + +// Ethernet Forward Error Correction Mode Definitions +type EthFecMode int32 + +const ( + // Unspecified + EthFecMode_ETH_FEC_MODE_UNSPECIFIED EthFecMode = 0 + // Firecode for NRZ channels with less then 100G + EthFecMode_ETH_FEC_MODE_FC EthFecMode = 1 + // RS528 is used for channels with NRZ modulation. This FEC is designed to + // comply with IEEE 802.3, Clause 91. + EthFecMode_ETH_FEC_MODE_RS528 EthFecMode = 2 + // RS544 is used for channels with PAM4 modulation + EthFecMode_ETH_FEC_MODE_RS544 EthFecMode = 3 + // RS544-2x-interleave is used for channels with PAM4 modulation + EthFecMode_ETH_FEC_MODE_RS544_2X_INTERLEAVE EthFecMode = 4 + // FEC is administratively disabled + EthFecMode_ETH_FEC_MODE_DISABLED EthFecMode = 5 +) + +// Enum value maps for EthFecMode. +var ( + EthFecMode_name = map[int32]string{ + 0: "ETH_FEC_MODE_UNSPECIFIED", + 1: "ETH_FEC_MODE_FC", + 2: "ETH_FEC_MODE_RS528", + 3: "ETH_FEC_MODE_RS544", + 4: "ETH_FEC_MODE_RS544_2X_INTERLEAVE", + 5: "ETH_FEC_MODE_DISABLED", + } + EthFecMode_value = map[string]int32{ + "ETH_FEC_MODE_UNSPECIFIED": 0, + "ETH_FEC_MODE_FC": 1, + "ETH_FEC_MODE_RS528": 2, + "ETH_FEC_MODE_RS544": 3, + "ETH_FEC_MODE_RS544_2X_INTERLEAVE": 4, + "ETH_FEC_MODE_DISABLED": 5, + } +) + +func (x EthFecMode) Enum() *EthFecMode { + p := new(EthFecMode) + *p = x + return p +} + +func (x EthFecMode) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (EthFecMode) Descriptor() protoreflect.EnumDescriptor { + return file_networkethernet_proto_enumTypes[2].Descriptor() +} + +func (EthFecMode) Type() protoreflect.EnumType { + return &file_networkethernet_proto_enumTypes[2] +} + +func (x EthFecMode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use EthFecMode.Descriptor instead. +func (EthFecMode) EnumDescriptor() ([]byte, []int) { + return file_networkethernet_proto_rawDescGZIP(), []int{2} +} + +// Ethernet Configuration +type EthernetConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // MAC address to assign to the Ethernet Interface if not assigned + MacAddress string `protobuf:"bytes,1,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"` + // Set to TRUE to request autonegotiate the transmission parameters + // with the peer interface + AutoNegotiate bool `protobuf:"varint,2,opt,name=auto_negotiate,json=autoNegotiate,proto3" json:"auto_negotiate,omitempty"` + // Used when full autonegotiation is not desired by setting to TRUE + // and setting auto_negotiate to FALSE. It is ignored when auto-negotiate + // is set to TRUE. + StandaloneLinkTraining bool `protobuf:"varint,3,opt,name=standalone_link_training,json=standaloneLinkTraining,proto3" json:"standalone_link_training,omitempty"` + // Optionally sets the duplex mode that is advertised to the peer interface + DuplexMode EthDuplexMode `protobuf:"varint,4,opt,name=duplex_mode,json=duplexMode,proto3,enum=opi_api.network.opinetcommon.v1alpha1.EthDuplexMode" json:"duplex_mode,omitempty"` + // Optionally sets the port speed that is advertised to the peer interface + PortSpeed EthPortSpeed `protobuf:"varint,5,opt,name=port_speed,json=portSpeed,proto3,enum=opi_api.network.opinetcommon.v1alpha1.EthPortSpeed" json:"port_speed,omitempty"` + // Override for the negotiated flow control on the interface + EnableFlowControl bool `protobuf:"varint,6,opt,name=enable_flow_control,json=enableFlowControl,proto3" json:"enable_flow_control,omitempty"` + // FEC applied to the physical channel of the interface + FecMode EthFecMode `protobuf:"varint,7,opt,name=fec_mode,json=fecMode,proto3,enum=opi_api.network.opinetcommon.v1alpha1.EthFecMode" json:"fec_mode,omitempty"` +} + +func (x *EthernetConfig) Reset() { + *x = EthernetConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_networkethernet_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *EthernetConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*EthernetConfig) ProtoMessage() {} + +func (x *EthernetConfig) ProtoReflect() protoreflect.Message { + mi := &file_networkethernet_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use EthernetConfig.ProtoReflect.Descriptor instead. +func (*EthernetConfig) Descriptor() ([]byte, []int) { + return file_networkethernet_proto_rawDescGZIP(), []int{0} +} + +func (x *EthernetConfig) GetMacAddress() string { + if x != nil { + return x.MacAddress + } + return "" +} + +func (x *EthernetConfig) GetAutoNegotiate() bool { + if x != nil { + return x.AutoNegotiate + } + return false +} + +func (x *EthernetConfig) GetStandaloneLinkTraining() bool { + if x != nil { + return x.StandaloneLinkTraining + } + return false +} + +func (x *EthernetConfig) GetDuplexMode() EthDuplexMode { + if x != nil { + return x.DuplexMode + } + return EthDuplexMode_ETH_DUPLEX_MODE_UNSPECIFIED +} + +func (x *EthernetConfig) GetPortSpeed() EthPortSpeed { + if x != nil { + return x.PortSpeed + } + return EthPortSpeed_ETH_PORT_SPEED_UNSPECIFIED +} + +func (x *EthernetConfig) GetEnableFlowControl() bool { + if x != nil { + return x.EnableFlowControl + } + return false +} + +func (x *EthernetConfig) GetFecMode() EthFecMode { + if x != nil { + return x.FecMode + } + return EthFecMode_ETH_FEC_MODE_UNSPECIFIED +} + +// Ethernet receive frame distribution counters +type EthernetInDistribution struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Receive counter for 64 byte frames + RxFramesOctets64 uint64 `protobuf:"varint,1,opt,name=rx_frames_octets64,json=rxFramesOctets64,proto3" json:"rx_frames_octets64,omitempty"` + // Receive counter for 65 to 127 byte frames + RxFramesOctets65To127 uint64 `protobuf:"varint,2,opt,name=rx_frames_octets65_to127,json=rxFramesOctets65To127,proto3" json:"rx_frames_octets65_to127,omitempty"` + // Receive counter for 128 to 255 byte frames + RxFramesOctets128To255 uint64 `protobuf:"varint,3,opt,name=rx_frames_octets128_to255,json=rxFramesOctets128To255,proto3" json:"rx_frames_octets128_to255,omitempty"` + // receive counter for 256 to 511 byte frames + RxFramesOctets256To511 uint64 `protobuf:"varint,4,opt,name=rx_frames_octets256_to511,json=rxFramesOctets256To511,proto3" json:"rx_frames_octets256_to511,omitempty"` + // receive counter for 512 to 1023 byte frames + RxFramesOctets512To1023 uint64 `protobuf:"varint,5,opt,name=rx_frames_octets512_to1023,json=rxFramesOctets512To1023,proto3" json:"rx_frames_octets512_to1023,omitempty"` + // receive counter for 1024 to 1518 byte frames + RxFramesOctets1024To1518 uint64 `protobuf:"varint,6,opt,name=rx_frames_octets1024_to1518,json=rxFramesOctets1024To1518,proto3" json:"rx_frames_octets1024_to1518,omitempty"` +} + +func (x *EthernetInDistribution) Reset() { + *x = EthernetInDistribution{} + if protoimpl.UnsafeEnabled { + mi := &file_networkethernet_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *EthernetInDistribution) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*EthernetInDistribution) ProtoMessage() {} + +func (x *EthernetInDistribution) ProtoReflect() protoreflect.Message { + mi := &file_networkethernet_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use EthernetInDistribution.ProtoReflect.Descriptor instead. +func (*EthernetInDistribution) Descriptor() ([]byte, []int) { + return file_networkethernet_proto_rawDescGZIP(), []int{1} +} + +func (x *EthernetInDistribution) GetRxFramesOctets64() uint64 { + if x != nil { + return x.RxFramesOctets64 + } + return 0 +} + +func (x *EthernetInDistribution) GetRxFramesOctets65To127() uint64 { + if x != nil { + return x.RxFramesOctets65To127 + } + return 0 +} + +func (x *EthernetInDistribution) GetRxFramesOctets128To255() uint64 { + if x != nil { + return x.RxFramesOctets128To255 + } + return 0 +} + +func (x *EthernetInDistribution) GetRxFramesOctets256To511() uint64 { + if x != nil { + return x.RxFramesOctets256To511 + } + return 0 +} + +func (x *EthernetInDistribution) GetRxFramesOctets512To1023() uint64 { + if x != nil { + return x.RxFramesOctets512To1023 + } + return 0 +} + +func (x *EthernetInDistribution) GetRxFramesOctets1024To1518() uint64 { + if x != nil { + return x.RxFramesOctets1024To1518 + } + return 0 +} + +// Ethernet Interface Counters +type EthernetCounters struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // received mac control frame counter + RxMacControlFrames uint64 `protobuf:"varint,1,opt,name=rx_mac_control_frames,json=rxMacControlFrames,proto3" json:"rx_mac_control_frames,omitempty"` + // received mac pause frame counter + RxMacPauseFrames uint64 `protobuf:"varint,2,opt,name=rx_mac_pause_frames,json=rxMacPauseFrames,proto3" json:"rx_mac_pause_frames,omitempty"` + // frames received that were oversized on the interface + // (larger then 1518 octets) + RxOversizeFrames uint64 `protobuf:"varint,3,opt,name=rx_oversize_frames,json=rxOversizeFrames,proto3" json:"rx_oversize_frames,omitempty"` + // frames received that were undersized on the interface + // (smaller then 64 octets) + RxUndersizeFrames uint64 `protobuf:"varint,4,opt,name=rx_undersize_frames,json=rxUndersizeFrames,proto3" json:"rx_undersize_frames,omitempty"` + // Number of jabber frames received on the interface. + // Jabber frames are typically defined as oversize frames which also + // have a bad CRC + RxJabberFrames uint64 `protobuf:"varint,5,opt,name=rx_jabber_frames,json=rxJabberFrames,proto3" json:"rx_jabber_frames,omitempty"` + // The total number of frames received that were less than 64 octets + // in length (excluding framing bits but including FCS octets) + // and had either a bad Frame Check Sequence (FCS) with an integral + // number of octets (FCS Error) or a bad FCS with a non-integral number + // of octets (Alignment Error) + RxFragmentFrames uint64 `protobuf:"varint,6,opt,name=rx_fragment_frames,json=rxFragmentFrames,proto3" json:"rx_fragment_frames,omitempty"` + // Number of 802.1q tagged frames received on the interface + RxIeee8021QFrames uint64 `protobuf:"varint,7,opt,name=rx_ieee8021q_frames,json=rxIeee8021qFrames,proto3" json:"rx_ieee8021q_frames,omitempty"` + // The total number of frames received that had FCS errors + RxCrcErrors uint64 `protobuf:"varint,8,opt,name=rx_crc_errors,json=rxCrcErrors,proto3" json:"rx_crc_errors,omitempty"` + // The number of received errored blocks + RxBlockErrors uint64 `protobuf:"varint,9,opt,name=rx_block_errors,json=rxBlockErrors,proto3" json:"rx_block_errors,omitempty"` + // The number of received errored frames due to a carrier issue + RxCarrierErrors uint64 `protobuf:"varint,10,opt,name=rx_carrier_errors,json=rxCarrierErrors,proto3" json:"rx_carrier_errors,omitempty"` + // The number of received errored frames due to interrupted transmission + // issue + RxInterruptedTx uint64 `protobuf:"varint,11,opt,name=rx_interrupted_tx,json=rxInterruptedTx,proto3" json:"rx_interrupted_tx,omitempty"` + // The number of received errored frames due to late collision issue + RxLateCollision uint64 `protobuf:"varint,12,opt,name=rx_late_collision,json=rxLateCollision,proto3" json:"rx_late_collision,omitempty"` + // The number of received errored frames due to MAC errors received + RxMacErrorsRx uint64 `protobuf:"varint,13,opt,name=rx_mac_errors_rx,json=rxMacErrorsRx,proto3" json:"rx_mac_errors_rx,omitempty"` + // The number of received errored frames due to single collision issue + RxSingleCollision uint64 `protobuf:"varint,14,opt,name=rx_single_collision,json=rxSingleCollision,proto3" json:"rx_single_collision,omitempty"` + // The number of received errored frames due to symbol error + RxSymbolError uint64 `protobuf:"varint,15,opt,name=rx_symbol_error,json=rxSymbolError,proto3" json:"rx_symbol_error,omitempty"` + // The total number frames received that are well-formed but dropped due + // to exceeding the maximum frame size on the interface + RxMaxsizeExceeded uint64 `protobuf:"varint,16,opt,name=rx_maxsize_exceeded,json=rxMaxsizeExceeded,proto3" json:"rx_maxsize_exceeded,omitempty"` + // MAC layer control frames sent on the interface + OutMacControlFrames uint64 `protobuf:"varint,17,opt,name=out_mac_control_frames,json=outMacControlFrames,proto3" json:"out_mac_control_frames,omitempty"` + // MAC layer PAUSE frames sent on the interface + OutMacPauseFrames uint64 `protobuf:"varint,18,opt,name=out_mac_pause_frames,json=outMacPauseFrames,proto3" json:"out_mac_pause_frames,omitempty"` + // Number of 802.1q tagged frames sent on the interface + OutIeee8021QFrames uint64 `protobuf:"varint,19,opt,name=out_ieee8021q_frames,json=outIeee8021qFrames,proto3" json:"out_ieee8021q_frames,omitempty"` + // The number of sent errored frames due to MAC errors transmitted + OutMacErrorsTx uint64 `protobuf:"varint,20,opt,name=out_mac_errors_tx,json=outMacErrorsTx,proto3" json:"out_mac_errors_tx,omitempty"` + // Receive Frame Distribution counters + EthRxDistribution *EthernetInDistribution `protobuf:"bytes,21,opt,name=eth_rx_distribution,json=ethRxDistribution,proto3" json:"eth_rx_distribution,omitempty"` +} + +func (x *EthernetCounters) Reset() { + *x = EthernetCounters{} + if protoimpl.UnsafeEnabled { + mi := &file_networkethernet_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *EthernetCounters) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*EthernetCounters) ProtoMessage() {} + +func (x *EthernetCounters) ProtoReflect() protoreflect.Message { + mi := &file_networkethernet_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use EthernetCounters.ProtoReflect.Descriptor instead. +func (*EthernetCounters) Descriptor() ([]byte, []int) { + return file_networkethernet_proto_rawDescGZIP(), []int{2} +} + +func (x *EthernetCounters) GetRxMacControlFrames() uint64 { + if x != nil { + return x.RxMacControlFrames + } + return 0 +} + +func (x *EthernetCounters) GetRxMacPauseFrames() uint64 { + if x != nil { + return x.RxMacPauseFrames + } + return 0 +} + +func (x *EthernetCounters) GetRxOversizeFrames() uint64 { + if x != nil { + return x.RxOversizeFrames + } + return 0 +} + +func (x *EthernetCounters) GetRxUndersizeFrames() uint64 { + if x != nil { + return x.RxUndersizeFrames + } + return 0 +} + +func (x *EthernetCounters) GetRxJabberFrames() uint64 { + if x != nil { + return x.RxJabberFrames + } + return 0 +} + +func (x *EthernetCounters) GetRxFragmentFrames() uint64 { + if x != nil { + return x.RxFragmentFrames + } + return 0 +} + +func (x *EthernetCounters) GetRxIeee8021QFrames() uint64 { + if x != nil { + return x.RxIeee8021QFrames + } + return 0 +} + +func (x *EthernetCounters) GetRxCrcErrors() uint64 { + if x != nil { + return x.RxCrcErrors + } + return 0 +} + +func (x *EthernetCounters) GetRxBlockErrors() uint64 { + if x != nil { + return x.RxBlockErrors + } + return 0 +} + +func (x *EthernetCounters) GetRxCarrierErrors() uint64 { + if x != nil { + return x.RxCarrierErrors + } + return 0 +} + +func (x *EthernetCounters) GetRxInterruptedTx() uint64 { + if x != nil { + return x.RxInterruptedTx + } + return 0 +} + +func (x *EthernetCounters) GetRxLateCollision() uint64 { + if x != nil { + return x.RxLateCollision + } + return 0 +} + +func (x *EthernetCounters) GetRxMacErrorsRx() uint64 { + if x != nil { + return x.RxMacErrorsRx + } + return 0 +} + +func (x *EthernetCounters) GetRxSingleCollision() uint64 { + if x != nil { + return x.RxSingleCollision + } + return 0 +} + +func (x *EthernetCounters) GetRxSymbolError() uint64 { + if x != nil { + return x.RxSymbolError + } + return 0 +} + +func (x *EthernetCounters) GetRxMaxsizeExceeded() uint64 { + if x != nil { + return x.RxMaxsizeExceeded + } + return 0 +} + +func (x *EthernetCounters) GetOutMacControlFrames() uint64 { + if x != nil { + return x.OutMacControlFrames + } + return 0 +} + +func (x *EthernetCounters) GetOutMacPauseFrames() uint64 { + if x != nil { + return x.OutMacPauseFrames + } + return 0 +} + +func (x *EthernetCounters) GetOutIeee8021QFrames() uint64 { + if x != nil { + return x.OutIeee8021QFrames + } + return 0 +} + +func (x *EthernetCounters) GetOutMacErrorsTx() uint64 { + if x != nil { + return x.OutMacErrorsTx + } + return 0 +} + +func (x *EthernetCounters) GetEthRxDistribution() *EthernetInDistribution { + if x != nil { + return x.EthRxDistribution + } + return nil +} + +// Ethernet interface state settings +type EthernetState struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // MAC address to assign to the Ethernet Interface if not assigned or + // being overridden. + MacAddress string `protobuf:"bytes,1,opt,name=mac_address,json=macAddress,proto3" json:"mac_address,omitempty"` + // Set to TRUE to request autonegotiate the transmission parameters + // with the peer interface + AutoNegotiate bool `protobuf:"varint,2,opt,name=auto_negotiate,json=autoNegotiate,proto3" json:"auto_negotiate,omitempty"` + // Used when full autonegotiation is not desired by setting to TRUE + // and setting auto_negotiate to FALSE. It is ignored when auto-negotiate + // is set to TRUE. + StandaloneLinkTraining bool `protobuf:"varint,3,opt,name=standalone_link_training,json=standaloneLinkTraining,proto3" json:"standalone_link_training,omitempty"` + // The duplex mode that is negotiated or set interface + DuplexMode EthDuplexMode `protobuf:"varint,4,opt,name=duplex_mode,json=duplexMode,proto3,enum=opi_api.network.opinetcommon.v1alpha1.EthDuplexMode" json:"duplex_mode,omitempty"` + // The port speed that is negotiated or set for the interface + PortSpeed EthPortSpeed `protobuf:"varint,5,opt,name=port_speed,json=portSpeed,proto3,enum=opi_api.network.opinetcommon.v1alpha1.EthPortSpeed" json:"port_speed,omitempty"` + // Override for the negotiated flow control on the interface + EnableFlowControl bool `protobuf:"varint,6,opt,name=enable_flow_control,json=enableFlowControl,proto3" json:"enable_flow_control,omitempty"` + // FEC applied to the physical channel of the interface + FecMode EthFecMode `protobuf:"varint,7,opt,name=fec_mode,json=fecMode,proto3,enum=opi_api.network.opinetcommon.v1alpha1.EthFecMode" json:"fec_mode,omitempty"` + // Hardware MAC address defined for the interface + HwMacAddress string `protobuf:"bytes,8,opt,name=hw_mac_address,json=hwMacAddress,proto3" json:"hw_mac_address,omitempty"` + // Negotiated Duplex mode for the interface + NegotiatedDuplexMode EthDuplexMode `protobuf:"varint,9,opt,name=negotiated_duplex_mode,json=negotiatedDuplexMode,proto3,enum=opi_api.network.opinetcommon.v1alpha1.EthDuplexMode" json:"negotiated_duplex_mode,omitempty"` + // Negotiated Port Speed for the interface + NegotiatedPortSpeed EthPortSpeed `protobuf:"varint,10,opt,name=negotiated_port_speed,json=negotiatedPortSpeed,proto3,enum=opi_api.network.opinetcommon.v1alpha1.EthPortSpeed" json:"negotiated_port_speed,omitempty"` + // Ethernet port counters + Counters *EthernetCounters `protobuf:"bytes,11,opt,name=counters,proto3" json:"counters,omitempty"` +} + +func (x *EthernetState) Reset() { + *x = EthernetState{} + if protoimpl.UnsafeEnabled { + mi := &file_networkethernet_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *EthernetState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*EthernetState) ProtoMessage() {} + +func (x *EthernetState) ProtoReflect() protoreflect.Message { + mi := &file_networkethernet_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use EthernetState.ProtoReflect.Descriptor instead. +func (*EthernetState) Descriptor() ([]byte, []int) { + return file_networkethernet_proto_rawDescGZIP(), []int{3} +} + +func (x *EthernetState) GetMacAddress() string { + if x != nil { + return x.MacAddress + } + return "" +} + +func (x *EthernetState) GetAutoNegotiate() bool { + if x != nil { + return x.AutoNegotiate + } + return false +} + +func (x *EthernetState) GetStandaloneLinkTraining() bool { + if x != nil { + return x.StandaloneLinkTraining + } + return false +} + +func (x *EthernetState) GetDuplexMode() EthDuplexMode { + if x != nil { + return x.DuplexMode + } + return EthDuplexMode_ETH_DUPLEX_MODE_UNSPECIFIED +} + +func (x *EthernetState) GetPortSpeed() EthPortSpeed { + if x != nil { + return x.PortSpeed + } + return EthPortSpeed_ETH_PORT_SPEED_UNSPECIFIED +} + +func (x *EthernetState) GetEnableFlowControl() bool { + if x != nil { + return x.EnableFlowControl + } + return false +} + +func (x *EthernetState) GetFecMode() EthFecMode { + if x != nil { + return x.FecMode + } + return EthFecMode_ETH_FEC_MODE_UNSPECIFIED +} + +func (x *EthernetState) GetHwMacAddress() string { + if x != nil { + return x.HwMacAddress + } + return "" +} + +func (x *EthernetState) GetNegotiatedDuplexMode() EthDuplexMode { + if x != nil { + return x.NegotiatedDuplexMode + } + return EthDuplexMode_ETH_DUPLEX_MODE_UNSPECIFIED +} + +func (x *EthernetState) GetNegotiatedPortSpeed() EthPortSpeed { + if x != nil { + return x.NegotiatedPortSpeed + } + return EthPortSpeed_ETH_PORT_SPEED_UNSPECIFIED +} + +func (x *EthernetState) GetCounters() *EthernetCounters { + if x != nil { + return x.Counters + } + return nil +} + +// Ethernet Interface +type EthernetIf struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Ethernet Interface Configuration settings + Config *EthernetConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"` + // Ethernet Interface State information + State *EthernetState `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"` + // Switched VLAN Interface configuration for interface + SwitchedVlan *VlanSwitchedIf `protobuf:"bytes,3,opt,name=switched_vlan,json=switchedVlan,proto3" json:"switched_vlan,omitempty"` +} + +func (x *EthernetIf) Reset() { + *x = EthernetIf{} + if protoimpl.UnsafeEnabled { + mi := &file_networkethernet_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *EthernetIf) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*EthernetIf) ProtoMessage() {} + +func (x *EthernetIf) ProtoReflect() protoreflect.Message { + mi := &file_networkethernet_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use EthernetIf.ProtoReflect.Descriptor instead. +func (*EthernetIf) Descriptor() ([]byte, []int) { + return file_networkethernet_proto_rawDescGZIP(), []int{4} +} + +func (x *EthernetIf) GetConfig() *EthernetConfig { + if x != nil { + return x.Config + } + return nil +} + +func (x *EthernetIf) GetState() *EthernetState { + if x != nil { + return x.State + } + return nil +} + +func (x *EthernetIf) GetSwitchedVlan() *VlanSwitchedIf { + if x != nil { + return x.SwitchedVlan + } + return nil +} + +var File_networkethernet_proto protoreflect.FileDescriptor + +var file_networkethernet_proto_rawDesc = []byte{ + 0x0a, 0x15, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x65, 0x74, 0x68, 0x65, 0x72, 0x6e, 0x65, + 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x25, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, + 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x1a, 0x11, + 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x76, 0x6c, 0x61, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, + 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x22, 0xde, 0x03, 0x0a, 0x0e, 0x45, 0x74, 0x68, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x24, 0x0a, 0x0b, 0x6d, 0x61, 0x63, 0x5f, 0x61, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, + 0x0a, 0x6d, 0x61, 0x63, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2a, 0x0a, 0x0e, 0x61, + 0x75, 0x74, 0x6f, 0x5f, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0d, 0x61, 0x75, 0x74, 0x6f, 0x4e, 0x65, + 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x65, 0x12, 0x3d, 0x0a, 0x18, 0x73, 0x74, 0x61, 0x6e, 0x64, + 0x61, 0x6c, 0x6f, 0x6e, 0x65, 0x5f, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x74, 0x72, 0x61, 0x69, 0x6e, + 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x16, + 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x6c, 0x6f, 0x6e, 0x65, 0x4c, 0x69, 0x6e, 0x6b, 0x54, 0x72, + 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x5a, 0x0a, 0x0b, 0x64, 0x75, 0x70, 0x6c, 0x65, 0x78, + 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x6f, 0x70, + 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, + 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x31, 0x2e, 0x45, 0x74, 0x68, 0x44, 0x75, 0x70, 0x6c, 0x65, 0x78, 0x4d, 0x6f, 0x64, + 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x64, 0x75, 0x70, 0x6c, 0x65, 0x78, 0x4d, 0x6f, + 0x64, 0x65, 0x12, 0x57, 0x0a, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, + 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, + 0x74, 0x68, 0x50, 0x6f, 0x72, 0x74, 0x53, 0x70, 0x65, 0x65, 0x64, 0x42, 0x03, 0xe0, 0x41, 0x01, + 0x52, 0x09, 0x70, 0x6f, 0x72, 0x74, 0x53, 0x70, 0x65, 0x65, 0x64, 0x12, 0x33, 0x0a, 0x13, 0x65, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x66, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, + 0x6f, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x11, 0x65, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x6c, 0x6f, 0x77, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, + 0x12, 0x51, 0x0a, 0x08, 0x66, 0x65, 0x63, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, + 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x74, 0x68, 0x46, 0x65, + 0x63, 0x4d, 0x6f, 0x64, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x07, 0x66, 0x65, 0x63, 0x4d, + 0x6f, 0x64, 0x65, 0x22, 0xf1, 0x02, 0x0a, 0x16, 0x45, 0x74, 0x68, 0x65, 0x72, 0x6e, 0x65, 0x74, + 0x49, 0x6e, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2c, + 0x0a, 0x12, 0x72, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x5f, 0x6f, 0x63, 0x74, 0x65, + 0x74, 0x73, 0x36, 0x34, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x72, 0x78, 0x46, 0x72, + 0x61, 0x6d, 0x65, 0x73, 0x4f, 0x63, 0x74, 0x65, 0x74, 0x73, 0x36, 0x34, 0x12, 0x37, 0x0a, 0x18, + 0x72, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x5f, 0x6f, 0x63, 0x74, 0x65, 0x74, 0x73, + 0x36, 0x35, 0x5f, 0x74, 0x6f, 0x31, 0x32, 0x37, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x15, + 0x72, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x4f, 0x63, 0x74, 0x65, 0x74, 0x73, 0x36, 0x35, + 0x54, 0x6f, 0x31, 0x32, 0x37, 0x12, 0x39, 0x0a, 0x19, 0x72, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, + 0x65, 0x73, 0x5f, 0x6f, 0x63, 0x74, 0x65, 0x74, 0x73, 0x31, 0x32, 0x38, 0x5f, 0x74, 0x6f, 0x32, + 0x35, 0x35, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x16, 0x72, 0x78, 0x46, 0x72, 0x61, 0x6d, + 0x65, 0x73, 0x4f, 0x63, 0x74, 0x65, 0x74, 0x73, 0x31, 0x32, 0x38, 0x54, 0x6f, 0x32, 0x35, 0x35, + 0x12, 0x39, 0x0a, 0x19, 0x72, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x5f, 0x6f, 0x63, + 0x74, 0x65, 0x74, 0x73, 0x32, 0x35, 0x36, 0x5f, 0x74, 0x6f, 0x35, 0x31, 0x31, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x16, 0x72, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x4f, 0x63, 0x74, + 0x65, 0x74, 0x73, 0x32, 0x35, 0x36, 0x54, 0x6f, 0x35, 0x31, 0x31, 0x12, 0x3b, 0x0a, 0x1a, 0x72, + 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x5f, 0x6f, 0x63, 0x74, 0x65, 0x74, 0x73, 0x35, + 0x31, 0x32, 0x5f, 0x74, 0x6f, 0x31, 0x30, 0x32, 0x33, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x17, 0x72, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x4f, 0x63, 0x74, 0x65, 0x74, 0x73, 0x35, + 0x31, 0x32, 0x54, 0x6f, 0x31, 0x30, 0x32, 0x33, 0x12, 0x3d, 0x0a, 0x1b, 0x72, 0x78, 0x5f, 0x66, + 0x72, 0x61, 0x6d, 0x65, 0x73, 0x5f, 0x6f, 0x63, 0x74, 0x65, 0x74, 0x73, 0x31, 0x30, 0x32, 0x34, + 0x5f, 0x74, 0x6f, 0x31, 0x35, 0x31, 0x38, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x52, 0x18, 0x72, + 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x4f, 0x63, 0x74, 0x65, 0x74, 0x73, 0x31, 0x30, 0x32, + 0x34, 0x54, 0x6f, 0x31, 0x35, 0x31, 0x38, 0x22, 0x8d, 0x08, 0x0a, 0x10, 0x45, 0x74, 0x68, 0x65, + 0x72, 0x6e, 0x65, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x12, 0x31, 0x0a, 0x15, + 0x72, 0x78, 0x5f, 0x6d, 0x61, 0x63, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x66, + 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x12, 0x72, 0x78, 0x4d, + 0x61, 0x63, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x12, + 0x2d, 0x0a, 0x13, 0x72, 0x78, 0x5f, 0x6d, 0x61, 0x63, 0x5f, 0x70, 0x61, 0x75, 0x73, 0x65, 0x5f, + 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x72, 0x78, + 0x4d, 0x61, 0x63, 0x50, 0x61, 0x75, 0x73, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x2c, + 0x0a, 0x12, 0x72, 0x78, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x66, 0x72, + 0x61, 0x6d, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x10, 0x72, 0x78, 0x4f, 0x76, + 0x65, 0x72, 0x73, 0x69, 0x7a, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x13, + 0x72, 0x78, 0x5f, 0x75, 0x6e, 0x64, 0x65, 0x72, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x66, 0x72, 0x61, + 0x6d, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x72, 0x78, 0x55, 0x6e, 0x64, + 0x65, 0x72, 0x73, 0x69, 0x7a, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x10, + 0x72, 0x78, 0x5f, 0x6a, 0x61, 0x62, 0x62, 0x65, 0x72, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x72, 0x78, 0x4a, 0x61, 0x62, 0x62, 0x65, 0x72, + 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x12, 0x72, 0x78, 0x5f, 0x66, 0x72, 0x61, + 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x06, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x10, 0x72, 0x78, 0x46, 0x72, 0x61, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x46, 0x72, + 0x61, 0x6d, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x78, 0x5f, 0x69, 0x65, 0x65, 0x65, 0x38, + 0x30, 0x32, 0x31, 0x71, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x11, 0x72, 0x78, 0x49, 0x65, 0x65, 0x65, 0x38, 0x30, 0x32, 0x31, 0x71, 0x46, 0x72, + 0x61, 0x6d, 0x65, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x72, 0x78, 0x5f, 0x63, 0x72, 0x63, 0x5f, 0x65, + 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0b, 0x72, 0x78, 0x43, + 0x72, 0x63, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x72, 0x78, 0x5f, 0x62, + 0x6c, 0x6f, 0x63, 0x6b, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, + 0x04, 0x52, 0x0d, 0x72, 0x78, 0x42, 0x6c, 0x6f, 0x63, 0x6b, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, + 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x78, 0x5f, 0x63, 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x5f, 0x65, + 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x72, 0x78, 0x43, + 0x61, 0x72, 0x72, 0x69, 0x65, 0x72, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x2a, 0x0a, 0x11, + 0x72, 0x78, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x72, 0x75, 0x70, 0x74, 0x65, 0x64, 0x5f, 0x74, + 0x78, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x72, 0x78, 0x49, 0x6e, 0x74, 0x65, 0x72, + 0x72, 0x75, 0x70, 0x74, 0x65, 0x64, 0x54, 0x78, 0x12, 0x2a, 0x0a, 0x11, 0x72, 0x78, 0x5f, 0x6c, + 0x61, 0x74, 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x04, 0x52, 0x0f, 0x72, 0x78, 0x4c, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x10, 0x72, 0x78, 0x5f, 0x6d, 0x61, 0x63, 0x5f, 0x65, + 0x72, 0x72, 0x6f, 0x72, 0x73, 0x5f, 0x72, 0x78, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, + 0x72, 0x78, 0x4d, 0x61, 0x63, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x52, 0x78, 0x12, 0x2e, 0x0a, + 0x13, 0x72, 0x78, 0x5f, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x63, 0x6f, 0x6c, 0x6c, 0x69, + 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x72, 0x78, 0x53, 0x69, + 0x6e, 0x67, 0x6c, 0x65, 0x43, 0x6f, 0x6c, 0x6c, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, + 0x0f, 0x72, 0x78, 0x5f, 0x73, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, + 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0d, 0x72, 0x78, 0x53, 0x79, 0x6d, 0x62, 0x6f, 0x6c, + 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x2e, 0x0a, 0x13, 0x72, 0x78, 0x5f, 0x6d, 0x61, 0x78, 0x73, + 0x69, 0x7a, 0x65, 0x5f, 0x65, 0x78, 0x63, 0x65, 0x65, 0x64, 0x65, 0x64, 0x18, 0x10, 0x20, 0x01, + 0x28, 0x04, 0x52, 0x11, 0x72, 0x78, 0x4d, 0x61, 0x78, 0x73, 0x69, 0x7a, 0x65, 0x45, 0x78, 0x63, + 0x65, 0x65, 0x64, 0x65, 0x64, 0x12, 0x33, 0x0a, 0x16, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x61, 0x63, + 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, + 0x11, 0x20, 0x01, 0x28, 0x04, 0x52, 0x13, 0x6f, 0x75, 0x74, 0x4d, 0x61, 0x63, 0x43, 0x6f, 0x6e, + 0x74, 0x72, 0x6f, 0x6c, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x14, 0x6f, 0x75, + 0x74, 0x5f, 0x6d, 0x61, 0x63, 0x5f, 0x70, 0x61, 0x75, 0x73, 0x65, 0x5f, 0x66, 0x72, 0x61, 0x6d, + 0x65, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x04, 0x52, 0x11, 0x6f, 0x75, 0x74, 0x4d, 0x61, 0x63, + 0x50, 0x61, 0x75, 0x73, 0x65, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x6f, + 0x75, 0x74, 0x5f, 0x69, 0x65, 0x65, 0x65, 0x38, 0x30, 0x32, 0x31, 0x71, 0x5f, 0x66, 0x72, 0x61, + 0x6d, 0x65, 0x73, 0x18, 0x13, 0x20, 0x01, 0x28, 0x04, 0x52, 0x12, 0x6f, 0x75, 0x74, 0x49, 0x65, + 0x65, 0x65, 0x38, 0x30, 0x32, 0x31, 0x71, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x29, 0x0a, + 0x11, 0x6f, 0x75, 0x74, 0x5f, 0x6d, 0x61, 0x63, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x5f, + 0x74, 0x78, 0x18, 0x14, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x6f, 0x75, 0x74, 0x4d, 0x61, 0x63, + 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x54, 0x78, 0x12, 0x6d, 0x0a, 0x13, 0x65, 0x74, 0x68, 0x5f, + 0x72, 0x78, 0x5f, 0x64, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x18, + 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, + 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x74, + 0x68, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x49, 0x6e, 0x44, 0x69, 0x73, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x11, 0x65, 0x74, 0x68, 0x52, 0x78, 0x44, 0x69, 0x73, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8a, 0x06, 0x0a, 0x0d, 0x45, 0x74, 0x68, 0x65, + 0x72, 0x6e, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x63, + 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x6d, 0x61, 0x63, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x61, 0x75, + 0x74, 0x6f, 0x5f, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x08, 0x52, 0x0d, 0x61, 0x75, 0x74, 0x6f, 0x4e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, + 0x65, 0x12, 0x38, 0x0a, 0x18, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x6c, 0x6f, 0x6e, 0x65, 0x5f, + 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x16, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x6c, 0x6f, 0x6e, 0x65, 0x4c, + 0x69, 0x6e, 0x6b, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0x55, 0x0a, 0x0b, 0x64, + 0x75, 0x70, 0x6c, 0x65, 0x78, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x34, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, + 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x74, 0x68, 0x44, 0x75, 0x70, 0x6c, + 0x65, 0x78, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x0a, 0x64, 0x75, 0x70, 0x6c, 0x65, 0x78, 0x4d, 0x6f, + 0x64, 0x65, 0x12, 0x52, 0x0a, 0x0a, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, + 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, + 0x74, 0x68, 0x50, 0x6f, 0x72, 0x74, 0x53, 0x70, 0x65, 0x65, 0x64, 0x52, 0x09, 0x70, 0x6f, 0x72, + 0x74, 0x53, 0x70, 0x65, 0x65, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, + 0x5f, 0x66, 0x6c, 0x6f, 0x77, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x11, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x6c, 0x6f, 0x77, 0x43, + 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x12, 0x4c, 0x0a, 0x08, 0x66, 0x65, 0x63, 0x5f, 0x6d, 0x6f, + 0x64, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, + 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, + 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, + 0x2e, 0x45, 0x74, 0x68, 0x46, 0x65, 0x63, 0x4d, 0x6f, 0x64, 0x65, 0x52, 0x07, 0x66, 0x65, 0x63, + 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x24, 0x0a, 0x0e, 0x68, 0x77, 0x5f, 0x6d, 0x61, 0x63, 0x5f, 0x61, + 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x68, 0x77, + 0x4d, 0x61, 0x63, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x6a, 0x0a, 0x16, 0x6e, 0x65, + 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x64, 0x75, 0x70, 0x6c, 0x65, 0x78, 0x5f, + 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x6f, 0x70, 0x69, + 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, + 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x31, 0x2e, 0x45, 0x74, 0x68, 0x44, 0x75, 0x70, 0x6c, 0x65, 0x78, 0x4d, 0x6f, 0x64, 0x65, + 0x52, 0x14, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x44, 0x75, 0x70, 0x6c, + 0x65, 0x78, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x67, 0x0a, 0x15, 0x6e, 0x65, 0x67, 0x6f, 0x74, 0x69, + 0x61, 0x74, 0x65, 0x64, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x64, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, + 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x74, + 0x68, 0x50, 0x6f, 0x72, 0x74, 0x53, 0x70, 0x65, 0x65, 0x64, 0x52, 0x13, 0x6e, 0x65, 0x67, 0x6f, + 0x74, 0x69, 0x61, 0x74, 0x65, 0x64, 0x50, 0x6f, 0x72, 0x74, 0x53, 0x70, 0x65, 0x65, 0x64, 0x12, + 0x53, 0x0a, 0x08, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x37, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x74, 0x68, 0x65, 0x72, 0x6e, + 0x65, 0x74, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x52, 0x08, 0x63, 0x6f, 0x75, 0x6e, + 0x74, 0x65, 0x72, 0x73, 0x22, 0x83, 0x02, 0x0a, 0x0a, 0x45, 0x74, 0x68, 0x65, 0x72, 0x6e, 0x65, + 0x74, 0x49, 0x66, 0x12, 0x4d, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x74, 0x68, 0x65, + 0x72, 0x6e, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x12, 0x4a, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x34, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x74, 0x68, 0x65, 0x72, 0x6e, + 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x5a, + 0x0a, 0x0d, 0x73, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x64, 0x5f, 0x76, 0x6c, 0x61, 0x6e, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, + 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, + 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x6c, + 0x61, 0x6e, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x64, 0x49, 0x66, 0x52, 0x0c, 0x73, 0x77, + 0x69, 0x74, 0x63, 0x68, 0x65, 0x64, 0x56, 0x6c, 0x61, 0x6e, 0x2a, 0x64, 0x0a, 0x0d, 0x45, 0x74, + 0x68, 0x44, 0x75, 0x70, 0x6c, 0x65, 0x78, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x45, + 0x54, 0x48, 0x5f, 0x44, 0x55, 0x50, 0x4c, 0x45, 0x58, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x55, + 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, + 0x45, 0x54, 0x48, 0x5f, 0x44, 0x55, 0x50, 0x4c, 0x45, 0x58, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, + 0x46, 0x55, 0x4c, 0x4c, 0x10, 0x01, 0x12, 0x18, 0x0a, 0x14, 0x45, 0x54, 0x48, 0x5f, 0x44, 0x55, + 0x50, 0x4c, 0x45, 0x58, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x48, 0x41, 0x4c, 0x46, 0x10, 0x02, + 0x2a, 0xa0, 0x03, 0x0a, 0x0c, 0x45, 0x74, 0x68, 0x50, 0x6f, 0x72, 0x74, 0x53, 0x70, 0x65, 0x65, + 0x64, 0x12, 0x1e, 0x0a, 0x1a, 0x45, 0x54, 0x48, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, 0x50, + 0x45, 0x45, 0x44, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, + 0x00, 0x12, 0x16, 0x0a, 0x12, 0x45, 0x54, 0x48, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, 0x50, + 0x45, 0x45, 0x44, 0x5f, 0x31, 0x30, 0x4d, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x45, 0x54, 0x48, + 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, 0x50, 0x45, 0x45, 0x44, 0x5f, 0x31, 0x30, 0x30, 0x4d, + 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x45, 0x54, 0x48, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, + 0x50, 0x45, 0x45, 0x44, 0x5f, 0x31, 0x47, 0x10, 0x03, 0x12, 0x18, 0x0a, 0x14, 0x45, 0x54, 0x48, + 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, 0x50, 0x45, 0x45, 0x44, 0x5f, 0x32, 0x35, 0x30, 0x30, + 0x4d, 0x10, 0x04, 0x12, 0x15, 0x0a, 0x11, 0x45, 0x54, 0x48, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, + 0x53, 0x50, 0x45, 0x45, 0x44, 0x5f, 0x35, 0x47, 0x10, 0x05, 0x12, 0x16, 0x0a, 0x12, 0x45, 0x54, + 0x48, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, 0x50, 0x45, 0x45, 0x44, 0x5f, 0x31, 0x30, 0x47, + 0x10, 0x06, 0x12, 0x16, 0x0a, 0x12, 0x45, 0x54, 0x48, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, + 0x50, 0x45, 0x45, 0x44, 0x5f, 0x32, 0x35, 0x47, 0x10, 0x07, 0x12, 0x16, 0x0a, 0x12, 0x45, 0x54, + 0x48, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, 0x50, 0x45, 0x45, 0x44, 0x5f, 0x34, 0x30, 0x47, + 0x10, 0x08, 0x12, 0x16, 0x0a, 0x12, 0x45, 0x54, 0x48, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, + 0x50, 0x45, 0x45, 0x44, 0x5f, 0x35, 0x30, 0x47, 0x10, 0x09, 0x12, 0x17, 0x0a, 0x13, 0x45, 0x54, + 0x48, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, 0x50, 0x45, 0x45, 0x44, 0x5f, 0x31, 0x30, 0x30, + 0x47, 0x10, 0x0a, 0x12, 0x17, 0x0a, 0x13, 0x45, 0x54, 0x48, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, + 0x53, 0x50, 0x45, 0x45, 0x44, 0x5f, 0x32, 0x30, 0x30, 0x47, 0x10, 0x0b, 0x12, 0x17, 0x0a, 0x13, + 0x45, 0x54, 0x48, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, 0x50, 0x45, 0x45, 0x44, 0x5f, 0x34, + 0x30, 0x30, 0x47, 0x10, 0x0c, 0x12, 0x17, 0x0a, 0x13, 0x45, 0x54, 0x48, 0x5f, 0x50, 0x4f, 0x52, + 0x54, 0x5f, 0x53, 0x50, 0x45, 0x45, 0x44, 0x5f, 0x36, 0x30, 0x30, 0x47, 0x10, 0x0d, 0x12, 0x17, + 0x0a, 0x13, 0x45, 0x54, 0x48, 0x5f, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x53, 0x50, 0x45, 0x45, 0x44, + 0x5f, 0x38, 0x30, 0x30, 0x47, 0x10, 0x0e, 0x12, 0x1a, 0x0a, 0x16, 0x45, 0x54, 0x48, 0x5f, 0x50, + 0x4f, 0x52, 0x54, 0x5f, 0x53, 0x50, 0x45, 0x45, 0x44, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, + 0x4e, 0x10, 0x0f, 0x2a, 0xb0, 0x01, 0x0a, 0x0a, 0x45, 0x74, 0x68, 0x46, 0x65, 0x63, 0x4d, 0x6f, + 0x64, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x45, 0x54, 0x48, 0x5f, 0x46, 0x45, 0x43, 0x5f, 0x4d, 0x4f, + 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, + 0x12, 0x13, 0x0a, 0x0f, 0x45, 0x54, 0x48, 0x5f, 0x46, 0x45, 0x43, 0x5f, 0x4d, 0x4f, 0x44, 0x45, + 0x5f, 0x46, 0x43, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x45, 0x54, 0x48, 0x5f, 0x46, 0x45, 0x43, + 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x52, 0x53, 0x35, 0x32, 0x38, 0x10, 0x02, 0x12, 0x16, 0x0a, + 0x12, 0x45, 0x54, 0x48, 0x5f, 0x46, 0x45, 0x43, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x52, 0x53, + 0x35, 0x34, 0x34, 0x10, 0x03, 0x12, 0x24, 0x0a, 0x20, 0x45, 0x54, 0x48, 0x5f, 0x46, 0x45, 0x43, + 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x52, 0x53, 0x35, 0x34, 0x34, 0x5f, 0x32, 0x58, 0x5f, 0x49, + 0x4e, 0x54, 0x45, 0x52, 0x4c, 0x45, 0x41, 0x56, 0x45, 0x10, 0x04, 0x12, 0x19, 0x0a, 0x15, 0x45, + 0x54, 0x48, 0x5f, 0x46, 0x45, 0x43, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x44, 0x49, 0x53, 0x41, + 0x42, 0x4c, 0x45, 0x44, 0x10, 0x05, 0x42, 0x83, 0x01, 0x0a, 0x25, 0x6f, 0x70, 0x69, 0x5f, 0x61, + 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, + 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, + 0x42, 0x14, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x45, 0x74, 0x68, 0x65, 0x72, 0x6e, 0x65, + 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x42, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, + 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6f, 0x70, 0x69, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2f, + 0x6f, 0x70, 0x69, 0x2d, 0x61, 0x70, 0x69, 0x2f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2f, + 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x67, 0x6f, 0x62, 0x06, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_networkethernet_proto_rawDescOnce sync.Once + file_networkethernet_proto_rawDescData = file_networkethernet_proto_rawDesc +) + +func file_networkethernet_proto_rawDescGZIP() []byte { + file_networkethernet_proto_rawDescOnce.Do(func() { + file_networkethernet_proto_rawDescData = protoimpl.X.CompressGZIP(file_networkethernet_proto_rawDescData) + }) + return file_networkethernet_proto_rawDescData +} + +var file_networkethernet_proto_enumTypes = make([]protoimpl.EnumInfo, 3) +var file_networkethernet_proto_msgTypes = make([]protoimpl.MessageInfo, 5) +var file_networkethernet_proto_goTypes = []interface{}{ + (EthDuplexMode)(0), // 0: opi_api.network.opinetcommon.v1alpha1.EthDuplexMode + (EthPortSpeed)(0), // 1: opi_api.network.opinetcommon.v1alpha1.EthPortSpeed + (EthFecMode)(0), // 2: opi_api.network.opinetcommon.v1alpha1.EthFecMode + (*EthernetConfig)(nil), // 3: opi_api.network.opinetcommon.v1alpha1.EthernetConfig + (*EthernetInDistribution)(nil), // 4: opi_api.network.opinetcommon.v1alpha1.EthernetInDistribution + (*EthernetCounters)(nil), // 5: opi_api.network.opinetcommon.v1alpha1.EthernetCounters + (*EthernetState)(nil), // 6: opi_api.network.opinetcommon.v1alpha1.EthernetState + (*EthernetIf)(nil), // 7: opi_api.network.opinetcommon.v1alpha1.EthernetIf + (*VlanSwitchedIf)(nil), // 8: opi_api.network.opinetcommon.v1alpha1.VlanSwitchedIf +} +var file_networkethernet_proto_depIdxs = []int32{ + 0, // 0: opi_api.network.opinetcommon.v1alpha1.EthernetConfig.duplex_mode:type_name -> opi_api.network.opinetcommon.v1alpha1.EthDuplexMode + 1, // 1: opi_api.network.opinetcommon.v1alpha1.EthernetConfig.port_speed:type_name -> opi_api.network.opinetcommon.v1alpha1.EthPortSpeed + 2, // 2: opi_api.network.opinetcommon.v1alpha1.EthernetConfig.fec_mode:type_name -> opi_api.network.opinetcommon.v1alpha1.EthFecMode + 4, // 3: opi_api.network.opinetcommon.v1alpha1.EthernetCounters.eth_rx_distribution:type_name -> opi_api.network.opinetcommon.v1alpha1.EthernetInDistribution + 0, // 4: opi_api.network.opinetcommon.v1alpha1.EthernetState.duplex_mode:type_name -> opi_api.network.opinetcommon.v1alpha1.EthDuplexMode + 1, // 5: opi_api.network.opinetcommon.v1alpha1.EthernetState.port_speed:type_name -> opi_api.network.opinetcommon.v1alpha1.EthPortSpeed + 2, // 6: opi_api.network.opinetcommon.v1alpha1.EthernetState.fec_mode:type_name -> opi_api.network.opinetcommon.v1alpha1.EthFecMode + 0, // 7: opi_api.network.opinetcommon.v1alpha1.EthernetState.negotiated_duplex_mode:type_name -> opi_api.network.opinetcommon.v1alpha1.EthDuplexMode + 1, // 8: opi_api.network.opinetcommon.v1alpha1.EthernetState.negotiated_port_speed:type_name -> opi_api.network.opinetcommon.v1alpha1.EthPortSpeed + 5, // 9: opi_api.network.opinetcommon.v1alpha1.EthernetState.counters:type_name -> opi_api.network.opinetcommon.v1alpha1.EthernetCounters + 3, // 10: opi_api.network.opinetcommon.v1alpha1.EthernetIf.config:type_name -> opi_api.network.opinetcommon.v1alpha1.EthernetConfig + 6, // 11: opi_api.network.opinetcommon.v1alpha1.EthernetIf.state:type_name -> opi_api.network.opinetcommon.v1alpha1.EthernetState + 8, // 12: opi_api.network.opinetcommon.v1alpha1.EthernetIf.switched_vlan:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanSwitchedIf + 13, // [13:13] is the sub-list for method output_type + 13, // [13:13] is the sub-list for method input_type + 13, // [13:13] is the sub-list for extension type_name + 13, // [13:13] is the sub-list for extension extendee + 0, // [0:13] is the sub-list for field type_name +} + +func init() { file_networkethernet_proto_init() } +func file_networkethernet_proto_init() { + if File_networkethernet_proto != nil { + return + } + file_networkvlan_proto_init() + if !protoimpl.UnsafeEnabled { + file_networkethernet_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EthernetConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_networkethernet_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EthernetInDistribution); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_networkethernet_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EthernetCounters); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_networkethernet_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EthernetState); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_networkethernet_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*EthernetIf); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_networkethernet_proto_rawDesc, + NumEnums: 3, + NumMessages: 5, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_networkethernet_proto_goTypes, + DependencyIndexes: file_networkethernet_proto_depIdxs, + EnumInfos: file_networkethernet_proto_enumTypes, + MessageInfos: file_networkethernet_proto_msgTypes, + }.Build() + File_networkethernet_proto = out.File + file_networkethernet_proto_rawDesc = nil + file_networkethernet_proto_goTypes = nil + file_networkethernet_proto_depIdxs = nil +} diff --git a/network/opinetcommon/v1alpha1/gen/go/openconfig_interfaces.pb.go b/network/opinetcommon/v1alpha1/gen/go/networkinterfaces.pb.go similarity index 58% rename from network/opinetcommon/v1alpha1/gen/go/openconfig_interfaces.pb.go rename to network/opinetcommon/v1alpha1/gen/go/networkinterfaces.pb.go index 7245090f..05b70f48 100644 --- a/network/opinetcommon/v1alpha1/gen/go/openconfig_interfaces.pb.go +++ b/network/opinetcommon/v1alpha1/gen/go/networkinterfaces.pb.go @@ -1,6 +1,8 @@ -// openconfig_interfaces.proto file +// SPDX-License-Identifier: Apache-2.0 +// Copyright (c) 2023-2024 Dell Inc, or its subsidiaries. +// // Derived from the OpenConfig interfaces model github.com/openconfig/public/release/models/interfaces -// Copyright (c) 2023 Dell Inc, or its subsidiaries. +// // (-- api-linter: core::0141::forbidden-types=disabled // aip.dev/not-precedent: counters, mtu, index must be uint and not int. --) @@ -8,7 +10,7 @@ // versions: // protoc-gen-go v1.31.0 // protoc (unknown) -// source: openconfig_interfaces.proto +// source: networkinterfaces.proto package _go @@ -65,11 +67,11 @@ func (x InterfaceType) String() string { } func (InterfaceType) Descriptor() protoreflect.EnumDescriptor { - return file_openconfig_interfaces_proto_enumTypes[0].Descriptor() + return file_networkinterfaces_proto_enumTypes[0].Descriptor() } func (InterfaceType) Type() protoreflect.EnumType { - return &file_openconfig_interfaces_proto_enumTypes[0] + return &file_networkinterfaces_proto_enumTypes[0] } func (x InterfaceType) Number() protoreflect.EnumNumber { @@ -78,7 +80,7 @@ func (x InterfaceType) Number() protoreflect.EnumNumber { // Deprecated: Use InterfaceType.Descriptor instead. func (InterfaceType) EnumDescriptor() ([]byte, []int) { - return file_openconfig_interfaces_proto_rawDescGZIP(), []int{0} + return file_networkinterfaces_proto_rawDescGZIP(), []int{0} } // Operational State Enumeration @@ -138,11 +140,11 @@ func (x OperState) String() string { } func (OperState) Descriptor() protoreflect.EnumDescriptor { - return file_openconfig_interfaces_proto_enumTypes[1].Descriptor() + return file_networkinterfaces_proto_enumTypes[1].Descriptor() } func (OperState) Type() protoreflect.EnumType { - return &file_openconfig_interfaces_proto_enumTypes[1] + return &file_networkinterfaces_proto_enumTypes[1] } func (x OperState) Number() protoreflect.EnumNumber { @@ -151,7 +153,7 @@ func (x OperState) Number() protoreflect.EnumNumber { // Deprecated: Use OperState.Descriptor instead. func (OperState) EnumDescriptor() ([]byte, []int) { - return file_openconfig_interfaces_proto_rawDescGZIP(), []int{1} + return file_networkinterfaces_proto_rawDescGZIP(), []int{1} } // Interface config @@ -176,12 +178,14 @@ type Config struct { Description string `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"` // Setting for enabling/disabling the interface Enabled bool `protobuf:"varint,6,opt,name=enabled,proto3" json:"enabled,omitempty"` + // VLAN Tag Protocol Identifier (TPID) + Tpid TpidTypes `protobuf:"varint,7,opt,name=tpid,proto3,enum=opi_api.network.opinetcommon.v1alpha1.TpidTypes" json:"tpid,omitempty"` } func (x *Config) Reset() { *x = Config{} if protoimpl.UnsafeEnabled { - mi := &file_openconfig_interfaces_proto_msgTypes[0] + mi := &file_networkinterfaces_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -194,7 +198,7 @@ func (x *Config) String() string { func (*Config) ProtoMessage() {} func (x *Config) ProtoReflect() protoreflect.Message { - mi := &file_openconfig_interfaces_proto_msgTypes[0] + mi := &file_networkinterfaces_proto_msgTypes[0] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -207,7 +211,7 @@ func (x *Config) ProtoReflect() protoreflect.Message { // Deprecated: Use Config.ProtoReflect.Descriptor instead. func (*Config) Descriptor() ([]byte, []int) { - return file_openconfig_interfaces_proto_rawDescGZIP(), []int{0} + return file_networkinterfaces_proto_rawDescGZIP(), []int{0} } func (x *Config) GetName() string { @@ -252,6 +256,13 @@ func (x *Config) GetEnabled() bool { return false } +func (x *Config) GetTpid() TpidTypes { + if x != nil { + return x.Tpid + } + return TpidTypes_TPID_TYPES_UNSPECIFIED +} + // Statistics Counters for the interface - ro type Counters struct { state protoimpl.MessageState @@ -292,14 +303,14 @@ type Counters struct { OutErrors uint64 `protobuf:"varint,16,opt,name=out_errors,json=outErrors,proto3" json:"out_errors,omitempty"` // Carrier transition count CarrierTransitions uint64 `protobuf:"varint,17,opt,name=carrier_transitions,json=carrierTransitions,proto3" json:"carrier_transitions,omitempty"` - // Last Clear + // Timestamp of the last time the interface counters were cleared LastClear uint64 `protobuf:"varint,18,opt,name=last_clear,json=lastClear,proto3" json:"last_clear,omitempty"` } func (x *Counters) Reset() { *x = Counters{} if protoimpl.UnsafeEnabled { - mi := &file_openconfig_interfaces_proto_msgTypes[1] + mi := &file_networkinterfaces_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -312,7 +323,7 @@ func (x *Counters) String() string { func (*Counters) ProtoMessage() {} func (x *Counters) ProtoReflect() protoreflect.Message { - mi := &file_openconfig_interfaces_proto_msgTypes[1] + mi := &file_networkinterfaces_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -325,7 +336,7 @@ func (x *Counters) ProtoReflect() protoreflect.Message { // Deprecated: Use Counters.ProtoReflect.Descriptor instead. func (*Counters) Descriptor() ([]byte, []int) { - return file_openconfig_interfaces_proto_rawDescGZIP(), []int{1} + return file_networkinterfaces_proto_rawDescGZIP(), []int{1} } func (x *Counters) GetRxOctets() uint64 { @@ -484,20 +495,26 @@ type State struct { OperState OperState `protobuf:"varint,9,opt,name=oper_state,json=operState,proto3,enum=opi_api.network.opinetcommon.v1alpha1.OperState" json:"oper_state,omitempty"` // Last Change LastChange uint64 `protobuf:"varint,10,opt,name=last_change,json=lastChange,proto3" json:"last_change,omitempty"` - // Logical interface + // Logical interface - when set to true indicates a logical interface with + // no associated physical port or channel Logical bool `protobuf:"varint,11,opt,name=logical,proto3" json:"logical,omitempty"` - // Management interface indicator + // Management interface - when set to true indicates a dedicated management + // interface that is independent of the dataplane interfaces such as an out + // of band management network Management bool `protobuf:"varint,12,opt,name=management,proto3" json:"management,omitempty"` - // CPU + // CPU interface - when set to true the interface is for traffic handled by + // the system CPU or control plane Cpu bool `protobuf:"varint,13,opt,name=cpu,proto3" json:"cpu,omitempty"` // Interface Statistics Counters Counters *Counters `protobuf:"bytes,14,opt,name=counters,proto3" json:"counters,omitempty"` + // VLAN Tag Protocol Identifier + Tpid TpidTypes `protobuf:"varint,15,opt,name=tpid,proto3,enum=opi_api.network.opinetcommon.v1alpha1.TpidTypes" json:"tpid,omitempty"` } func (x *State) Reset() { *x = State{} if protoimpl.UnsafeEnabled { - mi := &file_openconfig_interfaces_proto_msgTypes[2] + mi := &file_networkinterfaces_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -510,7 +527,7 @@ func (x *State) String() string { func (*State) ProtoMessage() {} func (x *State) ProtoReflect() protoreflect.Message { - mi := &file_openconfig_interfaces_proto_msgTypes[2] + mi := &file_networkinterfaces_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -523,7 +540,7 @@ func (x *State) ProtoReflect() protoreflect.Message { // Deprecated: Use State.ProtoReflect.Descriptor instead. func (*State) Descriptor() ([]byte, []int) { - return file_openconfig_interfaces_proto_rawDescGZIP(), []int{2} + return file_networkinterfaces_proto_rawDescGZIP(), []int{2} } func (x *State) GetName() string { @@ -624,7 +641,17 @@ func (x *State) GetCounters() *Counters { return nil } +func (x *State) GetTpid() TpidTypes { + if x != nil { + return x.Tpid + } + return TpidTypes_TPID_TYPES_UNSPECIFIED +} + // Interface - physical or virtual interface reported +// (-- api-linter: core::0123::resource-annotation=disabled +// +// aip.dev/not-precedent: the name field is an opaque object --) type NetInterface struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -641,12 +668,14 @@ type NetInterface struct { Holdtime *NetInterface_HoldTime `protobuf:"bytes,4,opt,name=holdtime,proto3" json:"holdtime,omitempty"` // Subinterfaces assigned to the interface Subinterfaces *NetInterface_Subinterfaces `protobuf:"bytes,5,opt,name=subinterfaces,proto3" json:"subinterfaces,omitempty"` + // Ethernet interface + Ethernet *EthernetIf `protobuf:"bytes,6,opt,name=ethernet,proto3" json:"ethernet,omitempty"` } func (x *NetInterface) Reset() { *x = NetInterface{} if protoimpl.UnsafeEnabled { - mi := &file_openconfig_interfaces_proto_msgTypes[3] + mi := &file_networkinterfaces_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -659,7 +688,7 @@ func (x *NetInterface) String() string { func (*NetInterface) ProtoMessage() {} func (x *NetInterface) ProtoReflect() protoreflect.Message { - mi := &file_openconfig_interfaces_proto_msgTypes[3] + mi := &file_networkinterfaces_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -672,7 +701,7 @@ func (x *NetInterface) ProtoReflect() protoreflect.Message { // Deprecated: Use NetInterface.ProtoReflect.Descriptor instead. func (*NetInterface) Descriptor() ([]byte, []int) { - return file_openconfig_interfaces_proto_rawDescGZIP(), []int{3} + return file_networkinterfaces_proto_rawDescGZIP(), []int{3} } func (x *NetInterface) GetName() string { @@ -710,6 +739,13 @@ func (x *NetInterface) GetSubinterfaces() *NetInterface_Subinterfaces { return nil } +func (x *NetInterface) GetEthernet() *EthernetIf { + if x != nil { + return x.Ethernet + } + return nil +} + // Get Interface Request type GetNetInterfaceRequest struct { state protoimpl.MessageState @@ -723,7 +759,7 @@ type GetNetInterfaceRequest struct { func (x *GetNetInterfaceRequest) Reset() { *x = GetNetInterfaceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_openconfig_interfaces_proto_msgTypes[4] + mi := &file_networkinterfaces_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -736,7 +772,7 @@ func (x *GetNetInterfaceRequest) String() string { func (*GetNetInterfaceRequest) ProtoMessage() {} func (x *GetNetInterfaceRequest) ProtoReflect() protoreflect.Message { - mi := &file_openconfig_interfaces_proto_msgTypes[4] + mi := &file_networkinterfaces_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -749,7 +785,7 @@ func (x *GetNetInterfaceRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetNetInterfaceRequest.ProtoReflect.Descriptor instead. func (*GetNetInterfaceRequest) Descriptor() ([]byte, []int) { - return file_openconfig_interfaces_proto_rawDescGZIP(), []int{4} + return file_networkinterfaces_proto_rawDescGZIP(), []int{4} } func (x *GetNetInterfaceRequest) GetName() string { @@ -776,7 +812,7 @@ type ListNetInterfacesRequest struct { func (x *ListNetInterfacesRequest) Reset() { *x = ListNetInterfacesRequest{} if protoimpl.UnsafeEnabled { - mi := &file_openconfig_interfaces_proto_msgTypes[5] + mi := &file_networkinterfaces_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -789,7 +825,7 @@ func (x *ListNetInterfacesRequest) String() string { func (*ListNetInterfacesRequest) ProtoMessage() {} func (x *ListNetInterfacesRequest) ProtoReflect() protoreflect.Message { - mi := &file_openconfig_interfaces_proto_msgTypes[5] + mi := &file_networkinterfaces_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -802,7 +838,7 @@ func (x *ListNetInterfacesRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ListNetInterfacesRequest.ProtoReflect.Descriptor instead. func (*ListNetInterfacesRequest) Descriptor() ([]byte, []int) { - return file_openconfig_interfaces_proto_rawDescGZIP(), []int{5} + return file_networkinterfaces_proto_rawDescGZIP(), []int{5} } func (x *ListNetInterfacesRequest) GetParent() string { @@ -841,7 +877,7 @@ type ListNetInterfacesResponse struct { func (x *ListNetInterfacesResponse) Reset() { *x = ListNetInterfacesResponse{} if protoimpl.UnsafeEnabled { - mi := &file_openconfig_interfaces_proto_msgTypes[6] + mi := &file_networkinterfaces_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -854,7 +890,7 @@ func (x *ListNetInterfacesResponse) String() string { func (*ListNetInterfacesResponse) ProtoMessage() {} func (x *ListNetInterfacesResponse) ProtoReflect() protoreflect.Message { - mi := &file_openconfig_interfaces_proto_msgTypes[6] + mi := &file_networkinterfaces_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -867,7 +903,7 @@ func (x *ListNetInterfacesResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use ListNetInterfacesResponse.ProtoReflect.Descriptor instead. func (*ListNetInterfacesResponse) Descriptor() ([]byte, []int) { - return file_openconfig_interfaces_proto_rawDescGZIP(), []int{6} + return file_networkinterfaces_proto_rawDescGZIP(), []int{6} } func (x *ListNetInterfacesResponse) GetNetInterfaces() []*NetInterface { @@ -892,17 +928,17 @@ type UpdateNetInterfaceRequest struct { // Interface update settings NetInterface *NetInterface `protobuf:"bytes,1,opt,name=net_interface,json=netInterface,proto3" json:"net_interface,omitempty"` - // The list of fields to update. + // list of fields to update UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` - // If set to true, and the object is not found, a new object will be created. - // In this situation, `update_mask` is ignored. + // If set to true, and the object is found, a new object will be created. + // In this situation, 'update_mask' is ignored. AllowMissing bool `protobuf:"varint,3,opt,name=allow_missing,json=allowMissing,proto3" json:"allow_missing,omitempty"` } func (x *UpdateNetInterfaceRequest) Reset() { *x = UpdateNetInterfaceRequest{} if protoimpl.UnsafeEnabled { - mi := &file_openconfig_interfaces_proto_msgTypes[7] + mi := &file_networkinterfaces_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -915,7 +951,7 @@ func (x *UpdateNetInterfaceRequest) String() string { func (*UpdateNetInterfaceRequest) ProtoMessage() {} func (x *UpdateNetInterfaceRequest) ProtoReflect() protoreflect.Message { - mi := &file_openconfig_interfaces_proto_msgTypes[7] + mi := &file_networkinterfaces_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -928,7 +964,7 @@ func (x *UpdateNetInterfaceRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateNetInterfaceRequest.ProtoReflect.Descriptor instead. func (*UpdateNetInterfaceRequest) Descriptor() ([]byte, []int) { - return file_openconfig_interfaces_proto_rawDescGZIP(), []int{7} + return file_networkinterfaces_proto_rawDescGZIP(), []int{7} } func (x *UpdateNetInterfaceRequest) GetNetInterface() *NetInterface { @@ -967,7 +1003,7 @@ type NetInterface_HoldTime struct { func (x *NetInterface_HoldTime) Reset() { *x = NetInterface_HoldTime{} if protoimpl.UnsafeEnabled { - mi := &file_openconfig_interfaces_proto_msgTypes[8] + mi := &file_networkinterfaces_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -980,7 +1016,7 @@ func (x *NetInterface_HoldTime) String() string { func (*NetInterface_HoldTime) ProtoMessage() {} func (x *NetInterface_HoldTime) ProtoReflect() protoreflect.Message { - mi := &file_openconfig_interfaces_proto_msgTypes[8] + mi := &file_networkinterfaces_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -993,7 +1029,7 @@ func (x *NetInterface_HoldTime) ProtoReflect() protoreflect.Message { // Deprecated: Use NetInterface_HoldTime.ProtoReflect.Descriptor instead. func (*NetInterface_HoldTime) Descriptor() ([]byte, []int) { - return file_openconfig_interfaces_proto_rawDescGZIP(), []int{3, 0} + return file_networkinterfaces_proto_rawDescGZIP(), []int{3, 0} } func (x *NetInterface_HoldTime) GetHoldConfig() *NetInterface_HoldTime_HoldConfig { @@ -1023,7 +1059,7 @@ type NetInterface_Subinterfaces struct { func (x *NetInterface_Subinterfaces) Reset() { *x = NetInterface_Subinterfaces{} if protoimpl.UnsafeEnabled { - mi := &file_openconfig_interfaces_proto_msgTypes[9] + mi := &file_networkinterfaces_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1036,7 +1072,7 @@ func (x *NetInterface_Subinterfaces) String() string { func (*NetInterface_Subinterfaces) ProtoMessage() {} func (x *NetInterface_Subinterfaces) ProtoReflect() protoreflect.Message { - mi := &file_openconfig_interfaces_proto_msgTypes[9] + mi := &file_networkinterfaces_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1049,7 +1085,7 @@ func (x *NetInterface_Subinterfaces) ProtoReflect() protoreflect.Message { // Deprecated: Use NetInterface_Subinterfaces.ProtoReflect.Descriptor instead. func (*NetInterface_Subinterfaces) Descriptor() ([]byte, []int) { - return file_openconfig_interfaces_proto_rawDescGZIP(), []int{3, 1} + return file_networkinterfaces_proto_rawDescGZIP(), []int{3, 1} } func (x *NetInterface_Subinterfaces) GetSubinterface() []*NetInterface_Subinterfaces_Subinterface { @@ -1074,7 +1110,7 @@ type NetInterface_HoldTime_HoldConfig struct { func (x *NetInterface_HoldTime_HoldConfig) Reset() { *x = NetInterface_HoldTime_HoldConfig{} if protoimpl.UnsafeEnabled { - mi := &file_openconfig_interfaces_proto_msgTypes[10] + mi := &file_networkinterfaces_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1087,7 +1123,7 @@ func (x *NetInterface_HoldTime_HoldConfig) String() string { func (*NetInterface_HoldTime_HoldConfig) ProtoMessage() {} func (x *NetInterface_HoldTime_HoldConfig) ProtoReflect() protoreflect.Message { - mi := &file_openconfig_interfaces_proto_msgTypes[10] + mi := &file_networkinterfaces_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1100,7 +1136,7 @@ func (x *NetInterface_HoldTime_HoldConfig) ProtoReflect() protoreflect.Message { // Deprecated: Use NetInterface_HoldTime_HoldConfig.ProtoReflect.Descriptor instead. func (*NetInterface_HoldTime_HoldConfig) Descriptor() ([]byte, []int) { - return file_openconfig_interfaces_proto_rawDescGZIP(), []int{3, 0, 0} + return file_networkinterfaces_proto_rawDescGZIP(), []int{3, 0, 0} } func (x *NetInterface_HoldTime_HoldConfig) GetUp() uint32 { @@ -1132,7 +1168,7 @@ type NetInterface_HoldTime_HoldState struct { func (x *NetInterface_HoldTime_HoldState) Reset() { *x = NetInterface_HoldTime_HoldState{} if protoimpl.UnsafeEnabled { - mi := &file_openconfig_interfaces_proto_msgTypes[11] + mi := &file_networkinterfaces_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1145,7 +1181,7 @@ func (x *NetInterface_HoldTime_HoldState) String() string { func (*NetInterface_HoldTime_HoldState) ProtoMessage() {} func (x *NetInterface_HoldTime_HoldState) ProtoReflect() protoreflect.Message { - mi := &file_openconfig_interfaces_proto_msgTypes[11] + mi := &file_networkinterfaces_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1158,7 +1194,7 @@ func (x *NetInterface_HoldTime_HoldState) ProtoReflect() protoreflect.Message { // Deprecated: Use NetInterface_HoldTime_HoldState.ProtoReflect.Descriptor instead. func (*NetInterface_HoldTime_HoldState) Descriptor() ([]byte, []int) { - return file_openconfig_interfaces_proto_rawDescGZIP(), []int{3, 0, 1} + return file_networkinterfaces_proto_rawDescGZIP(), []int{3, 0, 1} } func (x *NetInterface_HoldTime_HoldState) GetUp() uint32 { @@ -1187,12 +1223,14 @@ type NetInterface_Subinterfaces_Subinterface struct { SubifConfig *NetInterface_Subinterfaces_Subinterface_SubifConfig `protobuf:"bytes,2,opt,name=subif_config,json=subifConfig,proto3" json:"subif_config,omitempty"` // Subinterface State and Statistics State *State `protobuf:"bytes,3,opt,name=state,proto3" json:"state,omitempty"` + // Subinterface VLAN + Vlan *VlanIf `protobuf:"bytes,4,opt,name=vlan,proto3" json:"vlan,omitempty"` } func (x *NetInterface_Subinterfaces_Subinterface) Reset() { *x = NetInterface_Subinterfaces_Subinterface{} if protoimpl.UnsafeEnabled { - mi := &file_openconfig_interfaces_proto_msgTypes[12] + mi := &file_networkinterfaces_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1205,7 +1243,7 @@ func (x *NetInterface_Subinterfaces_Subinterface) String() string { func (*NetInterface_Subinterfaces_Subinterface) ProtoMessage() {} func (x *NetInterface_Subinterfaces_Subinterface) ProtoReflect() protoreflect.Message { - mi := &file_openconfig_interfaces_proto_msgTypes[12] + mi := &file_networkinterfaces_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1218,7 +1256,7 @@ func (x *NetInterface_Subinterfaces_Subinterface) ProtoReflect() protoreflect.Me // Deprecated: Use NetInterface_Subinterfaces_Subinterface.ProtoReflect.Descriptor instead. func (*NetInterface_Subinterfaces_Subinterface) Descriptor() ([]byte, []int) { - return file_openconfig_interfaces_proto_rawDescGZIP(), []int{3, 1, 0} + return file_networkinterfaces_proto_rawDescGZIP(), []int{3, 1, 0} } func (x *NetInterface_Subinterfaces_Subinterface) GetIndex() int64 { @@ -1242,6 +1280,13 @@ func (x *NetInterface_Subinterfaces_Subinterface) GetState() *State { return nil } +func (x *NetInterface_Subinterfaces_Subinterface) GetVlan() *VlanIf { + if x != nil { + return x.Vlan + } + return nil +} + // Subinterface configuration type NetInterface_Subinterfaces_Subinterface_SubifConfig struct { state protoimpl.MessageState @@ -1259,7 +1304,7 @@ type NetInterface_Subinterfaces_Subinterface_SubifConfig struct { func (x *NetInterface_Subinterfaces_Subinterface_SubifConfig) Reset() { *x = NetInterface_Subinterfaces_Subinterface_SubifConfig{} if protoimpl.UnsafeEnabled { - mi := &file_openconfig_interfaces_proto_msgTypes[13] + mi := &file_networkinterfaces_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1272,7 +1317,7 @@ func (x *NetInterface_Subinterfaces_Subinterface_SubifConfig) String() string { func (*NetInterface_Subinterfaces_Subinterface_SubifConfig) ProtoMessage() {} func (x *NetInterface_Subinterfaces_Subinterface_SubifConfig) ProtoReflect() protoreflect.Message { - mi := &file_openconfig_interfaces_proto_msgTypes[13] + mi := &file_networkinterfaces_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1285,7 +1330,7 @@ func (x *NetInterface_Subinterfaces_Subinterface_SubifConfig) ProtoReflect() pro // Deprecated: Use NetInterface_Subinterfaces_Subinterface_SubifConfig.ProtoReflect.Descriptor instead. func (*NetInterface_Subinterfaces_Subinterface_SubifConfig) Descriptor() ([]byte, []int) { - return file_openconfig_interfaces_proto_rawDescGZIP(), []int{3, 1, 0, 0} + return file_networkinterfaces_proto_rawDescGZIP(), []int{3, 1, 0, 0} } func (x *NetInterface_Subinterfaces_Subinterface_SubifConfig) GetIndex() uint64 { @@ -1309,155 +1354,172 @@ func (x *NetInterface_Subinterfaces_Subinterface_SubifConfig) GetEnabled() bool return false } -var File_openconfig_interfaces_proto protoreflect.FileDescriptor - -var file_openconfig_interfaces_proto_rawDesc = []byte{ - 0x0a, 0x1b, 0x6f, 0x70, 0x65, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x69, 0x6e, 0x74, - 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x25, 0x6f, - 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, - 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x31, 0x1a, 0x12, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x74, 0x79, 0x70, - 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, - 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, - 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, - 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, - 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf7, 0x01, - 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x4d, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x34, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, - 0x65, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, - 0x12, 0x15, 0x0a, 0x03, 0x6d, 0x74, 0x75, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x03, 0xe0, - 0x41, 0x02, 0x52, 0x03, 0x6d, 0x74, 0x75, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x6f, 0x6f, 0x70, 0x62, - 0x61, 0x63, 0x6b, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, - 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x6c, 0x6f, 0x6f, 0x70, 0x62, 0x61, 0x63, 0x6b, 0x4d, 0x6f, 0x64, - 0x65, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, - 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, - 0x6c, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, - 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x22, 0x86, 0x06, 0x0a, 0x08, 0x43, 0x6f, 0x75, 0x6e, - 0x74, 0x65, 0x72, 0x73, 0x12, 0x20, 0x0a, 0x09, 0x72, 0x78, 0x5f, 0x6f, 0x63, 0x74, 0x65, 0x74, - 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x08, 0x72, 0x78, - 0x4f, 0x63, 0x74, 0x65, 0x74, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x78, 0x5f, 0x70, 0x61, 0x63, - 0x6b, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, - 0x09, 0x72, 0x78, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x2b, 0x0a, 0x0f, 0x72, 0x78, - 0x5f, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6b, 0x74, 0x73, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x72, 0x78, 0x55, 0x6e, 0x69, 0x63, - 0x61, 0x73, 0x74, 0x50, 0x6b, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x11, 0x72, 0x78, 0x5f, 0x62, 0x72, - 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6b, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x72, 0x78, 0x42, 0x72, 0x6f, 0x61, 0x64, - 0x63, 0x61, 0x73, 0x74, 0x50, 0x6b, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x11, 0x72, 0x78, 0x5f, 0x6d, - 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6b, 0x74, 0x73, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x72, 0x78, 0x4d, 0x75, 0x6c, 0x74, - 0x69, 0x63, 0x61, 0x73, 0x74, 0x50, 0x6b, 0x74, 0x73, 0x12, 0x24, 0x0a, 0x0b, 0x72, 0x78, 0x5f, - 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, - 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x72, 0x78, 0x44, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x73, 0x12, - 0x20, 0x0a, 0x09, 0x72, 0x78, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x07, 0x20, 0x01, - 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x08, 0x72, 0x78, 0x45, 0x72, 0x72, 0x6f, 0x72, - 0x73, 0x12, 0x2f, 0x0a, 0x11, 0x72, 0x78, 0x5f, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x5f, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, - 0x03, 0x52, 0x0f, 0x72, 0x78, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x50, 0x72, 0x6f, 0x74, - 0x6f, 0x73, 0x12, 0x27, 0x0a, 0x0d, 0x72, 0x78, 0x5f, 0x66, 0x63, 0x73, 0x5f, 0x65, 0x72, 0x72, - 0x6f, 0x72, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, - 0x72, 0x78, 0x46, 0x63, 0x73, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x6f, - 0x75, 0x74, 0x5f, 0x6f, 0x63, 0x74, 0x65, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x42, - 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x6f, 0x75, 0x74, 0x4f, 0x63, 0x74, 0x65, 0x74, 0x73, 0x12, - 0x24, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x6f, 0x75, 0x74, 0x50, 0x61, - 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x2d, 0x0a, 0x10, 0x6f, 0x75, 0x74, 0x5f, 0x75, 0x6e, 0x69, - 0x63, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6b, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, 0x42, - 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0e, 0x6f, 0x75, 0x74, 0x55, 0x6e, 0x69, 0x63, 0x61, 0x73, 0x74, - 0x50, 0x6b, 0x74, 0x73, 0x12, 0x31, 0x0a, 0x12, 0x6f, 0x75, 0x74, 0x5f, 0x62, 0x72, 0x6f, 0x61, - 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6b, 0x74, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x04, - 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x42, 0x72, 0x6f, 0x61, 0x64, 0x63, - 0x61, 0x73, 0x74, 0x50, 0x6b, 0x74, 0x73, 0x12, 0x31, 0x0a, 0x12, 0x6f, 0x75, 0x74, 0x5f, 0x6d, - 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6b, 0x74, 0x73, 0x18, 0x0e, 0x20, - 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x4d, 0x75, 0x6c, - 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x50, 0x6b, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0c, 0x6f, 0x75, - 0x74, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x04, - 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x44, 0x69, 0x73, 0x63, 0x61, 0x72, - 0x64, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x6f, 0x75, 0x74, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, - 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x6f, 0x75, 0x74, - 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x34, 0x0a, 0x13, 0x63, 0x61, 0x72, 0x72, 0x69, 0x65, - 0x72, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x11, 0x20, - 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 0x63, 0x61, 0x72, 0x72, 0x69, 0x65, - 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x22, 0x0a, 0x0a, - 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x18, 0x12, 0x20, 0x01, 0x28, 0x04, - 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6c, 0x65, 0x61, 0x72, - 0x22, 0x97, 0x05, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x4d, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0e, 0x32, 0x34, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, - 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, - 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x74, 0x79, - 0x70, 0x65, 0x12, 0x15, 0x0a, 0x03, 0x6d, 0x74, 0x75, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x42, - 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, 0x6d, 0x74, 0x75, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x6f, 0x6f, - 0x70, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, - 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x6c, 0x6f, 0x6f, 0x70, 0x62, 0x61, 0x63, 0x6b, 0x4d, - 0x6f, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, - 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x64, - 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x07, 0x65, 0x6e, - 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, - 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x07, 0x69, 0x66, 0x69, - 0x6e, 0x64, 0x65, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, - 0x07, 0x69, 0x66, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x57, 0x0a, 0x0b, 0x61, 0x64, 0x6d, 0x69, - 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, - 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, - 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x12, 0x54, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, +var File_networkinterfaces_proto protoreflect.FileDescriptor + +var file_networkinterfaces_proto_rawDesc = []byte{ + 0x0a, 0x17, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, + 0x63, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x25, 0x6f, 0x70, 0x69, 0x5f, 0x61, + 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, + 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, + 0x1a, 0x12, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x11, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x76, 0x6c, 0x61, + 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, + 0x65, 0x74, 0x68, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, + 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, + 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, + 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, + 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x22, 0xc2, 0x02, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x17, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, + 0x02, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4d, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, 0x70, - 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x6f, 0x70, - 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, 0x5f, - 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, - 0x03, 0x52, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x1d, 0x0a, - 0x07, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, - 0xe0, 0x41, 0x03, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x12, 0x23, 0x0a, 0x0a, - 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, - 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, - 0x74, 0x12, 0x15, 0x0a, 0x03, 0x63, 0x70, 0x75, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, - 0xe0, 0x41, 0x03, 0x52, 0x03, 0x63, 0x70, 0x75, 0x12, 0x50, 0x0a, 0x08, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x65, 0x72, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6f, 0x70, 0x69, - 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, - 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, - 0x52, 0x08, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x22, 0xc7, 0x0a, 0x0a, 0x0c, 0x4e, - 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x08, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4a, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, - 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, - 0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, - 0x12, 0x47, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x2c, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, - 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x5d, 0x0a, 0x08, 0x68, 0x6f, 0x6c, - 0x64, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x6f, 0x70, + 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, + 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, + 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x15, 0x0a, 0x03, 0x6d, 0x74, 0x75, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0d, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x03, 0x6d, 0x74, 0x75, 0x12, 0x28, 0x0a, + 0x0d, 0x6c, 0x6f, 0x6f, 0x70, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x6c, 0x6f, 0x6f, 0x70, 0x62, + 0x61, 0x63, 0x6b, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, + 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, + 0x02, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, + 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x42, + 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x49, 0x0a, + 0x04, 0x74, 0x70, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x6f, 0x70, + 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, + 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x31, 0x2e, 0x54, 0x70, 0x69, 0x64, 0x54, 0x79, 0x70, 0x65, 0x73, 0x42, 0x03, 0xe0, + 0x41, 0x01, 0x52, 0x04, 0x74, 0x70, 0x69, 0x64, 0x22, 0x86, 0x06, 0x0a, 0x08, 0x43, 0x6f, 0x75, + 0x6e, 0x74, 0x65, 0x72, 0x73, 0x12, 0x20, 0x0a, 0x09, 0x72, 0x78, 0x5f, 0x6f, 0x63, 0x74, 0x65, + 0x74, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x08, 0x72, + 0x78, 0x4f, 0x63, 0x74, 0x65, 0x74, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x72, 0x78, 0x5f, 0x70, 0x61, + 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, + 0x52, 0x09, 0x72, 0x78, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x2b, 0x0a, 0x0f, 0x72, + 0x78, 0x5f, 0x75, 0x6e, 0x69, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6b, 0x74, 0x73, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x72, 0x78, 0x55, 0x6e, 0x69, + 0x63, 0x61, 0x73, 0x74, 0x50, 0x6b, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x11, 0x72, 0x78, 0x5f, 0x62, + 0x72, 0x6f, 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6b, 0x74, 0x73, 0x18, 0x04, 0x20, + 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x72, 0x78, 0x42, 0x72, 0x6f, 0x61, + 0x64, 0x63, 0x61, 0x73, 0x74, 0x50, 0x6b, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x11, 0x72, 0x78, 0x5f, + 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6b, 0x74, 0x73, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f, 0x72, 0x78, 0x4d, 0x75, 0x6c, + 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x50, 0x6b, 0x74, 0x73, 0x12, 0x24, 0x0a, 0x0b, 0x72, 0x78, + 0x5f, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x04, 0x42, + 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x72, 0x78, 0x44, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x73, + 0x12, 0x20, 0x0a, 0x09, 0x72, 0x78, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x08, 0x72, 0x78, 0x45, 0x72, 0x72, 0x6f, + 0x72, 0x73, 0x12, 0x2f, 0x0a, 0x11, 0x72, 0x78, 0x5f, 0x75, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, + 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, + 0x41, 0x03, 0x52, 0x0f, 0x72, 0x78, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x73, 0x12, 0x27, 0x0a, 0x0d, 0x72, 0x78, 0x5f, 0x66, 0x63, 0x73, 0x5f, 0x65, 0x72, + 0x72, 0x6f, 0x72, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, + 0x0b, 0x72, 0x78, 0x46, 0x63, 0x73, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x22, 0x0a, 0x0a, + 0x6f, 0x75, 0x74, 0x5f, 0x6f, 0x63, 0x74, 0x65, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, + 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x6f, 0x75, 0x74, 0x4f, 0x63, 0x74, 0x65, 0x74, 0x73, + 0x12, 0x24, 0x0a, 0x0b, 0x6f, 0x75, 0x74, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, + 0x0b, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x6f, 0x75, 0x74, 0x50, + 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x2d, 0x0a, 0x10, 0x6f, 0x75, 0x74, 0x5f, 0x75, 0x6e, + 0x69, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6b, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x04, + 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0e, 0x6f, 0x75, 0x74, 0x55, 0x6e, 0x69, 0x63, 0x61, 0x73, + 0x74, 0x50, 0x6b, 0x74, 0x73, 0x12, 0x31, 0x0a, 0x12, 0x6f, 0x75, 0x74, 0x5f, 0x62, 0x72, 0x6f, + 0x61, 0x64, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6b, 0x74, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, + 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x42, 0x72, 0x6f, 0x61, 0x64, + 0x63, 0x61, 0x73, 0x74, 0x50, 0x6b, 0x74, 0x73, 0x12, 0x31, 0x0a, 0x12, 0x6f, 0x75, 0x74, 0x5f, + 0x6d, 0x75, 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x5f, 0x70, 0x6b, 0x74, 0x73, 0x18, 0x0e, + 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x4d, 0x75, + 0x6c, 0x74, 0x69, 0x63, 0x61, 0x73, 0x74, 0x50, 0x6b, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0c, 0x6f, + 0x75, 0x74, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x73, 0x18, 0x0f, 0x20, 0x01, 0x28, + 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x44, 0x69, 0x73, 0x63, 0x61, + 0x72, 0x64, 0x73, 0x12, 0x22, 0x0a, 0x0a, 0x6f, 0x75, 0x74, 0x5f, 0x65, 0x72, 0x72, 0x6f, 0x72, + 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x6f, 0x75, + 0x74, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x12, 0x34, 0x0a, 0x13, 0x63, 0x61, 0x72, 0x72, 0x69, + 0x65, 0x72, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x11, + 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 0x63, 0x61, 0x72, 0x72, 0x69, + 0x65, 0x72, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x22, 0x0a, + 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6c, 0x65, 0x61, 0x72, 0x18, 0x12, 0x20, 0x01, 0x28, + 0x04, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6c, 0x65, 0x61, + 0x72, 0x22, 0xe2, 0x05, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4d, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, + 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x72, + 0x66, 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x74, + 0x79, 0x70, 0x65, 0x12, 0x15, 0x0a, 0x03, 0x6d, 0x74, 0x75, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, + 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, 0x6d, 0x74, 0x75, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x6f, + 0x6f, 0x70, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x6c, 0x6f, 0x6f, 0x70, 0x62, 0x61, 0x63, 0x6b, + 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x07, 0x65, + 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, + 0x03, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x07, 0x69, 0x66, + 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x03, 0xe0, 0x41, 0x03, + 0x52, 0x07, 0x69, 0x66, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x57, 0x0a, 0x0b, 0x61, 0x64, 0x6d, + 0x69, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, + 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, + 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, 0x74, + 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x53, 0x74, 0x61, + 0x74, 0x65, 0x12, 0x54, 0x0a, 0x0a, 0x6f, 0x70, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, + 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, + 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, + 0x70, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x6f, + 0x70, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x24, 0x0a, 0x0b, 0x6c, 0x61, 0x73, 0x74, + 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, + 0x41, 0x03, 0x52, 0x0a, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x12, 0x1d, + 0x0a, 0x07, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x42, + 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x6c, 0x6f, 0x67, 0x69, 0x63, 0x61, 0x6c, 0x12, 0x23, 0x0a, + 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, + 0x08, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x65, 0x6d, 0x65, + 0x6e, 0x74, 0x12, 0x15, 0x0a, 0x03, 0x63, 0x70, 0x75, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x42, + 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03, 0x63, 0x70, 0x75, 0x12, 0x50, 0x0a, 0x08, 0x63, 0x6f, 0x75, + 0x6e, 0x74, 0x65, 0x72, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x6f, 0x70, + 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, + 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x42, 0x03, 0xe0, 0x41, + 0x03, 0x52, 0x08, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x65, 0x72, 0x73, 0x12, 0x49, 0x0a, 0x04, 0x74, + 0x70, 0x69, 0x64, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x6f, 0x70, 0x69, 0x5f, + 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, + 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x31, 0x2e, 0x54, 0x70, 0x69, 0x64, 0x54, 0x79, 0x70, 0x65, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, + 0x52, 0x04, 0x74, 0x70, 0x69, 0x64, 0x22, 0xe9, 0x0b, 0x0a, 0x0c, 0x4e, 0x65, 0x74, 0x49, 0x6e, + 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x08, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x4a, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x2d, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, + 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, + 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x47, 0x0a, 0x05, + 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6f, 0x70, + 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, + 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, + 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x5d, 0x0a, 0x08, 0x68, 0x6f, 0x6c, 0x64, 0x74, 0x69, 0x6d, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, + 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, + 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, + 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x2e, 0x48, 0x6f, 0x6c, + 0x64, 0x54, 0x69, 0x6d, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x68, 0x6f, 0x6c, 0x64, + 0x74, 0x69, 0x6d, 0x65, 0x12, 0x6c, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x69, 0x6e, 0x74, 0x65, 0x72, + 0x66, 0x61, 0x63, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, - 0x2e, 0x48, 0x6f, 0x6c, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, - 0x68, 0x6f, 0x6c, 0x64, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x6c, 0x0a, 0x0d, 0x73, 0x75, 0x62, 0x69, - 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x41, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, - 0x66, 0x61, 0x63, 0x65, 0x2e, 0x53, 0x75, 0x62, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, - 0x65, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x69, 0x6e, 0x74, 0x65, - 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x1a, 0xdc, 0x02, 0x0a, 0x08, 0x48, 0x6f, 0x6c, 0x64, 0x54, + 0x2e, 0x53, 0x75, 0x62, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x42, 0x03, + 0xe0, 0x41, 0x01, 0x52, 0x0d, 0x73, 0x75, 0x62, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, + 0x65, 0x73, 0x12, 0x52, 0x0a, 0x08, 0x65, 0x74, 0x68, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, + 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, + 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x45, 0x74, 0x68, + 0x65, 0x72, 0x6e, 0x65, 0x74, 0x49, 0x66, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x65, 0x74, + 0x68, 0x65, 0x72, 0x6e, 0x65, 0x74, 0x1a, 0xdc, 0x02, 0x0a, 0x08, 0x48, 0x6f, 0x6c, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x6d, 0x0a, 0x0b, 0x68, 0x6f, 0x6c, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, @@ -1479,7 +1541,7 @@ var file_openconfig_interfaces_proto_rawDesc = []byte{ 0x6c, 0x64, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x13, 0x0a, 0x02, 0x75, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x02, 0x75, 0x70, 0x12, 0x17, 0x0a, 0x04, 0x64, 0x6f, 0x77, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, - 0x04, 0x64, 0x6f, 0x77, 0x6e, 0x1a, 0xf2, 0x03, 0x0a, 0x0d, 0x53, 0x75, 0x62, 0x69, 0x6e, 0x74, + 0x04, 0x64, 0x6f, 0x77, 0x6e, 0x1a, 0xba, 0x04, 0x0a, 0x0d, 0x53, 0x75, 0x62, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x12, 0x77, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x4e, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, @@ -1488,7 +1550,7 @@ var file_openconfig_interfaces_proto_rawDesc = []byte{ 0x63, 0x65, 0x2e, 0x53, 0x75, 0x62, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2e, 0x53, 0x75, 0x62, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x73, 0x75, 0x62, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, - 0x1a, 0xe7, 0x02, 0x0a, 0x0c, 0x53, 0x75, 0x62, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, + 0x1a, 0xaf, 0x03, 0x0a, 0x0c, 0x53, 0x75, 0x62, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x19, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x82, 0x01, 0x0a, 0x0c, 0x73, 0x75, 0x62, 0x69, 0x66, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, @@ -1503,148 +1565,153 @@ var file_openconfig_interfaces_proto_rawDesc = []byte{ 0x32, 0x2c, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, - 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x1a, 0x6e, 0x0a, 0x0b, 0x53, 0x75, - 0x62, 0x69, 0x66, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x19, 0x0a, 0x05, 0x69, 0x6e, 0x64, - 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x05, 0x69, - 0x6e, 0x64, 0x65, 0x78, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, - 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x07, 0x65, - 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, - 0x01, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x3a, 0x68, 0xea, 0x41, 0x65, 0x0a, - 0x2c, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, - 0x2e, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, - 0x2f, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x18, 0x6e, - 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x2f, 0x7b, 0x69, 0x6e, 0x74, - 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x7d, 0x2a, 0x0d, 0x6e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, - 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x32, 0x0c, 0x6e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, - 0x66, 0x61, 0x63, 0x65, 0x22, 0x53, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x74, 0x49, 0x6e, - 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x39, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0, 0x41, - 0x02, 0xfa, 0x41, 0x1f, 0x0a, 0x1d, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, - 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x76, 0x31, 0x2f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, - 0x63, 0x65, 0x73, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x9f, 0x01, 0x0a, 0x18, 0x4c, 0x69, + 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x46, 0x0a, 0x04, 0x76, 0x6c, + 0x61, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, + 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, + 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, + 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x66, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x04, 0x76, 0x6c, + 0x61, 0x6e, 0x1a, 0x6e, 0x0a, 0x0b, 0x53, 0x75, 0x62, 0x69, 0x66, 0x43, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x12, 0x19, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, + 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x25, 0x0a, 0x0b, + 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, + 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x3a, 0x6e, 0xea, 0x41, 0x6b, 0x0a, 0x32, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, + 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x4e, + 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x18, 0x6e, 0x65, 0x74, + 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x2f, 0x7b, 0x69, 0x6e, 0x74, 0x65, 0x72, + 0x66, 0x61, 0x63, 0x65, 0x7d, 0x2a, 0x0d, 0x6e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, + 0x61, 0x63, 0x65, 0x73, 0x32, 0x0c, 0x6e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, + 0x63, 0x65, 0x22, 0x53, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, + 0x72, 0x66, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x39, 0x0a, 0x04, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0, 0x41, 0x02, 0xfa, + 0x41, 0x1f, 0x0a, 0x1d, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x2e, 0x76, 0x31, 0x2f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, + 0x73, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x9f, 0x01, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, + 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1f, 0x0a, 0x1d, 0x6f, 0x70, + 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x76, 0x31, + 0x2f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x52, 0x06, 0x70, 0x61, 0x72, + 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, + 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, + 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, + 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x9f, 0x01, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1f, 0x0a, 0x1d, - 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, - 0x76, 0x31, 0x2f, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x52, 0x06, 0x70, - 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, - 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, - 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, - 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, - 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x9f, 0x01, 0x0a, 0x19, - 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, - 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5a, 0x0a, 0x0e, 0x6e, 0x65, 0x74, - 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x33, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5a, 0x0a, 0x0e, 0x6e, 0x65, 0x74, 0x5f, 0x69, + 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x33, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, + 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, + 0x66, 0x61, 0x63, 0x65, 0x52, 0x0d, 0x6e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, + 0x63, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, + 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, + 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xe6, 0x01, 0x0a, 0x19, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, + 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5d, 0x0a, 0x0d, 0x6e, 0x65, 0x74, + 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x33, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, + 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, + 0x72, 0x66, 0x61, 0x63, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x6e, 0x65, 0x74, 0x49, + 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, + 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x28, 0x0a, 0x0d, 0x61, 0x6c, + 0x6c, 0x6f, 0x77, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4d, 0x69, 0x73, + 0x73, 0x69, 0x6e, 0x67, 0x2a, 0x69, 0x0a, 0x0d, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, + 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x1a, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x46, 0x41, + 0x43, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, + 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x46, 0x41, + 0x43, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x45, 0x54, 0x48, 0x45, 0x52, 0x4e, 0x45, 0x54, + 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x46, 0x41, 0x43, 0x45, 0x5f, + 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4c, 0x4f, 0x4f, 0x50, 0x42, 0x41, 0x43, 0x4b, 0x10, 0x02, 0x2a, + 0xd4, 0x01, 0x0a, 0x09, 0x4f, 0x70, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, + 0x16, 0x4f, 0x50, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, + 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x50, 0x45, + 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x50, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, + 0x4f, 0x50, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x4f, 0x57, 0x4e, 0x10, + 0x03, 0x12, 0x16, 0x0a, 0x12, 0x4f, 0x50, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, + 0x54, 0x45, 0x53, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x04, 0x12, 0x16, 0x0a, 0x12, 0x4f, 0x50, 0x45, + 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, + 0x05, 0x12, 0x16, 0x0a, 0x12, 0x4f, 0x50, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, + 0x44, 0x4f, 0x52, 0x4d, 0x41, 0x4e, 0x54, 0x10, 0x06, 0x12, 0x1a, 0x0a, 0x16, 0x4f, 0x50, 0x45, + 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x50, 0x52, 0x45, 0x53, + 0x45, 0x4e, 0x54, 0x10, 0x07, 0x12, 0x1f, 0x0a, 0x1b, 0x4f, 0x50, 0x45, 0x52, 0x5f, 0x53, 0x54, + 0x41, 0x54, 0x45, 0x5f, 0x4c, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x4c, 0x41, 0x59, 0x45, 0x52, 0x5f, + 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x08, 0x32, 0x88, 0x05, 0x0a, 0x13, 0x4e, 0x65, 0x74, 0x49, 0x6e, + 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0xb9, + 0x01, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, + 0x63, 0x65, 0x12, 0x3d, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, + 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x4e, 0x65, + 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x33, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, - 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x52, 0x0d, 0x6e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, - 0x66, 0x61, 0x63, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, - 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, - 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xe6, 0x01, - 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, - 0x66, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5d, 0x0a, 0x0d, 0x6e, - 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, - 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4e, 0x65, 0x74, 0x49, 0x6e, - 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x6e, 0x65, - 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x01, - 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x28, 0x0a, 0x0d, - 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4d, - 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x2a, 0x69, 0x0a, 0x0d, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, - 0x61, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e, 0x0a, 0x1a, 0x49, 0x4e, 0x54, 0x45, 0x52, - 0x46, 0x41, 0x43, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, - 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x49, 0x4e, 0x54, 0x45, 0x52, - 0x46, 0x41, 0x43, 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x45, 0x54, 0x48, 0x45, 0x52, 0x4e, - 0x45, 0x54, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x46, 0x41, 0x43, - 0x45, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x4c, 0x4f, 0x4f, 0x50, 0x42, 0x41, 0x43, 0x4b, 0x10, - 0x02, 0x2a, 0xd4, 0x01, 0x0a, 0x09, 0x4f, 0x70, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, - 0x1a, 0x0a, 0x16, 0x4f, 0x50, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, - 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x4f, - 0x50, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x50, 0x10, 0x02, 0x12, 0x13, - 0x0a, 0x0f, 0x4f, 0x50, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x44, 0x4f, 0x57, - 0x4e, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x4f, 0x50, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, - 0x45, 0x5f, 0x54, 0x45, 0x53, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x04, 0x12, 0x16, 0x0a, 0x12, 0x4f, - 0x50, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, - 0x4e, 0x10, 0x05, 0x12, 0x16, 0x0a, 0x12, 0x4f, 0x50, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, - 0x45, 0x5f, 0x44, 0x4f, 0x52, 0x4d, 0x41, 0x4e, 0x54, 0x10, 0x06, 0x12, 0x1a, 0x0a, 0x16, 0x4f, - 0x50, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x50, 0x52, - 0x45, 0x53, 0x45, 0x4e, 0x54, 0x10, 0x07, 0x12, 0x1f, 0x0a, 0x1b, 0x4f, 0x50, 0x45, 0x52, 0x5f, - 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x4c, 0x4f, 0x57, 0x45, 0x52, 0x5f, 0x4c, 0x41, 0x59, 0x45, - 0x52, 0x5f, 0x44, 0x4f, 0x57, 0x4e, 0x10, 0x08, 0x32, 0x88, 0x05, 0x0a, 0x13, 0x4e, 0x65, 0x74, - 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, - 0x12, 0xb9, 0x01, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, - 0x66, 0x61, 0x63, 0x65, 0x12, 0x3d, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, + 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x22, 0x32, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82, + 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x12, 0x23, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, + 0x3d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, + 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x2f, 0x2a, 0x7d, 0x12, 0xc0, 0x01, 0x0a, 0x11, 0x4c, + 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, + 0x12, 0x3f, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, + 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, + 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x40, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, + 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x22, 0x28, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x82, 0xd3, + 0xe4, 0x93, 0x02, 0x19, 0x12, 0x17, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, + 0x74, 0x3d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x7d, 0x12, 0xf1, 0x01, + 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, + 0x66, 0x61, 0x63, 0x65, 0x12, 0x40, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, - 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, - 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, - 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4e, 0x65, 0x74, 0x49, - 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x22, 0x32, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x25, 0x12, 0x23, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, - 0x6d, 0x65, 0x3d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x2f, - 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x2f, 0x2a, 0x7d, 0x12, 0xc0, 0x01, 0x0a, - 0x11, 0x4c, 0x69, 0x73, 0x74, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, - 0x65, 0x73, 0x12, 0x3f, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, - 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4e, - 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x40, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, - 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, - 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, - 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x28, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, - 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x19, 0x12, 0x17, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, - 0x65, 0x6e, 0x74, 0x3d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x7d, 0x12, - 0xf1, 0x01, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, - 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x12, 0x40, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, + 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, + 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, - 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x33, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, - 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, - 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, - 0x2e, 0x4e, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x22, 0x64, 0xda, - 0x41, 0x19, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x2c, - 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x82, 0xd3, 0xe4, 0x93, 0x02, - 0x42, 0x3a, 0x0d, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, - 0x32, 0x31, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, - 0x66, 0x61, 0x63, 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, - 0x61, 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, - 0x2f, 0x2a, 0x7d, 0x42, 0x88, 0x01, 0x0a, 0x25, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, - 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x42, 0x19, 0x4f, - 0x70, 0x65, 0x6e, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, - 0x63, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x42, 0x67, 0x69, 0x74, 0x68, - 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6f, 0x70, 0x69, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, - 0x74, 0x2f, 0x6f, 0x70, 0x69, 0x2d, 0x61, 0x70, 0x69, 0x2f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x67, 0x6f, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4e, + 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x22, 0x64, 0xda, 0x41, 0x19, + 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x2c, 0x75, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x42, 0x3a, + 0x0d, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x32, 0x31, + 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, + 0x63, 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, + 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x2f, 0x2a, + 0x7d, 0x42, 0x85, 0x01, 0x0a, 0x25, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, + 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x42, 0x16, 0x4e, 0x65, 0x74, + 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x73, 0x50, 0x72, + 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x42, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, + 0x6d, 0x2f, 0x6f, 0x70, 0x69, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x2f, 0x6f, 0x70, 0x69, + 0x2d, 0x61, 0x70, 0x69, 0x2f, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2f, 0x6f, 0x70, 0x69, + 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x31, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x67, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, } var ( - file_openconfig_interfaces_proto_rawDescOnce sync.Once - file_openconfig_interfaces_proto_rawDescData = file_openconfig_interfaces_proto_rawDesc + file_networkinterfaces_proto_rawDescOnce sync.Once + file_networkinterfaces_proto_rawDescData = file_networkinterfaces_proto_rawDesc ) -func file_openconfig_interfaces_proto_rawDescGZIP() []byte { - file_openconfig_interfaces_proto_rawDescOnce.Do(func() { - file_openconfig_interfaces_proto_rawDescData = protoimpl.X.CompressGZIP(file_openconfig_interfaces_proto_rawDescData) +func file_networkinterfaces_proto_rawDescGZIP() []byte { + file_networkinterfaces_proto_rawDescOnce.Do(func() { + file_networkinterfaces_proto_rawDescData = protoimpl.X.CompressGZIP(file_networkinterfaces_proto_rawDescData) }) - return file_openconfig_interfaces_proto_rawDescData + return file_networkinterfaces_proto_rawDescData } -var file_openconfig_interfaces_proto_enumTypes = make([]protoimpl.EnumInfo, 2) -var file_openconfig_interfaces_proto_msgTypes = make([]protoimpl.MessageInfo, 14) -var file_openconfig_interfaces_proto_goTypes = []interface{}{ +var file_networkinterfaces_proto_enumTypes = make([]protoimpl.EnumInfo, 2) +var file_networkinterfaces_proto_msgTypes = make([]protoimpl.MessageInfo, 14) +var file_networkinterfaces_proto_goTypes = []interface{}{ (InterfaceType)(0), // 0: opi_api.network.opinetcommon.v1alpha1.InterfaceType (OperState)(0), // 1: opi_api.network.opinetcommon.v1alpha1.OperState (*Config)(nil), // 2: opi_api.network.opinetcommon.v1alpha1.Config @@ -1661,48 +1728,57 @@ var file_openconfig_interfaces_proto_goTypes = []interface{}{ (*NetInterface_HoldTime_HoldState)(nil), // 13: opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTime.HoldState (*NetInterface_Subinterfaces_Subinterface)(nil), // 14: opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.Subinterface (*NetInterface_Subinterfaces_Subinterface_SubifConfig)(nil), // 15: opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.Subinterface.SubifConfig - (AdminState)(0), // 16: opi_api.network.opinetcommon.v1alpha1.AdminState - (*fieldmaskpb.FieldMask)(nil), // 17: google.protobuf.FieldMask + (TpidTypes)(0), // 16: opi_api.network.opinetcommon.v1alpha1.TpidTypes + (AdminState)(0), // 17: opi_api.network.opinetcommon.v1alpha1.AdminState + (*EthernetIf)(nil), // 18: opi_api.network.opinetcommon.v1alpha1.EthernetIf + (*fieldmaskpb.FieldMask)(nil), // 19: google.protobuf.FieldMask + (*VlanIf)(nil), // 20: opi_api.network.opinetcommon.v1alpha1.VlanIf } -var file_openconfig_interfaces_proto_depIdxs = []int32{ +var file_networkinterfaces_proto_depIdxs = []int32{ 0, // 0: opi_api.network.opinetcommon.v1alpha1.Config.type:type_name -> opi_api.network.opinetcommon.v1alpha1.InterfaceType - 0, // 1: opi_api.network.opinetcommon.v1alpha1.State.type:type_name -> opi_api.network.opinetcommon.v1alpha1.InterfaceType - 16, // 2: opi_api.network.opinetcommon.v1alpha1.State.admin_state:type_name -> opi_api.network.opinetcommon.v1alpha1.AdminState - 1, // 3: opi_api.network.opinetcommon.v1alpha1.State.oper_state:type_name -> opi_api.network.opinetcommon.v1alpha1.OperState - 3, // 4: opi_api.network.opinetcommon.v1alpha1.State.counters:type_name -> opi_api.network.opinetcommon.v1alpha1.Counters - 2, // 5: opi_api.network.opinetcommon.v1alpha1.NetInterface.config:type_name -> opi_api.network.opinetcommon.v1alpha1.Config - 4, // 6: opi_api.network.opinetcommon.v1alpha1.NetInterface.state:type_name -> opi_api.network.opinetcommon.v1alpha1.State - 10, // 7: opi_api.network.opinetcommon.v1alpha1.NetInterface.holdtime:type_name -> opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTime - 11, // 8: opi_api.network.opinetcommon.v1alpha1.NetInterface.subinterfaces:type_name -> opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces - 5, // 9: opi_api.network.opinetcommon.v1alpha1.ListNetInterfacesResponse.net_interfaces:type_name -> opi_api.network.opinetcommon.v1alpha1.NetInterface - 5, // 10: opi_api.network.opinetcommon.v1alpha1.UpdateNetInterfaceRequest.net_interface:type_name -> opi_api.network.opinetcommon.v1alpha1.NetInterface - 17, // 11: opi_api.network.opinetcommon.v1alpha1.UpdateNetInterfaceRequest.update_mask:type_name -> google.protobuf.FieldMask - 12, // 12: opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTime.hold_config:type_name -> opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTime.HoldConfig - 13, // 13: opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTime.hold_state:type_name -> opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTime.HoldState - 14, // 14: opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.subinterface:type_name -> opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.Subinterface - 15, // 15: opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.Subinterface.subif_config:type_name -> opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.Subinterface.SubifConfig - 4, // 16: opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.Subinterface.state:type_name -> opi_api.network.opinetcommon.v1alpha1.State - 6, // 17: opi_api.network.opinetcommon.v1alpha1.NetInterfaceService.GetNetInterface:input_type -> opi_api.network.opinetcommon.v1alpha1.GetNetInterfaceRequest - 7, // 18: opi_api.network.opinetcommon.v1alpha1.NetInterfaceService.ListNetInterfaces:input_type -> opi_api.network.opinetcommon.v1alpha1.ListNetInterfacesRequest - 9, // 19: opi_api.network.opinetcommon.v1alpha1.NetInterfaceService.UpdateNetInterface:input_type -> opi_api.network.opinetcommon.v1alpha1.UpdateNetInterfaceRequest - 5, // 20: opi_api.network.opinetcommon.v1alpha1.NetInterfaceService.GetNetInterface:output_type -> opi_api.network.opinetcommon.v1alpha1.NetInterface - 8, // 21: opi_api.network.opinetcommon.v1alpha1.NetInterfaceService.ListNetInterfaces:output_type -> opi_api.network.opinetcommon.v1alpha1.ListNetInterfacesResponse - 5, // 22: opi_api.network.opinetcommon.v1alpha1.NetInterfaceService.UpdateNetInterface:output_type -> opi_api.network.opinetcommon.v1alpha1.NetInterface - 20, // [20:23] is the sub-list for method output_type - 17, // [17:20] is the sub-list for method input_type - 17, // [17:17] is the sub-list for extension type_name - 17, // [17:17] is the sub-list for extension extendee - 0, // [0:17] is the sub-list for field type_name -} - -func init() { file_openconfig_interfaces_proto_init() } -func file_openconfig_interfaces_proto_init() { - if File_openconfig_interfaces_proto != nil { + 16, // 1: opi_api.network.opinetcommon.v1alpha1.Config.tpid:type_name -> opi_api.network.opinetcommon.v1alpha1.TpidTypes + 0, // 2: opi_api.network.opinetcommon.v1alpha1.State.type:type_name -> opi_api.network.opinetcommon.v1alpha1.InterfaceType + 17, // 3: opi_api.network.opinetcommon.v1alpha1.State.admin_state:type_name -> opi_api.network.opinetcommon.v1alpha1.AdminState + 1, // 4: opi_api.network.opinetcommon.v1alpha1.State.oper_state:type_name -> opi_api.network.opinetcommon.v1alpha1.OperState + 3, // 5: opi_api.network.opinetcommon.v1alpha1.State.counters:type_name -> opi_api.network.opinetcommon.v1alpha1.Counters + 16, // 6: opi_api.network.opinetcommon.v1alpha1.State.tpid:type_name -> opi_api.network.opinetcommon.v1alpha1.TpidTypes + 2, // 7: opi_api.network.opinetcommon.v1alpha1.NetInterface.config:type_name -> opi_api.network.opinetcommon.v1alpha1.Config + 4, // 8: opi_api.network.opinetcommon.v1alpha1.NetInterface.state:type_name -> opi_api.network.opinetcommon.v1alpha1.State + 10, // 9: opi_api.network.opinetcommon.v1alpha1.NetInterface.holdtime:type_name -> opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTime + 11, // 10: opi_api.network.opinetcommon.v1alpha1.NetInterface.subinterfaces:type_name -> opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces + 18, // 11: opi_api.network.opinetcommon.v1alpha1.NetInterface.ethernet:type_name -> opi_api.network.opinetcommon.v1alpha1.EthernetIf + 5, // 12: opi_api.network.opinetcommon.v1alpha1.ListNetInterfacesResponse.net_interfaces:type_name -> opi_api.network.opinetcommon.v1alpha1.NetInterface + 5, // 13: opi_api.network.opinetcommon.v1alpha1.UpdateNetInterfaceRequest.net_interface:type_name -> opi_api.network.opinetcommon.v1alpha1.NetInterface + 19, // 14: opi_api.network.opinetcommon.v1alpha1.UpdateNetInterfaceRequest.update_mask:type_name -> google.protobuf.FieldMask + 12, // 15: opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTime.hold_config:type_name -> opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTime.HoldConfig + 13, // 16: opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTime.hold_state:type_name -> opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTime.HoldState + 14, // 17: opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.subinterface:type_name -> opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.Subinterface + 15, // 18: opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.Subinterface.subif_config:type_name -> opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.Subinterface.SubifConfig + 4, // 19: opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.Subinterface.state:type_name -> opi_api.network.opinetcommon.v1alpha1.State + 20, // 20: opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.Subinterface.vlan:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanIf + 6, // 21: opi_api.network.opinetcommon.v1alpha1.NetInterfaceService.GetNetInterface:input_type -> opi_api.network.opinetcommon.v1alpha1.GetNetInterfaceRequest + 7, // 22: opi_api.network.opinetcommon.v1alpha1.NetInterfaceService.ListNetInterfaces:input_type -> opi_api.network.opinetcommon.v1alpha1.ListNetInterfacesRequest + 9, // 23: opi_api.network.opinetcommon.v1alpha1.NetInterfaceService.UpdateNetInterface:input_type -> opi_api.network.opinetcommon.v1alpha1.UpdateNetInterfaceRequest + 5, // 24: opi_api.network.opinetcommon.v1alpha1.NetInterfaceService.GetNetInterface:output_type -> opi_api.network.opinetcommon.v1alpha1.NetInterface + 8, // 25: opi_api.network.opinetcommon.v1alpha1.NetInterfaceService.ListNetInterfaces:output_type -> opi_api.network.opinetcommon.v1alpha1.ListNetInterfacesResponse + 5, // 26: opi_api.network.opinetcommon.v1alpha1.NetInterfaceService.UpdateNetInterface:output_type -> opi_api.network.opinetcommon.v1alpha1.NetInterface + 24, // [24:27] is the sub-list for method output_type + 21, // [21:24] is the sub-list for method input_type + 21, // [21:21] is the sub-list for extension type_name + 21, // [21:21] is the sub-list for extension extendee + 0, // [0:21] is the sub-list for field type_name +} + +func init() { file_networkinterfaces_proto_init() } +func file_networkinterfaces_proto_init() { + if File_networkinterfaces_proto != nil { return } file_networktypes_proto_init() + file_networkvlan_proto_init() + file_networkethernet_proto_init() if !protoimpl.UnsafeEnabled { - file_openconfig_interfaces_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + file_networkinterfaces_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Config); i { case 0: return &v.state @@ -1714,7 +1790,7 @@ func file_openconfig_interfaces_proto_init() { return nil } } - file_openconfig_interfaces_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + file_networkinterfaces_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Counters); i { case 0: return &v.state @@ -1726,7 +1802,7 @@ func file_openconfig_interfaces_proto_init() { return nil } } - file_openconfig_interfaces_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + file_networkinterfaces_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*State); i { case 0: return &v.state @@ -1738,7 +1814,7 @@ func file_openconfig_interfaces_proto_init() { return nil } } - file_openconfig_interfaces_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + file_networkinterfaces_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetInterface); i { case 0: return &v.state @@ -1750,7 +1826,7 @@ func file_openconfig_interfaces_proto_init() { return nil } } - file_openconfig_interfaces_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + file_networkinterfaces_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetNetInterfaceRequest); i { case 0: return &v.state @@ -1762,7 +1838,7 @@ func file_openconfig_interfaces_proto_init() { return nil } } - file_openconfig_interfaces_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + file_networkinterfaces_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListNetInterfacesRequest); i { case 0: return &v.state @@ -1774,7 +1850,7 @@ func file_openconfig_interfaces_proto_init() { return nil } } - file_openconfig_interfaces_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + file_networkinterfaces_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ListNetInterfacesResponse); i { case 0: return &v.state @@ -1786,7 +1862,7 @@ func file_openconfig_interfaces_proto_init() { return nil } } - file_openconfig_interfaces_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + file_networkinterfaces_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateNetInterfaceRequest); i { case 0: return &v.state @@ -1798,7 +1874,7 @@ func file_openconfig_interfaces_proto_init() { return nil } } - file_openconfig_interfaces_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + file_networkinterfaces_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetInterface_HoldTime); i { case 0: return &v.state @@ -1810,7 +1886,7 @@ func file_openconfig_interfaces_proto_init() { return nil } } - file_openconfig_interfaces_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + file_networkinterfaces_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetInterface_Subinterfaces); i { case 0: return &v.state @@ -1822,7 +1898,7 @@ func file_openconfig_interfaces_proto_init() { return nil } } - file_openconfig_interfaces_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + file_networkinterfaces_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetInterface_HoldTime_HoldConfig); i { case 0: return &v.state @@ -1834,7 +1910,7 @@ func file_openconfig_interfaces_proto_init() { return nil } } - file_openconfig_interfaces_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + file_networkinterfaces_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetInterface_HoldTime_HoldState); i { case 0: return &v.state @@ -1846,7 +1922,7 @@ func file_openconfig_interfaces_proto_init() { return nil } } - file_openconfig_interfaces_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + file_networkinterfaces_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetInterface_Subinterfaces_Subinterface); i { case 0: return &v.state @@ -1858,7 +1934,7 @@ func file_openconfig_interfaces_proto_init() { return nil } } - file_openconfig_interfaces_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + file_networkinterfaces_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*NetInterface_Subinterfaces_Subinterface_SubifConfig); i { case 0: return &v.state @@ -1875,19 +1951,19 @@ func file_openconfig_interfaces_proto_init() { out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), - RawDescriptor: file_openconfig_interfaces_proto_rawDesc, + RawDescriptor: file_networkinterfaces_proto_rawDesc, NumEnums: 2, NumMessages: 14, NumExtensions: 0, NumServices: 1, }, - GoTypes: file_openconfig_interfaces_proto_goTypes, - DependencyIndexes: file_openconfig_interfaces_proto_depIdxs, - EnumInfos: file_openconfig_interfaces_proto_enumTypes, - MessageInfos: file_openconfig_interfaces_proto_msgTypes, + GoTypes: file_networkinterfaces_proto_goTypes, + DependencyIndexes: file_networkinterfaces_proto_depIdxs, + EnumInfos: file_networkinterfaces_proto_enumTypes, + MessageInfos: file_networkinterfaces_proto_msgTypes, }.Build() - File_openconfig_interfaces_proto = out.File - file_openconfig_interfaces_proto_rawDesc = nil - file_openconfig_interfaces_proto_goTypes = nil - file_openconfig_interfaces_proto_depIdxs = nil + File_networkinterfaces_proto = out.File + file_networkinterfaces_proto_rawDesc = nil + file_networkinterfaces_proto_goTypes = nil + file_networkinterfaces_proto_depIdxs = nil } diff --git a/network/opinetcommon/v1alpha1/gen/go/openconfig_interfaces.pb.gw.go b/network/opinetcommon/v1alpha1/gen/go/networkinterfaces.pb.gw.go similarity index 98% rename from network/opinetcommon/v1alpha1/gen/go/openconfig_interfaces.pb.gw.go rename to network/opinetcommon/v1alpha1/gen/go/networkinterfaces.pb.gw.go index 9db7522d..e71ce383 100644 --- a/network/opinetcommon/v1alpha1/gen/go/openconfig_interfaces.pb.gw.go +++ b/network/opinetcommon/v1alpha1/gen/go/networkinterfaces.pb.gw.go @@ -1,5 +1,5 @@ // Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. -// source: openconfig_interfaces.proto +// source: networkinterfaces.proto /* Package _go is a reverse proxy. @@ -84,7 +84,7 @@ func local_request_NetInterfaceService_GetNetInterface_0(ctx context.Context, ma } var ( - filter_NetInterfaceService_ListNetInterfaces_0 = &utilities.DoubleArray{Encoding: map[string]int{"parent": 0}, Base: []int{1, 2, 0, 0}, Check: []int{0, 1, 2, 2}} + filter_NetInterfaceService_ListNetInterfaces_0 = &utilities.DoubleArray{Encoding: map[string]int{"parent": 0}, Base: []int{1, 1, 0}, Check: []int{0, 1, 2}} ) func request_NetInterfaceService_ListNetInterfaces_0(ctx context.Context, marshaler runtime.Marshaler, client NetInterfaceServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { @@ -154,7 +154,7 @@ func local_request_NetInterfaceService_ListNetInterfaces_0(ctx context.Context, } var ( - filter_NetInterfaceService_UpdateNetInterface_0 = &utilities.DoubleArray{Encoding: map[string]int{"net_interface": 0, "netInterface": 1, "name": 2}, Base: []int{1, 3, 4, 5, 2, 0, 0, 0, 0}, Check: []int{0, 1, 1, 1, 2, 5, 2, 3, 4}} + filter_NetInterfaceService_UpdateNetInterface_0 = &utilities.DoubleArray{Encoding: map[string]int{"net_interface": 0, "name": 1}, Base: []int{1, 2, 1, 0, 0}, Check: []int{0, 1, 2, 3, 2}} ) func request_NetInterfaceService_UpdateNetInterface_0(ctx context.Context, marshaler runtime.Marshaler, client NetInterfaceServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { diff --git a/network/opinetcommon/v1alpha1/gen/go/openconfig_interfaces_grpc.pb.go b/network/opinetcommon/v1alpha1/gen/go/networkinterfaces_grpc.pb.go similarity index 97% rename from network/opinetcommon/v1alpha1/gen/go/openconfig_interfaces_grpc.pb.go rename to network/opinetcommon/v1alpha1/gen/go/networkinterfaces_grpc.pb.go index 4fa32c3f..ddc3416e 100644 --- a/network/opinetcommon/v1alpha1/gen/go/openconfig_interfaces_grpc.pb.go +++ b/network/opinetcommon/v1alpha1/gen/go/networkinterfaces_grpc.pb.go @@ -1,6 +1,8 @@ -// openconfig_interfaces.proto file +// SPDX-License-Identifier: Apache-2.0 +// Copyright (c) 2023-2024 Dell Inc, or its subsidiaries. +// // Derived from the OpenConfig interfaces model github.com/openconfig/public/release/models/interfaces -// Copyright (c) 2023 Dell Inc, or its subsidiaries. +// // (-- api-linter: core::0141::forbidden-types=disabled // aip.dev/not-precedent: counters, mtu, index must be uint and not int. --) @@ -8,7 +10,7 @@ // versions: // - protoc-gen-go-grpc v1.3.0 // - protoc (unknown) -// source: openconfig_interfaces.proto +// source: networkinterfaces.proto package _go @@ -191,5 +193,5 @@ var NetInterfaceService_ServiceDesc = grpc.ServiceDesc{ }, }, Streams: []grpc.StreamDesc{}, - Metadata: "openconfig_interfaces.proto", + Metadata: "networkinterfaces.proto", } diff --git a/network/opinetcommon/v1alpha1/gen/go/networkvlan.pb.go b/network/opinetcommon/v1alpha1/gen/go/networkvlan.pb.go new file mode 100644 index 00000000..935b0551 --- /dev/null +++ b/network/opinetcommon/v1alpha1/gen/go/networkvlan.pb.go @@ -0,0 +1,1391 @@ +// SPDX-License-Identifier: Apache-2.0 +// Copyright (c) 2024 Dell Inc, or its subsidiaries. +// +// Derived from the OpenConfig interfaces model github.com/openconfig/public/release/models/vlan +// +// (-- api-linter: core::0141::forbidden-types=disabled +// aip.dev/not-precedent: counters, mtu, index must be uint and not int. --) + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.31.0 +// protoc (unknown) +// source: networkvlan.proto + +package _go + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +// Tag Protocol Identifier (TPID) Types Enumeration +type TpidTypes int32 + +const ( + // Unspecified + TpidTypes_TPID_TYPES_UNSPECIFIED TpidTypes = 0 + // Default value for 802.1q single-tagged VLANs + TpidTypes_TPID_TYPES_0X8100 TpidTypes = 1 + // Value for 802.1ad provider bridging, QinQ, or stacked VLANs + TpidTypes_TPID_TYPES_0X88A8 TpidTypes = 2 + // Alternate TPID value + TpidTypes_TPID_TYPES_0X9100 TpidTypes = 3 + // Alternate TPID value + TpidTypes_TPID_TYPES_0X9200 TpidTypes = 4 + // Any - Wildcard that matches any of the singly or multiply tagged VLANS + TpidTypes_TPID_TYPES_ANY TpidTypes = 5 +) + +// Enum value maps for TpidTypes. +var ( + TpidTypes_name = map[int32]string{ + 0: "TPID_TYPES_UNSPECIFIED", + 1: "TPID_TYPES_0X8100", + 2: "TPID_TYPES_0X88A8", + 3: "TPID_TYPES_0X9100", + 4: "TPID_TYPES_0X9200", + 5: "TPID_TYPES_ANY", + } + TpidTypes_value = map[string]int32{ + "TPID_TYPES_UNSPECIFIED": 0, + "TPID_TYPES_0X8100": 1, + "TPID_TYPES_0X88A8": 2, + "TPID_TYPES_0X9100": 3, + "TPID_TYPES_0X9200": 4, + "TPID_TYPES_ANY": 5, + } +) + +func (x TpidTypes) Enum() *TpidTypes { + p := new(TpidTypes) + *p = x + return p +} + +func (x TpidTypes) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (TpidTypes) Descriptor() protoreflect.EnumDescriptor { + return file_networkvlan_proto_enumTypes[0].Descriptor() +} + +func (TpidTypes) Type() protoreflect.EnumType { + return &file_networkvlan_proto_enumTypes[0] +} + +func (x TpidTypes) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use TpidTypes.Descriptor instead. +func (TpidTypes) EnumDescriptor() ([]byte, []int) { + return file_networkvlan_proto_rawDescGZIP(), []int{0} +} + +// Vlan Stack Action to be performed on the VLAN stack +type VlanStackAction int32 + +const ( + // No action to perform on the VLAN Stack + VlanStackAction_VLAN_STACK_ACTION_UNSPECIFIED VlanStackAction = 0 + // PUSH a VLAN onto the VLAN Stack + VlanStackAction_VLAN_STACK_ACTION_PUSH VlanStackAction = 1 + // POP a VLAN from the VLAN Stack + VlanStackAction_VLAN_STACK_ACTION_POP VlanStackAction = 2 + // SWAP the VLAN at the top of the VLAN Stack + VlanStackAction_VLAN_STACK_ACTION_SWAP VlanStackAction = 3 +) + +// Enum value maps for VlanStackAction. +var ( + VlanStackAction_name = map[int32]string{ + 0: "VLAN_STACK_ACTION_UNSPECIFIED", + 1: "VLAN_STACK_ACTION_PUSH", + 2: "VLAN_STACK_ACTION_POP", + 3: "VLAN_STACK_ACTION_SWAP", + } + VlanStackAction_value = map[string]int32{ + "VLAN_STACK_ACTION_UNSPECIFIED": 0, + "VLAN_STACK_ACTION_PUSH": 1, + "VLAN_STACK_ACTION_POP": 2, + "VLAN_STACK_ACTION_SWAP": 3, + } +) + +func (x VlanStackAction) Enum() *VlanStackAction { + p := new(VlanStackAction) + *p = x + return p +} + +func (x VlanStackAction) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (VlanStackAction) Descriptor() protoreflect.EnumDescriptor { + return file_networkvlan_proto_enumTypes[1].Descriptor() +} + +func (VlanStackAction) Type() protoreflect.EnumType { + return &file_networkvlan_proto_enumTypes[1] +} + +func (x VlanStackAction) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use VlanStackAction.Descriptor instead. +func (VlanStackAction) EnumDescriptor() ([]byte, []int) { + return file_networkvlan_proto_rawDescGZIP(), []int{1} +} + +// VLAN Interface Mode +type VlanIfMode int32 + +const ( + // Interface Mode Unspecified + VlanIfMode_VLAN_IF_MODE_UNSPECIFIED VlanIfMode = 0 + // Interface mode ACCESS + VlanIfMode_VLAN_IF_MODE_ACCESS VlanIfMode = 1 + // Interface mode TRUNK + VlanIfMode_VLAN_IF_MODE_TRUNK VlanIfMode = 2 +) + +// Enum value maps for VlanIfMode. +var ( + VlanIfMode_name = map[int32]string{ + 0: "VLAN_IF_MODE_UNSPECIFIED", + 1: "VLAN_IF_MODE_ACCESS", + 2: "VLAN_IF_MODE_TRUNK", + } + VlanIfMode_value = map[string]int32{ + "VLAN_IF_MODE_UNSPECIFIED": 0, + "VLAN_IF_MODE_ACCESS": 1, + "VLAN_IF_MODE_TRUNK": 2, + } +) + +func (x VlanIfMode) Enum() *VlanIfMode { + p := new(VlanIfMode) + *p = x + return p +} + +func (x VlanIfMode) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (VlanIfMode) Descriptor() protoreflect.EnumDescriptor { + return file_networkvlan_proto_enumTypes[2].Descriptor() +} + +func (VlanIfMode) Type() protoreflect.EnumType { + return &file_networkvlan_proto_enumTypes[2] +} + +func (x VlanIfMode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use VlanIfMode.Descriptor instead. +func (VlanIfMode) EnumDescriptor() ([]byte, []int) { + return file_networkvlan_proto_rawDescGZIP(), []int{2} +} + +// Switched VLAN Configuration Settings that are part of the Ethernet interface +type SwitchedVlanSetting struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Setting for the VLAN interface to access or trunk mode + VlanInterfaceMode VlanIfMode `protobuf:"varint,1,opt,name=vlan_interface_mode,json=vlanInterfaceMode,proto3,enum=opi_api.network.opinetcommon.v1alpha1.VlanIfMode" json:"vlan_interface_mode,omitempty"` + // VLAN ID when the mode is set to trunk mode + NativeVlan uint32 `protobuf:"varint,2,opt,name=native_vlan,json=nativeVlan,proto3" json:"native_vlan,omitempty"` + // VLAN ID when the mode is set to access mode + AccessVlan uint32 `protobuf:"varint,3,opt,name=access_vlan,json=accessVlan,proto3" json:"access_vlan,omitempty"` + // Allowed VLANs may be specified for trunk mode interfaces + TrunkVlans string `protobuf:"bytes,4,opt,name=trunk_vlans,json=trunkVlans,proto3" json:"trunk_vlans,omitempty"` +} + +func (x *SwitchedVlanSetting) Reset() { + *x = SwitchedVlanSetting{} + if protoimpl.UnsafeEnabled { + mi := &file_networkvlan_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SwitchedVlanSetting) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SwitchedVlanSetting) ProtoMessage() {} + +func (x *SwitchedVlanSetting) ProtoReflect() protoreflect.Message { + mi := &file_networkvlan_proto_msgTypes[0] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SwitchedVlanSetting.ProtoReflect.Descriptor instead. +func (*SwitchedVlanSetting) Descriptor() ([]byte, []int) { + return file_networkvlan_proto_rawDescGZIP(), []int{0} +} + +func (x *SwitchedVlanSetting) GetVlanInterfaceMode() VlanIfMode { + if x != nil { + return x.VlanInterfaceMode + } + return VlanIfMode_VLAN_IF_MODE_UNSPECIFIED +} + +func (x *SwitchedVlanSetting) GetNativeVlan() uint32 { + if x != nil { + return x.NativeVlan + } + return 0 +} + +func (x *SwitchedVlanSetting) GetAccessVlan() uint32 { + if x != nil { + return x.AccessVlan + } + return 0 +} + +func (x *SwitchedVlanSetting) GetTrunkVlans() string { + if x != nil { + return x.TrunkVlans + } + return "" +} + +// VLAN settings associated with the Ethernet Interface +type VlanSwitchedIf struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Configuration parameters for VLAN + Config *SwitchedVlanSetting `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"` + // State variables for VLAN + State *SwitchedVlanSetting `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"` +} + +func (x *VlanSwitchedIf) Reset() { + *x = VlanSwitchedIf{} + if protoimpl.UnsafeEnabled { + mi := &file_networkvlan_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VlanSwitchedIf) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VlanSwitchedIf) ProtoMessage() {} + +func (x *VlanSwitchedIf) ProtoReflect() protoreflect.Message { + mi := &file_networkvlan_proto_msgTypes[1] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VlanSwitchedIf.ProtoReflect.Descriptor instead. +func (*VlanSwitchedIf) Descriptor() ([]byte, []int) { + return file_networkvlan_proto_rawDescGZIP(), []int{1} +} + +func (x *VlanSwitchedIf) GetConfig() *SwitchedVlanSetting { + if x != nil { + return x.Config + } + return nil +} + +func (x *VlanSwitchedIf) GetState() *SwitchedVlanSetting { + if x != nil { + return x.State + } + return nil +} + +// VLAN Ingress and Egress Settings +type VlanIngressEgressSetting struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // VLAN stack behaviors for packets that arrive or are transmitted on + // this subinterface after their VLAN idenitifer(s) have been matched + Vlanstackaction VlanStackAction `protobuf:"varint,1,opt,name=vlanstackaction,proto3,enum=opi_api.network.opinetcommon.v1alpha1.VlanStackAction" json:"vlanstackaction,omitempty"` + // VLAN identifier - (1-4094) and will utilize 16 bits max + VlanId uint32 `protobuf:"varint,2,opt,name=vlan_id,json=vlanId,proto3" json:"vlan_id,omitempty"` + // The tag protocol identifier field (TPID) that is used by the action + // configured by 'vlan-stack-action' when modifying the VLAN stack. + Tpid TpidTypes `protobuf:"varint,3,opt,name=tpid,proto3,enum=opi_api.network.opinetcommon.v1alpha1.TpidTypes" json:"tpid,omitempty"` +} + +func (x *VlanIngressEgressSetting) Reset() { + *x = VlanIngressEgressSetting{} + if protoimpl.UnsafeEnabled { + mi := &file_networkvlan_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VlanIngressEgressSetting) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VlanIngressEgressSetting) ProtoMessage() {} + +func (x *VlanIngressEgressSetting) ProtoReflect() protoreflect.Message { + mi := &file_networkvlan_proto_msgTypes[2] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VlanIngressEgressSetting.ProtoReflect.Descriptor instead. +func (*VlanIngressEgressSetting) Descriptor() ([]byte, []int) { + return file_networkvlan_proto_rawDescGZIP(), []int{2} +} + +func (x *VlanIngressEgressSetting) GetVlanstackaction() VlanStackAction { + if x != nil { + return x.Vlanstackaction + } + return VlanStackAction_VLAN_STACK_ACTION_UNSPECIFIED +} + +func (x *VlanIngressEgressSetting) GetVlanId() uint32 { + if x != nil { + return x.VlanId + } + return 0 +} + +func (x *VlanIngressEgressSetting) GetTpid() TpidTypes { + if x != nil { + return x.Tpid + } + return TpidTypes_TPID_TYPES_UNSPECIFIED +} + +// VLAN Interface Configuration +type VlanIf struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // VLAN Tag matching schemes + Match *VlanIf_VlanMatch `protobuf:"bytes,1,opt,name=match,proto3" json:"match,omitempty"` + // Ingress VLAN stack behaviors after received packets have matched + Ingressmapping *VlanIf_VlanIngressMapping `protobuf:"bytes,2,opt,name=ingressmapping,proto3" json:"ingressmapping,omitempty"` + // Egress VLAN stack behaviors for output packets + Egressmapping *VlanIf_VlanEgressMapping `protobuf:"bytes,3,opt,name=egressmapping,proto3" json:"egressmapping,omitempty"` +} + +func (x *VlanIf) Reset() { + *x = VlanIf{} + if protoimpl.UnsafeEnabled { + mi := &file_networkvlan_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VlanIf) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VlanIf) ProtoMessage() {} + +func (x *VlanIf) ProtoReflect() protoreflect.Message { + mi := &file_networkvlan_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VlanIf.ProtoReflect.Descriptor instead. +func (*VlanIf) Descriptor() ([]byte, []int) { + return file_networkvlan_proto_rawDescGZIP(), []int{3} +} + +func (x *VlanIf) GetMatch() *VlanIf_VlanMatch { + if x != nil { + return x.Match + } + return nil +} + +func (x *VlanIf) GetIngressmapping() *VlanIf_VlanIngressMapping { + if x != nil { + return x.Ingressmapping + } + return nil +} + +func (x *VlanIf) GetEgressmapping() *VlanIf_VlanEgressMapping { + if x != nil { + return x.Egressmapping + } + return nil +} + +// Configuration for VLAN tag matching schemes +type VlanIf_VlanMatch struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Single tagged VLAN exact matching + Singletagged *VlanIf_VlanMatch_SingleTagged `protobuf:"bytes,1,opt,name=singletagged,proto3" json:"singletagged,omitempty"` + // Single tag list VLAN matching + Singletaggedlist *VlanIf_VlanMatch_SingleTaggedList `protobuf:"bytes,2,opt,name=singletaggedlist,proto3" json:"singletaggedlist,omitempty"` +} + +func (x *VlanIf_VlanMatch) Reset() { + *x = VlanIf_VlanMatch{} + if protoimpl.UnsafeEnabled { + mi := &file_networkvlan_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VlanIf_VlanMatch) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VlanIf_VlanMatch) ProtoMessage() {} + +func (x *VlanIf_VlanMatch) ProtoReflect() protoreflect.Message { + mi := &file_networkvlan_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VlanIf_VlanMatch.ProtoReflect.Descriptor instead. +func (*VlanIf_VlanMatch) Descriptor() ([]byte, []int) { + return file_networkvlan_proto_rawDescGZIP(), []int{3, 0} +} + +func (x *VlanIf_VlanMatch) GetSingletagged() *VlanIf_VlanMatch_SingleTagged { + if x != nil { + return x.Singletagged + } + return nil +} + +func (x *VlanIf_VlanMatch) GetSingletaggedlist() *VlanIf_VlanMatch_SingleTaggedList { + if x != nil { + return x.Singletaggedlist + } + return nil +} + +// Ingress VLAN stack behaviors for packets that arrive on this subinterface +// after their VLAN idenitifer(s) have been matched +type VlanIf_VlanIngressMapping struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Configuration for ingress VLAN and label behaviors for packets that + // arrive on this subinterface + Config *VlanIngressEgressSetting `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"` + // State for ingress VLAN and label behaviors for packets that arrive + // on this subinterface + State *VlanIngressEgressSetting `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"` +} + +func (x *VlanIf_VlanIngressMapping) Reset() { + *x = VlanIf_VlanIngressMapping{} + if protoimpl.UnsafeEnabled { + mi := &file_networkvlan_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VlanIf_VlanIngressMapping) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VlanIf_VlanIngressMapping) ProtoMessage() {} + +func (x *VlanIf_VlanIngressMapping) ProtoReflect() protoreflect.Message { + mi := &file_networkvlan_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VlanIf_VlanIngressMapping.ProtoReflect.Descriptor instead. +func (*VlanIf_VlanIngressMapping) Descriptor() ([]byte, []int) { + return file_networkvlan_proto_rawDescGZIP(), []int{3, 1} +} + +func (x *VlanIf_VlanIngressMapping) GetConfig() *VlanIngressEgressSetting { + if x != nil { + return x.Config + } + return nil +} + +func (x *VlanIf_VlanIngressMapping) GetState() *VlanIngressEgressSetting { + if x != nil { + return x.State + } + return nil +} + +// Egress VLAN stack behaviors for packets that are destined for output via +// this subinterface +type VlanIf_VlanEgressMapping struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Configuration for egress VLAN stack behaviors for packets that are + // destined for output via this subinterface + Config *VlanIngressEgressSetting `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"` + // State for engress VLAN stack behaviors for packets that are destined + // for output via this subinterface + State *VlanIngressEgressSetting `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"` +} + +func (x *VlanIf_VlanEgressMapping) Reset() { + *x = VlanIf_VlanEgressMapping{} + if protoimpl.UnsafeEnabled { + mi := &file_networkvlan_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VlanIf_VlanEgressMapping) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VlanIf_VlanEgressMapping) ProtoMessage() {} + +func (x *VlanIf_VlanEgressMapping) ProtoReflect() protoreflect.Message { + mi := &file_networkvlan_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VlanIf_VlanEgressMapping.ProtoReflect.Descriptor instead. +func (*VlanIf_VlanEgressMapping) Descriptor() ([]byte, []int) { + return file_networkvlan_proto_rawDescGZIP(), []int{3, 2} +} + +func (x *VlanIf_VlanEgressMapping) GetConfig() *VlanIngressEgressSetting { + if x != nil { + return x.Config + } + return nil +} + +func (x *VlanIf_VlanEgressMapping) GetState() *VlanIngressEgressSetting { + if x != nil { + return x.State + } + return nil +} + +// Single Tagged matching of exact VLAN identifier +type VlanIf_VlanMatch_SingleTagged struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Configuration for exact matching of single tagged packets + Config *VlanIf_VlanMatch_SingleTagged_SingleTagConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"` + // State for exact matching of single tagged packets + State *VlanIf_VlanMatch_SingleTagged_SingleTagState `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"` +} + +func (x *VlanIf_VlanMatch_SingleTagged) Reset() { + *x = VlanIf_VlanMatch_SingleTagged{} + if protoimpl.UnsafeEnabled { + mi := &file_networkvlan_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VlanIf_VlanMatch_SingleTagged) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VlanIf_VlanMatch_SingleTagged) ProtoMessage() {} + +func (x *VlanIf_VlanMatch_SingleTagged) ProtoReflect() protoreflect.Message { + mi := &file_networkvlan_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VlanIf_VlanMatch_SingleTagged.ProtoReflect.Descriptor instead. +func (*VlanIf_VlanMatch_SingleTagged) Descriptor() ([]byte, []int) { + return file_networkvlan_proto_rawDescGZIP(), []int{3, 0, 0} +} + +func (x *VlanIf_VlanMatch_SingleTagged) GetConfig() *VlanIf_VlanMatch_SingleTagged_SingleTagConfig { + if x != nil { + return x.Config + } + return nil +} + +func (x *VlanIf_VlanMatch_SingleTagged) GetState() *VlanIf_VlanMatch_SingleTagged_SingleTagState { + if x != nil { + return x.State + } + return nil +} + +// Single tagged list matching configuration +type VlanIf_VlanMatch_SingleTaggedList struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Configuration for single tagged VLAN list + Config *VlanIf_VlanMatch_SingleTaggedList_TagListConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"` + // State for sintle tagged list + Status *VlanIf_VlanMatch_SingleTaggedList_TagListStatus `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"` +} + +func (x *VlanIf_VlanMatch_SingleTaggedList) Reset() { + *x = VlanIf_VlanMatch_SingleTaggedList{} + if protoimpl.UnsafeEnabled { + mi := &file_networkvlan_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VlanIf_VlanMatch_SingleTaggedList) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VlanIf_VlanMatch_SingleTaggedList) ProtoMessage() {} + +func (x *VlanIf_VlanMatch_SingleTaggedList) ProtoReflect() protoreflect.Message { + mi := &file_networkvlan_proto_msgTypes[8] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VlanIf_VlanMatch_SingleTaggedList.ProtoReflect.Descriptor instead. +func (*VlanIf_VlanMatch_SingleTaggedList) Descriptor() ([]byte, []int) { + return file_networkvlan_proto_rawDescGZIP(), []int{3, 0, 1} +} + +func (x *VlanIf_VlanMatch_SingleTaggedList) GetConfig() *VlanIf_VlanMatch_SingleTaggedList_TagListConfig { + if x != nil { + return x.Config + } + return nil +} + +func (x *VlanIf_VlanMatch_SingleTaggedList) GetStatus() *VlanIf_VlanMatch_SingleTaggedList_TagListStatus { + if x != nil { + return x.Status + } + return nil +} + +// Configuration for matching single-tagged packets with an exact +// VLAN identifier +type VlanIf_VlanMatch_SingleTagged_SingleTagConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Single tag VLAN Identifier (1-4094) + VlanId uint32 `protobuf:"varint,1,opt,name=vlan_id,json=vlanId,proto3" json:"vlan_id,omitempty"` +} + +func (x *VlanIf_VlanMatch_SingleTagged_SingleTagConfig) Reset() { + *x = VlanIf_VlanMatch_SingleTagged_SingleTagConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_networkvlan_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VlanIf_VlanMatch_SingleTagged_SingleTagConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VlanIf_VlanMatch_SingleTagged_SingleTagConfig) ProtoMessage() {} + +func (x *VlanIf_VlanMatch_SingleTagged_SingleTagConfig) ProtoReflect() protoreflect.Message { + mi := &file_networkvlan_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VlanIf_VlanMatch_SingleTagged_SingleTagConfig.ProtoReflect.Descriptor instead. +func (*VlanIf_VlanMatch_SingleTagged_SingleTagConfig) Descriptor() ([]byte, []int) { + return file_networkvlan_proto_rawDescGZIP(), []int{3, 0, 0, 0} +} + +func (x *VlanIf_VlanMatch_SingleTagged_SingleTagConfig) GetVlanId() uint32 { + if x != nil { + return x.VlanId + } + return 0 +} + +// State for matching single-tagged packets with an exact VLAN +type VlanIf_VlanMatch_SingleTagged_SingleTagState struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // Single tag VLAN Identifier configured (1-4094) + VlanId uint32 `protobuf:"varint,1,opt,name=vlan_id,json=vlanId,proto3" json:"vlan_id,omitempty"` +} + +func (x *VlanIf_VlanMatch_SingleTagged_SingleTagState) Reset() { + *x = VlanIf_VlanMatch_SingleTagged_SingleTagState{} + if protoimpl.UnsafeEnabled { + mi := &file_networkvlan_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VlanIf_VlanMatch_SingleTagged_SingleTagState) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VlanIf_VlanMatch_SingleTagged_SingleTagState) ProtoMessage() {} + +func (x *VlanIf_VlanMatch_SingleTagged_SingleTagState) ProtoReflect() protoreflect.Message { + mi := &file_networkvlan_proto_msgTypes[10] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VlanIf_VlanMatch_SingleTagged_SingleTagState.ProtoReflect.Descriptor instead. +func (*VlanIf_VlanMatch_SingleTagged_SingleTagState) Descriptor() ([]byte, []int) { + return file_networkvlan_proto_rawDescGZIP(), []int{3, 0, 0, 1} +} + +func (x *VlanIf_VlanMatch_SingleTagged_SingleTagState) GetVlanId() uint32 { + if x != nil { + return x.VlanId + } + return 0 +} + +// Configuration for matching single-tagged packets with a list of +// VLAN identifiers +type VlanIf_VlanMatch_SingleTaggedList_TagListConfig struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // List of VLAN identifiers for single-tagged packets + VlanId []uint32 `protobuf:"varint,1,rep,packed,name=vlan_id,json=vlanId,proto3" json:"vlan_id,omitempty"` +} + +func (x *VlanIf_VlanMatch_SingleTaggedList_TagListConfig) Reset() { + *x = VlanIf_VlanMatch_SingleTaggedList_TagListConfig{} + if protoimpl.UnsafeEnabled { + mi := &file_networkvlan_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VlanIf_VlanMatch_SingleTaggedList_TagListConfig) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VlanIf_VlanMatch_SingleTaggedList_TagListConfig) ProtoMessage() {} + +func (x *VlanIf_VlanMatch_SingleTaggedList_TagListConfig) ProtoReflect() protoreflect.Message { + mi := &file_networkvlan_proto_msgTypes[11] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VlanIf_VlanMatch_SingleTaggedList_TagListConfig.ProtoReflect.Descriptor instead. +func (*VlanIf_VlanMatch_SingleTaggedList_TagListConfig) Descriptor() ([]byte, []int) { + return file_networkvlan_proto_rawDescGZIP(), []int{3, 0, 1, 0} +} + +func (x *VlanIf_VlanMatch_SingleTaggedList_TagListConfig) GetVlanId() []uint32 { + if x != nil { + return x.VlanId + } + return nil +} + +// State for matching single-tagged packets with a list of VLAN +// identifiers +type VlanIf_VlanMatch_SingleTaggedList_TagListStatus struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // List of VLAN identifiers configured for single-tagged packets + Vlanid []uint32 `protobuf:"varint,1,rep,packed,name=vlanid,proto3" json:"vlanid,omitempty"` +} + +func (x *VlanIf_VlanMatch_SingleTaggedList_TagListStatus) Reset() { + *x = VlanIf_VlanMatch_SingleTaggedList_TagListStatus{} + if protoimpl.UnsafeEnabled { + mi := &file_networkvlan_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *VlanIf_VlanMatch_SingleTaggedList_TagListStatus) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*VlanIf_VlanMatch_SingleTaggedList_TagListStatus) ProtoMessage() {} + +func (x *VlanIf_VlanMatch_SingleTaggedList_TagListStatus) ProtoReflect() protoreflect.Message { + mi := &file_networkvlan_proto_msgTypes[12] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use VlanIf_VlanMatch_SingleTaggedList_TagListStatus.ProtoReflect.Descriptor instead. +func (*VlanIf_VlanMatch_SingleTaggedList_TagListStatus) Descriptor() ([]byte, []int) { + return file_networkvlan_proto_rawDescGZIP(), []int{3, 0, 1, 1} +} + +func (x *VlanIf_VlanMatch_SingleTaggedList_TagListStatus) GetVlanid() []uint32 { + if x != nil { + return x.Vlanid + } + return nil +} + +var File_networkvlan_proto protoreflect.FileDescriptor + +var file_networkvlan_proto_rawDesc = []byte{ + 0x0a, 0x11, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x76, 0x6c, 0x61, 0x6e, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x12, 0x25, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, + 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, + 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x22, 0xdb, 0x01, 0x0a, 0x13, 0x53, + 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x64, 0x56, 0x6c, 0x61, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, + 0x6e, 0x67, 0x12, 0x61, 0x0a, 0x13, 0x76, 0x6c, 0x61, 0x6e, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, + 0x66, 0x61, 0x63, 0x65, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x31, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, + 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x66, 0x4d, 0x6f, + 0x64, 0x65, 0x52, 0x11, 0x76, 0x6c, 0x61, 0x6e, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, + 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, + 0x76, 0x6c, 0x61, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x6e, 0x61, 0x74, 0x69, + 0x76, 0x65, 0x56, 0x6c, 0x61, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, + 0x5f, 0x76, 0x6c, 0x61, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x61, 0x63, 0x63, + 0x65, 0x73, 0x73, 0x56, 0x6c, 0x61, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x72, 0x75, 0x6e, 0x6b, + 0x5f, 0x76, 0x6c, 0x61, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x72, + 0x75, 0x6e, 0x6b, 0x56, 0x6c, 0x61, 0x6e, 0x73, 0x22, 0xb6, 0x01, 0x0a, 0x0e, 0x56, 0x6c, 0x61, + 0x6e, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x64, 0x49, 0x66, 0x12, 0x52, 0x0a, 0x06, 0x63, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x6f, 0x70, + 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, + 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x31, 0x2e, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x64, 0x56, 0x6c, 0x61, 0x6e, + 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x50, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, + 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, + 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x77, 0x69, 0x74, 0x63, 0x68, 0x65, 0x64, 0x56, + 0x6c, 0x61, 0x6e, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, + 0x65, 0x22, 0xdb, 0x01, 0x0a, 0x18, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, + 0x73, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x12, 0x60, + 0x0a, 0x0f, 0x76, 0x6c, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x61, 0x63, 0x74, 0x69, 0x6f, + 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, + 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, + 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, + 0x56, 0x6c, 0x61, 0x6e, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, + 0x0f, 0x76, 0x6c, 0x61, 0x6e, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, + 0x12, 0x17, 0x0a, 0x07, 0x76, 0x6c, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x76, 0x6c, 0x61, 0x6e, 0x49, 0x64, 0x12, 0x44, 0x0a, 0x04, 0x74, 0x70, 0x69, + 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, + 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, + 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, + 0x54, 0x70, 0x69, 0x64, 0x54, 0x79, 0x70, 0x65, 0x73, 0x52, 0x04, 0x74, 0x70, 0x69, 0x64, 0x22, + 0xac, 0x0c, 0x0a, 0x06, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x66, 0x12, 0x4d, 0x0a, 0x05, 0x6d, 0x61, + 0x74, 0x63, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x6f, 0x70, 0x69, 0x5f, + 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, + 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x31, 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x66, 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x68, 0x0a, 0x0e, 0x69, 0x6e, 0x67, + 0x72, 0x65, 0x73, 0x73, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x0b, 0x32, 0x40, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x66, + 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x4d, 0x61, 0x70, 0x70, + 0x69, 0x6e, 0x67, 0x52, 0x0e, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x6d, 0x61, 0x70, 0x70, + 0x69, 0x6e, 0x67, 0x12, 0x65, 0x0a, 0x0d, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x6d, 0x61, 0x70, + 0x70, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x6f, 0x70, 0x69, + 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, + 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x31, 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x66, 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x45, 0x67, + 0x72, 0x65, 0x73, 0x73, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x52, 0x0d, 0x65, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x6d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x1a, 0xf4, 0x06, 0x0a, 0x09, 0x56, + 0x6c, 0x61, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x12, 0x68, 0x0a, 0x0c, 0x73, 0x69, 0x6e, 0x67, + 0x6c, 0x65, 0x74, 0x61, 0x67, 0x67, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x44, + 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, + 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x66, 0x2e, 0x56, 0x6c, + 0x61, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x61, + 0x67, 0x67, 0x65, 0x64, 0x52, 0x0c, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x74, 0x61, 0x67, 0x67, + 0x65, 0x64, 0x12, 0x74, 0x0a, 0x10, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x74, 0x61, 0x67, 0x67, + 0x65, 0x64, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x48, 0x2e, 0x6f, + 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, + 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x66, 0x2e, 0x56, 0x6c, 0x61, 0x6e, + 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x61, 0x67, 0x67, + 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x10, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x74, 0x61, + 0x67, 0x67, 0x65, 0x64, 0x6c, 0x69, 0x73, 0x74, 0x1a, 0xbe, 0x02, 0x0a, 0x0c, 0x53, 0x69, 0x6e, + 0x67, 0x6c, 0x65, 0x54, 0x61, 0x67, 0x67, 0x65, 0x64, 0x12, 0x6c, 0x0a, 0x06, 0x63, 0x6f, 0x6e, + 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x54, 0x2e, 0x6f, 0x70, 0x69, 0x5f, + 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, + 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x31, 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x66, 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x4d, 0x61, 0x74, + 0x63, 0x68, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x61, 0x67, 0x67, 0x65, 0x64, 0x2e, + 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x61, 0x67, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, + 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x69, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x53, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, + 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, + 0x6c, 0x61, 0x6e, 0x49, 0x66, 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, + 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x61, 0x67, 0x67, 0x65, 0x64, 0x2e, 0x53, 0x69, 0x6e, + 0x67, 0x6c, 0x65, 0x54, 0x61, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, + 0x74, 0x65, 0x1a, 0x2a, 0x0a, 0x0f, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x61, 0x67, 0x43, + 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x17, 0x0a, 0x07, 0x76, 0x6c, 0x61, 0x6e, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x76, 0x6c, 0x61, 0x6e, 0x49, 0x64, 0x1a, 0x29, + 0x0a, 0x0e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x61, 0x67, 0x53, 0x74, 0x61, 0x74, 0x65, + 0x12, 0x17, 0x0a, 0x07, 0x76, 0x6c, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x0d, 0x52, 0x06, 0x76, 0x6c, 0x61, 0x6e, 0x49, 0x64, 0x1a, 0xc5, 0x02, 0x0a, 0x10, 0x53, 0x69, + 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x61, 0x67, 0x67, 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x6e, + 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x56, + 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, + 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x66, 0x2e, 0x56, 0x6c, + 0x61, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x61, + 0x67, 0x67, 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x54, 0x61, 0x67, 0x4c, 0x69, 0x73, 0x74, + 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x6e, + 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x56, + 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, + 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x66, 0x2e, 0x56, 0x6c, + 0x61, 0x6e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x2e, 0x53, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x54, 0x61, + 0x67, 0x67, 0x65, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x2e, 0x54, 0x61, 0x67, 0x4c, 0x69, 0x73, 0x74, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x1a, 0x28, + 0x0a, 0x0d, 0x54, 0x61, 0x67, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, + 0x17, 0x0a, 0x07, 0x76, 0x6c, 0x61, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, + 0x52, 0x06, 0x76, 0x6c, 0x61, 0x6e, 0x49, 0x64, 0x1a, 0x27, 0x0a, 0x0d, 0x54, 0x61, 0x67, 0x4c, + 0x69, 0x73, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x6c, 0x61, + 0x6e, 0x69, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0d, 0x52, 0x06, 0x76, 0x6c, 0x61, 0x6e, 0x69, + 0x64, 0x1a, 0xc4, 0x01, 0x0a, 0x12, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, + 0x73, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x57, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, + 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, + 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, + 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, + 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x45, 0x67, 0x72, 0x65, + 0x73, 0x73, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, + 0x67, 0x12, 0x55, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x3f, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, + 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x6e, 0x67, + 0x72, 0x65, 0x73, 0x73, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, + 0x67, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x1a, 0xc3, 0x01, 0x0a, 0x11, 0x56, 0x6c, 0x61, + 0x6e, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x4d, 0x61, 0x70, 0x70, 0x69, 0x6e, 0x67, 0x12, 0x57, + 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, + 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, + 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x6e, 0x67, 0x72, 0x65, + 0x73, 0x73, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, + 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x55, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, + 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x56, + 0x6c, 0x61, 0x6e, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, + 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x2a, 0x97, + 0x01, 0x0a, 0x09, 0x54, 0x70, 0x69, 0x64, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x1a, 0x0a, 0x16, + 0x54, 0x50, 0x49, 0x44, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, + 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x54, 0x50, 0x49, 0x44, + 0x5f, 0x54, 0x59, 0x50, 0x45, 0x53, 0x5f, 0x30, 0x58, 0x38, 0x31, 0x30, 0x30, 0x10, 0x01, 0x12, + 0x15, 0x0a, 0x11, 0x54, 0x50, 0x49, 0x44, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x53, 0x5f, 0x30, 0x58, + 0x38, 0x38, 0x41, 0x38, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x54, 0x50, 0x49, 0x44, 0x5f, 0x54, + 0x59, 0x50, 0x45, 0x53, 0x5f, 0x30, 0x58, 0x39, 0x31, 0x30, 0x30, 0x10, 0x03, 0x12, 0x15, 0x0a, + 0x11, 0x54, 0x50, 0x49, 0x44, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x53, 0x5f, 0x30, 0x58, 0x39, 0x32, + 0x30, 0x30, 0x10, 0x04, 0x12, 0x12, 0x0a, 0x0e, 0x54, 0x50, 0x49, 0x44, 0x5f, 0x54, 0x59, 0x50, + 0x45, 0x53, 0x5f, 0x41, 0x4e, 0x59, 0x10, 0x05, 0x2a, 0x87, 0x01, 0x0a, 0x0f, 0x56, 0x6c, 0x61, + 0x6e, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, 0x0a, 0x1d, + 0x56, 0x4c, 0x41, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x43, 0x4b, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, + 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, + 0x1a, 0x0a, 0x16, 0x56, 0x4c, 0x41, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x43, 0x4b, 0x5f, 0x41, 0x43, + 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x50, 0x55, 0x53, 0x48, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x56, + 0x4c, 0x41, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x43, 0x4b, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, + 0x5f, 0x50, 0x4f, 0x50, 0x10, 0x02, 0x12, 0x1a, 0x0a, 0x16, 0x56, 0x4c, 0x41, 0x4e, 0x5f, 0x53, + 0x54, 0x41, 0x43, 0x4b, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x57, 0x41, 0x50, + 0x10, 0x03, 0x2a, 0x5b, 0x0a, 0x0a, 0x56, 0x6c, 0x61, 0x6e, 0x49, 0x66, 0x4d, 0x6f, 0x64, 0x65, + 0x12, 0x1c, 0x0a, 0x18, 0x56, 0x4c, 0x41, 0x4e, 0x5f, 0x49, 0x46, 0x5f, 0x4d, 0x4f, 0x44, 0x45, + 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x17, + 0x0a, 0x13, 0x56, 0x4c, 0x41, 0x4e, 0x5f, 0x49, 0x46, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x41, + 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x56, 0x4c, 0x41, 0x4e, 0x5f, + 0x49, 0x46, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x54, 0x52, 0x55, 0x4e, 0x4b, 0x10, 0x02, 0x42, + 0x7f, 0x0a, 0x25, 0x6f, 0x70, 0x69, 0x5f, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x65, 0x74, 0x77, 0x6f, + 0x72, 0x6b, 0x2e, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x42, 0x10, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, + 0x6b, 0x56, 0x6c, 0x61, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x42, 0x67, 0x69, + 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6f, 0x70, 0x69, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x2f, 0x6f, 0x70, 0x69, 0x2d, 0x61, 0x70, 0x69, 0x2f, 0x6e, 0x65, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x2f, 0x6f, 0x70, 0x69, 0x6e, 0x65, 0x74, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, + 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x67, 0x6f, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_networkvlan_proto_rawDescOnce sync.Once + file_networkvlan_proto_rawDescData = file_networkvlan_proto_rawDesc +) + +func file_networkvlan_proto_rawDescGZIP() []byte { + file_networkvlan_proto_rawDescOnce.Do(func() { + file_networkvlan_proto_rawDescData = protoimpl.X.CompressGZIP(file_networkvlan_proto_rawDescData) + }) + return file_networkvlan_proto_rawDescData +} + +var file_networkvlan_proto_enumTypes = make([]protoimpl.EnumInfo, 3) +var file_networkvlan_proto_msgTypes = make([]protoimpl.MessageInfo, 13) +var file_networkvlan_proto_goTypes = []interface{}{ + (TpidTypes)(0), // 0: opi_api.network.opinetcommon.v1alpha1.TpidTypes + (VlanStackAction)(0), // 1: opi_api.network.opinetcommon.v1alpha1.VlanStackAction + (VlanIfMode)(0), // 2: opi_api.network.opinetcommon.v1alpha1.VlanIfMode + (*SwitchedVlanSetting)(nil), // 3: opi_api.network.opinetcommon.v1alpha1.SwitchedVlanSetting + (*VlanSwitchedIf)(nil), // 4: opi_api.network.opinetcommon.v1alpha1.VlanSwitchedIf + (*VlanIngressEgressSetting)(nil), // 5: opi_api.network.opinetcommon.v1alpha1.VlanIngressEgressSetting + (*VlanIf)(nil), // 6: opi_api.network.opinetcommon.v1alpha1.VlanIf + (*VlanIf_VlanMatch)(nil), // 7: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch + (*VlanIf_VlanIngressMapping)(nil), // 8: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanIngressMapping + (*VlanIf_VlanEgressMapping)(nil), // 9: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanEgressMapping + (*VlanIf_VlanMatch_SingleTagged)(nil), // 10: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTagged + (*VlanIf_VlanMatch_SingleTaggedList)(nil), // 11: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTaggedList + (*VlanIf_VlanMatch_SingleTagged_SingleTagConfig)(nil), // 12: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTagged.SingleTagConfig + (*VlanIf_VlanMatch_SingleTagged_SingleTagState)(nil), // 13: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTagged.SingleTagState + (*VlanIf_VlanMatch_SingleTaggedList_TagListConfig)(nil), // 14: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTaggedList.TagListConfig + (*VlanIf_VlanMatch_SingleTaggedList_TagListStatus)(nil), // 15: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTaggedList.TagListStatus +} +var file_networkvlan_proto_depIdxs = []int32{ + 2, // 0: opi_api.network.opinetcommon.v1alpha1.SwitchedVlanSetting.vlan_interface_mode:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanIfMode + 3, // 1: opi_api.network.opinetcommon.v1alpha1.VlanSwitchedIf.config:type_name -> opi_api.network.opinetcommon.v1alpha1.SwitchedVlanSetting + 3, // 2: opi_api.network.opinetcommon.v1alpha1.VlanSwitchedIf.state:type_name -> opi_api.network.opinetcommon.v1alpha1.SwitchedVlanSetting + 1, // 3: opi_api.network.opinetcommon.v1alpha1.VlanIngressEgressSetting.vlanstackaction:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanStackAction + 0, // 4: opi_api.network.opinetcommon.v1alpha1.VlanIngressEgressSetting.tpid:type_name -> opi_api.network.opinetcommon.v1alpha1.TpidTypes + 7, // 5: opi_api.network.opinetcommon.v1alpha1.VlanIf.match:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch + 8, // 6: opi_api.network.opinetcommon.v1alpha1.VlanIf.ingressmapping:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanIngressMapping + 9, // 7: opi_api.network.opinetcommon.v1alpha1.VlanIf.egressmapping:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanEgressMapping + 10, // 8: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.singletagged:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTagged + 11, // 9: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.singletaggedlist:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTaggedList + 5, // 10: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanIngressMapping.config:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanIngressEgressSetting + 5, // 11: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanIngressMapping.state:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanIngressEgressSetting + 5, // 12: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanEgressMapping.config:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanIngressEgressSetting + 5, // 13: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanEgressMapping.state:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanIngressEgressSetting + 12, // 14: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTagged.config:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTagged.SingleTagConfig + 13, // 15: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTagged.state:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTagged.SingleTagState + 14, // 16: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTaggedList.config:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTaggedList.TagListConfig + 15, // 17: opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTaggedList.status:type_name -> opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTaggedList.TagListStatus + 18, // [18:18] is the sub-list for method output_type + 18, // [18:18] is the sub-list for method input_type + 18, // [18:18] is the sub-list for extension type_name + 18, // [18:18] is the sub-list for extension extendee + 0, // [0:18] is the sub-list for field type_name +} + +func init() { file_networkvlan_proto_init() } +func file_networkvlan_proto_init() { + if File_networkvlan_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_networkvlan_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SwitchedVlanSetting); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_networkvlan_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VlanSwitchedIf); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_networkvlan_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VlanIngressEgressSetting); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_networkvlan_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VlanIf); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_networkvlan_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VlanIf_VlanMatch); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_networkvlan_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VlanIf_VlanIngressMapping); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_networkvlan_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VlanIf_VlanEgressMapping); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_networkvlan_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VlanIf_VlanMatch_SingleTagged); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_networkvlan_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VlanIf_VlanMatch_SingleTaggedList); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_networkvlan_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VlanIf_VlanMatch_SingleTagged_SingleTagConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_networkvlan_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VlanIf_VlanMatch_SingleTagged_SingleTagState); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_networkvlan_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VlanIf_VlanMatch_SingleTaggedList_TagListConfig); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_networkvlan_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*VlanIf_VlanMatch_SingleTaggedList_TagListStatus); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + } + type x struct{} + out := protoimpl.TypeBuilder{ + File: protoimpl.DescBuilder{ + GoPackagePath: reflect.TypeOf(x{}).PkgPath(), + RawDescriptor: file_networkvlan_proto_rawDesc, + NumEnums: 3, + NumMessages: 13, + NumExtensions: 0, + NumServices: 0, + }, + GoTypes: file_networkvlan_proto_goTypes, + DependencyIndexes: file_networkvlan_proto_depIdxs, + EnumInfos: file_networkvlan_proto_enumTypes, + MessageInfos: file_networkvlan_proto_msgTypes, + }.Build() + File_networkvlan_proto = out.File + file_networkvlan_proto_rawDesc = nil + file_networkvlan_proto_goTypes = nil + file_networkvlan_proto_depIdxs = nil +} diff --git a/network/opinetcommon/v1alpha1/gen/python/networkethernet_pb2.py b/network/opinetcommon/v1alpha1/gen/python/networkethernet_pb2.py new file mode 100644 index 00000000..f5af518d --- /dev/null +++ b/network/opinetcommon/v1alpha1/gen/python/networkethernet_pb2.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: networkethernet.proto +# Protobuf Python Version: 4.25.2 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + +import networkvlan_pb2 as networkvlan__pb2 +from google.api import field_behavior_pb2 as google_dot_api_dot_field__behavior__pb2 + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x15networkethernet.proto\x12%opi_api.network.opinetcommon.v1alpha1\x1a\x11networkvlan.proto\x1a\x1fgoogle/api/field_behavior.proto\"\xe5\x03\n\x0e\x45thernetConfig\x12%\n\x0bmac_address\x18\x01 \x01(\tB\x04\xe2\x41\x01\x01R\nmacAddress\x12+\n\x0e\x61uto_negotiate\x18\x02 \x01(\x08\x42\x04\xe2\x41\x01\x01R\rautoNegotiate\x12>\n\x18standalone_link_training\x18\x03 \x01(\x08\x42\x04\xe2\x41\x01\x01R\x16standaloneLinkTraining\x12[\n\x0b\x64uplex_mode\x18\x04 \x01(\x0e\x32\x34.opi_api.network.opinetcommon.v1alpha1.EthDuplexModeB\x04\xe2\x41\x01\x01R\nduplexMode\x12X\n\nport_speed\x18\x05 \x01(\x0e\x32\x33.opi_api.network.opinetcommon.v1alpha1.EthPortSpeedB\x04\xe2\x41\x01\x01R\tportSpeed\x12\x34\n\x13\x65nable_flow_control\x18\x06 \x01(\x08\x42\x04\xe2\x41\x01\x01R\x11\x65nableFlowControl\x12R\n\x08\x66\x65\x63_mode\x18\x07 \x01(\x0e\x32\x31.opi_api.network.opinetcommon.v1alpha1.EthFecModeB\x04\xe2\x41\x01\x01R\x07\x66\x65\x63Mode\"\xf1\x02\n\x16\x45thernetInDistribution\x12,\n\x12rx_frames_octets64\x18\x01 \x01(\x04R\x10rxFramesOctets64\x12\x37\n\x18rx_frames_octets65_to127\x18\x02 \x01(\x04R\x15rxFramesOctets65To127\x12\x39\n\x19rx_frames_octets128_to255\x18\x03 \x01(\x04R\x16rxFramesOctets128To255\x12\x39\n\x19rx_frames_octets256_to511\x18\x04 \x01(\x04R\x16rxFramesOctets256To511\x12;\n\x1arx_frames_octets512_to1023\x18\x05 \x01(\x04R\x17rxFramesOctets512To1023\x12=\n\x1brx_frames_octets1024_to1518\x18\x06 \x01(\x04R\x18rxFramesOctets1024To1518\"\x8d\x08\n\x10\x45thernetCounters\x12\x31\n\x15rx_mac_control_frames\x18\x01 \x01(\x04R\x12rxMacControlFrames\x12-\n\x13rx_mac_pause_frames\x18\x02 \x01(\x04R\x10rxMacPauseFrames\x12,\n\x12rx_oversize_frames\x18\x03 \x01(\x04R\x10rxOversizeFrames\x12.\n\x13rx_undersize_frames\x18\x04 \x01(\x04R\x11rxUndersizeFrames\x12(\n\x10rx_jabber_frames\x18\x05 \x01(\x04R\x0erxJabberFrames\x12,\n\x12rx_fragment_frames\x18\x06 \x01(\x04R\x10rxFragmentFrames\x12.\n\x13rx_ieee8021q_frames\x18\x07 \x01(\x04R\x11rxIeee8021qFrames\x12\"\n\rrx_crc_errors\x18\x08 \x01(\x04R\x0brxCrcErrors\x12&\n\x0frx_block_errors\x18\t \x01(\x04R\rrxBlockErrors\x12*\n\x11rx_carrier_errors\x18\n \x01(\x04R\x0frxCarrierErrors\x12*\n\x11rx_interrupted_tx\x18\x0b \x01(\x04R\x0frxInterruptedTx\x12*\n\x11rx_late_collision\x18\x0c \x01(\x04R\x0frxLateCollision\x12\'\n\x10rx_mac_errors_rx\x18\r \x01(\x04R\rrxMacErrorsRx\x12.\n\x13rx_single_collision\x18\x0e \x01(\x04R\x11rxSingleCollision\x12&\n\x0frx_symbol_error\x18\x0f \x01(\x04R\rrxSymbolError\x12.\n\x13rx_maxsize_exceeded\x18\x10 \x01(\x04R\x11rxMaxsizeExceeded\x12\x33\n\x16out_mac_control_frames\x18\x11 \x01(\x04R\x13outMacControlFrames\x12/\n\x14out_mac_pause_frames\x18\x12 \x01(\x04R\x11outMacPauseFrames\x12\x30\n\x14out_ieee8021q_frames\x18\x13 \x01(\x04R\x12outIeee8021qFrames\x12)\n\x11out_mac_errors_tx\x18\x14 \x01(\x04R\x0eoutMacErrorsTx\x12m\n\x13\x65th_rx_distribution\x18\x15 \x01(\x0b\x32=.opi_api.network.opinetcommon.v1alpha1.EthernetInDistributionR\x11\x65thRxDistribution\"\x8a\x06\n\rEthernetState\x12\x1f\n\x0bmac_address\x18\x01 \x01(\tR\nmacAddress\x12%\n\x0e\x61uto_negotiate\x18\x02 \x01(\x08R\rautoNegotiate\x12\x38\n\x18standalone_link_training\x18\x03 \x01(\x08R\x16standaloneLinkTraining\x12U\n\x0b\x64uplex_mode\x18\x04 \x01(\x0e\x32\x34.opi_api.network.opinetcommon.v1alpha1.EthDuplexModeR\nduplexMode\x12R\n\nport_speed\x18\x05 \x01(\x0e\x32\x33.opi_api.network.opinetcommon.v1alpha1.EthPortSpeedR\tportSpeed\x12.\n\x13\x65nable_flow_control\x18\x06 \x01(\x08R\x11\x65nableFlowControl\x12L\n\x08\x66\x65\x63_mode\x18\x07 \x01(\x0e\x32\x31.opi_api.network.opinetcommon.v1alpha1.EthFecModeR\x07\x66\x65\x63Mode\x12$\n\x0ehw_mac_address\x18\x08 \x01(\tR\x0chwMacAddress\x12j\n\x16negotiated_duplex_mode\x18\t \x01(\x0e\x32\x34.opi_api.network.opinetcommon.v1alpha1.EthDuplexModeR\x14negotiatedDuplexMode\x12g\n\x15negotiated_port_speed\x18\n \x01(\x0e\x32\x33.opi_api.network.opinetcommon.v1alpha1.EthPortSpeedR\x13negotiatedPortSpeed\x12S\n\x08\x63ounters\x18\x0b \x01(\x0b\x32\x37.opi_api.network.opinetcommon.v1alpha1.EthernetCountersR\x08\x63ounters\"\x83\x02\n\nEthernetIf\x12M\n\x06\x63onfig\x18\x01 \x01(\x0b\x32\x35.opi_api.network.opinetcommon.v1alpha1.EthernetConfigR\x06\x63onfig\x12J\n\x05state\x18\x02 \x01(\x0b\x32\x34.opi_api.network.opinetcommon.v1alpha1.EthernetStateR\x05state\x12Z\n\rswitched_vlan\x18\x03 \x01(\x0b\x32\x35.opi_api.network.opinetcommon.v1alpha1.VlanSwitchedIfR\x0cswitchedVlan*d\n\rEthDuplexMode\x12\x1f\n\x1b\x45TH_DUPLEX_MODE_UNSPECIFIED\x10\x00\x12\x18\n\x14\x45TH_DUPLEX_MODE_FULL\x10\x01\x12\x18\n\x14\x45TH_DUPLEX_MODE_HALF\x10\x02*\xa0\x03\n\x0c\x45thPortSpeed\x12\x1e\n\x1a\x45TH_PORT_SPEED_UNSPECIFIED\x10\x00\x12\x16\n\x12\x45TH_PORT_SPEED_10M\x10\x01\x12\x17\n\x13\x45TH_PORT_SPEED_100M\x10\x02\x12\x15\n\x11\x45TH_PORT_SPEED_1G\x10\x03\x12\x18\n\x14\x45TH_PORT_SPEED_2500M\x10\x04\x12\x15\n\x11\x45TH_PORT_SPEED_5G\x10\x05\x12\x16\n\x12\x45TH_PORT_SPEED_10G\x10\x06\x12\x16\n\x12\x45TH_PORT_SPEED_25G\x10\x07\x12\x16\n\x12\x45TH_PORT_SPEED_40G\x10\x08\x12\x16\n\x12\x45TH_PORT_SPEED_50G\x10\t\x12\x17\n\x13\x45TH_PORT_SPEED_100G\x10\n\x12\x17\n\x13\x45TH_PORT_SPEED_200G\x10\x0b\x12\x17\n\x13\x45TH_PORT_SPEED_400G\x10\x0c\x12\x17\n\x13\x45TH_PORT_SPEED_600G\x10\r\x12\x17\n\x13\x45TH_PORT_SPEED_800G\x10\x0e\x12\x1a\n\x16\x45TH_PORT_SPEED_UNKNOWN\x10\x0f*\xb0\x01\n\nEthFecMode\x12\x1c\n\x18\x45TH_FEC_MODE_UNSPECIFIED\x10\x00\x12\x13\n\x0f\x45TH_FEC_MODE_FC\x10\x01\x12\x16\n\x12\x45TH_FEC_MODE_RS528\x10\x02\x12\x16\n\x12\x45TH_FEC_MODE_RS544\x10\x03\x12$\n ETH_FEC_MODE_RS544_2X_INTERLEAVE\x10\x04\x12\x19\n\x15\x45TH_FEC_MODE_DISABLED\x10\x05\x42\x83\x01\n%opi_api.network.opinetcommon.v1alpha1B\x14NetworkEthernetProtoP\x01ZBgithub.com/opiproject/opi-api/network/opinetcommon/v1alpha1/gen/gob\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'networkethernet_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + _globals['DESCRIPTOR']._options = None + _globals['DESCRIPTOR']._serialized_options = b'\n%opi_api.network.opinetcommon.v1alpha1B\024NetworkEthernetProtoP\001ZBgithub.com/opiproject/opi-api/network/opinetcommon/v1alpha1/gen/go' + _globals['_ETHERNETCONFIG'].fields_by_name['mac_address']._options = None + _globals['_ETHERNETCONFIG'].fields_by_name['mac_address']._serialized_options = b'\342A\001\001' + _globals['_ETHERNETCONFIG'].fields_by_name['auto_negotiate']._options = None + _globals['_ETHERNETCONFIG'].fields_by_name['auto_negotiate']._serialized_options = b'\342A\001\001' + _globals['_ETHERNETCONFIG'].fields_by_name['standalone_link_training']._options = None + _globals['_ETHERNETCONFIG'].fields_by_name['standalone_link_training']._serialized_options = b'\342A\001\001' + _globals['_ETHERNETCONFIG'].fields_by_name['duplex_mode']._options = None + _globals['_ETHERNETCONFIG'].fields_by_name['duplex_mode']._serialized_options = b'\342A\001\001' + _globals['_ETHERNETCONFIG'].fields_by_name['port_speed']._options = None + _globals['_ETHERNETCONFIG'].fields_by_name['port_speed']._serialized_options = b'\342A\001\001' + _globals['_ETHERNETCONFIG'].fields_by_name['enable_flow_control']._options = None + _globals['_ETHERNETCONFIG'].fields_by_name['enable_flow_control']._serialized_options = b'\342A\001\001' + _globals['_ETHERNETCONFIG'].fields_by_name['fec_mode']._options = None + _globals['_ETHERNETCONFIG'].fields_by_name['fec_mode']._serialized_options = b'\342A\001\001' + _globals['_ETHDUPLEXMODE']._serialized_start=3059 + _globals['_ETHDUPLEXMODE']._serialized_end=3159 + _globals['_ETHPORTSPEED']._serialized_start=3162 + _globals['_ETHPORTSPEED']._serialized_end=3578 + _globals['_ETHFECMODE']._serialized_start=3581 + _globals['_ETHFECMODE']._serialized_end=3757 + _globals['_ETHERNETCONFIG']._serialized_start=117 + _globals['_ETHERNETCONFIG']._serialized_end=602 + _globals['_ETHERNETINDISTRIBUTION']._serialized_start=605 + _globals['_ETHERNETINDISTRIBUTION']._serialized_end=974 + _globals['_ETHERNETCOUNTERS']._serialized_start=977 + _globals['_ETHERNETCOUNTERS']._serialized_end=2014 + _globals['_ETHERNETSTATE']._serialized_start=2017 + _globals['_ETHERNETSTATE']._serialized_end=2795 + _globals['_ETHERNETIF']._serialized_start=2798 + _globals['_ETHERNETIF']._serialized_end=3057 +# @@protoc_insertion_point(module_scope) diff --git a/network/opinetcommon/v1alpha1/gen/python/networkethernet_pb2_grpc.py b/network/opinetcommon/v1alpha1/gen/python/networkethernet_pb2_grpc.py new file mode 100644 index 00000000..2daafffe --- /dev/null +++ b/network/opinetcommon/v1alpha1/gen/python/networkethernet_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc + diff --git a/network/opinetcommon/v1alpha1/gen/python/openconfig_interfaces_pb2.py b/network/opinetcommon/v1alpha1/gen/python/networkinterfaces_pb2.py similarity index 53% rename from network/opinetcommon/v1alpha1/gen/python/openconfig_interfaces_pb2.py rename to network/opinetcommon/v1alpha1/gen/python/networkinterfaces_pb2.py index f8f82ae6..5300caf8 100644 --- a/network/opinetcommon/v1alpha1/gen/python/openconfig_interfaces_pb2.py +++ b/network/opinetcommon/v1alpha1/gen/python/networkinterfaces_pb2.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- # Generated by the protocol buffer compiler. DO NOT EDIT! -# source: openconfig_interfaces.proto +# source: networkinterfaces.proto # Protobuf Python Version: 4.25.2 """Generated protocol buffer code.""" from google.protobuf import descriptor as _descriptor @@ -13,6 +13,8 @@ import networktypes_pb2 as networktypes__pb2 +import networkvlan_pb2 as networkvlan__pb2 +import networkethernet_pb2 as networkethernet__pb2 from google.api import client_pb2 as google_dot_api_dot_client__pb2 from google.api import resource_pb2 as google_dot_api_dot_resource__pb2 from google.api import annotations_pb2 as google_dot_api_dot_annotations__pb2 @@ -20,14 +22,14 @@ from google.protobuf import field_mask_pb2 as google_dot_protobuf_dot_field__mask__pb2 -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1bopenconfig_interfaces.proto\x12%opi_api.network.opinetcommon.v1alpha1\x1a\x12networktypes.proto\x1a\x17google/api/client.proto\x1a\x19google/api/resource.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a google/protobuf/field_mask.proto\"\xfd\x01\n\x06\x43onfig\x12\x18\n\x04name\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x04name\x12N\n\x04type\x18\x02 \x01(\x0e\x32\x34.opi_api.network.opinetcommon.v1alpha1.InterfaceTypeB\x04\xe2\x41\x01\x02R\x04type\x12\x16\n\x03mtu\x18\x03 \x01(\rB\x04\xe2\x41\x01\x02R\x03mtu\x12)\n\rloopback_mode\x18\x04 \x01(\x08\x42\x04\xe2\x41\x01\x02R\x0cloopbackMode\x12&\n\x0b\x64\x65scription\x18\x05 \x01(\tB\x04\xe2\x41\x01\x02R\x0b\x64\x65scription\x12\x1e\n\x07\x65nabled\x18\x06 \x01(\x08\x42\x04\xe2\x41\x01\x02R\x07\x65nabled\"\x98\x06\n\x08\x43ounters\x12!\n\trx_octets\x18\x01 \x01(\x04\x42\x04\xe2\x41\x01\x03R\x08rxOctets\x12#\n\nrx_packets\x18\x02 \x01(\x04\x42\x04\xe2\x41\x01\x03R\trxPackets\x12,\n\x0frx_unicast_pkts\x18\x03 \x01(\x04\x42\x04\xe2\x41\x01\x03R\rrxUnicastPkts\x12\x30\n\x11rx_broadcast_pkts\x18\x04 \x01(\x04\x42\x04\xe2\x41\x01\x03R\x0frxBroadcastPkts\x12\x30\n\x11rx_multicast_pkts\x18\x05 \x01(\x04\x42\x04\xe2\x41\x01\x03R\x0frxMulticastPkts\x12%\n\x0brx_discards\x18\x06 \x01(\x04\x42\x04\xe2\x41\x01\x03R\nrxDiscards\x12!\n\trx_errors\x18\x07 \x01(\x04\x42\x04\xe2\x41\x01\x03R\x08rxErrors\x12\x30\n\x11rx_unknown_protos\x18\x08 \x01(\x04\x42\x04\xe2\x41\x01\x03R\x0frxUnknownProtos\x12(\n\rrx_fcs_errors\x18\t \x01(\x04\x42\x04\xe2\x41\x01\x03R\x0brxFcsErrors\x12#\n\nout_octets\x18\n \x01(\x04\x42\x04\xe2\x41\x01\x03R\toutOctets\x12%\n\x0bout_packets\x18\x0b \x01(\x04\x42\x04\xe2\x41\x01\x03R\noutPackets\x12.\n\x10out_unicast_pkts\x18\x0c \x01(\x04\x42\x04\xe2\x41\x01\x03R\x0eoutUnicastPkts\x12\x32\n\x12out_broadcast_pkts\x18\r \x01(\x04\x42\x04\xe2\x41\x01\x03R\x10outBroadcastPkts\x12\x32\n\x12out_multicast_pkts\x18\x0e \x01(\x04\x42\x04\xe2\x41\x01\x03R\x10outMulticastPkts\x12\'\n\x0cout_discards\x18\x0f \x01(\x04\x42\x04\xe2\x41\x01\x03R\x0boutDiscards\x12#\n\nout_errors\x18\x10 \x01(\x04\x42\x04\xe2\x41\x01\x03R\toutErrors\x12\x35\n\x13\x63\x61rrier_transitions\x18\x11 \x01(\x04\x42\x04\xe2\x41\x01\x03R\x12\x63\x61rrierTransitions\x12#\n\nlast_clear\x18\x12 \x01(\x04\x42\x04\xe2\x41\x01\x03R\tlastClear\"\xa5\x05\n\x05State\x12\x18\n\x04name\x18\x01 \x01(\tB\x04\xe2\x41\x01\x03R\x04name\x12N\n\x04type\x18\x02 \x01(\x0e\x32\x34.opi_api.network.opinetcommon.v1alpha1.InterfaceTypeB\x04\xe2\x41\x01\x03R\x04type\x12\x16\n\x03mtu\x18\x03 \x01(\rB\x04\xe2\x41\x01\x03R\x03mtu\x12)\n\rloopback_mode\x18\x04 \x01(\x08\x42\x04\xe2\x41\x01\x03R\x0cloopbackMode\x12&\n\x0b\x64\x65scription\x18\x05 \x01(\tB\x04\xe2\x41\x01\x03R\x0b\x64\x65scription\x12\x1e\n\x07\x65nabled\x18\x06 \x01(\x08\x42\x04\xe2\x41\x01\x03R\x07\x65nabled\x12\x1e\n\x07ifindex\x18\x07 \x01(\rB\x04\xe2\x41\x01\x03R\x07ifindex\x12X\n\x0b\x61\x64min_state\x18\x08 \x01(\x0e\x32\x31.opi_api.network.opinetcommon.v1alpha1.AdminStateB\x04\xe2\x41\x01\x03R\nadminState\x12U\n\noper_state\x18\t \x01(\x0e\x32\x30.opi_api.network.opinetcommon.v1alpha1.OperStateB\x04\xe2\x41\x01\x03R\toperState\x12%\n\x0blast_change\x18\n \x01(\x04\x42\x04\xe2\x41\x01\x03R\nlastChange\x12\x1e\n\x07logical\x18\x0b \x01(\x08\x42\x04\xe2\x41\x01\x03R\x07logical\x12$\n\nmanagement\x18\x0c \x01(\x08\x42\x04\xe2\x41\x01\x03R\nmanagement\x12\x16\n\x03\x63pu\x18\r \x01(\x08\x42\x04\xe2\x41\x01\x03R\x03\x63pu\x12Q\n\x08\x63ounters\x18\x0e \x01(\x0b\x32/.opi_api.network.opinetcommon.v1alpha1.CountersB\x04\xe2\x41\x01\x03R\x08\x63ounters\"\xd9\n\n\x0cNetInterface\x12\x18\n\x04name\x18\x01 \x01(\tB\x04\xe2\x41\x01\x08R\x04name\x12K\n\x06\x63onfig\x18\x02 \x01(\x0b\x32-.opi_api.network.opinetcommon.v1alpha1.ConfigB\x04\xe2\x41\x01\x02R\x06\x63onfig\x12H\n\x05state\x18\x03 \x01(\x0b\x32,.opi_api.network.opinetcommon.v1alpha1.StateB\x04\xe2\x41\x01\x03R\x05state\x12^\n\x08holdtime\x18\x04 \x01(\x0b\x32<.opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTimeB\x04\xe2\x41\x01\x01R\x08holdtime\x12m\n\rsubinterfaces\x18\x05 \x01(\x0b\x32\x41.opi_api.network.opinetcommon.v1alpha1.NetInterface.SubinterfacesB\x04\xe2\x41\x01\x01R\rsubinterfaces\x1a\xe2\x02\n\x08HoldTime\x12n\n\x0bhold_config\x18\x01 \x01(\x0b\x32G.opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTime.HoldConfigB\x04\xe2\x41\x01\x01R\nholdConfig\x12k\n\nhold_state\x18\x02 \x01(\x0b\x32\x46.opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTime.HoldStateB\x04\xe2\x41\x01\x03R\tholdState\x1a<\n\nHoldConfig\x12\x14\n\x02up\x18\x01 \x01(\rB\x04\xe2\x41\x01\x01R\x02up\x12\x18\n\x04\x64own\x18\x02 \x01(\rB\x04\xe2\x41\x01\x01R\x04\x64own\x1a;\n\tHoldState\x12\x14\n\x02up\x18\x01 \x01(\rB\x04\xe2\x41\x01\x03R\x02up\x12\x18\n\x04\x64own\x18\x02 \x01(\rB\x04\xe2\x41\x01\x03R\x04\x64own\x1a\xf9\x03\n\rSubinterfaces\x12x\n\x0csubinterface\x18\x02 \x03(\x0b\x32N.opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.SubinterfaceB\x04\xe2\x41\x01\x01R\x0csubinterface\x1a\xed\x02\n\x0cSubinterface\x12\x1a\n\x05index\x18\x01 \x01(\x03\x42\x04\xe2\x41\x01\x01R\x05index\x12\x83\x01\n\x0csubif_config\x18\x02 \x01(\x0b\x32Z.opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.Subinterface.SubifConfigB\x04\xe2\x41\x01\x01R\x0bsubifConfig\x12H\n\x05state\x18\x03 \x01(\x0b\x32,.opi_api.network.opinetcommon.v1alpha1.StateB\x04\xe2\x41\x01\x03R\x05state\x1aq\n\x0bSubifConfig\x12\x1a\n\x05index\x18\x01 \x01(\x04\x42\x04\xe2\x41\x01\x01R\x05index\x12&\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x04\xe2\x41\x01\x01R\x0b\x64\x65scription\x12\x1e\n\x07\x65nabled\x18\x03 \x01(\x08\x42\x04\xe2\x41\x01\x01R\x07\x65nabled:h\xea\x41\x65\n,opi_api.network.common.v1alpha1/NetInterface\x12\x18netInterface/{interface}*\rnetInterfaces2\x0cnetInterface\"T\n\x16GetNetInterfaceRequest\x12:\n\x04name\x18\x01 \x01(\tB&\xe2\x41\x01\x02\xfa\x41\x1f\n\x1dopi_api.network.v1/InterfacesR\x04name\"\xa2\x01\n\x18ListNetInterfacesRequest\x12>\n\x06parent\x18\x01 \x01(\tB&\xe2\x41\x01\x02\xfa\x41\x1f\n\x1dopi_api.network.v1/InterfacesR\x06parent\x12!\n\tpage_size\x18\x02 \x01(\x05\x42\x04\xe2\x41\x01\x01R\x08pageSize\x12#\n\npage_token\x18\x03 \x01(\tB\x04\xe2\x41\x01\x01R\tpageToken\"\x9f\x01\n\x19ListNetInterfacesResponse\x12Z\n\x0enet_interfaces\x18\x01 \x03(\x0b\x32\x33.opi_api.network.opinetcommon.v1alpha1.NetInterfaceR\rnetInterfaces\x12&\n\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\xe9\x01\n\x19UpdateNetInterfaceRequest\x12^\n\rnet_interface\x18\x01 \x01(\x0b\x32\x33.opi_api.network.opinetcommon.v1alpha1.NetInterfaceB\x04\xe2\x41\x01\x02R\x0cnetInterface\x12\x41\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x04\xe2\x41\x01\x01R\nupdateMask\x12)\n\rallow_missing\x18\x03 \x01(\x08\x42\x04\xe2\x41\x01\x01R\x0c\x61llowMissing*i\n\rInterfaceType\x12\x1e\n\x1aINTERFACE_TYPE_UNSPECIFIED\x10\x00\x12\x1b\n\x17INTERFACE_TYPE_ETHERNET\x10\x01\x12\x1b\n\x17INTERFACE_TYPE_LOOPBACK\x10\x02*\xd4\x01\n\tOperState\x12\x1a\n\x16OPER_STATE_UNSPECIFIED\x10\x00\x12\x11\n\rOPER_STATE_UP\x10\x02\x12\x13\n\x0fOPER_STATE_DOWN\x10\x03\x12\x16\n\x12OPER_STATE_TESTING\x10\x04\x12\x16\n\x12OPER_STATE_UNKNOWN\x10\x05\x12\x16\n\x12OPER_STATE_DORMANT\x10\x06\x12\x1a\n\x16OPER_STATE_NOT_PRESENT\x10\x07\x12\x1f\n\x1bOPER_STATE_LOWER_LAYER_DOWN\x10\x08\x32\x88\x05\n\x13NetInterfaceService\x12\xb9\x01\n\x0fGetNetInterface\x12=.opi_api.network.opinetcommon.v1alpha1.GetNetInterfaceRequest\x1a\x33.opi_api.network.opinetcommon.v1alpha1.NetInterface\"2\xda\x41\x04name\x82\xd3\xe4\x93\x02%\x12#/v1/{name=interfaces/*/interface/*}\x12\xc0\x01\n\x11ListNetInterfaces\x12?.opi_api.network.opinetcommon.v1alpha1.ListNetInterfacesRequest\x1a@.opi_api.network.opinetcommon.v1alpha1.ListNetInterfacesResponse\"(\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x19\x12\x17/v1/{parent=interfaces}\x12\xf1\x01\n\x12UpdateNetInterface\x12@.opi_api.network.opinetcommon.v1alpha1.UpdateNetInterfaceRequest\x1a\x33.opi_api.network.opinetcommon.v1alpha1.NetInterface\"d\xda\x41\x19net_interface,update_mask\x82\xd3\xe4\x93\x02\x42\x32\x31/v1/{net_interface.name=interfaces/*/interface/*}:\rnet_interfaceB\x88\x01\n%opi_api.network.opinetcommon.v1alpha1B\x19OpenconfigInterfacesProtoP\x01ZBgithub.com/opiproject/opi-api/network/opinetcommon/v1alpha1/gen/gob\x06proto3') +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17networkinterfaces.proto\x12%opi_api.network.opinetcommon.v1alpha1\x1a\x12networktypes.proto\x1a\x11networkvlan.proto\x1a\x15networkethernet.proto\x1a\x17google/api/client.proto\x1a\x19google/api/resource.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a google/protobuf/field_mask.proto\"\xc9\x02\n\x06\x43onfig\x12\x18\n\x04name\x18\x01 \x01(\tB\x04\xe2\x41\x01\x02R\x04name\x12N\n\x04type\x18\x02 \x01(\x0e\x32\x34.opi_api.network.opinetcommon.v1alpha1.InterfaceTypeB\x04\xe2\x41\x01\x02R\x04type\x12\x16\n\x03mtu\x18\x03 \x01(\rB\x04\xe2\x41\x01\x02R\x03mtu\x12)\n\rloopback_mode\x18\x04 \x01(\x08\x42\x04\xe2\x41\x01\x02R\x0cloopbackMode\x12&\n\x0b\x64\x65scription\x18\x05 \x01(\tB\x04\xe2\x41\x01\x02R\x0b\x64\x65scription\x12\x1e\n\x07\x65nabled\x18\x06 \x01(\x08\x42\x04\xe2\x41\x01\x02R\x07\x65nabled\x12J\n\x04tpid\x18\x07 \x01(\x0e\x32\x30.opi_api.network.opinetcommon.v1alpha1.TpidTypesB\x04\xe2\x41\x01\x01R\x04tpid\"\x98\x06\n\x08\x43ounters\x12!\n\trx_octets\x18\x01 \x01(\x04\x42\x04\xe2\x41\x01\x03R\x08rxOctets\x12#\n\nrx_packets\x18\x02 \x01(\x04\x42\x04\xe2\x41\x01\x03R\trxPackets\x12,\n\x0frx_unicast_pkts\x18\x03 \x01(\x04\x42\x04\xe2\x41\x01\x03R\rrxUnicastPkts\x12\x30\n\x11rx_broadcast_pkts\x18\x04 \x01(\x04\x42\x04\xe2\x41\x01\x03R\x0frxBroadcastPkts\x12\x30\n\x11rx_multicast_pkts\x18\x05 \x01(\x04\x42\x04\xe2\x41\x01\x03R\x0frxMulticastPkts\x12%\n\x0brx_discards\x18\x06 \x01(\x04\x42\x04\xe2\x41\x01\x03R\nrxDiscards\x12!\n\trx_errors\x18\x07 \x01(\x04\x42\x04\xe2\x41\x01\x03R\x08rxErrors\x12\x30\n\x11rx_unknown_protos\x18\x08 \x01(\x04\x42\x04\xe2\x41\x01\x03R\x0frxUnknownProtos\x12(\n\rrx_fcs_errors\x18\t \x01(\x04\x42\x04\xe2\x41\x01\x03R\x0brxFcsErrors\x12#\n\nout_octets\x18\n \x01(\x04\x42\x04\xe2\x41\x01\x03R\toutOctets\x12%\n\x0bout_packets\x18\x0b \x01(\x04\x42\x04\xe2\x41\x01\x03R\noutPackets\x12.\n\x10out_unicast_pkts\x18\x0c \x01(\x04\x42\x04\xe2\x41\x01\x03R\x0eoutUnicastPkts\x12\x32\n\x12out_broadcast_pkts\x18\r \x01(\x04\x42\x04\xe2\x41\x01\x03R\x10outBroadcastPkts\x12\x32\n\x12out_multicast_pkts\x18\x0e \x01(\x04\x42\x04\xe2\x41\x01\x03R\x10outMulticastPkts\x12\'\n\x0cout_discards\x18\x0f \x01(\x04\x42\x04\xe2\x41\x01\x03R\x0boutDiscards\x12#\n\nout_errors\x18\x10 \x01(\x04\x42\x04\xe2\x41\x01\x03R\toutErrors\x12\x35\n\x13\x63\x61rrier_transitions\x18\x11 \x01(\x04\x42\x04\xe2\x41\x01\x03R\x12\x63\x61rrierTransitions\x12#\n\nlast_clear\x18\x12 \x01(\x04\x42\x04\xe2\x41\x01\x03R\tlastClear\"\xf1\x05\n\x05State\x12\x18\n\x04name\x18\x01 \x01(\tB\x04\xe2\x41\x01\x03R\x04name\x12N\n\x04type\x18\x02 \x01(\x0e\x32\x34.opi_api.network.opinetcommon.v1alpha1.InterfaceTypeB\x04\xe2\x41\x01\x03R\x04type\x12\x16\n\x03mtu\x18\x03 \x01(\rB\x04\xe2\x41\x01\x03R\x03mtu\x12)\n\rloopback_mode\x18\x04 \x01(\x08\x42\x04\xe2\x41\x01\x03R\x0cloopbackMode\x12&\n\x0b\x64\x65scription\x18\x05 \x01(\tB\x04\xe2\x41\x01\x03R\x0b\x64\x65scription\x12\x1e\n\x07\x65nabled\x18\x06 \x01(\x08\x42\x04\xe2\x41\x01\x03R\x07\x65nabled\x12\x1e\n\x07ifindex\x18\x07 \x01(\rB\x04\xe2\x41\x01\x03R\x07ifindex\x12X\n\x0b\x61\x64min_state\x18\x08 \x01(\x0e\x32\x31.opi_api.network.opinetcommon.v1alpha1.AdminStateB\x04\xe2\x41\x01\x03R\nadminState\x12U\n\noper_state\x18\t \x01(\x0e\x32\x30.opi_api.network.opinetcommon.v1alpha1.OperStateB\x04\xe2\x41\x01\x03R\toperState\x12%\n\x0blast_change\x18\n \x01(\x04\x42\x04\xe2\x41\x01\x03R\nlastChange\x12\x1e\n\x07logical\x18\x0b \x01(\x08\x42\x04\xe2\x41\x01\x03R\x07logical\x12$\n\nmanagement\x18\x0c \x01(\x08\x42\x04\xe2\x41\x01\x03R\nmanagement\x12\x16\n\x03\x63pu\x18\r \x01(\x08\x42\x04\xe2\x41\x01\x03R\x03\x63pu\x12Q\n\x08\x63ounters\x18\x0e \x01(\x0b\x32/.opi_api.network.opinetcommon.v1alpha1.CountersB\x04\xe2\x41\x01\x03R\x08\x63ounters\x12J\n\x04tpid\x18\x0f \x01(\x0e\x32\x30.opi_api.network.opinetcommon.v1alpha1.TpidTypesB\x04\xe2\x41\x01\x03R\x04tpid\"\xfd\x0b\n\x0cNetInterface\x12\x18\n\x04name\x18\x01 \x01(\tB\x04\xe2\x41\x01\x08R\x04name\x12K\n\x06\x63onfig\x18\x02 \x01(\x0b\x32-.opi_api.network.opinetcommon.v1alpha1.ConfigB\x04\xe2\x41\x01\x02R\x06\x63onfig\x12H\n\x05state\x18\x03 \x01(\x0b\x32,.opi_api.network.opinetcommon.v1alpha1.StateB\x04\xe2\x41\x01\x03R\x05state\x12^\n\x08holdtime\x18\x04 \x01(\x0b\x32<.opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTimeB\x04\xe2\x41\x01\x01R\x08holdtime\x12m\n\rsubinterfaces\x18\x05 \x01(\x0b\x32\x41.opi_api.network.opinetcommon.v1alpha1.NetInterface.SubinterfacesB\x04\xe2\x41\x01\x01R\rsubinterfaces\x12S\n\x08\x65thernet\x18\x06 \x01(\x0b\x32\x31.opi_api.network.opinetcommon.v1alpha1.EthernetIfB\x04\xe2\x41\x01\x01R\x08\x65thernet\x1a\xe2\x02\n\x08HoldTime\x12n\n\x0bhold_config\x18\x01 \x01(\x0b\x32G.opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTime.HoldConfigB\x04\xe2\x41\x01\x01R\nholdConfig\x12k\n\nhold_state\x18\x02 \x01(\x0b\x32\x46.opi_api.network.opinetcommon.v1alpha1.NetInterface.HoldTime.HoldStateB\x04\xe2\x41\x01\x03R\tholdState\x1a<\n\nHoldConfig\x12\x14\n\x02up\x18\x01 \x01(\rB\x04\xe2\x41\x01\x01R\x02up\x12\x18\n\x04\x64own\x18\x02 \x01(\rB\x04\xe2\x41\x01\x01R\x04\x64own\x1a;\n\tHoldState\x12\x14\n\x02up\x18\x01 \x01(\rB\x04\xe2\x41\x01\x03R\x02up\x12\x18\n\x04\x64own\x18\x02 \x01(\rB\x04\xe2\x41\x01\x03R\x04\x64own\x1a\xc2\x04\n\rSubinterfaces\x12x\n\x0csubinterface\x18\x02 \x03(\x0b\x32N.opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.SubinterfaceB\x04\xe2\x41\x01\x01R\x0csubinterface\x1a\xb6\x03\n\x0cSubinterface\x12\x1a\n\x05index\x18\x01 \x01(\x03\x42\x04\xe2\x41\x01\x01R\x05index\x12\x83\x01\n\x0csubif_config\x18\x02 \x01(\x0b\x32Z.opi_api.network.opinetcommon.v1alpha1.NetInterface.Subinterfaces.Subinterface.SubifConfigB\x04\xe2\x41\x01\x01R\x0bsubifConfig\x12H\n\x05state\x18\x03 \x01(\x0b\x32,.opi_api.network.opinetcommon.v1alpha1.StateB\x04\xe2\x41\x01\x03R\x05state\x12G\n\x04vlan\x18\x04 \x01(\x0b\x32-.opi_api.network.opinetcommon.v1alpha1.VlanIfB\x04\xe2\x41\x01\x01R\x04vlan\x1aq\n\x0bSubifConfig\x12\x1a\n\x05index\x18\x01 \x01(\x04\x42\x04\xe2\x41\x01\x01R\x05index\x12&\n\x0b\x64\x65scription\x18\x02 \x01(\tB\x04\xe2\x41\x01\x01R\x0b\x64\x65scription\x12\x1e\n\x07\x65nabled\x18\x03 \x01(\x08\x42\x04\xe2\x41\x01\x01R\x07\x65nabled:n\xea\x41k\n2opi_api.network.opinetcommon.v1alpha1/NetInterface\x12\x18netInterface/{interface}*\rnetInterfaces2\x0cnetInterface\"T\n\x16GetNetInterfaceRequest\x12:\n\x04name\x18\x01 \x01(\tB&\xe2\x41\x01\x02\xfa\x41\x1f\n\x1dopi_api.network.v1/InterfacesR\x04name\"\xa2\x01\n\x18ListNetInterfacesRequest\x12>\n\x06parent\x18\x01 \x01(\tB&\xe2\x41\x01\x02\xfa\x41\x1f\n\x1dopi_api.network.v1/InterfacesR\x06parent\x12!\n\tpage_size\x18\x02 \x01(\x05\x42\x04\xe2\x41\x01\x01R\x08pageSize\x12#\n\npage_token\x18\x03 \x01(\tB\x04\xe2\x41\x01\x01R\tpageToken\"\x9f\x01\n\x19ListNetInterfacesResponse\x12Z\n\x0enet_interfaces\x18\x01 \x03(\x0b\x32\x33.opi_api.network.opinetcommon.v1alpha1.NetInterfaceR\rnetInterfaces\x12&\n\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\xe9\x01\n\x19UpdateNetInterfaceRequest\x12^\n\rnet_interface\x18\x01 \x01(\x0b\x32\x33.opi_api.network.opinetcommon.v1alpha1.NetInterfaceB\x04\xe2\x41\x01\x02R\x0cnetInterface\x12\x41\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x04\xe2\x41\x01\x01R\nupdateMask\x12)\n\rallow_missing\x18\x03 \x01(\x08\x42\x04\xe2\x41\x01\x01R\x0c\x61llowMissing*i\n\rInterfaceType\x12\x1e\n\x1aINTERFACE_TYPE_UNSPECIFIED\x10\x00\x12\x1b\n\x17INTERFACE_TYPE_ETHERNET\x10\x01\x12\x1b\n\x17INTERFACE_TYPE_LOOPBACK\x10\x02*\xd4\x01\n\tOperState\x12\x1a\n\x16OPER_STATE_UNSPECIFIED\x10\x00\x12\x11\n\rOPER_STATE_UP\x10\x02\x12\x13\n\x0fOPER_STATE_DOWN\x10\x03\x12\x16\n\x12OPER_STATE_TESTING\x10\x04\x12\x16\n\x12OPER_STATE_UNKNOWN\x10\x05\x12\x16\n\x12OPER_STATE_DORMANT\x10\x06\x12\x1a\n\x16OPER_STATE_NOT_PRESENT\x10\x07\x12\x1f\n\x1bOPER_STATE_LOWER_LAYER_DOWN\x10\x08\x32\x88\x05\n\x13NetInterfaceService\x12\xb9\x01\n\x0fGetNetInterface\x12=.opi_api.network.opinetcommon.v1alpha1.GetNetInterfaceRequest\x1a\x33.opi_api.network.opinetcommon.v1alpha1.NetInterface\"2\xda\x41\x04name\x82\xd3\xe4\x93\x02%\x12#/v1/{name=interfaces/*/interface/*}\x12\xc0\x01\n\x11ListNetInterfaces\x12?.opi_api.network.opinetcommon.v1alpha1.ListNetInterfacesRequest\x1a@.opi_api.network.opinetcommon.v1alpha1.ListNetInterfacesResponse\"(\xda\x41\x06parent\x82\xd3\xe4\x93\x02\x19\x12\x17/v1/{parent=interfaces}\x12\xf1\x01\n\x12UpdateNetInterface\x12@.opi_api.network.opinetcommon.v1alpha1.UpdateNetInterfaceRequest\x1a\x33.opi_api.network.opinetcommon.v1alpha1.NetInterface\"d\xda\x41\x19net_interface,update_mask\x82\xd3\xe4\x93\x02\x42\x32\x31/v1/{net_interface.name=interfaces/*/interface/*}:\rnet_interfaceB\x85\x01\n%opi_api.network.opinetcommon.v1alpha1B\x16NetworkInterfacesProtoP\x01ZBgithub.com/opiproject/opi-api/network/opinetcommon/v1alpha1/gen/gob\x06proto3') _globals = globals() _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'openconfig_interfaces_pb2', _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'networkinterfaces_pb2', _globals) if _descriptor._USE_C_DESCRIPTORS == False: _globals['DESCRIPTOR']._options = None - _globals['DESCRIPTOR']._serialized_options = b'\n%opi_api.network.opinetcommon.v1alpha1B\031OpenconfigInterfacesProtoP\001ZBgithub.com/opiproject/opi-api/network/opinetcommon/v1alpha1/gen/go' + _globals['DESCRIPTOR']._serialized_options = b'\n%opi_api.network.opinetcommon.v1alpha1B\026NetworkInterfacesProtoP\001ZBgithub.com/opiproject/opi-api/network/opinetcommon/v1alpha1/gen/go' _globals['_CONFIG'].fields_by_name['name']._options = None _globals['_CONFIG'].fields_by_name['name']._serialized_options = b'\342A\001\002' _globals['_CONFIG'].fields_by_name['type']._options = None @@ -40,6 +42,8 @@ _globals['_CONFIG'].fields_by_name['description']._serialized_options = b'\342A\001\002' _globals['_CONFIG'].fields_by_name['enabled']._options = None _globals['_CONFIG'].fields_by_name['enabled']._serialized_options = b'\342A\001\002' + _globals['_CONFIG'].fields_by_name['tpid']._options = None + _globals['_CONFIG'].fields_by_name['tpid']._serialized_options = b'\342A\001\001' _globals['_COUNTERS'].fields_by_name['rx_octets']._options = None _globals['_COUNTERS'].fields_by_name['rx_octets']._serialized_options = b'\342A\001\003' _globals['_COUNTERS'].fields_by_name['rx_packets']._options = None @@ -104,6 +108,8 @@ _globals['_STATE'].fields_by_name['cpu']._serialized_options = b'\342A\001\003' _globals['_STATE'].fields_by_name['counters']._options = None _globals['_STATE'].fields_by_name['counters']._serialized_options = b'\342A\001\003' + _globals['_STATE'].fields_by_name['tpid']._options = None + _globals['_STATE'].fields_by_name['tpid']._serialized_options = b'\342A\001\003' _globals['_NETINTERFACE_HOLDTIME_HOLDCONFIG'].fields_by_name['up']._options = None _globals['_NETINTERFACE_HOLDTIME_HOLDCONFIG'].fields_by_name['up']._serialized_options = b'\342A\001\001' _globals['_NETINTERFACE_HOLDTIME_HOLDCONFIG'].fields_by_name['down']._options = None @@ -128,6 +134,8 @@ _globals['_NETINTERFACE_SUBINTERFACES_SUBINTERFACE'].fields_by_name['subif_config']._serialized_options = b'\342A\001\001' _globals['_NETINTERFACE_SUBINTERFACES_SUBINTERFACE'].fields_by_name['state']._options = None _globals['_NETINTERFACE_SUBINTERFACES_SUBINTERFACE'].fields_by_name['state']._serialized_options = b'\342A\001\003' + _globals['_NETINTERFACE_SUBINTERFACES_SUBINTERFACE'].fields_by_name['vlan']._options = None + _globals['_NETINTERFACE_SUBINTERFACES_SUBINTERFACE'].fields_by_name['vlan']._serialized_options = b'\342A\001\001' _globals['_NETINTERFACE_SUBINTERFACES'].fields_by_name['subinterface']._options = None _globals['_NETINTERFACE_SUBINTERFACES'].fields_by_name['subinterface']._serialized_options = b'\342A\001\001' _globals['_NETINTERFACE'].fields_by_name['name']._options = None @@ -140,8 +148,10 @@ _globals['_NETINTERFACE'].fields_by_name['holdtime']._serialized_options = b'\342A\001\001' _globals['_NETINTERFACE'].fields_by_name['subinterfaces']._options = None _globals['_NETINTERFACE'].fields_by_name['subinterfaces']._serialized_options = b'\342A\001\001' + _globals['_NETINTERFACE'].fields_by_name['ethernet']._options = None + _globals['_NETINTERFACE'].fields_by_name['ethernet']._serialized_options = b'\342A\001\001' _globals['_NETINTERFACE']._options = None - _globals['_NETINTERFACE']._serialized_options = b'\352Ae\n,opi_api.network.common.v1alpha1/NetInterface\022\030netInterface/{interface}*\rnetInterfaces2\014netInterface' + _globals['_NETINTERFACE']._serialized_options = b'\352Ak\n2opi_api.network.opinetcommon.v1alpha1/NetInterface\022\030netInterface/{interface}*\rnetInterfaces2\014netInterface' _globals['_GETNETINTERFACEREQUEST'].fields_by_name['name']._options = None _globals['_GETNETINTERFACEREQUEST'].fields_by_name['name']._serialized_options = b'\342A\001\002\372A\037\n\035opi_api.network.v1/Interfaces' _globals['_LISTNETINTERFACESREQUEST'].fields_by_name['parent']._options = None @@ -162,38 +172,38 @@ _globals['_NETINTERFACESERVICE'].methods_by_name['ListNetInterfaces']._serialized_options = b'\332A\006parent\202\323\344\223\002\031\022\027/v1/{parent=interfaces}' _globals['_NETINTERFACESERVICE'].methods_by_name['UpdateNetInterface']._options = None _globals['_NETINTERFACESERVICE'].methods_by_name['UpdateNetInterface']._serialized_options = b'\332A\031net_interface,update_mask\202\323\344\223\002B21/v1/{net_interface.name=interfaces/*/interface/*}:\rnet_interface' - _globals['_INTERFACETYPE']._serialized_start=3991 - _globals['_INTERFACETYPE']._serialized_end=4096 - _globals['_OPERSTATE']._serialized_start=4099 - _globals['_OPERSTATE']._serialized_end=4311 - _globals['_CONFIG']._serialized_start=240 - _globals['_CONFIG']._serialized_end=493 - _globals['_COUNTERS']._serialized_start=496 - _globals['_COUNTERS']._serialized_end=1288 - _globals['_STATE']._serialized_start=1291 - _globals['_STATE']._serialized_end=1968 - _globals['_NETINTERFACE']._serialized_start=1971 - _globals['_NETINTERFACE']._serialized_end=3340 - _globals['_NETINTERFACE_HOLDTIME']._serialized_start=2372 - _globals['_NETINTERFACE_HOLDTIME']._serialized_end=2726 - _globals['_NETINTERFACE_HOLDTIME_HOLDCONFIG']._serialized_start=2605 - _globals['_NETINTERFACE_HOLDTIME_HOLDCONFIG']._serialized_end=2665 - _globals['_NETINTERFACE_HOLDTIME_HOLDSTATE']._serialized_start=2667 - _globals['_NETINTERFACE_HOLDTIME_HOLDSTATE']._serialized_end=2726 - _globals['_NETINTERFACE_SUBINTERFACES']._serialized_start=2729 - _globals['_NETINTERFACE_SUBINTERFACES']._serialized_end=3234 - _globals['_NETINTERFACE_SUBINTERFACES_SUBINTERFACE']._serialized_start=2869 - _globals['_NETINTERFACE_SUBINTERFACES_SUBINTERFACE']._serialized_end=3234 - _globals['_NETINTERFACE_SUBINTERFACES_SUBINTERFACE_SUBIFCONFIG']._serialized_start=3121 - _globals['_NETINTERFACE_SUBINTERFACES_SUBINTERFACE_SUBIFCONFIG']._serialized_end=3234 - _globals['_GETNETINTERFACEREQUEST']._serialized_start=3342 - _globals['_GETNETINTERFACEREQUEST']._serialized_end=3426 - _globals['_LISTNETINTERFACESREQUEST']._serialized_start=3429 - _globals['_LISTNETINTERFACESREQUEST']._serialized_end=3591 - _globals['_LISTNETINTERFACESRESPONSE']._serialized_start=3594 - _globals['_LISTNETINTERFACESRESPONSE']._serialized_end=3753 - _globals['_UPDATENETINTERFACEREQUEST']._serialized_start=3756 - _globals['_UPDATENETINTERFACEREQUEST']._serialized_end=3989 - _globals['_NETINTERFACESERVICE']._serialized_start=4314 - _globals['_NETINTERFACESERVICE']._serialized_end=4962 + _globals['_INTERFACETYPE']._serialized_start=4345 + _globals['_INTERFACETYPE']._serialized_end=4450 + _globals['_OPERSTATE']._serialized_start=4453 + _globals['_OPERSTATE']._serialized_end=4665 + _globals['_CONFIG']._serialized_start=278 + _globals['_CONFIG']._serialized_end=607 + _globals['_COUNTERS']._serialized_start=610 + _globals['_COUNTERS']._serialized_end=1402 + _globals['_STATE']._serialized_start=1405 + _globals['_STATE']._serialized_end=2158 + _globals['_NETINTERFACE']._serialized_start=2161 + _globals['_NETINTERFACE']._serialized_end=3694 + _globals['_NETINTERFACE_HOLDTIME']._serialized_start=2647 + _globals['_NETINTERFACE_HOLDTIME']._serialized_end=3001 + _globals['_NETINTERFACE_HOLDTIME_HOLDCONFIG']._serialized_start=2880 + _globals['_NETINTERFACE_HOLDTIME_HOLDCONFIG']._serialized_end=2940 + _globals['_NETINTERFACE_HOLDTIME_HOLDSTATE']._serialized_start=2942 + _globals['_NETINTERFACE_HOLDTIME_HOLDSTATE']._serialized_end=3001 + _globals['_NETINTERFACE_SUBINTERFACES']._serialized_start=3004 + _globals['_NETINTERFACE_SUBINTERFACES']._serialized_end=3582 + _globals['_NETINTERFACE_SUBINTERFACES_SUBINTERFACE']._serialized_start=3144 + _globals['_NETINTERFACE_SUBINTERFACES_SUBINTERFACE']._serialized_end=3582 + _globals['_NETINTERFACE_SUBINTERFACES_SUBINTERFACE_SUBIFCONFIG']._serialized_start=3469 + _globals['_NETINTERFACE_SUBINTERFACES_SUBINTERFACE_SUBIFCONFIG']._serialized_end=3582 + _globals['_GETNETINTERFACEREQUEST']._serialized_start=3696 + _globals['_GETNETINTERFACEREQUEST']._serialized_end=3780 + _globals['_LISTNETINTERFACESREQUEST']._serialized_start=3783 + _globals['_LISTNETINTERFACESREQUEST']._serialized_end=3945 + _globals['_LISTNETINTERFACESRESPONSE']._serialized_start=3948 + _globals['_LISTNETINTERFACESRESPONSE']._serialized_end=4107 + _globals['_UPDATENETINTERFACEREQUEST']._serialized_start=4110 + _globals['_UPDATENETINTERFACEREQUEST']._serialized_end=4343 + _globals['_NETINTERFACESERVICE']._serialized_start=4668 + _globals['_NETINTERFACESERVICE']._serialized_end=5316 # @@protoc_insertion_point(module_scope) diff --git a/network/opinetcommon/v1alpha1/gen/python/openconfig_interfaces_pb2_grpc.py b/network/opinetcommon/v1alpha1/gen/python/networkinterfaces_pb2_grpc.py similarity index 72% rename from network/opinetcommon/v1alpha1/gen/python/openconfig_interfaces_pb2_grpc.py rename to network/opinetcommon/v1alpha1/gen/python/networkinterfaces_pb2_grpc.py index d271a463..a854de83 100644 --- a/network/opinetcommon/v1alpha1/gen/python/openconfig_interfaces_pb2_grpc.py +++ b/network/opinetcommon/v1alpha1/gen/python/networkinterfaces_pb2_grpc.py @@ -2,7 +2,7 @@ """Client and server classes corresponding to protobuf-defined services.""" import grpc -import openconfig_interfaces_pb2 as openconfig__interfaces__pb2 +import networkinterfaces_pb2 as networkinterfaces__pb2 class NetInterfaceServiceStub(object): @@ -17,18 +17,18 @@ def __init__(self, channel): """ self.GetNetInterface = channel.unary_unary( '/opi_api.network.opinetcommon.v1alpha1.NetInterfaceService/GetNetInterface', - request_serializer=openconfig__interfaces__pb2.GetNetInterfaceRequest.SerializeToString, - response_deserializer=openconfig__interfaces__pb2.NetInterface.FromString, + request_serializer=networkinterfaces__pb2.GetNetInterfaceRequest.SerializeToString, + response_deserializer=networkinterfaces__pb2.NetInterface.FromString, ) self.ListNetInterfaces = channel.unary_unary( '/opi_api.network.opinetcommon.v1alpha1.NetInterfaceService/ListNetInterfaces', - request_serializer=openconfig__interfaces__pb2.ListNetInterfacesRequest.SerializeToString, - response_deserializer=openconfig__interfaces__pb2.ListNetInterfacesResponse.FromString, + request_serializer=networkinterfaces__pb2.ListNetInterfacesRequest.SerializeToString, + response_deserializer=networkinterfaces__pb2.ListNetInterfacesResponse.FromString, ) self.UpdateNetInterface = channel.unary_unary( '/opi_api.network.opinetcommon.v1alpha1.NetInterfaceService/UpdateNetInterface', - request_serializer=openconfig__interfaces__pb2.UpdateNetInterfaceRequest.SerializeToString, - response_deserializer=openconfig__interfaces__pb2.NetInterface.FromString, + request_serializer=networkinterfaces__pb2.UpdateNetInterfaceRequest.SerializeToString, + response_deserializer=networkinterfaces__pb2.NetInterface.FromString, ) @@ -62,18 +62,18 @@ def add_NetInterfaceServiceServicer_to_server(servicer, server): rpc_method_handlers = { 'GetNetInterface': grpc.unary_unary_rpc_method_handler( servicer.GetNetInterface, - request_deserializer=openconfig__interfaces__pb2.GetNetInterfaceRequest.FromString, - response_serializer=openconfig__interfaces__pb2.NetInterface.SerializeToString, + request_deserializer=networkinterfaces__pb2.GetNetInterfaceRequest.FromString, + response_serializer=networkinterfaces__pb2.NetInterface.SerializeToString, ), 'ListNetInterfaces': grpc.unary_unary_rpc_method_handler( servicer.ListNetInterfaces, - request_deserializer=openconfig__interfaces__pb2.ListNetInterfacesRequest.FromString, - response_serializer=openconfig__interfaces__pb2.ListNetInterfacesResponse.SerializeToString, + request_deserializer=networkinterfaces__pb2.ListNetInterfacesRequest.FromString, + response_serializer=networkinterfaces__pb2.ListNetInterfacesResponse.SerializeToString, ), 'UpdateNetInterface': grpc.unary_unary_rpc_method_handler( servicer.UpdateNetInterface, - request_deserializer=openconfig__interfaces__pb2.UpdateNetInterfaceRequest.FromString, - response_serializer=openconfig__interfaces__pb2.NetInterface.SerializeToString, + request_deserializer=networkinterfaces__pb2.UpdateNetInterfaceRequest.FromString, + response_serializer=networkinterfaces__pb2.NetInterface.SerializeToString, ), } generic_handler = grpc.method_handlers_generic_handler( @@ -98,8 +98,8 @@ def GetNetInterface(request, timeout=None, metadata=None): return grpc.experimental.unary_unary(request, target, '/opi_api.network.opinetcommon.v1alpha1.NetInterfaceService/GetNetInterface', - openconfig__interfaces__pb2.GetNetInterfaceRequest.SerializeToString, - openconfig__interfaces__pb2.NetInterface.FromString, + networkinterfaces__pb2.GetNetInterfaceRequest.SerializeToString, + networkinterfaces__pb2.NetInterface.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @@ -115,8 +115,8 @@ def ListNetInterfaces(request, timeout=None, metadata=None): return grpc.experimental.unary_unary(request, target, '/opi_api.network.opinetcommon.v1alpha1.NetInterfaceService/ListNetInterfaces', - openconfig__interfaces__pb2.ListNetInterfacesRequest.SerializeToString, - openconfig__interfaces__pb2.ListNetInterfacesResponse.FromString, + networkinterfaces__pb2.ListNetInterfacesRequest.SerializeToString, + networkinterfaces__pb2.ListNetInterfacesResponse.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) @@ -132,7 +132,7 @@ def UpdateNetInterface(request, timeout=None, metadata=None): return grpc.experimental.unary_unary(request, target, '/opi_api.network.opinetcommon.v1alpha1.NetInterfaceService/UpdateNetInterface', - openconfig__interfaces__pb2.UpdateNetInterfaceRequest.SerializeToString, - openconfig__interfaces__pb2.NetInterface.FromString, + networkinterfaces__pb2.UpdateNetInterfaceRequest.SerializeToString, + networkinterfaces__pb2.NetInterface.FromString, options, channel_credentials, insecure, call_credentials, compression, wait_for_ready, timeout, metadata) diff --git a/network/opinetcommon/v1alpha1/gen/python/networkvlan_pb2.py b/network/opinetcommon/v1alpha1/gen/python/networkvlan_pb2.py new file mode 100644 index 00000000..f8da0e75 --- /dev/null +++ b/network/opinetcommon/v1alpha1/gen/python/networkvlan_pb2.py @@ -0,0 +1,57 @@ +# -*- coding: utf-8 -*- +# Generated by the protocol buffer compiler. DO NOT EDIT! +# source: networkvlan.proto +# Protobuf Python Version: 4.25.2 +"""Generated protocol buffer code.""" +from google.protobuf import descriptor as _descriptor +from google.protobuf import descriptor_pool as _descriptor_pool +from google.protobuf import symbol_database as _symbol_database +from google.protobuf.internal import builder as _builder +# @@protoc_insertion_point(imports) + +_sym_db = _symbol_database.Default() + + + + +DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x11networkvlan.proto\x12%opi_api.network.opinetcommon.v1alpha1\"\xdb\x01\n\x13SwitchedVlanSetting\x12\x61\n\x13vlan_interface_mode\x18\x01 \x01(\x0e\x32\x31.opi_api.network.opinetcommon.v1alpha1.VlanIfModeR\x11vlanInterfaceMode\x12\x1f\n\x0bnative_vlan\x18\x02 \x01(\rR\nnativeVlan\x12\x1f\n\x0b\x61\x63\x63\x65ss_vlan\x18\x03 \x01(\rR\naccessVlan\x12\x1f\n\x0btrunk_vlans\x18\x04 \x01(\tR\ntrunkVlans\"\xb6\x01\n\x0eVlanSwitchedIf\x12R\n\x06\x63onfig\x18\x01 \x01(\x0b\x32:.opi_api.network.opinetcommon.v1alpha1.SwitchedVlanSettingR\x06\x63onfig\x12P\n\x05state\x18\x02 \x01(\x0b\x32:.opi_api.network.opinetcommon.v1alpha1.SwitchedVlanSettingR\x05state\"\xdb\x01\n\x18VlanIngressEgressSetting\x12`\n\x0fvlanstackaction\x18\x01 \x01(\x0e\x32\x36.opi_api.network.opinetcommon.v1alpha1.VlanStackActionR\x0fvlanstackaction\x12\x17\n\x07vlan_id\x18\x02 \x01(\rR\x06vlanId\x12\x44\n\x04tpid\x18\x03 \x01(\x0e\x32\x30.opi_api.network.opinetcommon.v1alpha1.TpidTypesR\x04tpid\"\xac\x0c\n\x06VlanIf\x12M\n\x05match\x18\x01 \x01(\x0b\x32\x37.opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatchR\x05match\x12h\n\x0eingressmapping\x18\x02 \x01(\x0b\x32@.opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanIngressMappingR\x0eingressmapping\x12\x65\n\regressmapping\x18\x03 \x01(\x0b\x32?.opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanEgressMappingR\regressmapping\x1a\xf4\x06\n\tVlanMatch\x12h\n\x0csingletagged\x18\x01 \x01(\x0b\x32\x44.opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTaggedR\x0csingletagged\x12t\n\x10singletaggedlist\x18\x02 \x01(\x0b\x32H.opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTaggedListR\x10singletaggedlist\x1a\xbe\x02\n\x0cSingleTagged\x12l\n\x06\x63onfig\x18\x01 \x01(\x0b\x32T.opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTagged.SingleTagConfigR\x06\x63onfig\x12i\n\x05state\x18\x02 \x01(\x0b\x32S.opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTagged.SingleTagStateR\x05state\x1a*\n\x0fSingleTagConfig\x12\x17\n\x07vlan_id\x18\x01 \x01(\rR\x06vlanId\x1a)\n\x0eSingleTagState\x12\x17\n\x07vlan_id\x18\x01 \x01(\rR\x06vlanId\x1a\xc5\x02\n\x10SingleTaggedList\x12n\n\x06\x63onfig\x18\x01 \x01(\x0b\x32V.opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTaggedList.TagListConfigR\x06\x63onfig\x12n\n\x06status\x18\x02 \x01(\x0b\x32V.opi_api.network.opinetcommon.v1alpha1.VlanIf.VlanMatch.SingleTaggedList.TagListStatusR\x06status\x1a(\n\rTagListConfig\x12\x17\n\x07vlan_id\x18\x01 \x03(\rR\x06vlanId\x1a\'\n\rTagListStatus\x12\x16\n\x06vlanid\x18\x01 \x03(\rR\x06vlanid\x1a\xc4\x01\n\x12VlanIngressMapping\x12W\n\x06\x63onfig\x18\x01 \x01(\x0b\x32?.opi_api.network.opinetcommon.v1alpha1.VlanIngressEgressSettingR\x06\x63onfig\x12U\n\x05state\x18\x02 \x01(\x0b\x32?.opi_api.network.opinetcommon.v1alpha1.VlanIngressEgressSettingR\x05state\x1a\xc3\x01\n\x11VlanEgressMapping\x12W\n\x06\x63onfig\x18\x01 \x01(\x0b\x32?.opi_api.network.opinetcommon.v1alpha1.VlanIngressEgressSettingR\x06\x63onfig\x12U\n\x05state\x18\x02 \x01(\x0b\x32?.opi_api.network.opinetcommon.v1alpha1.VlanIngressEgressSettingR\x05state*\x97\x01\n\tTpidTypes\x12\x1a\n\x16TPID_TYPES_UNSPECIFIED\x10\x00\x12\x15\n\x11TPID_TYPES_0X8100\x10\x01\x12\x15\n\x11TPID_TYPES_0X88A8\x10\x02\x12\x15\n\x11TPID_TYPES_0X9100\x10\x03\x12\x15\n\x11TPID_TYPES_0X9200\x10\x04\x12\x12\n\x0eTPID_TYPES_ANY\x10\x05*\x87\x01\n\x0fVlanStackAction\x12!\n\x1dVLAN_STACK_ACTION_UNSPECIFIED\x10\x00\x12\x1a\n\x16VLAN_STACK_ACTION_PUSH\x10\x01\x12\x19\n\x15VLAN_STACK_ACTION_POP\x10\x02\x12\x1a\n\x16VLAN_STACK_ACTION_SWAP\x10\x03*[\n\nVlanIfMode\x12\x1c\n\x18VLAN_IF_MODE_UNSPECIFIED\x10\x00\x12\x17\n\x13VLAN_IF_MODE_ACCESS\x10\x01\x12\x16\n\x12VLAN_IF_MODE_TRUNK\x10\x02\x42\x7f\n%opi_api.network.opinetcommon.v1alpha1B\x10NetworkVlanProtoP\x01ZBgithub.com/opiproject/opi-api/network/opinetcommon/v1alpha1/gen/gob\x06proto3') + +_globals = globals() +_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) +_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'networkvlan_pb2', _globals) +if _descriptor._USE_C_DESCRIPTORS == False: + _globals['DESCRIPTOR']._options = None + _globals['DESCRIPTOR']._serialized_options = b'\n%opi_api.network.opinetcommon.v1alpha1B\020NetworkVlanProtoP\001ZBgithub.com/opiproject/opi-api/network/opinetcommon/v1alpha1/gen/go' + _globals['_TPIDTYPES']._serialized_start=2273 + _globals['_TPIDTYPES']._serialized_end=2424 + _globals['_VLANSTACKACTION']._serialized_start=2427 + _globals['_VLANSTACKACTION']._serialized_end=2562 + _globals['_VLANIFMODE']._serialized_start=2564 + _globals['_VLANIFMODE']._serialized_end=2655 + _globals['_SWITCHEDVLANSETTING']._serialized_start=61 + _globals['_SWITCHEDVLANSETTING']._serialized_end=280 + _globals['_VLANSWITCHEDIF']._serialized_start=283 + _globals['_VLANSWITCHEDIF']._serialized_end=465 + _globals['_VLANINGRESSEGRESSSETTING']._serialized_start=468 + _globals['_VLANINGRESSEGRESSSETTING']._serialized_end=687 + _globals['_VLANIF']._serialized_start=690 + _globals['_VLANIF']._serialized_end=2270 + _globals['_VLANIF_VLANMATCH']._serialized_start=989 + _globals['_VLANIF_VLANMATCH']._serialized_end=1873 + _globals['_VLANIF_VLANMATCH_SINGLETAGGED']._serialized_start=1227 + _globals['_VLANIF_VLANMATCH_SINGLETAGGED']._serialized_end=1545 + _globals['_VLANIF_VLANMATCH_SINGLETAGGED_SINGLETAGCONFIG']._serialized_start=1460 + _globals['_VLANIF_VLANMATCH_SINGLETAGGED_SINGLETAGCONFIG']._serialized_end=1502 + _globals['_VLANIF_VLANMATCH_SINGLETAGGED_SINGLETAGSTATE']._serialized_start=1504 + _globals['_VLANIF_VLANMATCH_SINGLETAGGED_SINGLETAGSTATE']._serialized_end=1545 + _globals['_VLANIF_VLANMATCH_SINGLETAGGEDLIST']._serialized_start=1548 + _globals['_VLANIF_VLANMATCH_SINGLETAGGEDLIST']._serialized_end=1873 + _globals['_VLANIF_VLANMATCH_SINGLETAGGEDLIST_TAGLISTCONFIG']._serialized_start=1792 + _globals['_VLANIF_VLANMATCH_SINGLETAGGEDLIST_TAGLISTCONFIG']._serialized_end=1832 + _globals['_VLANIF_VLANMATCH_SINGLETAGGEDLIST_TAGLISTSTATUS']._serialized_start=1834 + _globals['_VLANIF_VLANMATCH_SINGLETAGGEDLIST_TAGLISTSTATUS']._serialized_end=1873 + _globals['_VLANIF_VLANINGRESSMAPPING']._serialized_start=1876 + _globals['_VLANIF_VLANINGRESSMAPPING']._serialized_end=2072 + _globals['_VLANIF_VLANEGRESSMAPPING']._serialized_start=2075 + _globals['_VLANIF_VLANEGRESSMAPPING']._serialized_end=2270 +# @@protoc_insertion_point(module_scope) diff --git a/network/opinetcommon/v1alpha1/gen/python/networkvlan_pb2_grpc.py b/network/opinetcommon/v1alpha1/gen/python/networkvlan_pb2_grpc.py new file mode 100644 index 00000000..2daafffe --- /dev/null +++ b/network/opinetcommon/v1alpha1/gen/python/networkvlan_pb2_grpc.py @@ -0,0 +1,4 @@ +# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! +"""Client and server classes corresponding to protobuf-defined services.""" +import grpc +