google.golang.org/grpc@v1.74.2/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.36.6
    21  // 	protoc        v5.27.1
    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  	unsafe "unsafe"
    32  )
    33  
    34  const (
    35  	// Verify that this generated code is sufficiently up-to-date.
    36  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    37  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    38  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    39  )
    40  
    41  type HandshakeProtocol int32
    42  
    43  const (
    44  	// Default value.
    45  	HandshakeProtocol_HANDSHAKE_PROTOCOL_UNSPECIFIED HandshakeProtocol = 0
    46  	// TLS handshake protocol.
    47  	HandshakeProtocol_TLS HandshakeProtocol = 1
    48  	// Application Layer Transport Security handshake protocol.
    49  	HandshakeProtocol_ALTS HandshakeProtocol = 2
    50  )
    51  
    52  // Enum value maps for HandshakeProtocol.
    53  var (
    54  	HandshakeProtocol_name = map[int32]string{
    55  		0: "HANDSHAKE_PROTOCOL_UNSPECIFIED",
    56  		1: "TLS",
    57  		2: "ALTS",
    58  	}
    59  	HandshakeProtocol_value = map[string]int32{
    60  		"HANDSHAKE_PROTOCOL_UNSPECIFIED": 0,
    61  		"TLS":                            1,
    62  		"ALTS":                           2,
    63  	}
    64  )
    65  
    66  func (x HandshakeProtocol) Enum() *HandshakeProtocol {
    67  	p := new(HandshakeProtocol)
    68  	*p = x
    69  	return p
    70  }
    71  
    72  func (x HandshakeProtocol) String() string {
    73  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    74  }
    75  
    76  func (HandshakeProtocol) Descriptor() protoreflect.EnumDescriptor {
    77  	return file_grpc_gcp_handshaker_proto_enumTypes[0].Descriptor()
    78  }
    79  
    80  func (HandshakeProtocol) Type() protoreflect.EnumType {
    81  	return &file_grpc_gcp_handshaker_proto_enumTypes[0]
    82  }
    83  
    84  func (x HandshakeProtocol) Number() protoreflect.EnumNumber {
    85  	return protoreflect.EnumNumber(x)
    86  }
    87  
    88  // Deprecated: Use HandshakeProtocol.Descriptor instead.
    89  func (HandshakeProtocol) EnumDescriptor() ([]byte, []int) {
    90  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{0}
    91  }
    92  
    93  type NetworkProtocol int32
    94  
    95  const (
    96  	NetworkProtocol_NETWORK_PROTOCOL_UNSPECIFIED NetworkProtocol = 0
    97  	NetworkProtocol_TCP                          NetworkProtocol = 1
    98  	NetworkProtocol_UDP                          NetworkProtocol = 2
    99  )
   100  
   101  // Enum value maps for NetworkProtocol.
   102  var (
   103  	NetworkProtocol_name = map[int32]string{
   104  		0: "NETWORK_PROTOCOL_UNSPECIFIED",
   105  		1: "TCP",
   106  		2: "UDP",
   107  	}
   108  	NetworkProtocol_value = map[string]int32{
   109  		"NETWORK_PROTOCOL_UNSPECIFIED": 0,
   110  		"TCP":                          1,
   111  		"UDP":                          2,
   112  	}
   113  )
   114  
   115  func (x NetworkProtocol) Enum() *NetworkProtocol {
   116  	p := new(NetworkProtocol)
   117  	*p = x
   118  	return p
   119  }
   120  
   121  func (x NetworkProtocol) String() string {
   122  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   123  }
   124  
   125  func (NetworkProtocol) Descriptor() protoreflect.EnumDescriptor {
   126  	return file_grpc_gcp_handshaker_proto_enumTypes[1].Descriptor()
   127  }
   128  
   129  func (NetworkProtocol) Type() protoreflect.EnumType {
   130  	return &file_grpc_gcp_handshaker_proto_enumTypes[1]
   131  }
   132  
   133  func (x NetworkProtocol) Number() protoreflect.EnumNumber {
   134  	return protoreflect.EnumNumber(x)
   135  }
   136  
   137  // Deprecated: Use NetworkProtocol.Descriptor instead.
   138  func (NetworkProtocol) EnumDescriptor() ([]byte, []int) {
   139  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{1}
   140  }
   141  
   142  type Endpoint struct {
   143  	state protoimpl.MessageState `protogen:"open.v1"`
   144  	// IP address. It should contain an IPv4 or IPv6 string literal, e.g.
   145  	// "192.168.0.1" or "2001:db8::1".
   146  	IpAddress string `protobuf:"bytes,1,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"`
   147  	// Port number.
   148  	Port int32 `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
   149  	// Network protocol (e.g., TCP, UDP) associated with this endpoint.
   150  	Protocol      NetworkProtocol `protobuf:"varint,3,opt,name=protocol,proto3,enum=grpc.gcp.NetworkProtocol" json:"protocol,omitempty"`
   151  	unknownFields protoimpl.UnknownFields
   152  	sizeCache     protoimpl.SizeCache
   153  }
   154  
   155  func (x *Endpoint) Reset() {
   156  	*x = Endpoint{}
   157  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[0]
   158  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   159  	ms.StoreMessageInfo(mi)
   160  }
   161  
   162  func (x *Endpoint) String() string {
   163  	return protoimpl.X.MessageStringOf(x)
   164  }
   165  
   166  func (*Endpoint) ProtoMessage() {}
   167  
   168  func (x *Endpoint) ProtoReflect() protoreflect.Message {
   169  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[0]
   170  	if x != nil {
   171  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   172  		if ms.LoadMessageInfo() == nil {
   173  			ms.StoreMessageInfo(mi)
   174  		}
   175  		return ms
   176  	}
   177  	return mi.MessageOf(x)
   178  }
   179  
   180  // Deprecated: Use Endpoint.ProtoReflect.Descriptor instead.
   181  func (*Endpoint) Descriptor() ([]byte, []int) {
   182  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{0}
   183  }
   184  
   185  func (x *Endpoint) GetIpAddress() string {
   186  	if x != nil {
   187  		return x.IpAddress
   188  	}
   189  	return ""
   190  }
   191  
   192  func (x *Endpoint) GetPort() int32 {
   193  	if x != nil {
   194  		return x.Port
   195  	}
   196  	return 0
   197  }
   198  
   199  func (x *Endpoint) GetProtocol() NetworkProtocol {
   200  	if x != nil {
   201  		return x.Protocol
   202  	}
   203  	return NetworkProtocol_NETWORK_PROTOCOL_UNSPECIFIED
   204  }
   205  
   206  type Identity struct {
   207  	state protoimpl.MessageState `protogen:"open.v1"`
   208  	// Types that are valid to be assigned to IdentityOneof:
   209  	//
   210  	//	*Identity_ServiceAccount
   211  	//	*Identity_Hostname
   212  	IdentityOneof isIdentity_IdentityOneof `protobuf_oneof:"identity_oneof"`
   213  	// Additional attributes of the identity.
   214  	Attributes    map[string]string `protobuf:"bytes,3,rep,name=attributes,proto3" json:"attributes,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
   215  	unknownFields protoimpl.UnknownFields
   216  	sizeCache     protoimpl.SizeCache
   217  }
   218  
   219  func (x *Identity) Reset() {
   220  	*x = Identity{}
   221  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[1]
   222  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   223  	ms.StoreMessageInfo(mi)
   224  }
   225  
   226  func (x *Identity) String() string {
   227  	return protoimpl.X.MessageStringOf(x)
   228  }
   229  
   230  func (*Identity) ProtoMessage() {}
   231  
   232  func (x *Identity) ProtoReflect() protoreflect.Message {
   233  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[1]
   234  	if x != nil {
   235  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   236  		if ms.LoadMessageInfo() == nil {
   237  			ms.StoreMessageInfo(mi)
   238  		}
   239  		return ms
   240  	}
   241  	return mi.MessageOf(x)
   242  }
   243  
   244  // Deprecated: Use Identity.ProtoReflect.Descriptor instead.
   245  func (*Identity) Descriptor() ([]byte, []int) {
   246  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{1}
   247  }
   248  
   249  func (x *Identity) GetIdentityOneof() isIdentity_IdentityOneof {
   250  	if x != nil {
   251  		return x.IdentityOneof
   252  	}
   253  	return nil
   254  }
   255  
   256  func (x *Identity) GetServiceAccount() string {
   257  	if x != nil {
   258  		if x, ok := x.IdentityOneof.(*Identity_ServiceAccount); ok {
   259  			return x.ServiceAccount
   260  		}
   261  	}
   262  	return ""
   263  }
   264  
   265  func (x *Identity) GetHostname() string {
   266  	if x != nil {
   267  		if x, ok := x.IdentityOneof.(*Identity_Hostname); ok {
   268  			return x.Hostname
   269  		}
   270  	}
   271  	return ""
   272  }
   273  
   274  func (x *Identity) GetAttributes() map[string]string {
   275  	if x != nil {
   276  		return x.Attributes
   277  	}
   278  	return nil
   279  }
   280  
   281  type isIdentity_IdentityOneof interface {
   282  	isIdentity_IdentityOneof()
   283  }
   284  
   285  type Identity_ServiceAccount struct {
   286  	// Service account of a connection endpoint.
   287  	ServiceAccount string `protobuf:"bytes,1,opt,name=service_account,json=serviceAccount,proto3,oneof"`
   288  }
   289  
   290  type Identity_Hostname struct {
   291  	// Hostname of a connection endpoint.
   292  	Hostname string `protobuf:"bytes,2,opt,name=hostname,proto3,oneof"`
   293  }
   294  
   295  func (*Identity_ServiceAccount) isIdentity_IdentityOneof() {}
   296  
   297  func (*Identity_Hostname) isIdentity_IdentityOneof() {}
   298  
   299  type StartClientHandshakeReq struct {
   300  	state protoimpl.MessageState `protogen:"open.v1"`
   301  	// Handshake security protocol requested by the client.
   302  	HandshakeSecurityProtocol HandshakeProtocol `protobuf:"varint,1,opt,name=handshake_security_protocol,json=handshakeSecurityProtocol,proto3,enum=grpc.gcp.HandshakeProtocol" json:"handshake_security_protocol,omitempty"`
   303  	// The application protocols supported by the client, e.g., "h2" (for http2),
   304  	// "grpc".
   305  	ApplicationProtocols []string `protobuf:"bytes,2,rep,name=application_protocols,json=applicationProtocols,proto3" json:"application_protocols,omitempty"`
   306  	// The record protocols supported by the client, e.g.,
   307  	// "ALTSRP_GCM_AES128".
   308  	RecordProtocols []string `protobuf:"bytes,3,rep,name=record_protocols,json=recordProtocols,proto3" json:"record_protocols,omitempty"`
   309  	// (Optional) Describes which server identities are acceptable by the client.
   310  	// If target identities are provided and none of them matches the peer
   311  	// identity of the server, handshake will fail.
   312  	TargetIdentities []*Identity `protobuf:"bytes,4,rep,name=target_identities,json=targetIdentities,proto3" json:"target_identities,omitempty"`
   313  	// (Optional) Application may specify a local identity. Otherwise, the
   314  	// handshaker chooses a default local identity.
   315  	LocalIdentity *Identity `protobuf:"bytes,5,opt,name=local_identity,json=localIdentity,proto3" json:"local_identity,omitempty"`
   316  	// (Optional) Local endpoint information of the connection to the server,
   317  	// such as local IP address, port number, and network protocol.
   318  	LocalEndpoint *Endpoint `protobuf:"bytes,6,opt,name=local_endpoint,json=localEndpoint,proto3" json:"local_endpoint,omitempty"`
   319  	// (Optional) Endpoint information of the remote server, such as IP address,
   320  	// port number, and network protocol.
   321  	RemoteEndpoint *Endpoint `protobuf:"bytes,7,opt,name=remote_endpoint,json=remoteEndpoint,proto3" json:"remote_endpoint,omitempty"`
   322  	// (Optional) If target name is provided, a secure naming check is performed
   323  	// to verify that the peer authenticated identity is indeed authorized to run
   324  	// the target name.
   325  	TargetName string `protobuf:"bytes,8,opt,name=target_name,json=targetName,proto3" json:"target_name,omitempty"`
   326  	// (Optional) RPC protocol versions supported by the client.
   327  	RpcVersions *RpcProtocolVersions `protobuf:"bytes,9,opt,name=rpc_versions,json=rpcVersions,proto3" json:"rpc_versions,omitempty"`
   328  	// (Optional) Maximum frame size supported by the client.
   329  	MaxFrameSize uint32 `protobuf:"varint,10,opt,name=max_frame_size,json=maxFrameSize,proto3" json:"max_frame_size,omitempty"`
   330  	// (Optional) An access token created by the caller only intended for use in
   331  	// ALTS connections. The access token that should be used to authenticate to
   332  	// the peer. The access token MUST be strongly bound to the ALTS credentials
   333  	// used to establish the connection that the token is sent over.
   334  	AccessToken string `protobuf:"bytes,11,opt,name=access_token,json=accessToken,proto3" json:"access_token,omitempty"`
   335  	// (Optional) Ordered transport protocol preferences supported by the client.
   336  	TransportProtocolPreferences *TransportProtocolPreferences `protobuf:"bytes,12,opt,name=transport_protocol_preferences,json=transportProtocolPreferences,proto3" json:"transport_protocol_preferences,omitempty"`
   337  	unknownFields                protoimpl.UnknownFields
   338  	sizeCache                    protoimpl.SizeCache
   339  }
   340  
   341  func (x *StartClientHandshakeReq) Reset() {
   342  	*x = StartClientHandshakeReq{}
   343  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[2]
   344  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   345  	ms.StoreMessageInfo(mi)
   346  }
   347  
   348  func (x *StartClientHandshakeReq) String() string {
   349  	return protoimpl.X.MessageStringOf(x)
   350  }
   351  
   352  func (*StartClientHandshakeReq) ProtoMessage() {}
   353  
   354  func (x *StartClientHandshakeReq) ProtoReflect() protoreflect.Message {
   355  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[2]
   356  	if x != nil {
   357  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   358  		if ms.LoadMessageInfo() == nil {
   359  			ms.StoreMessageInfo(mi)
   360  		}
   361  		return ms
   362  	}
   363  	return mi.MessageOf(x)
   364  }
   365  
   366  // Deprecated: Use StartClientHandshakeReq.ProtoReflect.Descriptor instead.
   367  func (*StartClientHandshakeReq) Descriptor() ([]byte, []int) {
   368  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{2}
   369  }
   370  
   371  func (x *StartClientHandshakeReq) GetHandshakeSecurityProtocol() HandshakeProtocol {
   372  	if x != nil {
   373  		return x.HandshakeSecurityProtocol
   374  	}
   375  	return HandshakeProtocol_HANDSHAKE_PROTOCOL_UNSPECIFIED
   376  }
   377  
   378  func (x *StartClientHandshakeReq) GetApplicationProtocols() []string {
   379  	if x != nil {
   380  		return x.ApplicationProtocols
   381  	}
   382  	return nil
   383  }
   384  
   385  func (x *StartClientHandshakeReq) GetRecordProtocols() []string {
   386  	if x != nil {
   387  		return x.RecordProtocols
   388  	}
   389  	return nil
   390  }
   391  
   392  func (x *StartClientHandshakeReq) GetTargetIdentities() []*Identity {
   393  	if x != nil {
   394  		return x.TargetIdentities
   395  	}
   396  	return nil
   397  }
   398  
   399  func (x *StartClientHandshakeReq) GetLocalIdentity() *Identity {
   400  	if x != nil {
   401  		return x.LocalIdentity
   402  	}
   403  	return nil
   404  }
   405  
   406  func (x *StartClientHandshakeReq) GetLocalEndpoint() *Endpoint {
   407  	if x != nil {
   408  		return x.LocalEndpoint
   409  	}
   410  	return nil
   411  }
   412  
   413  func (x *StartClientHandshakeReq) GetRemoteEndpoint() *Endpoint {
   414  	if x != nil {
   415  		return x.RemoteEndpoint
   416  	}
   417  	return nil
   418  }
   419  
   420  func (x *StartClientHandshakeReq) GetTargetName() string {
   421  	if x != nil {
   422  		return x.TargetName
   423  	}
   424  	return ""
   425  }
   426  
   427  func (x *StartClientHandshakeReq) GetRpcVersions() *RpcProtocolVersions {
   428  	if x != nil {
   429  		return x.RpcVersions
   430  	}
   431  	return nil
   432  }
   433  
   434  func (x *StartClientHandshakeReq) GetMaxFrameSize() uint32 {
   435  	if x != nil {
   436  		return x.MaxFrameSize
   437  	}
   438  	return 0
   439  }
   440  
   441  func (x *StartClientHandshakeReq) GetAccessToken() string {
   442  	if x != nil {
   443  		return x.AccessToken
   444  	}
   445  	return ""
   446  }
   447  
   448  func (x *StartClientHandshakeReq) GetTransportProtocolPreferences() *TransportProtocolPreferences {
   449  	if x != nil {
   450  		return x.TransportProtocolPreferences
   451  	}
   452  	return nil
   453  }
   454  
   455  type ServerHandshakeParameters struct {
   456  	state protoimpl.MessageState `protogen:"open.v1"`
   457  	// The record protocols supported by the server, e.g.,
   458  	// "ALTSRP_GCM_AES128".
   459  	RecordProtocols []string `protobuf:"bytes,1,rep,name=record_protocols,json=recordProtocols,proto3" json:"record_protocols,omitempty"`
   460  	// (Optional) A list of local identities supported by the server, if
   461  	// specified. Otherwise, the handshaker chooses a default local identity.
   462  	LocalIdentities []*Identity `protobuf:"bytes,2,rep,name=local_identities,json=localIdentities,proto3" json:"local_identities,omitempty"`
   463  	// A token created by the caller only intended for use in
   464  	// ALTS connections. The token should be used to authenticate to
   465  	// the peer. The token MUST be strongly bound to the ALTS credentials
   466  	// used to establish the connection that the token is sent over.
   467  	Token         *string `protobuf:"bytes,3,opt,name=token,proto3,oneof" json:"token,omitempty"`
   468  	unknownFields protoimpl.UnknownFields
   469  	sizeCache     protoimpl.SizeCache
   470  }
   471  
   472  func (x *ServerHandshakeParameters) Reset() {
   473  	*x = ServerHandshakeParameters{}
   474  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[3]
   475  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   476  	ms.StoreMessageInfo(mi)
   477  }
   478  
   479  func (x *ServerHandshakeParameters) String() string {
   480  	return protoimpl.X.MessageStringOf(x)
   481  }
   482  
   483  func (*ServerHandshakeParameters) ProtoMessage() {}
   484  
   485  func (x *ServerHandshakeParameters) ProtoReflect() protoreflect.Message {
   486  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[3]
   487  	if x != nil {
   488  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   489  		if ms.LoadMessageInfo() == nil {
   490  			ms.StoreMessageInfo(mi)
   491  		}
   492  		return ms
   493  	}
   494  	return mi.MessageOf(x)
   495  }
   496  
   497  // Deprecated: Use ServerHandshakeParameters.ProtoReflect.Descriptor instead.
   498  func (*ServerHandshakeParameters) Descriptor() ([]byte, []int) {
   499  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{3}
   500  }
   501  
   502  func (x *ServerHandshakeParameters) GetRecordProtocols() []string {
   503  	if x != nil {
   504  		return x.RecordProtocols
   505  	}
   506  	return nil
   507  }
   508  
   509  func (x *ServerHandshakeParameters) GetLocalIdentities() []*Identity {
   510  	if x != nil {
   511  		return x.LocalIdentities
   512  	}
   513  	return nil
   514  }
   515  
   516  func (x *ServerHandshakeParameters) GetToken() string {
   517  	if x != nil && x.Token != nil {
   518  		return *x.Token
   519  	}
   520  	return ""
   521  }
   522  
   523  type StartServerHandshakeReq struct {
   524  	state protoimpl.MessageState `protogen:"open.v1"`
   525  	// The application protocols supported by the server, e.g., "h2" (for http2),
   526  	// "grpc".
   527  	ApplicationProtocols []string `protobuf:"bytes,1,rep,name=application_protocols,json=applicationProtocols,proto3" json:"application_protocols,omitempty"`
   528  	// Handshake parameters (record protocols and local identities supported by
   529  	// the server) mapped by the handshake protocol. Each handshake security
   530  	// protocol (e.g., TLS or ALTS) has its own set of record protocols and local
   531  	// identities. Since protobuf does not support enum as key to the map, the key
   532  	// to handshake_parameters is the integer value of HandshakeProtocol enum.
   533  	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" protobuf_val:"bytes,2,opt,name=value"`
   534  	// Bytes in out_frames returned from the peer's HandshakerResp. It is possible
   535  	// that the peer's out_frames are split into multiple HandshakeReq messages.
   536  	InBytes []byte `protobuf:"bytes,3,opt,name=in_bytes,json=inBytes,proto3" json:"in_bytes,omitempty"`
   537  	// (Optional) Local endpoint information of the connection to the client,
   538  	// such as local IP address, port number, and network protocol.
   539  	LocalEndpoint *Endpoint `protobuf:"bytes,4,opt,name=local_endpoint,json=localEndpoint,proto3" json:"local_endpoint,omitempty"`
   540  	// (Optional) Endpoint information of the remote client, such as IP address,
   541  	// port number, and network protocol.
   542  	RemoteEndpoint *Endpoint `protobuf:"bytes,5,opt,name=remote_endpoint,json=remoteEndpoint,proto3" json:"remote_endpoint,omitempty"`
   543  	// (Optional) RPC protocol versions supported by the server.
   544  	RpcVersions *RpcProtocolVersions `protobuf:"bytes,6,opt,name=rpc_versions,json=rpcVersions,proto3" json:"rpc_versions,omitempty"`
   545  	// (Optional) Maximum frame size supported by the server.
   546  	MaxFrameSize uint32 `protobuf:"varint,7,opt,name=max_frame_size,json=maxFrameSize,proto3" json:"max_frame_size,omitempty"`
   547  	// (Optional) Transport protocol preferences supported by the server.
   548  	TransportProtocolPreferences *TransportProtocolPreferences `protobuf:"bytes,8,opt,name=transport_protocol_preferences,json=transportProtocolPreferences,proto3" json:"transport_protocol_preferences,omitempty"`
   549  	unknownFields                protoimpl.UnknownFields
   550  	sizeCache                    protoimpl.SizeCache
   551  }
   552  
   553  func (x *StartServerHandshakeReq) Reset() {
   554  	*x = StartServerHandshakeReq{}
   555  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[4]
   556  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   557  	ms.StoreMessageInfo(mi)
   558  }
   559  
   560  func (x *StartServerHandshakeReq) String() string {
   561  	return protoimpl.X.MessageStringOf(x)
   562  }
   563  
   564  func (*StartServerHandshakeReq) ProtoMessage() {}
   565  
   566  func (x *StartServerHandshakeReq) ProtoReflect() protoreflect.Message {
   567  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[4]
   568  	if x != nil {
   569  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   570  		if ms.LoadMessageInfo() == nil {
   571  			ms.StoreMessageInfo(mi)
   572  		}
   573  		return ms
   574  	}
   575  	return mi.MessageOf(x)
   576  }
   577  
   578  // Deprecated: Use StartServerHandshakeReq.ProtoReflect.Descriptor instead.
   579  func (*StartServerHandshakeReq) Descriptor() ([]byte, []int) {
   580  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{4}
   581  }
   582  
   583  func (x *StartServerHandshakeReq) GetApplicationProtocols() []string {
   584  	if x != nil {
   585  		return x.ApplicationProtocols
   586  	}
   587  	return nil
   588  }
   589  
   590  func (x *StartServerHandshakeReq) GetHandshakeParameters() map[int32]*ServerHandshakeParameters {
   591  	if x != nil {
   592  		return x.HandshakeParameters
   593  	}
   594  	return nil
   595  }
   596  
   597  func (x *StartServerHandshakeReq) GetInBytes() []byte {
   598  	if x != nil {
   599  		return x.InBytes
   600  	}
   601  	return nil
   602  }
   603  
   604  func (x *StartServerHandshakeReq) GetLocalEndpoint() *Endpoint {
   605  	if x != nil {
   606  		return x.LocalEndpoint
   607  	}
   608  	return nil
   609  }
   610  
   611  func (x *StartServerHandshakeReq) GetRemoteEndpoint() *Endpoint {
   612  	if x != nil {
   613  		return x.RemoteEndpoint
   614  	}
   615  	return nil
   616  }
   617  
   618  func (x *StartServerHandshakeReq) GetRpcVersions() *RpcProtocolVersions {
   619  	if x != nil {
   620  		return x.RpcVersions
   621  	}
   622  	return nil
   623  }
   624  
   625  func (x *StartServerHandshakeReq) GetMaxFrameSize() uint32 {
   626  	if x != nil {
   627  		return x.MaxFrameSize
   628  	}
   629  	return 0
   630  }
   631  
   632  func (x *StartServerHandshakeReq) GetTransportProtocolPreferences() *TransportProtocolPreferences {
   633  	if x != nil {
   634  		return x.TransportProtocolPreferences
   635  	}
   636  	return nil
   637  }
   638  
   639  type NextHandshakeMessageReq struct {
   640  	state protoimpl.MessageState `protogen:"open.v1"`
   641  	// Bytes in out_frames returned from the peer's HandshakerResp. It is possible
   642  	// that the peer's out_frames are split into multiple NextHandshakerMessageReq
   643  	// messages.
   644  	InBytes []byte `protobuf:"bytes,1,opt,name=in_bytes,json=inBytes,proto3" json:"in_bytes,omitempty"`
   645  	// Number of milliseconds between when the application send the last handshake
   646  	// message to the peer and when the application received the current handshake
   647  	// message (in the in_bytes field) from the peer.
   648  	NetworkLatencyMs uint32 `protobuf:"varint,2,opt,name=network_latency_ms,json=networkLatencyMs,proto3" json:"network_latency_ms,omitempty"`
   649  	unknownFields    protoimpl.UnknownFields
   650  	sizeCache        protoimpl.SizeCache
   651  }
   652  
   653  func (x *NextHandshakeMessageReq) Reset() {
   654  	*x = NextHandshakeMessageReq{}
   655  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[5]
   656  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   657  	ms.StoreMessageInfo(mi)
   658  }
   659  
   660  func (x *NextHandshakeMessageReq) String() string {
   661  	return protoimpl.X.MessageStringOf(x)
   662  }
   663  
   664  func (*NextHandshakeMessageReq) ProtoMessage() {}
   665  
   666  func (x *NextHandshakeMessageReq) ProtoReflect() protoreflect.Message {
   667  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[5]
   668  	if x != nil {
   669  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   670  		if ms.LoadMessageInfo() == nil {
   671  			ms.StoreMessageInfo(mi)
   672  		}
   673  		return ms
   674  	}
   675  	return mi.MessageOf(x)
   676  }
   677  
   678  // Deprecated: Use NextHandshakeMessageReq.ProtoReflect.Descriptor instead.
   679  func (*NextHandshakeMessageReq) Descriptor() ([]byte, []int) {
   680  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{5}
   681  }
   682  
   683  func (x *NextHandshakeMessageReq) GetInBytes() []byte {
   684  	if x != nil {
   685  		return x.InBytes
   686  	}
   687  	return nil
   688  }
   689  
   690  func (x *NextHandshakeMessageReq) GetNetworkLatencyMs() uint32 {
   691  	if x != nil {
   692  		return x.NetworkLatencyMs
   693  	}
   694  	return 0
   695  }
   696  
   697  type HandshakerReq struct {
   698  	state protoimpl.MessageState `protogen:"open.v1"`
   699  	// Types that are valid to be assigned to ReqOneof:
   700  	//
   701  	//	*HandshakerReq_ClientStart
   702  	//	*HandshakerReq_ServerStart
   703  	//	*HandshakerReq_Next
   704  	ReqOneof      isHandshakerReq_ReqOneof `protobuf_oneof:"req_oneof"`
   705  	unknownFields protoimpl.UnknownFields
   706  	sizeCache     protoimpl.SizeCache
   707  }
   708  
   709  func (x *HandshakerReq) Reset() {
   710  	*x = HandshakerReq{}
   711  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[6]
   712  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   713  	ms.StoreMessageInfo(mi)
   714  }
   715  
   716  func (x *HandshakerReq) String() string {
   717  	return protoimpl.X.MessageStringOf(x)
   718  }
   719  
   720  func (*HandshakerReq) ProtoMessage() {}
   721  
   722  func (x *HandshakerReq) ProtoReflect() protoreflect.Message {
   723  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[6]
   724  	if x != nil {
   725  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   726  		if ms.LoadMessageInfo() == nil {
   727  			ms.StoreMessageInfo(mi)
   728  		}
   729  		return ms
   730  	}
   731  	return mi.MessageOf(x)
   732  }
   733  
   734  // Deprecated: Use HandshakerReq.ProtoReflect.Descriptor instead.
   735  func (*HandshakerReq) Descriptor() ([]byte, []int) {
   736  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{6}
   737  }
   738  
   739  func (x *HandshakerReq) GetReqOneof() isHandshakerReq_ReqOneof {
   740  	if x != nil {
   741  		return x.ReqOneof
   742  	}
   743  	return nil
   744  }
   745  
   746  func (x *HandshakerReq) GetClientStart() *StartClientHandshakeReq {
   747  	if x != nil {
   748  		if x, ok := x.ReqOneof.(*HandshakerReq_ClientStart); ok {
   749  			return x.ClientStart
   750  		}
   751  	}
   752  	return nil
   753  }
   754  
   755  func (x *HandshakerReq) GetServerStart() *StartServerHandshakeReq {
   756  	if x != nil {
   757  		if x, ok := x.ReqOneof.(*HandshakerReq_ServerStart); ok {
   758  			return x.ServerStart
   759  		}
   760  	}
   761  	return nil
   762  }
   763  
   764  func (x *HandshakerReq) GetNext() *NextHandshakeMessageReq {
   765  	if x != nil {
   766  		if x, ok := x.ReqOneof.(*HandshakerReq_Next); ok {
   767  			return x.Next
   768  		}
   769  	}
   770  	return nil
   771  }
   772  
   773  type isHandshakerReq_ReqOneof interface {
   774  	isHandshakerReq_ReqOneof()
   775  }
   776  
   777  type HandshakerReq_ClientStart struct {
   778  	// The start client handshake request message.
   779  	ClientStart *StartClientHandshakeReq `protobuf:"bytes,1,opt,name=client_start,json=clientStart,proto3,oneof"`
   780  }
   781  
   782  type HandshakerReq_ServerStart struct {
   783  	// The start server handshake request message.
   784  	ServerStart *StartServerHandshakeReq `protobuf:"bytes,2,opt,name=server_start,json=serverStart,proto3,oneof"`
   785  }
   786  
   787  type HandshakerReq_Next struct {
   788  	// The next handshake request message.
   789  	Next *NextHandshakeMessageReq `protobuf:"bytes,3,opt,name=next,proto3,oneof"`
   790  }
   791  
   792  func (*HandshakerReq_ClientStart) isHandshakerReq_ReqOneof() {}
   793  
   794  func (*HandshakerReq_ServerStart) isHandshakerReq_ReqOneof() {}
   795  
   796  func (*HandshakerReq_Next) isHandshakerReq_ReqOneof() {}
   797  
   798  type HandshakerResult struct {
   799  	state protoimpl.MessageState `protogen:"open.v1"`
   800  	// The application protocol negotiated for this connection.
   801  	ApplicationProtocol string `protobuf:"bytes,1,opt,name=application_protocol,json=applicationProtocol,proto3" json:"application_protocol,omitempty"`
   802  	// The record protocol negotiated for this connection.
   803  	RecordProtocol string `protobuf:"bytes,2,opt,name=record_protocol,json=recordProtocol,proto3" json:"record_protocol,omitempty"`
   804  	// Cryptographic key data. The key data may be more than the key length
   805  	// required for the record protocol, thus the client of the handshaker
   806  	// service needs to truncate the key data into the right key length.
   807  	KeyData []byte `protobuf:"bytes,3,opt,name=key_data,json=keyData,proto3" json:"key_data,omitempty"`
   808  	// The authenticated identity of the peer.
   809  	PeerIdentity *Identity `protobuf:"bytes,4,opt,name=peer_identity,json=peerIdentity,proto3" json:"peer_identity,omitempty"`
   810  	// The local identity used in the handshake.
   811  	LocalIdentity *Identity `protobuf:"bytes,5,opt,name=local_identity,json=localIdentity,proto3" json:"local_identity,omitempty"`
   812  	// Indicate whether the handshaker service client should keep the channel
   813  	// between the handshaker service open, e.g., in order to handle
   814  	// post-handshake messages in the future.
   815  	KeepChannelOpen bool `protobuf:"varint,6,opt,name=keep_channel_open,json=keepChannelOpen,proto3" json:"keep_channel_open,omitempty"`
   816  	// The RPC protocol versions supported by the peer.
   817  	PeerRpcVersions *RpcProtocolVersions `protobuf:"bytes,7,opt,name=peer_rpc_versions,json=peerRpcVersions,proto3" json:"peer_rpc_versions,omitempty"`
   818  	// The maximum frame size of the peer.
   819  	MaxFrameSize uint32 `protobuf:"varint,8,opt,name=max_frame_size,json=maxFrameSize,proto3" json:"max_frame_size,omitempty"`
   820  	// (Optional) The transport protocol negotiated for this connection.
   821  	TransportProtocol *NegotiatedTransportProtocol `protobuf:"bytes,9,opt,name=transport_protocol,json=transportProtocol,proto3" json:"transport_protocol,omitempty"`
   822  	unknownFields     protoimpl.UnknownFields
   823  	sizeCache         protoimpl.SizeCache
   824  }
   825  
   826  func (x *HandshakerResult) Reset() {
   827  	*x = HandshakerResult{}
   828  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[7]
   829  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   830  	ms.StoreMessageInfo(mi)
   831  }
   832  
   833  func (x *HandshakerResult) String() string {
   834  	return protoimpl.X.MessageStringOf(x)
   835  }
   836  
   837  func (*HandshakerResult) ProtoMessage() {}
   838  
   839  func (x *HandshakerResult) ProtoReflect() protoreflect.Message {
   840  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[7]
   841  	if x != nil {
   842  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   843  		if ms.LoadMessageInfo() == nil {
   844  			ms.StoreMessageInfo(mi)
   845  		}
   846  		return ms
   847  	}
   848  	return mi.MessageOf(x)
   849  }
   850  
   851  // Deprecated: Use HandshakerResult.ProtoReflect.Descriptor instead.
   852  func (*HandshakerResult) Descriptor() ([]byte, []int) {
   853  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{7}
   854  }
   855  
   856  func (x *HandshakerResult) GetApplicationProtocol() string {
   857  	if x != nil {
   858  		return x.ApplicationProtocol
   859  	}
   860  	return ""
   861  }
   862  
   863  func (x *HandshakerResult) GetRecordProtocol() string {
   864  	if x != nil {
   865  		return x.RecordProtocol
   866  	}
   867  	return ""
   868  }
   869  
   870  func (x *HandshakerResult) GetKeyData() []byte {
   871  	if x != nil {
   872  		return x.KeyData
   873  	}
   874  	return nil
   875  }
   876  
   877  func (x *HandshakerResult) GetPeerIdentity() *Identity {
   878  	if x != nil {
   879  		return x.PeerIdentity
   880  	}
   881  	return nil
   882  }
   883  
   884  func (x *HandshakerResult) GetLocalIdentity() *Identity {
   885  	if x != nil {
   886  		return x.LocalIdentity
   887  	}
   888  	return nil
   889  }
   890  
   891  func (x *HandshakerResult) GetKeepChannelOpen() bool {
   892  	if x != nil {
   893  		return x.KeepChannelOpen
   894  	}
   895  	return false
   896  }
   897  
   898  func (x *HandshakerResult) GetPeerRpcVersions() *RpcProtocolVersions {
   899  	if x != nil {
   900  		return x.PeerRpcVersions
   901  	}
   902  	return nil
   903  }
   904  
   905  func (x *HandshakerResult) GetMaxFrameSize() uint32 {
   906  	if x != nil {
   907  		return x.MaxFrameSize
   908  	}
   909  	return 0
   910  }
   911  
   912  func (x *HandshakerResult) GetTransportProtocol() *NegotiatedTransportProtocol {
   913  	if x != nil {
   914  		return x.TransportProtocol
   915  	}
   916  	return nil
   917  }
   918  
   919  type HandshakerStatus struct {
   920  	state protoimpl.MessageState `protogen:"open.v1"`
   921  	// The status code. This could be the gRPC status code.
   922  	Code uint32 `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
   923  	// The status details.
   924  	Details       string `protobuf:"bytes,2,opt,name=details,proto3" json:"details,omitempty"`
   925  	unknownFields protoimpl.UnknownFields
   926  	sizeCache     protoimpl.SizeCache
   927  }
   928  
   929  func (x *HandshakerStatus) Reset() {
   930  	*x = HandshakerStatus{}
   931  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[8]
   932  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   933  	ms.StoreMessageInfo(mi)
   934  }
   935  
   936  func (x *HandshakerStatus) String() string {
   937  	return protoimpl.X.MessageStringOf(x)
   938  }
   939  
   940  func (*HandshakerStatus) ProtoMessage() {}
   941  
   942  func (x *HandshakerStatus) ProtoReflect() protoreflect.Message {
   943  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[8]
   944  	if x != nil {
   945  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   946  		if ms.LoadMessageInfo() == nil {
   947  			ms.StoreMessageInfo(mi)
   948  		}
   949  		return ms
   950  	}
   951  	return mi.MessageOf(x)
   952  }
   953  
   954  // Deprecated: Use HandshakerStatus.ProtoReflect.Descriptor instead.
   955  func (*HandshakerStatus) Descriptor() ([]byte, []int) {
   956  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{8}
   957  }
   958  
   959  func (x *HandshakerStatus) GetCode() uint32 {
   960  	if x != nil {
   961  		return x.Code
   962  	}
   963  	return 0
   964  }
   965  
   966  func (x *HandshakerStatus) GetDetails() string {
   967  	if x != nil {
   968  		return x.Details
   969  	}
   970  	return ""
   971  }
   972  
   973  type HandshakerResp struct {
   974  	state protoimpl.MessageState `protogen:"open.v1"`
   975  	// Frames to be given to the peer for the NextHandshakeMessageReq. May be
   976  	// empty if no out_frames have to be sent to the peer or if in_bytes in the
   977  	// HandshakerReq are incomplete. All the non-empty out frames must be sent to
   978  	// the peer even if the handshaker status is not OK as these frames may
   979  	// contain the alert frames.
   980  	OutFrames []byte `protobuf:"bytes,1,opt,name=out_frames,json=outFrames,proto3" json:"out_frames,omitempty"`
   981  	// Number of bytes in the in_bytes consumed by the handshaker. It is possible
   982  	// that part of in_bytes in HandshakerReq was unrelated to the handshake
   983  	// process.
   984  	BytesConsumed uint32 `protobuf:"varint,2,opt,name=bytes_consumed,json=bytesConsumed,proto3" json:"bytes_consumed,omitempty"`
   985  	// This is set iff the handshake was successful. out_frames may still be set
   986  	// to frames that needs to be forwarded to the peer.
   987  	Result *HandshakerResult `protobuf:"bytes,3,opt,name=result,proto3" json:"result,omitempty"`
   988  	// Status of the handshaker.
   989  	Status        *HandshakerStatus `protobuf:"bytes,4,opt,name=status,proto3" json:"status,omitempty"`
   990  	unknownFields protoimpl.UnknownFields
   991  	sizeCache     protoimpl.SizeCache
   992  }
   993  
   994  func (x *HandshakerResp) Reset() {
   995  	*x = HandshakerResp{}
   996  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[9]
   997  	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   998  	ms.StoreMessageInfo(mi)
   999  }
  1000  
  1001  func (x *HandshakerResp) String() string {
  1002  	return protoimpl.X.MessageStringOf(x)
  1003  }
  1004  
  1005  func (*HandshakerResp) ProtoMessage() {}
  1006  
  1007  func (x *HandshakerResp) ProtoReflect() protoreflect.Message {
  1008  	mi := &file_grpc_gcp_handshaker_proto_msgTypes[9]
  1009  	if x != nil {
  1010  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
  1011  		if ms.LoadMessageInfo() == nil {
  1012  			ms.StoreMessageInfo(mi)
  1013  		}
  1014  		return ms
  1015  	}
  1016  	return mi.MessageOf(x)
  1017  }
  1018  
  1019  // Deprecated: Use HandshakerResp.ProtoReflect.Descriptor instead.
  1020  func (*HandshakerResp) Descriptor() ([]byte, []int) {
  1021  	return file_grpc_gcp_handshaker_proto_rawDescGZIP(), []int{9}
  1022  }
  1023  
  1024  func (x *HandshakerResp) GetOutFrames() []byte {
  1025  	if x != nil {
  1026  		return x.OutFrames
  1027  	}
  1028  	return nil
  1029  }
  1030  
  1031  func (x *HandshakerResp) GetBytesConsumed() uint32 {
  1032  	if x != nil {
  1033  		return x.BytesConsumed
  1034  	}
  1035  	return 0
  1036  }
  1037  
  1038  func (x *HandshakerResp) GetResult() *HandshakerResult {
  1039  	if x != nil {
  1040  		return x.Result
  1041  	}
  1042  	return nil
  1043  }
  1044  
  1045  func (x *HandshakerResp) GetStatus() *HandshakerStatus {
  1046  	if x != nil {
  1047  		return x.Status
  1048  	}
  1049  	return nil
  1050  }
  1051  
  1052  var File_grpc_gcp_handshaker_proto protoreflect.FileDescriptor
  1053  
  1054  const file_grpc_gcp_handshaker_proto_rawDesc = "" +
  1055  	"\n" +
  1056  	"\x19grpc/gcp/handshaker.proto\x12\bgrpc.gcp\x1a(grpc/gcp/transport_security_common.proto\"t\n" +
  1057  	"\bEndpoint\x12\x1d\n" +
  1058  	"\n" +
  1059  	"ip_address\x18\x01 \x01(\tR\tipAddress\x12\x12\n" +
  1060  	"\x04port\x18\x02 \x01(\x05R\x04port\x125\n" +
  1061  	"\bprotocol\x18\x03 \x01(\x0e2\x19.grpc.gcp.NetworkProtocolR\bprotocol\"\xe8\x01\n" +
  1062  	"\bIdentity\x12)\n" +
  1063  	"\x0fservice_account\x18\x01 \x01(\tH\x00R\x0eserviceAccount\x12\x1c\n" +
  1064  	"\bhostname\x18\x02 \x01(\tH\x00R\bhostname\x12B\n" +
  1065  	"\n" +
  1066  	"attributes\x18\x03 \x03(\v2\".grpc.gcp.Identity.AttributesEntryR\n" +
  1067  	"attributes\x1a=\n" +
  1068  	"\x0fAttributesEntry\x12\x10\n" +
  1069  	"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
  1070  	"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01B\x10\n" +
  1071  	"\x0eidentity_oneof\"\xe9\x05\n" +
  1072  	"\x17StartClientHandshakeReq\x12[\n" +
  1073  	"\x1bhandshake_security_protocol\x18\x01 \x01(\x0e2\x1b.grpc.gcp.HandshakeProtocolR\x19handshakeSecurityProtocol\x123\n" +
  1074  	"\x15application_protocols\x18\x02 \x03(\tR\x14applicationProtocols\x12)\n" +
  1075  	"\x10record_protocols\x18\x03 \x03(\tR\x0frecordProtocols\x12?\n" +
  1076  	"\x11target_identities\x18\x04 \x03(\v2\x12.grpc.gcp.IdentityR\x10targetIdentities\x129\n" +
  1077  	"\x0elocal_identity\x18\x05 \x01(\v2\x12.grpc.gcp.IdentityR\rlocalIdentity\x129\n" +
  1078  	"\x0elocal_endpoint\x18\x06 \x01(\v2\x12.grpc.gcp.EndpointR\rlocalEndpoint\x12;\n" +
  1079  	"\x0fremote_endpoint\x18\a \x01(\v2\x12.grpc.gcp.EndpointR\x0eremoteEndpoint\x12\x1f\n" +
  1080  	"\vtarget_name\x18\b \x01(\tR\n" +
  1081  	"targetName\x12@\n" +
  1082  	"\frpc_versions\x18\t \x01(\v2\x1d.grpc.gcp.RpcProtocolVersionsR\vrpcVersions\x12$\n" +
  1083  	"\x0emax_frame_size\x18\n" +
  1084  	" \x01(\rR\fmaxFrameSize\x12&\n" +
  1085  	"\faccess_token\x18\v \x01(\tB\x03\x80\x01\x01R\vaccessToken\x12l\n" +
  1086  	"\x1etransport_protocol_preferences\x18\f \x01(\v2&.grpc.gcp.TransportProtocolPreferencesR\x1ctransportProtocolPreferences\"\xaf\x01\n" +
  1087  	"\x19ServerHandshakeParameters\x12)\n" +
  1088  	"\x10record_protocols\x18\x01 \x03(\tR\x0frecordProtocols\x12=\n" +
  1089  	"\x10local_identities\x18\x02 \x03(\v2\x12.grpc.gcp.IdentityR\x0flocalIdentities\x12\x1e\n" +
  1090  	"\x05token\x18\x03 \x01(\tB\x03\x80\x01\x01H\x00R\x05token\x88\x01\x01B\b\n" +
  1091  	"\x06_token\"\x93\x05\n" +
  1092  	"\x17StartServerHandshakeReq\x123\n" +
  1093  	"\x15application_protocols\x18\x01 \x03(\tR\x14applicationProtocols\x12m\n" +
  1094  	"\x14handshake_parameters\x18\x02 \x03(\v2:.grpc.gcp.StartServerHandshakeReq.HandshakeParametersEntryR\x13handshakeParameters\x12\x19\n" +
  1095  	"\bin_bytes\x18\x03 \x01(\fR\ainBytes\x129\n" +
  1096  	"\x0elocal_endpoint\x18\x04 \x01(\v2\x12.grpc.gcp.EndpointR\rlocalEndpoint\x12;\n" +
  1097  	"\x0fremote_endpoint\x18\x05 \x01(\v2\x12.grpc.gcp.EndpointR\x0eremoteEndpoint\x12@\n" +
  1098  	"\frpc_versions\x18\x06 \x01(\v2\x1d.grpc.gcp.RpcProtocolVersionsR\vrpcVersions\x12$\n" +
  1099  	"\x0emax_frame_size\x18\a \x01(\rR\fmaxFrameSize\x12l\n" +
  1100  	"\x1etransport_protocol_preferences\x18\b \x01(\v2&.grpc.gcp.TransportProtocolPreferencesR\x1ctransportProtocolPreferences\x1ak\n" +
  1101  	"\x18HandshakeParametersEntry\x12\x10\n" +
  1102  	"\x03key\x18\x01 \x01(\x05R\x03key\x129\n" +
  1103  	"\x05value\x18\x02 \x01(\v2#.grpc.gcp.ServerHandshakeParametersR\x05value:\x028\x01\"b\n" +
  1104  	"\x17NextHandshakeMessageReq\x12\x19\n" +
  1105  	"\bin_bytes\x18\x01 \x01(\fR\ainBytes\x12,\n" +
  1106  	"\x12network_latency_ms\x18\x02 \x01(\rR\x10networkLatencyMs\"\xe5\x01\n" +
  1107  	"\rHandshakerReq\x12F\n" +
  1108  	"\fclient_start\x18\x01 \x01(\v2!.grpc.gcp.StartClientHandshakeReqH\x00R\vclientStart\x12F\n" +
  1109  	"\fserver_start\x18\x02 \x01(\v2!.grpc.gcp.StartServerHandshakeReqH\x00R\vserverStart\x127\n" +
  1110  	"\x04next\x18\x03 \x01(\v2!.grpc.gcp.NextHandshakeMessageReqH\x00R\x04nextB\v\n" +
  1111  	"\treq_oneof\"\xf0\x03\n" +
  1112  	"\x10HandshakerResult\x121\n" +
  1113  	"\x14application_protocol\x18\x01 \x01(\tR\x13applicationProtocol\x12'\n" +
  1114  	"\x0frecord_protocol\x18\x02 \x01(\tR\x0erecordProtocol\x12\x19\n" +
  1115  	"\bkey_data\x18\x03 \x01(\fR\akeyData\x127\n" +
  1116  	"\rpeer_identity\x18\x04 \x01(\v2\x12.grpc.gcp.IdentityR\fpeerIdentity\x129\n" +
  1117  	"\x0elocal_identity\x18\x05 \x01(\v2\x12.grpc.gcp.IdentityR\rlocalIdentity\x12*\n" +
  1118  	"\x11keep_channel_open\x18\x06 \x01(\bR\x0fkeepChannelOpen\x12I\n" +
  1119  	"\x11peer_rpc_versions\x18\a \x01(\v2\x1d.grpc.gcp.RpcProtocolVersionsR\x0fpeerRpcVersions\x12$\n" +
  1120  	"\x0emax_frame_size\x18\b \x01(\rR\fmaxFrameSize\x12T\n" +
  1121  	"\x12transport_protocol\x18\t \x01(\v2%.grpc.gcp.NegotiatedTransportProtocolR\x11transportProtocol\"@\n" +
  1122  	"\x10HandshakerStatus\x12\x12\n" +
  1123  	"\x04code\x18\x01 \x01(\rR\x04code\x12\x18\n" +
  1124  	"\adetails\x18\x02 \x01(\tR\adetails\"\xbe\x01\n" +
  1125  	"\x0eHandshakerResp\x12\x1d\n" +
  1126  	"\n" +
  1127  	"out_frames\x18\x01 \x01(\fR\toutFrames\x12%\n" +
  1128  	"\x0ebytes_consumed\x18\x02 \x01(\rR\rbytesConsumed\x122\n" +
  1129  	"\x06result\x18\x03 \x01(\v2\x1a.grpc.gcp.HandshakerResultR\x06result\x122\n" +
  1130  	"\x06status\x18\x04 \x01(\v2\x1a.grpc.gcp.HandshakerStatusR\x06status*J\n" +
  1131  	"\x11HandshakeProtocol\x12\"\n" +
  1132  	"\x1eHANDSHAKE_PROTOCOL_UNSPECIFIED\x10\x00\x12\a\n" +
  1133  	"\x03TLS\x10\x01\x12\b\n" +
  1134  	"\x04ALTS\x10\x02*E\n" +
  1135  	"\x0fNetworkProtocol\x12 \n" +
  1136  	"\x1cNETWORK_PROTOCOL_UNSPECIFIED\x10\x00\x12\a\n" +
  1137  	"\x03TCP\x10\x01\x12\a\n" +
  1138  	"\x03UDP\x10\x022[\n" +
  1139  	"\x11HandshakerService\x12F\n" +
  1140  	"\vDoHandshake\x12\x17.grpc.gcp.HandshakerReq\x1a\x18.grpc.gcp.HandshakerResp\"\x00(\x010\x01Bk\n" +
  1141  	"\x15io.grpc.alts.internalB\x0fHandshakerProtoP\x01Z?google.golang.org/grpc/credentials/alts/internal/proto/grpc_gcpb\x06proto3"
  1142  
  1143  var (
  1144  	file_grpc_gcp_handshaker_proto_rawDescOnce sync.Once
  1145  	file_grpc_gcp_handshaker_proto_rawDescData []byte
  1146  )
  1147  
  1148  func file_grpc_gcp_handshaker_proto_rawDescGZIP() []byte {
  1149  	file_grpc_gcp_handshaker_proto_rawDescOnce.Do(func() {
  1150  		file_grpc_gcp_handshaker_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_grpc_gcp_handshaker_proto_rawDesc), len(file_grpc_gcp_handshaker_proto_rawDesc)))
  1151  	})
  1152  	return file_grpc_gcp_handshaker_proto_rawDescData
  1153  }
  1154  
  1155  var file_grpc_gcp_handshaker_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
  1156  var file_grpc_gcp_handshaker_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
  1157  var file_grpc_gcp_handshaker_proto_goTypes = []any{
  1158  	(HandshakeProtocol)(0),               // 0: grpc.gcp.HandshakeProtocol
  1159  	(NetworkProtocol)(0),                 // 1: grpc.gcp.NetworkProtocol
  1160  	(*Endpoint)(nil),                     // 2: grpc.gcp.Endpoint
  1161  	(*Identity)(nil),                     // 3: grpc.gcp.Identity
  1162  	(*StartClientHandshakeReq)(nil),      // 4: grpc.gcp.StartClientHandshakeReq
  1163  	(*ServerHandshakeParameters)(nil),    // 5: grpc.gcp.ServerHandshakeParameters
  1164  	(*StartServerHandshakeReq)(nil),      // 6: grpc.gcp.StartServerHandshakeReq
  1165  	(*NextHandshakeMessageReq)(nil),      // 7: grpc.gcp.NextHandshakeMessageReq
  1166  	(*HandshakerReq)(nil),                // 8: grpc.gcp.HandshakerReq
  1167  	(*HandshakerResult)(nil),             // 9: grpc.gcp.HandshakerResult
  1168  	(*HandshakerStatus)(nil),             // 10: grpc.gcp.HandshakerStatus
  1169  	(*HandshakerResp)(nil),               // 11: grpc.gcp.HandshakerResp
  1170  	nil,                                  // 12: grpc.gcp.Identity.AttributesEntry
  1171  	nil,                                  // 13: grpc.gcp.StartServerHandshakeReq.HandshakeParametersEntry
  1172  	(*RpcProtocolVersions)(nil),          // 14: grpc.gcp.RpcProtocolVersions
  1173  	(*TransportProtocolPreferences)(nil), // 15: grpc.gcp.TransportProtocolPreferences
  1174  	(*NegotiatedTransportProtocol)(nil),  // 16: grpc.gcp.NegotiatedTransportProtocol
  1175  }
  1176  var file_grpc_gcp_handshaker_proto_depIdxs = []int32{
  1177  	1,  // 0: grpc.gcp.Endpoint.protocol:type_name -> grpc.gcp.NetworkProtocol
  1178  	12, // 1: grpc.gcp.Identity.attributes:type_name -> grpc.gcp.Identity.AttributesEntry
  1179  	0,  // 2: grpc.gcp.StartClientHandshakeReq.handshake_security_protocol:type_name -> grpc.gcp.HandshakeProtocol
  1180  	3,  // 3: grpc.gcp.StartClientHandshakeReq.target_identities:type_name -> grpc.gcp.Identity
  1181  	3,  // 4: grpc.gcp.StartClientHandshakeReq.local_identity:type_name -> grpc.gcp.Identity
  1182  	2,  // 5: grpc.gcp.StartClientHandshakeReq.local_endpoint:type_name -> grpc.gcp.Endpoint
  1183  	2,  // 6: grpc.gcp.StartClientHandshakeReq.remote_endpoint:type_name -> grpc.gcp.Endpoint
  1184  	14, // 7: grpc.gcp.StartClientHandshakeReq.rpc_versions:type_name -> grpc.gcp.RpcProtocolVersions
  1185  	15, // 8: grpc.gcp.StartClientHandshakeReq.transport_protocol_preferences:type_name -> grpc.gcp.TransportProtocolPreferences
  1186  	3,  // 9: grpc.gcp.ServerHandshakeParameters.local_identities:type_name -> grpc.gcp.Identity
  1187  	13, // 10: grpc.gcp.StartServerHandshakeReq.handshake_parameters:type_name -> grpc.gcp.StartServerHandshakeReq.HandshakeParametersEntry
  1188  	2,  // 11: grpc.gcp.StartServerHandshakeReq.local_endpoint:type_name -> grpc.gcp.Endpoint
  1189  	2,  // 12: grpc.gcp.StartServerHandshakeReq.remote_endpoint:type_name -> grpc.gcp.Endpoint
  1190  	14, // 13: grpc.gcp.StartServerHandshakeReq.rpc_versions:type_name -> grpc.gcp.RpcProtocolVersions
  1191  	15, // 14: grpc.gcp.StartServerHandshakeReq.transport_protocol_preferences:type_name -> grpc.gcp.TransportProtocolPreferences
  1192  	4,  // 15: grpc.gcp.HandshakerReq.client_start:type_name -> grpc.gcp.StartClientHandshakeReq
  1193  	6,  // 16: grpc.gcp.HandshakerReq.server_start:type_name -> grpc.gcp.StartServerHandshakeReq
  1194  	7,  // 17: grpc.gcp.HandshakerReq.next:type_name -> grpc.gcp.NextHandshakeMessageReq
  1195  	3,  // 18: grpc.gcp.HandshakerResult.peer_identity:type_name -> grpc.gcp.Identity
  1196  	3,  // 19: grpc.gcp.HandshakerResult.local_identity:type_name -> grpc.gcp.Identity
  1197  	14, // 20: grpc.gcp.HandshakerResult.peer_rpc_versions:type_name -> grpc.gcp.RpcProtocolVersions
  1198  	16, // 21: grpc.gcp.HandshakerResult.transport_protocol:type_name -> grpc.gcp.NegotiatedTransportProtocol
  1199  	9,  // 22: grpc.gcp.HandshakerResp.result:type_name -> grpc.gcp.HandshakerResult
  1200  	10, // 23: grpc.gcp.HandshakerResp.status:type_name -> grpc.gcp.HandshakerStatus
  1201  	5,  // 24: grpc.gcp.StartServerHandshakeReq.HandshakeParametersEntry.value:type_name -> grpc.gcp.ServerHandshakeParameters
  1202  	8,  // 25: grpc.gcp.HandshakerService.DoHandshake:input_type -> grpc.gcp.HandshakerReq
  1203  	11, // 26: grpc.gcp.HandshakerService.DoHandshake:output_type -> grpc.gcp.HandshakerResp
  1204  	26, // [26:27] is the sub-list for method output_type
  1205  	25, // [25:26] is the sub-list for method input_type
  1206  	25, // [25:25] is the sub-list for extension type_name
  1207  	25, // [25:25] is the sub-list for extension extendee
  1208  	0,  // [0:25] is the sub-list for field type_name
  1209  }
  1210  
  1211  func init() { file_grpc_gcp_handshaker_proto_init() }
  1212  func file_grpc_gcp_handshaker_proto_init() {
  1213  	if File_grpc_gcp_handshaker_proto != nil {
  1214  		return
  1215  	}
  1216  	file_grpc_gcp_transport_security_common_proto_init()
  1217  	file_grpc_gcp_handshaker_proto_msgTypes[1].OneofWrappers = []any{
  1218  		(*Identity_ServiceAccount)(nil),
  1219  		(*Identity_Hostname)(nil),
  1220  	}
  1221  	file_grpc_gcp_handshaker_proto_msgTypes[3].OneofWrappers = []any{}
  1222  	file_grpc_gcp_handshaker_proto_msgTypes[6].OneofWrappers = []any{
  1223  		(*HandshakerReq_ClientStart)(nil),
  1224  		(*HandshakerReq_ServerStart)(nil),
  1225  		(*HandshakerReq_Next)(nil),
  1226  	}
  1227  	type x struct{}
  1228  	out := protoimpl.TypeBuilder{
  1229  		File: protoimpl.DescBuilder{
  1230  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1231  			RawDescriptor: unsafe.Slice(unsafe.StringData(file_grpc_gcp_handshaker_proto_rawDesc), len(file_grpc_gcp_handshaker_proto_rawDesc)),
  1232  			NumEnums:      2,
  1233  			NumMessages:   12,
  1234  			NumExtensions: 0,
  1235  			NumServices:   1,
  1236  		},
  1237  		GoTypes:           file_grpc_gcp_handshaker_proto_goTypes,
  1238  		DependencyIndexes: file_grpc_gcp_handshaker_proto_depIdxs,
  1239  		EnumInfos:         file_grpc_gcp_handshaker_proto_enumTypes,
  1240  		MessageInfos:      file_grpc_gcp_handshaker_proto_msgTypes,
  1241  	}.Build()
  1242  	File_grpc_gcp_handshaker_proto = out.File
  1243  	file_grpc_gcp_handshaker_proto_goTypes = nil
  1244  	file_grpc_gcp_handshaker_proto_depIdxs = nil
  1245  }