|  | // Copyright 2018 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"; | 
|  |  | 
|  | package quic; | 
|  |  | 
|  | // QuicServerConfigProtobuf contains QUIC server config block and the private | 
|  | // keys needed to prove ownership. | 
|  | message QuicServerConfigProtobuf { | 
|  | // config is a serialised config in QUIC wire format. | 
|  | required bytes config = 1; | 
|  |  | 
|  | // PrivateKey contains a QUIC tag of a key exchange algorithm and a | 
|  | // serialised private key for that algorithm. The format of the serialised | 
|  | // private key is specific to the algorithm in question. | 
|  | message PrivateKey { | 
|  | required uint32 tag = 1; | 
|  | required string private_key = 2; | 
|  | } | 
|  | repeated PrivateKey key = 2; | 
|  |  | 
|  | // primary_time contains a UNIX epoch seconds value that indicates when this | 
|  | // config should become primary. | 
|  | optional int64 primary_time = 3; | 
|  |  | 
|  | // Relative priority of this config vs other configs with the same | 
|  | // primary time.  For use as a secondary sort key when selecting the | 
|  | // primary config. | 
|  | optional uint64 priority = 4; | 
|  | }; |