rpc/rpc.proto (86 lines of code) (raw):

syntax = "proto3"; package rpc; option go_package = "github.com/aws/amazon-vpc-cni-k8s/rpc;rpc"; import "google/protobuf/empty.proto"; // The service definition. service CNIBackend { rpc AddNetwork (AddNetworkRequest) returns (AddNetworkReply) {} rpc DelNetwork (DelNetworkRequest) returns (DelNetworkReply) {} } message AddNetworkRequest { string ClientVersion = 8; string K8S_POD_NAME = 1; string K8S_POD_NAMESPACE = 2; string K8S_POD_INFRA_CONTAINER_ID = 3; string ContainerID = 7; string IfName = 5; string NetworkName = 6; string Netns = 4; // next field: 9 } message AddNetworkReply { bool Success = 1; string IPv4Addr = 2; string IPv6Addr = 11; int32 DeviceNumber = 4; bool UseExternalSNAT = 5; repeated string VPCv4CIDRs = 6; repeated string VPCv6CIDRs = 12; // start of pod-eni parameters int32 PodVlanId = 7; string PodENIMAC = 8; string PodENISubnetGW = 9; int32 ParentIfIndex = 10; // end of pod-eni parameters string NetworkPolicyMode = 13; // next field: 14 } message DelNetworkRequest { string ClientVersion = 9; string K8S_POD_NAME = 1; string K8S_POD_NAMESPACE = 2; string K8S_POD_INFRA_CONTAINER_ID = 3; string Reason = 5; string ContainerID = 8; string IfName = 6; string NetworkName = 7; // next field: 10 } message DelNetworkReply { bool Success = 1; string IPv4Addr = 2; string IPv6Addr = 5; int32 DeviceNumber = 3; // start of pod-eni parameters int32 PodVlanId = 4; // end of pod-eni parameters string NetworkPolicyMode = 6; // next field: 7 } // The service definition. service NPBackend { rpc EnforceNpToPod (EnforceNpRequest) returns (EnforceNpReply) {} rpc DeletePodNp (DeleteNpRequest) returns (DeleteNpReply) {} } message EnforceNpRequest { string K8S_POD_NAME = 1; string K8S_POD_NAMESPACE = 2; string NETWORK_POLICY_MODE = 3; } message EnforceNpReply { bool Success = 1; } message DeleteNpRequest { string K8S_POD_NAME = 1; string K8S_POD_NAMESPACE = 2; } message DeleteNpReply { bool Success = 1; } // The service definition. service ConfigServerBackend { rpc GetNetworkPolicyConfigs (google.protobuf.Empty) returns (NetworkPolicyAgentConfigReply) {} } message NetworkPolicyAgentConfigReply { string NetworkPolicyMode = 1; }