[remoting host] Plumb host transport protocol to client
The host's transport protocol (TCP/UDP) can be different from the
client's protocol if the session is relayed, in which case the host's
protocol is only known to itself and isn't reflected in the remote ICE
candidate.
This CL plumbs the host's transport protocol type to the client using
the host control message, so that the client can send it to telemetry
and show it in Stats for Nerds.
Bug: 600032
Change-Id: Ic977cf71e020e72eb4d3941b12cdc986c2554bbe
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2173485
Commit-Queue: Yuwei Huang <[email protected]>
Reviewed-by: Joe Downing <[email protected]>
Reviewed-by: Lambros Lambrou <[email protected]>
Cr-Commit-Position: refs/heads/master@{#765222}
diff --git a/remoting/proto/control.proto b/remoting/proto/control.proto
index 9ddc353..64f81fc 100644
--- a/remoting/proto/control.proto
+++ b/remoting/proto/control.proto
@@ -163,3 +163,14 @@
// Map USB code to key behavior.
map<uint32, KeyBehavior> keys = 1;
}
+
+// Next ID: 2
+message TransportInfo {
+ // Transport layer protocol the message sender uses to connect to the relay
+ // server or the peer (if connection not relayed).
+ // Possible values are those defined in the protocol and relayProtocol fields
+ // in the RTCIceCandidateStats dictionary.
+ // If the host failed to get protocol using WebRTC API, this field will be set
+ // to "api-error".
+ optional string protocol = 1;
+}