Skip to content

Commit

Permalink
EOS SDK RPC v4.33.0F
Browse files Browse the repository at this point in the history
  • Loading branch information
dywalsh-ar committed Dec 13, 2024
1 parent b45744c commit 2ea174e
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 39 deletions.
20 changes: 0 additions & 20 deletions proto/policy_map_counters.proto
Original file line number Diff line number Diff line change
Expand Up @@ -22,26 +22,6 @@ message PolicyMapCountersWatchRequest {
optional bool compress_keys = 1;
}

enum PolicyMapCountersOperation {
POLICY_MAP_COUNTERS_UPDATE = 0;
POLICY_MAP_COUNTERS_DELETE = 1;
}

message PolicyMapCounters {
// This is the compressed key allocated by the server
// if compress_keys is enabled (true), all subsequent counter updates
// will only provide the key_id
uint64 key_id = 1;
// This is compound key. The client is responsible for
// maintaining the association between key_name and the more efficient key_id
PolicyMapCountersKey key_name = 2;
PolicyMapRuleCounters counters = 3;
PolicyMapCountersAction policy_action = 4;
// Instructs whether this entry is updating counters or deleting entries from the
// counter table.
PolicyMapCountersOperation operation = 5;
}

message PolicyMapCountersWatchResponse {
repeated PolicyMapCounters counters = 1;
bool stream_ready = 2;
Expand Down
81 changes: 62 additions & 19 deletions proto/policy_map_counters_types.proto
Original file line number Diff line number Diff line change
@@ -1,44 +1,87 @@
// Copyright (c) 2023 Arista Networks, Inc. All rights reserved.
// Copyright (c) 2024 Arista Networks, Inc. All rights reserved.
// Arista Networks, Inc. Confidential and Proprietary.

// Auto-generated - Do not modify
syntax = "proto3";

option go_package = "arista/EosSdkRpc";

package eos.remote;

option go_package = "arista/EosSdkRpc";

import "policy_map_types.proto";

/// Key that uniquely identifies a counter
message PolicyMapCountersKey {
PolicyMapKey policy_key = 1;
/// Policy map key
eos.remote.PolicyMapKey policy_key = 1;
/// Policy class name
string class_name = 2;
/// ACL rule name
string acl_rule = 3;
}

message PolicyMapRuleCounters {
uint64 packets_count = 1;
uint64 bytes_count = 2;
/// Last update timestamp, UTC, sub-second precision
double last_update_timestamp = 3;
}

/// Next-hop information of output action
message PolicyMapCountersOutAction {
/// Next-hop list details
message NexthopAction {
/// Recursive (indirect) next-hop
bool recursive = 1;
/// List of next-hop addresses
repeated bytes nexthop_addrs = 2;
/// Egress VRF name
string vrf = 3;
}

oneof nexthop {
NexthopAction nexthops = 1;
string nexthop_group = 2;
}
uint32 ttl = 3;
/// Next-hop details
/// TACC Only
oneof nexthop {
NexthopAction nexthops = 1;
string nexthop_group = 2;
}

/// Egress TTL
uint32 ttl = 3;
}

/// Output action associated with counter data
message PolicyMapCountersAction {
oneof action {
/// Possible output actions
/// TACC Only
oneof action {
bool deny = 1;
PolicyMapCountersOutAction out_action = 2;
}
}

}

/// Possible update actions
enum PolicyMapCountersOperation {
/// Entry updates previous value
POLICY_MAP_COUNTERS_UPDATE = 0;
/// Entry deletes previous value
POLICY_MAP_COUNTERS_DELETE = 1;
}

/// Counter data
message PolicyMapRuleCounters {
/// Packet count
uint64 packets_count = 1;
/// Byte count
uint64 bytes_count = 2;
/// Counter update timestamp (wallclock, seconds)
double last_update_timestamp = 3;
}

/// The policy map counter entry
message PolicyMapCounters {
/// Short key
uint64 key_id = 1;
/// Long key
PolicyMapCountersKey key_name = 2;
/// Counter data
PolicyMapRuleCounters counters = 3;
/// Associated output action
PolicyMapCountersAction policy_action = 4;
/// Update action of the entry
PolicyMapCountersOperation operation = 5;
}

0 comments on commit 2ea174e

Please sign in to comment.