1syntax = "proto3"; 2 3package envoy.api.v2; 4 5import "envoy/api/v2/discovery.proto"; 6 7import "google/api/annotations.proto"; 8 9import "envoy/annotations/resource.proto"; 10import "udpa/annotations/migrate.proto"; 11import "udpa/annotations/status.proto"; 12 13import public "envoy/api/v2/listener.proto"; 14 15option java_package = "io.envoyproxy.envoy.api.v2"; 16option java_outer_classname = "LdsProto"; 17option java_multiple_files = true; 18option go_package = "github.com/envoyproxy/go-control-plane/envoy/api/v2;apiv2"; 19option (udpa.annotations.file_migrate).move_to_package = "envoy.service.listener.v3"; 20option (udpa.annotations.file_status).package_version_status = FROZEN; 21 22// [#protodoc-title: Listener] 23// Listener :ref:`configuration overview <config_listeners>` 24 25// The Envoy instance initiates an RPC at startup to discover a list of 26// listeners. Updates are delivered via streaming from the LDS server and 27// consist of a complete update of all listeners. Existing connections will be 28// allowed to drain from listeners that are no longer present. 29service ListenerDiscoveryService { 30 option (envoy.annotations.resource).type = "envoy.api.v2.Listener"; 31 32 rpc DeltaListeners(stream DeltaDiscoveryRequest) returns (stream DeltaDiscoveryResponse) { 33 } 34 35 rpc StreamListeners(stream DiscoveryRequest) returns (stream DiscoveryResponse) { 36 } 37 38 rpc FetchListeners(DiscoveryRequest) returns (DiscoveryResponse) { 39 option (google.api.http).post = "/v2/discovery:listeners"; 40 option (google.api.http).body = "*"; 41 } 42} 43 44// [#not-implemented-hide:] Not configuration. Workaround c++ protobuf issue with importing 45// services: https://github.com/google/protobuf/issues/4221 and protoxform to upgrade the file. 46message LdsDummy { 47} 48