| // Copyright 2019 The Chromium OS Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| syntax = "proto3"; |
| option optimize_for = LITE_RUNTIME; |
| |
| // This file defines messages used for interacting with the chunneld service. |
| package vm_tools.chunneld; |
| option go_package = "chunneld_proto"; |
| |
| // Sent to chunneld to update the listening ports across all VMs/containers. |
| message UpdateListeningPortsRequest { |
| // Identifies a particular container that has a listening port. |
| message Tcp4ForwardTarget { |
| // Name of the target VM. |
| string vm_name = 1; |
| |
| // Name of the target container. |
| string container_name = 2; |
| |
| // Owner of the target VM/container. |
| string owner_id = 3; |
| |
| // Expected cid of the target VM. |
| uint32 vsock_cid = 4; |
| } |
| |
| // Map of port numbers to the containers that will be tunneled to.. |
| map<uint32, Tcp4ForwardTarget> tcp4_forward_targets = 1; |
| } |
| |
| // Response to the UpdateListeningPortsRequest message. |
| message UpdateListeningPortsResponse { |
| enum Status { |
| // The status is unknown. |
| UNKNOWN = 0; |
| |
| // Listening ports in chunneld were updated successfully. |
| SUCCESS = 1; |
| |
| // Failed to update listening ports in chunneld. |
| FAILED = 2; |
| } |
| |
| // Result of the UpdateListeningPorts method. |
| Status status = 1; |
| } |