| // Copyright 2015 The Chromium 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 = "proto2"; |
| |
| option optimize_for = LITE_RUNTIME; |
| |
| import "quiche/quic/core/proto/cached_network_parameters.proto"; |
| |
| package quic; |
| |
| // A SourceAddressToken is serialised, encrypted and sent to clients so that |
| // they can prove ownership of an IP address. |
| message SourceAddressToken { |
| // ip contains either 4 (IPv4) or 16 (IPv6) bytes of IP address in network |
| // byte order. |
| required bytes ip = 1; |
| // timestamp contains a UNIX timestamp value of the time when the token was |
| // created. |
| required int64 timestamp = 2; |
| // The server can provide estimated network parameters to be used for |
| // initial parameter selection in future connections. |
| optional CachedNetworkParameters cached_network_parameters = 3; |
| }; |
| |
| // SourceAddressTokens are simply lists of SourceAddressToken messages. |
| message SourceAddressTokens { |
| // This field has id 4 to avoid ambiguity between the serialized form of |
| // SourceAddressToken vs SourceAddressTokens. |
| repeated SourceAddressToken tokens = 4; |
| }; |