google.golang.org/grpc@v1.62.1/credentials/alts/internal/proto/grpc_gcp/handshaker.pb.go (about)

     1  // Copyright 2018 The gRPC Authors
     2  //
     3  // Licensed under the Apache License, Version 2.0 (the "License");
     4  // you may not use this file except in compliance with the License.
     5  // You may obtain a copy of the License at
     6  //
     7  //     http://www.apache.org/licenses/LICENSE-2.0
     8  //
     9  // Unless required by applicable law or agreed to in writing, software
    10  // distributed under the License is distributed on an "AS IS" BASIS,
    11  // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  // See the License for the specific language governing permissions and
    13  // limitations under the License.
    14  
    15  // The canonical version of this proto can be found at
    16  // https://github.com/grpc/grpc-proto/blob/master/grpc/gcp/handshaker.proto
    17  
    18  // Code generated by protoc-gen-go. DO NOT EDIT.
    19  // versions:
    20  // 	protoc-gen-go v1.32.0
    21  // 	protoc        v4.25.2
    22  // source: grpc/gcp/handshaker.proto
    23  
    24  package grpc_gcp
    25  
    26  import (
    27  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    28  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    29  	reflect "reflect"
    30  	sync "sync"
    31  )
    32  
    33  const (
    34  	// Verify that this generated code is sufficiently up-to-date.
    35  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    36  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    37  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    38  )
    39  
    40  type HandshakeProtocol int32
    41  
    42  const (
    43  	// Default value.
    44  	HandshakeProtocol_HANDSHAKE_PROTOCOL_UNSPECIFIED HandshakeProtocol = 0
    45  	// TLS handshake protocol.
    46  	HandshakeProtocol_TLS HandshakeProtocol = 1
    47  	// Application Layer Transport Security handshake protocol.
    48  	HandshakeProtocol_ALTS HandshakeProtocol = 2
    49  )
    50  
    51  // Enum value maps for HandshakeProtocol.
    52  var (
    53  	HandshakeProtocol_name = map[int32]string{
    54  		0: "HANDSHAKE_PROTOCOL_UNSPECIFIED",
    55  		1: "TLS",
    56  		2: "ALTS",
    57  	}
    58  	HandshakeProtocol_value = map[string]int32{
    59  		"HANDSHAKE_PROTOCOL_UNSPECIFIED": 0,
    60  		"TLS":                            1,
    61  		"ALTS":                           2,
    62  	}
    63  )
    64  
    65  func (x HandshakeProtocol) Enum() *HandshakeProtocol {
    66  	p := new(HandshakeProtocol)
    67  	*p = x
    68  	return p
    69  }
    70  
    71  func (x HandshakeProtocol) String() string {
    72  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    73  }
    74  
    75  func (HandshakeProtocol) Descriptor() protoreflect.EnumDescriptor {
    76  	return file_grpc_gcp_handshaker_proto_enumTypes[0].Descriptor()
    77  }
    78  
    79  func (HandshakeProtocol) Type() protoreflect.EnumType {
    80  	return &file_grpc_gcp_handshaker_proto_enumTypes[0]
    81  }
    82  
    83  func (x HandshakeProtocol) Number() protoreflect.EnumNumber {
    84  	return protoreflect.EnumNumber(x)
    85  }
    86  
    87  // Deprecated: Use HandshakeProtocol.Descriptor instead.
    88  func (HandshakeProtocol) EnumDescriptor() ([]byte, []int) {
    89  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{0}
    90  }
    91  
    92  type NetworkProtocol int32
    93  
    94  const (
    95  	NetworkProtocol_NETWORK_PROTOCOL_UNSPECIFIED NetworkProtocol = 0
    96  	NetworkProtocol_TCP                          NetworkProtocol = 1
    97  	NetworkProtocol_UDP                          NetworkProtocol = 2
    98  )
    99  
   100  // Enum value maps for NetworkProtocol.
   101  var (
   102  	NetworkProtocol_name = map[int32]string{
   103  		0: "NETWORK_PROTOCOL_UNSPECIFIED",
   104  		1: "TCP",
   105  		2: "UDP",
   106  	}
   107  	NetworkProtocol_value = map[string]int32{
   108  		"NETWORK_PROTOCOL_UNSPECIFIED": 0,
   109  		"TCP":                          1,
   110  		"UDP":                          2,
   111  	}
   112  )
   113  
   114  func (x NetworkProtocol) Enum() *NetworkProtocol {
   115  	p := new(NetworkProtocol)
   116  	*p = x
   117  	return p
   118  }
   119  
   120  func (x NetworkProtocol) String() string {
   121  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   122  }
   123  
   124  func (NetworkProtocol) Descriptor() protoreflect.EnumDescriptor {
   125  	return file_grpc_gcp_handshaker_proto_enumTypes[1].Descriptor()
   126  }
   127  
   128  func (NetworkProtocol) Type() protoreflect.EnumType {
   129  	return &file_grpc_gcp_handshaker_proto_enumTypes[1]
   130  }
   131  
   132  func (x NetworkProtocol) Number() protoreflect.EnumNumber {
   133  	return protoreflect.EnumNumber(x)
   134  }
   135  
   136  // Deprecated: Use NetworkProtocol.Descriptor instead.
   137  func (NetworkProtocol) EnumDescriptor() ([]byte, []int) {
   138  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{1}
   139  }
   140  
   141  type Endpoint struct {
   142  	state         protoimpl.MessageState
   143  	sizeCache     protoimpl.SizeCache
   144  	unknownFields protoimpl.UnknownFields
   145  
   146  	// IP address. It should contain an IPv4 or IPv6 string literal, e.g.
   147  	// "192.168.0.1" or "2001:db8::1".
   148  	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
   149  	// Port number.
   150  	Port int32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
   151  	// Network protocol (e.g., TCP, UDP) associated with this endpoint.
   152  	Protocol NetworkProtocol `protobuf:"varint,3,opt,name=protocol,proto3,enum=grpc.gcp.NetworkProtocol" json:"protocol,omitempty"`
   153  }
   154  
   155  func (x *Endpoint) Reset() {
   156  	*x = Endpoint{}
   157  	if protoimpl.UnsafeEnabled {
   158  		mi := &file_grpc_gcp_handshaker_proto_msgTypes[0]
   159  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   160  		ms.StoreMessageInfo(mi)
   161  	}
   162  }
   163  
   164  func (x *Endpoint) String() string {
   165  	return protoimpl.X.MessageStringOf(x)
   166  }
   167  
   168  func (*Endpoint) ProtoMessage() {}
   169  
   170  func (x *Endpoint) ProtoReflect() protoreflect.Message {
   171  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[0]
   172  	if protoimpl.UnsafeEnabled && x != nil {
   173  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   174  		if ms.LoadMessageInfo() == nil {
   175  			ms.StoreMessageInfo(mi)
   176  		}
   177  		return ms
   178  	}
   179  	return mi.MessageOf(x)
   180  }
   181  
   182  // Deprecated: Use Endpoint.ProtoReflect.Descriptor instead.
   183  func (*Endpoint) Descriptor() ([]byte, []int) {
   184  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{0}
   185  }
   186  
   187  func (x *Endpoint) GetIpAddress() string {
   188  	if x != nil {
   189  		return x.IpAddress
   190  	}
   191  	return ""
   192  }
   193  
   194  func (x *Endpoint) GetPort() int32 {
   195  	if x != nil {
   196  		return x.Port
   197  	}
   198  	return 0
   199  }
   200  
   201  func (x *Endpoint) GetProtocol() NetworkProtocol {
   202  	if x != nil {
   203  		return x.Protocol
   204  	}
   205  	return NetworkProtocol_NETWORK_PROTOCOL_UNSPECIFIED
   206  }
   207  
   208  type Identity struct {
   209  	state         protoimpl.MessageState
   210  	sizeCache     protoimpl.SizeCache
   211  	unknownFields protoimpl.UnknownFields
   212  
   213  	// Types that are assignable to IdentityOneof:
   214  	//
   215  	//	*Identity_ServiceAccount
   216  	//	*Identity_Hostname
   217  	IdentityOneof isIdentity_IdentityOneof `protobuf_oneof:"identity_oneof"`
   218  	// Additional attributes of the identity.
   219  	Attributes map[string]string `protobuf:"bytes,3,rep,name=attributes,proto3" json:"attributes,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   220  }
   221  
   222  func (x *Identity) Reset() {
   223  	*x = Identity{}
   224  	if protoimpl.UnsafeEnabled {
   225  		mi := &file_grpc_gcp_handshaker_proto_msgTypes[1]
   226  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   227  		ms.StoreMessageInfo(mi)
   228  	}
   229  }
   230  
   231  func (x *Identity) String() string {
   232  	return protoimpl.X.MessageStringOf(x)
   233  }
   234  
   235  func (*Identity) ProtoMessage() {}
   236  
   237  func (x *Identity) ProtoReflect() protoreflect.Message {
   238  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[1]
   239  	if protoimpl.UnsafeEnabled && x != nil {
   240  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   241  		if ms.LoadMessageInfo() == nil {
   242  			ms.StoreMessageInfo(mi)
   243  		}
   244  		return ms
   245  	}
   246  	return mi.MessageOf(x)
   247  }
   248  
   249  // Deprecated: Use Identity.ProtoReflect.Descriptor instead.
   250  func (*Identity) Descriptor() ([]byte, []int) {
   251  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{1}
   252  }
   253  
   254  func (m *Identity) GetIdentityOneof() isIdentity_IdentityOneof {
   255  	if m != nil {
   256  		return m.IdentityOneof
   257  	}
   258  	return nil
   259  }
   260  
   261  func (x *Identity) GetServiceAccount() string {
   262  	if x, ok := x.GetIdentityOneof().(*Identity_ServiceAccount); ok {
   263  		return x.ServiceAccount
   264  	}
   265  	return ""
   266  }
   267  
   268  func (x *Identity) GetHostname() string {
   269  	if x, ok := x.GetIdentityOneof().(*Identity_Hostname); ok {
   270  		return x.Hostname
   271  	}
   272  	return ""
   273  }
   274  
   275  func (x *Identity) GetAttributes() map[string]string {
   276  	if x != nil {
   277  		return x.Attributes
   278  	}
   279  	return nil
   280  }
   281  
   282  type isIdentity_IdentityOneof interface {
   283  	isIdentity_IdentityOneof()
   284  }
   285  
   286  type Identity_ServiceAccount struct {
   287  	// Service account of a connection endpoint.
   288  	ServiceAccount string `protobuf:"bytes,1,opt,name=service_account,json=serviceAccount,proto3,oneof"`
   289  }
   290  
   291  type Identity_Hostname struct {
   292  	// Hostname of a connection endpoint.
   293  	Hostname string `protobuf:"bytes,2,opt,name=hostname,proto3,oneof"`
   294  }
   295  
   296  func (*Identity_ServiceAccount) isIdentity_IdentityOneof() {}
   297  
   298  func (*Identity_Hostname) isIdentity_IdentityOneof() {}
   299  
   300  type StartClientHandshakeReq struct {
   301  	state         protoimpl.MessageState
   302  	sizeCache     protoimpl.SizeCache
   303  	unknownFields protoimpl.UnknownFields
   304  
   305  	// Handshake security protocol requested by the client.
   306  	HandshakeSecurityProtocol HandshakeProtocol `protobuf:"varint,1,opt,name=handshake_security_protocol,json=handshakeSecurityProtocol,proto3,enum=grpc.gcp.HandshakeProtocol" json:"handshake_security_protocol,omitempty"`
   307  	// The application protocols supported by the client, e.g., "h2" (for http2),
   308  	// "grpc".
   309  	ApplicationProtocols []string `protobuf:"bytes,2,rep,name=application_protocols,json=applicationProtocols,proto3" json:"application_protocols,omitempty"`
   310  	// The record protocols supported by the client, e.g.,
   311  	// "ALTSRP_GCM_AES128".
   312  	RecordProtocols []string `protobuf:"bytes,3,rep,name=record_protocols,json=recordProtocols,proto3" json:"record_protocols,omitempty"`
   313  	// (Optional) Describes which server identities are acceptable by the client.
   314  	// If target identities are provided and none of them matches the peer
   315  	// identity of the server, handshake will fail.
   316  	TargetIdentities []*Identity `protobuf:"bytes,4,rep,name=target_identities,json=targetIdentities,proto3" json:"target_identities,omitempty"`
   317  	// (Optional) Application may specify a local identity. Otherwise, the
   318  	// handshaker chooses a default local identity.
   319  	LocalIdentity *Identity `protobuf:"bytes,5,opt,name=local_identity,json=localIdentity,proto3" json:"local_identity,omitempty"`
   320  	// (Optional) Local endpoint information of the connection to the server,
   321  	// such as local IP address, port number, and network protocol.
   322  	LocalEndpoint *Endpoint `protobuf:"bytes,6,opt,name=local_endpoint,json=localEndpoint,proto3" json:"local_endpoint,omitempty"`
   323  	// (Optional) Endpoint information of the remote server, such as IP address,
   324  	// port number, and network protocol.
   325  	RemoteEndpoint *Endpoint `protobuf:"bytes,7,opt,name=remote_endpoint,json=remoteEndpoint,proto3" json:"remote_endpoint,omitempty"`
   326  	// (Optional) If target name is provided, a secure naming check is performed
   327  	// to verify that the peer authenticated identity is indeed authorized to run
   328  	// the target name.
   329  	TargetName string `protobuf:"bytes,8,opt,name=target_name,json=targetName,proto3" json:"target_name,omitempty"`
   330  	// (Optional) RPC protocol versions supported by the client.
   331  	RpcVersions *RpcProtocolVersions `protobuf:"bytes,9,opt,name=rpc_versions,json=rpcVersions,proto3" json:"rpc_versions,omitempty"`
   332  	// (Optional) Maximum frame size supported by the client.
   333  	MaxFrameSize uint32 `protobuf:"varint,10,opt,name=max_frame_size,json=maxFrameSize,proto3" json:"max_frame_size,omitempty"`
   334  }
   335  
   336  func (x *StartClientHandshakeReq) Reset() {
   337  	*x = StartClientHandshakeReq{}
   338  	if protoimpl.UnsafeEnabled {
   339  		mi := &file_grpc_gcp_handshaker_proto_msgTypes[2]
   340  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   341  		ms.StoreMessageInfo(mi)
   342  	}
   343  }
   344  
   345  func (x *StartClientHandshakeReq) String() string {
   346  	return protoimpl.X.MessageStringOf(x)
   347  }
   348  
   349  func (*StartClientHandshakeReq) ProtoMessage() {}
   350  
   351  func (x *StartClientHandshakeReq) ProtoReflect() protoreflect.Message {
   352  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[2]
   353  	if protoimpl.UnsafeEnabled && x != nil {
   354  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   355  		if ms.LoadMessageInfo() == nil {
   356  			ms.StoreMessageInfo(mi)
   357  		}
   358  		return ms
   359  	}
   360  	return mi.MessageOf(x)
   361  }
   362  
   363  // Deprecated: Use StartClientHandshakeReq.ProtoReflect.Descriptor instead.
   364  func (*StartClientHandshakeReq) Descriptor() ([]byte, []int) {
   365  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{2}
   366  }
   367  
   368  func (x *StartClientHandshakeReq) GetHandshakeSecurityProtocol() HandshakeProtocol {
   369  	if x != nil {
   370  		return x.HandshakeSecurityProtocol
   371  	}
   372  	return HandshakeProtocol_HANDSHAKE_PROTOCOL_UNSPECIFIED
   373  }
   374  
   375  func (x *StartClientHandshakeReq) GetApplicationProtocols() []string {
   376  	if x != nil {
   377  		return x.ApplicationProtocols
   378  	}
   379  	return nil
   380  }
   381  
   382  func (x *StartClientHandshakeReq) GetRecordProtocols() []string {
   383  	if x != nil {
   384  		return x.RecordProtocols
   385  	}
   386  	return nil
   387  }
   388  
   389  func (x *StartClientHandshakeReq) GetTargetIdentities() []*Identity {
   390  	if x != nil {
   391  		return x.TargetIdentities
   392  	}
   393  	return nil
   394  }
   395  
   396  func (x *StartClientHandshakeReq) GetLocalIdentity() *Identity {
   397  	if x != nil {
   398  		return x.LocalIdentity
   399  	}
   400  	return nil
   401  }
   402  
   403  func (x *StartClientHandshakeReq) GetLocalEndpoint() *Endpoint {
   404  	if x != nil {
   405  		return x.LocalEndpoint
   406  	}
   407  	return nil
   408  }
   409  
   410  func (x *StartClientHandshakeReq) GetRemoteEndpoint() *Endpoint {
   411  	if x != nil {
   412  		return x.RemoteEndpoint
   413  	}
   414  	return nil
   415  }
   416  
   417  func (x *StartClientHandshakeReq) GetTargetName() string {
   418  	if x != nil {
   419  		return x.TargetName
   420  	}
   421  	return ""
   422  }
   423  
   424  func (x *StartClientHandshakeReq) GetRpcVersions() *RpcProtocolVersions {
   425  	if x != nil {
   426  		return x.RpcVersions
   427  	}
   428  	return nil
   429  }
   430  
   431  func (x *StartClientHandshakeReq) GetMaxFrameSize() uint32 {
   432  	if x != nil {
   433  		return x.MaxFrameSize
   434  	}
   435  	return 0
   436  }
   437  
   438  type ServerHandshakeParameters struct {
   439  	state         protoimpl.MessageState
   440  	sizeCache     protoimpl.SizeCache
   441  	unknownFields protoimpl.UnknownFields
   442  
   443  	// The record protocols supported by the server, e.g.,
   444  	// "ALTSRP_GCM_AES128".
   445  	RecordProtocols []string `protobuf:"bytes,1,rep,name=record_protocols,json=recordProtocols,proto3" json:"record_protocols,omitempty"`
   446  	// (Optional) A list of local identities supported by the server, if
   447  	// specified. Otherwise, the handshaker chooses a default local identity.
   448  	LocalIdentities []*Identity `protobuf:"bytes,2,rep,name=local_identities,json=localIdentities,proto3" json:"local_identities,omitempty"`
   449  }
   450  
   451  func (x *ServerHandshakeParameters) Reset() {
   452  	*x = ServerHandshakeParameters{}
   453  	if protoimpl.UnsafeEnabled {
   454  		mi := &file_grpc_gcp_handshaker_proto_msgTypes[3]
   455  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   456  		ms.StoreMessageInfo(mi)
   457  	}
   458  }
   459  
   460  func (x *ServerHandshakeParameters) String() string {
   461  	return protoimpl.X.MessageStringOf(x)
   462  }
   463  
   464  func (*ServerHandshakeParameters) ProtoMessage() {}
   465  
   466  func (x *ServerHandshakeParameters) ProtoReflect() protoreflect.Message {
   467  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[3]
   468  	if protoimpl.UnsafeEnabled && x != nil {
   469  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   470  		if ms.LoadMessageInfo() == nil {
   471  			ms.StoreMessageInfo(mi)
   472  		}
   473  		return ms
   474  	}
   475  	return mi.MessageOf(x)
   476  }
   477  
   478  // Deprecated: Use ServerHandshakeParameters.ProtoReflect.Descriptor instead.
   479  func (*ServerHandshakeParameters) Descriptor() ([]byte, []int) {
   480  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{3}
   481  }
   482  
   483  func (x *ServerHandshakeParameters) GetRecordProtocols() []string {
   484  	if x != nil {
   485  		return x.RecordProtocols
   486  	}
   487  	return nil
   488  }
   489  
   490  func (x *ServerHandshakeParameters) GetLocalIdentities() []*Identity {
   491  	if x != nil {
   492  		return x.LocalIdentities
   493  	}
   494  	return nil
   495  }
   496  
   497  type StartServerHandshakeReq struct {
   498  	state         protoimpl.MessageState
   499  	sizeCache     protoimpl.SizeCache
   500  	unknownFields protoimpl.UnknownFields
   501  
   502  	// The application protocols supported by the server, e.g., "h2" (for http2),
   503  	// "grpc".
   504  	ApplicationProtocols []string `protobuf:"bytes,1,rep,name=application_protocols,json=applicationProtocols,proto3" json:"application_protocols,omitempty"`
   505  	// Handshake parameters (record protocols and local identities supported by
   506  	// the server) mapped by the handshake protocol. Each handshake security
   507  	// protocol (e.g., TLS or ALTS) has its own set of record protocols and local
   508  	// identities. Since protobuf does not support enum as key to the map, the key
   509  	// to handshake_parameters is the integer value of HandshakeProtocol enum.
   510  	HandshakeParameters map[int32]*ServerHandshakeParameters `protobuf:"bytes,2,rep,name=handshake_parameters,json=handshakeParameters,proto3" json:"handshake_parameters,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
   511  	// Bytes in out_frames returned from the peer's HandshakerResp. It is possible
   512  	// that the peer's out_frames are split into multiple HandshakReq messages.
   513  	InBytes []byte `protobuf:"bytes,3,opt,name=in_bytes,json=inBytes,proto3" json:"in_bytes,omitempty"`
   514  	// (Optional) Local endpoint information of the connection to the client,
   515  	// such as local IP address, port number, and network protocol.
   516  	LocalEndpoint *Endpoint `protobuf:"bytes,4,opt,name=local_endpoint,json=localEndpoint,proto3" json:"local_endpoint,omitempty"`
   517  	// (Optional) Endpoint information of the remote client, such as IP address,
   518  	// port number, and network protocol.
   519  	RemoteEndpoint *Endpoint `protobuf:"bytes,5,opt,name=remote_endpoint,json=remoteEndpoint,proto3" json:"remote_endpoint,omitempty"`
   520  	// (Optional) RPC protocol versions supported by the server.
   521  	RpcVersions *RpcProtocolVersions `protobuf:"bytes,6,opt,name=rpc_versions,json=rpcVersions,proto3" json:"rpc_versions,omitempty"`
   522  	// (Optional) Maximum frame size supported by the server.
   523  	MaxFrameSize uint32 `protobuf:"varint,7,opt,name=max_frame_size,json=maxFrameSize,proto3" json:"max_frame_size,omitempty"`
   524  }
   525  
   526  func (x *StartServerHandshakeReq) Reset() {
   527  	*x = StartServerHandshakeReq{}
   528  	if protoimpl.UnsafeEnabled {
   529  		mi := &file_grpc_gcp_handshaker_proto_msgTypes[4]
   530  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   531  		ms.StoreMessageInfo(mi)
   532  	}
   533  }
   534  
   535  func (x *StartServerHandshakeReq) String() string {
   536  	return protoimpl.X.MessageStringOf(x)
   537  }
   538  
   539  func (*StartServerHandshakeReq) ProtoMessage() {}
   540  
   541  func (x *StartServerHandshakeReq) ProtoReflect() protoreflect.Message {
   542  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[4]
   543  	if protoimpl.UnsafeEnabled && x != nil {
   544  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   545  		if ms.LoadMessageInfo() == nil {
   546  			ms.StoreMessageInfo(mi)
   547  		}
   548  		return ms
   549  	}
   550  	return mi.MessageOf(x)
   551  }
   552  
   553  // Deprecated: Use StartServerHandshakeReq.ProtoReflect.Descriptor instead.
   554  func (*StartServerHandshakeReq) Descriptor() ([]byte, []int) {
   555  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{4}
   556  }
   557  
   558  func (x *StartServerHandshakeReq) GetApplicationProtocols() []string {
   559  	if x != nil {
   560  		return x.ApplicationProtocols
   561  	}
   562  	return nil
   563  }
   564  
   565  func (x *StartServerHandshakeReq) GetHandshakeParameters() map[int32]*ServerHandshakeParameters {
   566  	if x != nil {
   567  		return x.HandshakeParameters
   568  	}
   569  	return nil
   570  }
   571  
   572  func (x *StartServerHandshakeReq) GetInBytes() []byte {
   573  	if x != nil {
   574  		return x.InBytes
   575  	}
   576  	return nil
   577  }
   578  
   579  func (x *StartServerHandshakeReq) GetLocalEndpoint() *Endpoint {
   580  	if x != nil {
   581  		return x.LocalEndpoint
   582  	}
   583  	return nil
   584  }
   585  
   586  func (x *StartServerHandshakeReq) GetRemoteEndpoint() *Endpoint {
   587  	if x != nil {
   588  		return x.RemoteEndpoint
   589  	}
   590  	return nil
   591  }
   592  
   593  func (x *StartServerHandshakeReq) GetRpcVersions() *RpcProtocolVersions {
   594  	if x != nil {
   595  		return x.RpcVersions
   596  	}
   597  	return nil
   598  }
   599  
   600  func (x *StartServerHandshakeReq) GetMaxFrameSize() uint32 {
   601  	if x != nil {
   602  		return x.MaxFrameSize
   603  	}
   604  	return 0
   605  }
   606  
   607  type NextHandshakeMessageReq struct {
   608  	state         protoimpl.MessageState
   609  	sizeCache     protoimpl.SizeCache
   610  	unknownFields protoimpl.UnknownFields
   611  
   612  	// Bytes in out_frames returned from the peer's HandshakerResp. It is possible
   613  	// that the peer's out_frames are split into multiple NextHandshakerMessageReq
   614  	// messages.
   615  	InBytes []byte `protobuf:"bytes,1,opt,name=in_bytes,json=inBytes,proto3" json:"in_bytes,omitempty"`
   616  	// Number of milliseconds between when the application send the last handshake
   617  	// message to the peer and when the application received the current handshake
   618  	// message (in the in_bytes field) from the peer.
   619  	NetworkLatencyMs uint32 `protobuf:"varint,2,opt,name=network_latency_ms,json=networkLatencyMs,proto3" json:"network_latency_ms,omitempty"`
   620  }
   621  
   622  func (x *NextHandshakeMessageReq) Reset() {
   623  	*x = NextHandshakeMessageReq{}
   624  	if protoimpl.UnsafeEnabled {
   625  		mi := &file_grpc_gcp_handshaker_proto_msgTypes[5]
   626  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   627  		ms.StoreMessageInfo(mi)
   628  	}
   629  }
   630  
   631  func (x *NextHandshakeMessageReq) String() string {
   632  	return protoimpl.X.MessageStringOf(x)
   633  }
   634  
   635  func (*NextHandshakeMessageReq) ProtoMessage() {}
   636  
   637  func (x *NextHandshakeMessageReq) ProtoReflect() protoreflect.Message {
   638  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[5]
   639  	if protoimpl.UnsafeEnabled && x != nil {
   640  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   641  		if ms.LoadMessageInfo() == nil {
   642  			ms.StoreMessageInfo(mi)
   643  		}
   644  		return ms
   645  	}
   646  	return mi.MessageOf(x)
   647  }
   648  
   649  // Deprecated: Use NextHandshakeMessageReq.ProtoReflect.Descriptor instead.
   650  func (*NextHandshakeMessageReq) Descriptor() ([]byte, []int) {
   651  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{5}
   652  }
   653  
   654  func (x *NextHandshakeMessageReq) GetInBytes() []byte {
   655  	if x != nil {
   656  		return x.InBytes
   657  	}
   658  	return nil
   659  }
   660  
   661  func (x *NextHandshakeMessageReq) GetNetworkLatencyMs() uint32 {
   662  	if x != nil {
   663  		return x.NetworkLatencyMs
   664  	}
   665  	return 0
   666  }
   667  
   668  type HandshakerReq struct {
   669  	state         protoimpl.MessageState
   670  	sizeCache     protoimpl.SizeCache
   671  	unknownFields protoimpl.UnknownFields
   672  
   673  	// Types that are assignable to ReqOneof:
   674  	//
   675  	//	*HandshakerReq_ClientStart
   676  	//	*HandshakerReq_ServerStart
   677  	//	*HandshakerReq_Next
   678  	ReqOneof isHandshakerReq_ReqOneof `protobuf_oneof:"req_oneof"`
   679  }
   680  
   681  func (x *HandshakerReq) Reset() {
   682  	*x = HandshakerReq{}
   683  	if protoimpl.UnsafeEnabled {
   684  		mi := &file_grpc_gcp_handshaker_proto_msgTypes[6]
   685  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   686  		ms.StoreMessageInfo(mi)
   687  	}
   688  }
   689  
   690  func (x *HandshakerReq) String() string {
   691  	return protoimpl.X.MessageStringOf(x)
   692  }
   693  
   694  func (*HandshakerReq) ProtoMessage() {}
   695  
   696  func (x *HandshakerReq) ProtoReflect() protoreflect.Message {
   697  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[6]
   698  	if protoimpl.UnsafeEnabled && x != nil {
   699  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   700  		if ms.LoadMessageInfo() == nil {
   701  			ms.StoreMessageInfo(mi)
   702  		}
   703  		return ms
   704  	}
   705  	return mi.MessageOf(x)
   706  }
   707  
   708  // Deprecated: Use HandshakerReq.ProtoReflect.Descriptor instead.
   709  func (*HandshakerReq) Descriptor() ([]byte, []int) {
   710  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{6}
   711  }
   712  
   713  func (m *HandshakerReq) GetReqOneof() isHandshakerReq_ReqOneof {
   714  	if m != nil {
   715  		return m.ReqOneof
   716  	}
   717  	return nil
   718  }
   719  
   720  func (x *HandshakerReq) GetClientStart() *StartClientHandshakeReq {
   721  	if x, ok := x.GetReqOneof().(*HandshakerReq_ClientStart); ok {
   722  		return x.ClientStart
   723  	}
   724  	return nil
   725  }
   726  
   727  func (x *HandshakerReq) GetServerStart() *StartServerHandshakeReq {
   728  	if x, ok := x.GetReqOneof().(*HandshakerReq_ServerStart); ok {
   729  		return x.ServerStart
   730  	}
   731  	return nil
   732  }
   733  
   734  func (x *HandshakerReq) GetNext() *NextHandshakeMessageReq {
   735  	if x, ok := x.GetReqOneof().(*HandshakerReq_Next); ok {
   736  		return x.Next
   737  	}
   738  	return nil
   739  }
   740  
   741  type isHandshakerReq_ReqOneof interface {
   742  	isHandshakerReq_ReqOneof()
   743  }
   744  
   745  type HandshakerReq_ClientStart struct {
   746  	// The start client handshake request message.
   747  	ClientStart *StartClientHandshakeReq `protobuf:"bytes,1,opt,name=client_start,json=clientStart,proto3,oneof"`
   748  }
   749  
   750  type HandshakerReq_ServerStart struct {
   751  	// The start server handshake request message.
   752  	ServerStart *StartServerHandshakeReq `protobuf:"bytes,2,opt,name=server_start,json=serverStart,proto3,oneof"`
   753  }
   754  
   755  type HandshakerReq_Next struct {
   756  	// The next handshake request message.
   757  	Next *NextHandshakeMessageReq `protobuf:"bytes,3,opt,name=next,proto3,oneof"`
   758  }
   759  
   760  func (*HandshakerReq_ClientStart) isHandshakerReq_ReqOneof() {}
   761  
   762  func (*HandshakerReq_ServerStart) isHandshakerReq_ReqOneof() {}
   763  
   764  func (*HandshakerReq_Next) isHandshakerReq_ReqOneof() {}
   765  
   766  type HandshakerResult struct {
   767  	state         protoimpl.MessageState
   768  	sizeCache     protoimpl.SizeCache
   769  	unknownFields protoimpl.UnknownFields
   770  
   771  	// The application protocol negotiated for this connection.
   772  	ApplicationProtocol string `protobuf:"bytes,1,opt,name=application_protocol,json=applicationProtocol,proto3" json:"application_protocol,omitempty"`
   773  	// The record protocol negotiated for this connection.
   774  	RecordProtocol string `protobuf:"bytes,2,opt,name=record_protocol,json=recordProtocol,proto3" json:"record_protocol,omitempty"`
   775  	// Cryptographic key data. The key data may be more than the key length
   776  	// required for the record protocol, thus the client of the handshaker
   777  	// service needs to truncate the key data into the right key length.
   778  	KeyData []byte `protobuf:"bytes,3,opt,name=key_data,json=keyData,proto3" json:"key_data,omitempty"`
   779  	// The authenticated identity of the peer.
   780  	PeerIdentity *Identity `protobuf:"bytes,4,opt,name=peer_identity,json=peerIdentity,proto3" json:"peer_identity,omitempty"`
   781  	// The local identity used in the handshake.
   782  	LocalIdentity *Identity `protobuf:"bytes,5,opt,name=local_identity,json=localIdentity,proto3" json:"local_identity,omitempty"`
   783  	// Indicate whether the handshaker service client should keep the channel
   784  	// between the handshaker service open, e.g., in order to handle
   785  	// post-handshake messages in the future.
   786  	KeepChannelOpen bool `protobuf:"varint,6,opt,name=keep_channel_open,json=keepChannelOpen,proto3" json:"keep_channel_open,omitempty"`
   787  	// The RPC protocol versions supported by the peer.
   788  	PeerRpcVersions *RpcProtocolVersions `protobuf:"bytes,7,opt,name=peer_rpc_versions,json=peerRpcVersions,proto3" json:"peer_rpc_versions,omitempty"`
   789  	// The maximum frame size of the peer.
   790  	MaxFrameSize uint32 `protobuf:"varint,8,opt,name=max_frame_size,json=maxFrameSize,proto3" json:"max_frame_size,omitempty"`
   791  }
   792  
   793  func (x *HandshakerResult) Reset() {
   794  	*x = HandshakerResult{}
   795  	if protoimpl.UnsafeEnabled {
   796  		mi := &file_grpc_gcp_handshaker_proto_msgTypes[7]
   797  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   798  		ms.StoreMessageInfo(mi)
   799  	}
   800  }
   801  
   802  func (x *HandshakerResult) String() string {
   803  	return protoimpl.X.MessageStringOf(x)
   804  }
   805  
   806  func (*HandshakerResult) ProtoMessage() {}
   807  
   808  func (x *HandshakerResult) ProtoReflect() protoreflect.Message {
   809  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[7]
   810  	if protoimpl.UnsafeEnabled && x != nil {
   811  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   812  		if ms.LoadMessageInfo() == nil {
   813  			ms.StoreMessageInfo(mi)
   814  		}
   815  		return ms
   816  	}
   817  	return mi.MessageOf(x)
   818  }
   819  
   820  // Deprecated: Use HandshakerResult.ProtoReflect.Descriptor instead.
   821  func (*HandshakerResult) Descriptor() ([]byte, []int) {
   822  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{7}
   823  }
   824  
   825  func (x *HandshakerResult) GetApplicationProtocol() string {
   826  	if x != nil {
   827  		return x.ApplicationProtocol
   828  	}
   829  	return ""
   830  }
   831  
   832  func (x *HandshakerResult) GetRecordProtocol() string {
   833  	if x != nil {
   834  		return x.RecordProtocol
   835  	}
   836  	return ""
   837  }
   838  
   839  func (x *HandshakerResult) GetKeyData() []byte {
   840  	if x != nil {
   841  		return x.KeyData
   842  	}
   843  	return nil
   844  }
   845  
   846  func (x *HandshakerResult) GetPeerIdentity() *Identity {
   847  	if x != nil {
   848  		return x.PeerIdentity
   849  	}
   850  	return nil
   851  }
   852  
   853  func (x *HandshakerResult) GetLocalIdentity() *Identity {
   854  	if x != nil {
   855  		return x.LocalIdentity
   856  	}
   857  	return nil
   858  }
   859  
   860  func (x *HandshakerResult) GetKeepChannelOpen() bool {
   861  	if x != nil {
   862  		return x.KeepChannelOpen
   863  	}
   864  	return false
   865  }
   866  
   867  func (x *HandshakerResult) GetPeerRpcVersions() *RpcProtocolVersions {
   868  	if x != nil {
   869  		return x.PeerRpcVersions
   870  	}
   871  	return nil
   872  }
   873  
   874  func (x *HandshakerResult) GetMaxFrameSize() uint32 {
   875  	if x != nil {
   876  		return x.MaxFrameSize
   877  	}
   878  	return 0
   879  }
   880  
   881  type HandshakerStatus struct {
   882  	state         protoimpl.MessageState
   883  	sizeCache     protoimpl.SizeCache
   884  	unknownFields protoimpl.UnknownFields
   885  
   886  	// The status code. This could be the gRPC status code.
   887  	Code uint32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
   888  	// The status details.
   889  	Details string `protobuf:"bytes,2,opt,name=details,proto3" json:"details,omitempty"`
   890  }
   891  
   892  func (x *HandshakerStatus) Reset() {
   893  	*x = HandshakerStatus{}
   894  	if protoimpl.UnsafeEnabled {
   895  		mi := &file_grpc_gcp_handshaker_proto_msgTypes[8]
   896  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   897  		ms.StoreMessageInfo(mi)
   898  	}
   899  }
   900  
   901  func (x *HandshakerStatus) String() string {
   902  	return protoimpl.X.MessageStringOf(x)
   903  }
   904  
   905  func (*HandshakerStatus) ProtoMessage() {}
   906  
   907  func (x *HandshakerStatus) ProtoReflect() protoreflect.Message {
   908  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[8]
   909  	if protoimpl.UnsafeEnabled && x != nil {
   910  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   911  		if ms.LoadMessageInfo() == nil {
   912  			ms.StoreMessageInfo(mi)
   913  		}
   914  		return ms
   915  	}
   916  	return mi.MessageOf(x)
   917  }
   918  
   919  // Deprecated: Use HandshakerStatus.ProtoReflect.Descriptor instead.
   920  func (*HandshakerStatus) Descriptor() ([]byte, []int) {
   921  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{8}
   922  }
   923  
   924  func (x *HandshakerStatus) GetCode() uint32 {
   925  	if x != nil {
   926  		return x.Code
   927  	}
   928  	return 0
   929  }
   930  
   931  func (x *HandshakerStatus) GetDetails() string {
   932  	if x != nil {
   933  		return x.Details
   934  	}
   935  	return ""
   936  }
   937  
   938  type HandshakerResp struct {
   939  	state         protoimpl.MessageState
   940  	sizeCache     protoimpl.SizeCache
   941  	unknownFields protoimpl.UnknownFields
   942  
   943  	// Frames to be given to the peer for the NextHandshakeMessageReq. May be
   944  	// empty if no out_frames have to be sent to the peer or if in_bytes in the
   945  	// HandshakerReq are incomplete. All the non-empty out frames must be sent to
   946  	// the peer even if the handshaker status is not OK as these frames may
   947  	// contain the alert frames.
   948  	OutFrames []byte `protobuf:"bytes,1,opt,name=out_frames,json=outFrames,proto3" json:"out_frames,omitempty"`
   949  	// Number of bytes in the in_bytes consumed by the handshaker. It is possible
   950  	// that part of in_bytes in HandshakerReq was unrelated to the handshake
   951  	// process.
   952  	BytesConsumed uint32 `protobuf:"varint,2,opt,name=bytes_consumed,json=bytesConsumed,proto3" json:"bytes_consumed,omitempty"`
   953  	// This is set iff the handshake was successful. out_frames may still be set
   954  	// to frames that needs to be forwarded to the peer.
   955  	Result *HandshakerResult `protobuf:"bytes,3,opt,name=result,proto3" json:"result,omitempty"`
   956  	// Status of the handshaker.
   957  	Status *HandshakerStatus `protobuf:"bytes,4,opt,name=status,proto3" json:"status,omitempty"`
   958  }
   959  
   960  func (x *HandshakerResp) Reset() {
   961  	*x = HandshakerResp{}
   962  	if protoimpl.UnsafeEnabled {
   963  		mi := &file_grpc_gcp_handshaker_proto_msgTypes[9]
   964  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   965  		ms.StoreMessageInfo(mi)
   966  	}
   967  }
   968  
   969  func (x *HandshakerResp) String() string {
   970  	return protoimpl.X.MessageStringOf(x)
   971  }
   972  
   973  func (*HandshakerResp) ProtoMessage() {}
   974  
   975  func (x *HandshakerResp) ProtoReflect() protoreflect.Message {
   976  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[9]
   977  	if protoimpl.UnsafeEnabled && x != nil {
   978  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   979  		if ms.LoadMessageInfo() == nil {
   980  			ms.StoreMessageInfo(mi)
   981  		}
   982  		return ms
   983  	}
   984  	return mi.MessageOf(x)
   985  }
   986  
   987  // Deprecated: Use HandshakerResp.ProtoReflect.Descriptor instead.
   988  func (*HandshakerResp) Descriptor() ([]byte, []int) {
   989  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{9}
   990  }
   991  
   992  func (x *HandshakerResp) GetOutFrames() []byte {
   993  	if x != nil {
   994  		return x.OutFrames
   995  	}
   996  	return nil
   997  }
   998  
   999  func (x *HandshakerResp) GetBytesConsumed() uint32 {
  1000  	if x != nil {
  1001  		return x.BytesConsumed
  1002  	}
  1003  	return 0
  1004  }
  1005  
  1006  func (x *HandshakerResp) GetResult() *HandshakerResult {
  1007  	if x != nil {
  1008  		return x.Result
  1009  	}
  1010  	return nil
  1011  }
  1012  
  1013  func (x *HandshakerResp) GetStatus() *HandshakerStatus {
  1014  	if x != nil {
  1015  		return x.Status
  1016  	}
  1017  	return nil
  1018  }
  1019  
  1020  var File_grpc_gcp_handshaker_proto protoreflect.FileDescriptor
  1021  
  1022  var file_grpc_gcp_handshaker_proto_rawDesc = []byte{
  1023  	0x0a, 0x19, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x67, 0x63, 0x70, 0x2f, 0x68, 0x61, 0x6e, 0x64, 0x73,
  1024  	0x68, 0x61, 0x6b, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x08, 0x67, 0x72, 0x70,
  1025  	0x63, 0x2e, 0x67, 0x63, 0x70, 0x1a, 0x28, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x67, 0x63, 0x70, 0x2f,
  1026  	0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69,
  1027  	0x74, 0x79, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
  1028  	0x74, 0x0a, 0x08, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x69,
  1029  	0x70, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
  1030  	0x09, 0x69, 0x70, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f,
  1031  	0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x35,
  1032  	0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e,
  1033  	0x32, 0x19, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e, 0x4e, 0x65, 0x74, 0x77,
  1034  	0x6f, 0x72, 0x6b, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x52, 0x08, 0x70, 0x72, 0x6f,
  1035  	0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x22, 0xe8, 0x01, 0x0a, 0x08, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69,
  1036  	0x74, 0x79, 0x12, 0x29, 0x0a, 0x0f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x61, 0x63,
  1037  	0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0e, 0x73,
  1038  	0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x1c, 0x0a,
  1039  	0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48,
  1040  	0x00, 0x52, 0x08, 0x68, 0x6f, 0x73, 0x74, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x42, 0x0a, 0x0a, 0x61,
  1041  	0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32,
  1042  	0x22, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74,
  1043  	0x69, 0x74, 0x79, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e,
  1044  	0x74, 0x72, 0x79, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x1a,
  1045  	0x3d, 0x0a, 0x0f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74,
  1046  	0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
  1047  	0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20,
  1048  	0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x42, 0x10,
  1049  	0x0a, 0x0e, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6f, 0x6e, 0x65, 0x6f, 0x66,
  1050  	0x22, 0xd3, 0x04, 0x0a, 0x17, 0x53, 0x74, 0x61, 0x72, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74,
  1051  	0x48, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x52, 0x65, 0x71, 0x12, 0x5b, 0x0a, 0x1b,
  1052  	0x68, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x5f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69,
  1053  	0x74, 0x79, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28,
  1054  	0x0e, 0x32, 0x1b, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e, 0x48, 0x61, 0x6e,
  1055  	0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x52, 0x19,
  1056  	0x68, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
  1057  	0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x33, 0x0a, 0x15, 0x61, 0x70, 0x70,
  1058  	0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
  1059  	0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x14, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63,
  1060  	0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x73, 0x12, 0x29,
  1061  	0x0a, 0x10, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
  1062  	0x6c, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64,
  1063  	0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x73, 0x12, 0x3f, 0x0a, 0x11, 0x74, 0x61, 0x72,
  1064  	0x67, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x04,
  1065  	0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e,
  1066  	0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x10, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74,
  1067  	0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0e, 0x6c, 0x6f,
  1068  	0x63, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01,
  1069  	0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e, 0x49, 0x64,
  1070  	0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x49, 0x64, 0x65,
  1071  	0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x39, 0x0a, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x65,
  1072  	0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e,
  1073  	0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e,
  1074  	0x74, 0x52, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74,
  1075  	0x12, 0x3b, 0x0a, 0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f,
  1076  	0x69, 0x6e, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x72, 0x70, 0x63,
  1077  	0x2e, 0x67, 0x63, 0x70, 0x2e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x0e, 0x72,
  1078  	0x65, 0x6d, 0x6f, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x1f, 0x0a,
  1079  	0x0b, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01,
  1080  	0x28, 0x09, 0x52, 0x0a, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x40,
  1081  	0x0a, 0x0c, 0x72, 0x70, 0x63, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x09,
  1082  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e,
  1083  	0x52, 0x70, 0x63, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x56, 0x65, 0x72, 0x73, 0x69,
  1084  	0x6f, 0x6e, 0x73, 0x52, 0x0b, 0x72, 0x70, 0x63, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73,
  1085  	0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x69,
  1086  	0x7a, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x46, 0x72, 0x61,
  1087  	0x6d, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x85, 0x01, 0x0a, 0x19, 0x53, 0x65, 0x72, 0x76, 0x65,
  1088  	0x72, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65,
  1089  	0x74, 0x65, 0x72, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x5f, 0x70,
  1090  	0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0f,
  1091  	0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x73, 0x12,
  1092  	0x3d, 0x0a, 0x10, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74,
  1093  	0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x72, 0x70, 0x63,
  1094  	0x2e, 0x67, 0x63, 0x70, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x0f, 0x6c,
  1095  	0x6f, 0x63, 0x61, 0x6c, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x22, 0xa5,
  1096  	0x04, 0x0a, 0x17, 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x48, 0x61,
  1097  	0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x52, 0x65, 0x71, 0x12, 0x33, 0x0a, 0x15, 0x61, 0x70,
  1098  	0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63,
  1099  	0x6f, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x14, 0x61, 0x70, 0x70, 0x6c, 0x69,
  1100  	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x73, 0x12,
  1101  	0x6d, 0x0a, 0x14, 0x68, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x5f, 0x70, 0x61, 0x72,
  1102  	0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a, 0x2e,
  1103  	0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x65,
  1104  	0x72, 0x76, 0x65, 0x72, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x52, 0x65, 0x71,
  1105  	0x2e, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65,
  1106  	0x74, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x13, 0x68, 0x61, 0x6e, 0x64, 0x73,
  1107  	0x68, 0x61, 0x6b, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x19,
  1108  	0x0a, 0x08, 0x69, 0x6e, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c,
  1109  	0x52, 0x07, 0x69, 0x6e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0e, 0x6c, 0x6f, 0x63,
  1110  	0x61, 0x6c, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28,
  1111  	0x0b, 0x32, 0x12, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e, 0x45, 0x6e, 0x64,
  1112  	0x70, 0x6f, 0x69, 0x6e, 0x74, 0x52, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x45, 0x6e, 0x64, 0x70,
  1113  	0x6f, 0x69, 0x6e, 0x74, 0x12, 0x3b, 0x0a, 0x0f, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x5f, 0x65,
  1114  	0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e,
  1115  	0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e,
  1116  	0x74, 0x52, 0x0e, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e,
  1117  	0x74, 0x12, 0x40, 0x0a, 0x0c, 0x72, 0x70, 0x63, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
  1118  	0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x67,
  1119  	0x63, 0x70, 0x2e, 0x52, 0x70, 0x63, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x56, 0x65,
  1120  	0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0b, 0x72, 0x70, 0x63, 0x56, 0x65, 0x72, 0x73, 0x69,
  1121  	0x6f, 0x6e, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x61, 0x78, 0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65,
  1122  	0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0c, 0x6d, 0x61, 0x78,
  1123  	0x46, 0x72, 0x61, 0x6d, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x1a, 0x6b, 0x0a, 0x18, 0x48, 0x61, 0x6e,
  1124  	0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73,
  1125  	0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
  1126  	0x28, 0x05, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x39, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
  1127  	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x63,
  1128  	0x70, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b,
  1129  	0x65, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x52, 0x05, 0x76, 0x61, 0x6c,
  1130  	0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x62, 0x0a, 0x17, 0x4e, 0x65, 0x78, 0x74, 0x48, 0x61,
  1131  	0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65,
  1132  	0x71, 0x12, 0x19, 0x0a, 0x08, 0x69, 0x6e, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x01, 0x20,
  1133  	0x01, 0x28, 0x0c, 0x52, 0x07, 0x69, 0x6e, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x2c, 0x0a, 0x12,
  1134  	0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x6c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x5f,
  1135  	0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6e, 0x65, 0x74, 0x77, 0x6f, 0x72,
  1136  	0x6b, 0x4c, 0x61, 0x74, 0x65, 0x6e, 0x63, 0x79, 0x4d, 0x73, 0x22, 0xe5, 0x01, 0x0a, 0x0d, 0x48,
  1137  	0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x71, 0x12, 0x46, 0x0a, 0x0c,
  1138  	0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x01, 0x20, 0x01,
  1139  	0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e, 0x53, 0x74,
  1140  	0x61, 0x72, 0x74, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61,
  1141  	0x6b, 0x65, 0x52, 0x65, 0x71, 0x48, 0x00, 0x52, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x53,
  1142  	0x74, 0x61, 0x72, 0x74, 0x12, 0x46, 0x0a, 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x73,
  1143  	0x74, 0x61, 0x72, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x72, 0x70,
  1144  	0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e, 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x65, 0x72, 0x76, 0x65,
  1145  	0x72, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x52, 0x65, 0x71, 0x48, 0x00, 0x52,
  1146  	0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x74, 0x61, 0x72, 0x74, 0x12, 0x37, 0x0a, 0x04,
  1147  	0x6e, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x67, 0x72, 0x70,
  1148  	0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e, 0x4e, 0x65, 0x78, 0x74, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x68,
  1149  	0x61, 0x6b, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x48, 0x00, 0x52,
  1150  	0x04, 0x6e, 0x65, 0x78, 0x74, 0x42, 0x0b, 0x0a, 0x09, 0x72, 0x65, 0x71, 0x5f, 0x6f, 0x6e, 0x65,
  1151  	0x6f, 0x66, 0x22, 0x9a, 0x03, 0x0a, 0x10, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65,
  1152  	0x72, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x31, 0x0a, 0x14, 0x61, 0x70, 0x70, 0x6c, 0x69,
  1153  	0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18,
  1154  	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69,
  1155  	0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x27, 0x0a, 0x0f, 0x72, 0x65,
  1156  	0x63, 0x6f, 0x72, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x02, 0x20,
  1157  	0x01, 0x28, 0x09, 0x52, 0x0e, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x50, 0x72, 0x6f, 0x74, 0x6f,
  1158  	0x63, 0x6f, 0x6c, 0x12, 0x19, 0x0a, 0x08, 0x6b, 0x65, 0x79, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18,
  1159  	0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x07, 0x6b, 0x65, 0x79, 0x44, 0x61, 0x74, 0x61, 0x12, 0x37,
  1160  	0x0a, 0x0d, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18,
  1161  	0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x63, 0x70,
  1162  	0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x0c, 0x70, 0x65, 0x65, 0x72, 0x49,
  1163  	0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x39, 0x0a, 0x0e, 0x6c, 0x6f, 0x63, 0x61, 0x6c,
  1164  	0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
  1165  	0x12, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e, 0x49, 0x64, 0x65, 0x6e, 0x74,
  1166  	0x69, 0x74, 0x79, 0x52, 0x0d, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69,
  1167  	0x74, 0x79, 0x12, 0x2a, 0x0a, 0x11, 0x6b, 0x65, 0x65, 0x70, 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x6e,
  1168  	0x65, 0x6c, 0x5f, 0x6f, 0x70, 0x65, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x6b,
  1169  	0x65, 0x65, 0x70, 0x43, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x4f, 0x70, 0x65, 0x6e, 0x12, 0x49,
  1170  	0x0a, 0x11, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x72, 0x70, 0x63, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69,
  1171  	0x6f, 0x6e, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x67, 0x72, 0x70, 0x63,
  1172  	0x2e, 0x67, 0x63, 0x70, 0x2e, 0x52, 0x70, 0x63, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c,
  1173  	0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0f, 0x70, 0x65, 0x65, 0x72, 0x52, 0x70,
  1174  	0x63, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x24, 0x0a, 0x0e, 0x6d, 0x61, 0x78,
  1175  	0x5f, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28,
  1176  	0x0d, 0x52, 0x0c, 0x6d, 0x61, 0x78, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22,
  1177  	0x40, 0x0a, 0x10, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x72, 0x53, 0x74, 0x61,
  1178  	0x74, 0x75, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
  1179  	0x0d, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69,
  1180  	0x6c, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c,
  1181  	0x73, 0x22, 0xbe, 0x01, 0x0a, 0x0e, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x72,
  1182  	0x52, 0x65, 0x73, 0x70, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x75, 0x74, 0x5f, 0x66, 0x72, 0x61, 0x6d,
  1183  	0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x09, 0x6f, 0x75, 0x74, 0x46, 0x72, 0x61,
  1184  	0x6d, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x62, 0x79, 0x74, 0x65, 0x73, 0x5f, 0x63, 0x6f, 0x6e,
  1185  	0x73, 0x75, 0x6d, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0d, 0x62, 0x79, 0x74,
  1186  	0x65, 0x73, 0x43, 0x6f, 0x6e, 0x73, 0x75, 0x6d, 0x65, 0x64, 0x12, 0x32, 0x0a, 0x06, 0x72, 0x65,
  1187  	0x73, 0x75, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x72, 0x70,
  1188  	0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x72,
  1189  	0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x32,
  1190  	0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
  1191  	0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x68,
  1192  	0x61, 0x6b, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
  1193  	0x75, 0x73, 0x2a, 0x4a, 0x0a, 0x11, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x50,
  1194  	0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x22, 0x0a, 0x1e, 0x48, 0x41, 0x4e, 0x44, 0x53,
  1195  	0x48, 0x41, 0x4b, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x43, 0x4f, 0x4c, 0x5f, 0x55, 0x4e,
  1196  	0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x54,
  1197  	0x4c, 0x53, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x41, 0x4c, 0x54, 0x53, 0x10, 0x02, 0x2a, 0x45,
  1198  	0x0a, 0x0f, 0x4e, 0x65, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f,
  1199  	0x6c, 0x12, 0x20, 0x0a, 0x1c, 0x4e, 0x45, 0x54, 0x57, 0x4f, 0x52, 0x4b, 0x5f, 0x50, 0x52, 0x4f,
  1200  	0x54, 0x4f, 0x43, 0x4f, 0x4c, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
  1201  	0x44, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x54, 0x43, 0x50, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03,
  1202  	0x55, 0x44, 0x50, 0x10, 0x02, 0x32, 0x5b, 0x0a, 0x11, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61,
  1203  	0x6b, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x46, 0x0a, 0x0b, 0x44, 0x6f,
  1204  	0x48, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x12, 0x17, 0x2e, 0x67, 0x72, 0x70, 0x63,
  1205  	0x2e, 0x67, 0x63, 0x70, 0x2e, 0x48, 0x61, 0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x72, 0x52,
  1206  	0x65, 0x71, 0x1a, 0x18, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x67, 0x63, 0x70, 0x2e, 0x48, 0x61,
  1207  	0x6e, 0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x28, 0x01,
  1208  	0x30, 0x01, 0x42, 0x6b, 0x0a, 0x15, 0x69, 0x6f, 0x2e, 0x67, 0x72, 0x70, 0x63, 0x2e, 0x61, 0x6c,
  1209  	0x74, 0x73, 0x2e, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x42, 0x0f, 0x48, 0x61, 0x6e,
  1210  	0x64, 0x73, 0x68, 0x61, 0x6b, 0x65, 0x72, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x3f,
  1211  	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72,
  1212  	0x67, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61,
  1213  	0x6c, 0x73, 0x2f, 0x61, 0x6c, 0x74, 0x73, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
  1214  	0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x5f, 0x67, 0x63, 0x70, 0x62,
  1215  	0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  1216  }
  1217  
  1218  var (
  1219  	file_grpc_gcp_handshaker_proto_rawDescOnce sync.Once
  1220  	file_grpc_gcp_handshaker_proto_rawDescData = file_grpc_gcp_handshaker_proto_rawDesc
  1221  )
  1222  
  1223  func file_grpc_gcp_handshaker_proto_rawDescGZIP() []byte {
  1224  	file_grpc_gcp_handshaker_proto_rawDescOnce.Do(func() {
  1225  		file_grpc_gcp_handshaker_proto_rawDescData = protoimpl.X.CompressGZIP(file_grpc_gcp_handshaker_proto_rawDescData)
  1226  	})
  1227  	return file_grpc_gcp_handshaker_proto_rawDescData
  1228  }
  1229  
  1230  var file_grpc_gcp_handshaker_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
  1231  var file_grpc_gcp_handshaker_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
  1232  var file_grpc_gcp_handshaker_proto_goTypes = []interface{}{
  1233  	(HandshakeProtocol)(0),            // 0: grpc.gcp.HandshakeProtocol
  1234  	(NetworkProtocol)(0),              // 1: grpc.gcp.NetworkProtocol
  1235  	(*Endpoint)(nil),                  // 2: grpc.gcp.Endpoint
  1236  	(*Identity)(nil),                  // 3: grpc.gcp.Identity
  1237  	(*StartClientHandshakeReq)(nil),   // 4: grpc.gcp.StartClientHandshakeReq
  1238  	(*ServerHandshakeParameters)(nil), // 5: grpc.gcp.ServerHandshakeParameters
  1239  	(*StartServerHandshakeReq)(nil),   // 6: grpc.gcp.StartServerHandshakeReq
  1240  	(*NextHandshakeMessageReq)(nil),   // 7: grpc.gcp.NextHandshakeMessageReq
  1241  	(*HandshakerReq)(nil),             // 8: grpc.gcp.HandshakerReq
  1242  	(*HandshakerResult)(nil),          // 9: grpc.gcp.HandshakerResult
  1243  	(*HandshakerStatus)(nil),          // 10: grpc.gcp.HandshakerStatus
  1244  	(*HandshakerResp)(nil),            // 11: grpc.gcp.HandshakerResp
  1245  	nil,                               // 12: grpc.gcp.Identity.AttributesEntry
  1246  	nil,                               // 13: grpc.gcp.StartServerHandshakeReq.HandshakeParametersEntry
  1247  	(*RpcProtocolVersions)(nil),       // 14: grpc.gcp.RpcProtocolVersions
  1248  }
  1249  var file_grpc_gcp_handshaker_proto_depIdxs = []int32{
  1250  	1,  // 0: grpc.gcp.Endpoint.protocol:type_name -> grpc.gcp.NetworkProtocol
  1251  	12, // 1: grpc.gcp.Identity.attributes:type_name -> grpc.gcp.Identity.AttributesEntry
  1252  	0,  // 2: grpc.gcp.StartClientHandshakeReq.handshake_security_protocol:type_name -> grpc.gcp.HandshakeProtocol
  1253  	3,  // 3: grpc.gcp.StartClientHandshakeReq.target_identities:type_name -> grpc.gcp.Identity
  1254  	3,  // 4: grpc.gcp.StartClientHandshakeReq.local_identity:type_name -> grpc.gcp.Identity
  1255  	2,  // 5: grpc.gcp.StartClientHandshakeReq.local_endpoint:type_name -> grpc.gcp.Endpoint
  1256  	2,  // 6: grpc.gcp.StartClientHandshakeReq.remote_endpoint:type_name -> grpc.gcp.Endpoint
  1257  	14, // 7: grpc.gcp.StartClientHandshakeReq.rpc_versions:type_name -> grpc.gcp.RpcProtocolVersions
  1258  	3,  // 8: grpc.gcp.ServerHandshakeParameters.local_identities:type_name -> grpc.gcp.Identity
  1259  	13, // 9: grpc.gcp.StartServerHandshakeReq.handshake_parameters:type_name -> grpc.gcp.StartServerHandshakeReq.HandshakeParametersEntry
  1260  	2,  // 10: grpc.gcp.StartServerHandshakeReq.local_endpoint:type_name -> grpc.gcp.Endpoint
  1261  	2,  // 11: grpc.gcp.StartServerHandshakeReq.remote_endpoint:type_name -> grpc.gcp.Endpoint
  1262  	14, // 12: grpc.gcp.StartServerHandshakeReq.rpc_versions:type_name -> grpc.gcp.RpcProtocolVersions
  1263  	4,  // 13: grpc.gcp.HandshakerReq.client_start:type_name -> grpc.gcp.StartClientHandshakeReq
  1264  	6,  // 14: grpc.gcp.HandshakerReq.server_start:type_name -> grpc.gcp.StartServerHandshakeReq
  1265  	7,  // 15: grpc.gcp.HandshakerReq.next:type_name -> grpc.gcp.NextHandshakeMessageReq
  1266  	3,  // 16: grpc.gcp.HandshakerResult.peer_identity:type_name -> grpc.gcp.Identity
  1267  	3,  // 17: grpc.gcp.HandshakerResult.local_identity:type_name -> grpc.gcp.Identity
  1268  	14, // 18: grpc.gcp.HandshakerResult.peer_rpc_versions:type_name -> grpc.gcp.RpcProtocolVersions
  1269  	9,  // 19: grpc.gcp.HandshakerResp.result:type_name -> grpc.gcp.HandshakerResult
  1270  	10, // 20: grpc.gcp.HandshakerResp.status:type_name -> grpc.gcp.HandshakerStatus
  1271  	5,  // 21: grpc.gcp.StartServerHandshakeReq.HandshakeParametersEntry.value:type_name -> grpc.gcp.ServerHandshakeParameters
  1272  	8,  // 22: grpc.gcp.HandshakerService.DoHandshake:input_type -> grpc.gcp.HandshakerReq
  1273  	11, // 23: grpc.gcp.HandshakerService.DoHandshake:output_type -> grpc.gcp.HandshakerResp
  1274  	23, // [23:24] is the sub-list for method output_type
  1275  	22, // [22:23] is the sub-list for method input_type
  1276  	22, // [22:22] is the sub-list for extension type_name
  1277  	22, // [22:22] is the sub-list for extension extendee
  1278  	0,  // [0:22] is the sub-list for field type_name
  1279  }
  1280  
  1281  func init() { file_grpc_gcp_handshaker_proto_init() }
  1282  func file_grpc_gcp_handshaker_proto_init() {
  1283  	if File_grpc_gcp_handshaker_proto != nil {
  1284  		return
  1285  	}
  1286  	file_grpc_gcp_transport_security_common_proto_init()
  1287  	if !protoimpl.UnsafeEnabled {
  1288  		file_grpc_gcp_handshaker_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  1289  			switch v := v.(*Endpoint); i {
  1290  			case 0:
  1291  				return &v.state
  1292  			case 1:
  1293  				return &v.sizeCache
  1294  			case 2:
  1295  				return &v.unknownFields
  1296  			default:
  1297  				return nil
  1298  			}
  1299  		}
  1300  		file_grpc_gcp_handshaker_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  1301  			switch v := v.(*Identity); i {
  1302  			case 0:
  1303  				return &v.state
  1304  			case 1:
  1305  				return &v.sizeCache
  1306  			case 2:
  1307  				return &v.unknownFields
  1308  			default:
  1309  				return nil
  1310  			}
  1311  		}
  1312  		file_grpc_gcp_handshaker_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  1313  			switch v := v.(*StartClientHandshakeReq); i {
  1314  			case 0:
  1315  				return &v.state
  1316  			case 1:
  1317  				return &v.sizeCache
  1318  			case 2:
  1319  				return &v.unknownFields
  1320  			default:
  1321  				return nil
  1322  			}
  1323  		}
  1324  		file_grpc_gcp_handshaker_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  1325  			switch v := v.(*ServerHandshakeParameters); i {
  1326  			case 0:
  1327  				return &v.state
  1328  			case 1:
  1329  				return &v.sizeCache
  1330  			case 2:
  1331  				return &v.unknownFields
  1332  			default:
  1333  				return nil
  1334  			}
  1335  		}
  1336  		file_grpc_gcp_handshaker_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  1337  			switch v := v.(*StartServerHandshakeReq); i {
  1338  			case 0:
  1339  				return &v.state
  1340  			case 1:
  1341  				return &v.sizeCache
  1342  			case 2:
  1343  				return &v.unknownFields
  1344  			default:
  1345  				return nil
  1346  			}
  1347  		}
  1348  		file_grpc_gcp_handshaker_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  1349  			switch v := v.(*NextHandshakeMessageReq); i {
  1350  			case 0:
  1351  				return &v.state
  1352  			case 1:
  1353  				return &v.sizeCache
  1354  			case 2:
  1355  				return &v.unknownFields
  1356  			default:
  1357  				return nil
  1358  			}
  1359  		}
  1360  		file_grpc_gcp_handshaker_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  1361  			switch v := v.(*HandshakerReq); i {
  1362  			case 0:
  1363  				return &v.state
  1364  			case 1:
  1365  				return &v.sizeCache
  1366  			case 2:
  1367  				return &v.unknownFields
  1368  			default:
  1369  				return nil
  1370  			}
  1371  		}
  1372  		file_grpc_gcp_handshaker_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  1373  			switch v := v.(*HandshakerResult); i {
  1374  			case 0:
  1375  				return &v.state
  1376  			case 1:
  1377  				return &v.sizeCache
  1378  			case 2:
  1379  				return &v.unknownFields
  1380  			default:
  1381  				return nil
  1382  			}
  1383  		}
  1384  		file_grpc_gcp_handshaker_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  1385  			switch v := v.(*HandshakerStatus); i {
  1386  			case 0:
  1387  				return &v.state
  1388  			case 1:
  1389  				return &v.sizeCache
  1390  			case 2:
  1391  				return &v.unknownFields
  1392  			default:
  1393  				return nil
  1394  			}
  1395  		}
  1396  		file_grpc_gcp_handshaker_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  1397  			switch v := v.(*HandshakerResp); i {
  1398  			case 0:
  1399  				return &v.state
  1400  			case 1:
  1401  				return &v.sizeCache
  1402  			case 2:
  1403  				return &v.unknownFields
  1404  			default:
  1405  				return nil
  1406  			}
  1407  		}
  1408  	}
  1409  	file_grpc_gcp_handshaker_proto_msgTypes[1].OneofWrappers = []interface{}{
  1410  		(*Identity_ServiceAccount)(nil),
  1411  		(*Identity_Hostname)(nil),
  1412  	}
  1413  	file_grpc_gcp_handshaker_proto_msgTypes[6].OneofWrappers = []interface{}{
  1414  		(*HandshakerReq_ClientStart)(nil),
  1415  		(*HandshakerReq_ServerStart)(nil),
  1416  		(*HandshakerReq_Next)(nil),
  1417  	}
  1418  	type x struct{}
  1419  	out := protoimpl.TypeBuilder{
  1420  		File: protoimpl.DescBuilder{
  1421  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1422  			RawDescriptor: file_grpc_gcp_handshaker_proto_rawDesc,
  1423  			NumEnums:      2,
  1424  			NumMessages:   12,
  1425  			NumExtensions: 0,
  1426  			NumServices:   1,
  1427  		},
  1428  		GoTypes:           file_grpc_gcp_handshaker_proto_goTypes,
  1429  		DependencyIndexes: file_grpc_gcp_handshaker_proto_depIdxs,
  1430  		EnumInfos:         file_grpc_gcp_handshaker_proto_enumTypes,
  1431  		MessageInfos:      file_grpc_gcp_handshaker_proto_msgTypes,
  1432  	}.Build()
  1433  	File_grpc_gcp_handshaker_proto = out.File
  1434  	file_grpc_gcp_handshaker_proto_rawDesc = nil
  1435  	file_grpc_gcp_handshaker_proto_goTypes = nil
  1436  	file_grpc_gcp_handshaker_proto_depIdxs = nil
  1437  }