• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2015 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5syntax = "proto2";
6
7option optimize_for = LITE_RUNTIME;
8
9import "quiche/quic/core/proto/cached_network_parameters.proto";
10
11package quic;
12
13// A SourceAddressToken is serialised, encrypted and sent to clients so that
14// they can prove ownership of an IP address.
15message SourceAddressToken {
16  // ip contains either 4 (IPv4) or 16 (IPv6) bytes of IP address in network
17  // byte order.
18  required bytes ip = 1;
19  // timestamp contains a UNIX timestamp value of the time when the token was
20  // created.
21  required int64 timestamp = 2;
22  // The server can provide estimated network parameters to be used for
23  // initial parameter selection in future connections.
24  optional CachedNetworkParameters cached_network_parameters = 3;
25};
26
27// SourceAddressTokens are simply lists of SourceAddressToken messages.
28message SourceAddressTokens {
29  // This field has id 4 to avoid ambiguity between the serialized form of
30  // SourceAddressToken vs SourceAddressTokens.
31  repeated SourceAddressToken tokens = 4;
32};
33