blob: df12fa5c7c8192212b4b0f57ffcd9b3504907e20 [file] [log] [blame]
// 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 "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;