github.com/TrueCloudLab/frostfs-api-go/v2@v2.0.0-20230228134343-196241c4e79a/session/grpc/types.pb.go (about)

     1  // Code generated by protoc-gen-go. DO NOT EDIT.
     2  // versions:
     3  // 	protoc-gen-go v1.28.0
     4  // 	protoc        v3.21.9
     5  // source: session/grpc/types.proto
     6  
     7  package session
     8  
     9  import (
    10  	grpc1 "github.com/TrueCloudLab/frostfs-api-go/v2/acl/grpc"
    11  	grpc "github.com/TrueCloudLab/frostfs-api-go/v2/refs/grpc"
    12  	grpc2 "github.com/TrueCloudLab/frostfs-api-go/v2/status/grpc"
    13  	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
    14  	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
    15  	reflect "reflect"
    16  	sync "sync"
    17  )
    18  
    19  const (
    20  	// Verify that this generated code is sufficiently up-to-date.
    21  	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
    22  	// Verify that runtime/protoimpl is sufficiently up-to-date.
    23  	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
    24  )
    25  
    26  // Object request verbs
    27  type ObjectSessionContext_Verb int32
    28  
    29  const (
    30  	// Unknown verb
    31  	ObjectSessionContext_VERB_UNSPECIFIED ObjectSessionContext_Verb = 0
    32  	// Refers to object.Put RPC call
    33  	ObjectSessionContext_PUT ObjectSessionContext_Verb = 1
    34  	// Refers to object.Get RPC call
    35  	ObjectSessionContext_GET ObjectSessionContext_Verb = 2
    36  	// Refers to object.Head RPC call
    37  	ObjectSessionContext_HEAD ObjectSessionContext_Verb = 3
    38  	// Refers to object.Search RPC call
    39  	ObjectSessionContext_SEARCH ObjectSessionContext_Verb = 4
    40  	// Refers to object.Delete RPC call
    41  	ObjectSessionContext_DELETE ObjectSessionContext_Verb = 5
    42  	// Refers to object.GetRange RPC call
    43  	ObjectSessionContext_RANGE ObjectSessionContext_Verb = 6
    44  	// Refers to object.GetRangeHash RPC call
    45  	ObjectSessionContext_RANGEHASH ObjectSessionContext_Verb = 7
    46  )
    47  
    48  // Enum value maps for ObjectSessionContext_Verb.
    49  var (
    50  	ObjectSessionContext_Verb_name = map[int32]string{
    51  		0: "VERB_UNSPECIFIED",
    52  		1: "PUT",
    53  		2: "GET",
    54  		3: "HEAD",
    55  		4: "SEARCH",
    56  		5: "DELETE",
    57  		6: "RANGE",
    58  		7: "RANGEHASH",
    59  	}
    60  	ObjectSessionContext_Verb_value = map[string]int32{
    61  		"VERB_UNSPECIFIED": 0,
    62  		"PUT":              1,
    63  		"GET":              2,
    64  		"HEAD":             3,
    65  		"SEARCH":           4,
    66  		"DELETE":           5,
    67  		"RANGE":            6,
    68  		"RANGEHASH":        7,
    69  	}
    70  )
    71  
    72  func (x ObjectSessionContext_Verb) Enum() *ObjectSessionContext_Verb {
    73  	p := new(ObjectSessionContext_Verb)
    74  	*p = x
    75  	return p
    76  }
    77  
    78  func (x ObjectSessionContext_Verb) String() string {
    79  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
    80  }
    81  
    82  func (ObjectSessionContext_Verb) Descriptor() protoreflect.EnumDescriptor {
    83  	return file_session_grpc_types_proto_enumTypes[0].Descriptor()
    84  }
    85  
    86  func (ObjectSessionContext_Verb) Type() protoreflect.EnumType {
    87  	return &file_session_grpc_types_proto_enumTypes[0]
    88  }
    89  
    90  func (x ObjectSessionContext_Verb) Number() protoreflect.EnumNumber {
    91  	return protoreflect.EnumNumber(x)
    92  }
    93  
    94  // Deprecated: Use ObjectSessionContext_Verb.Descriptor instead.
    95  func (ObjectSessionContext_Verb) EnumDescriptor() ([]byte, []int) {
    96  	return file_session_grpc_types_proto_rawDescGZIP(), []int{0, 0}
    97  }
    98  
    99  // Container request verbs
   100  type ContainerSessionContext_Verb int32
   101  
   102  const (
   103  	// Unknown verb
   104  	ContainerSessionContext_VERB_UNSPECIFIED ContainerSessionContext_Verb = 0
   105  	// Refers to container.Put RPC call
   106  	ContainerSessionContext_PUT ContainerSessionContext_Verb = 1
   107  	// Refers to container.Delete RPC call
   108  	ContainerSessionContext_DELETE ContainerSessionContext_Verb = 2
   109  	// Refers to container.SetExtendedACL RPC call
   110  	ContainerSessionContext_SETEACL ContainerSessionContext_Verb = 3
   111  )
   112  
   113  // Enum value maps for ContainerSessionContext_Verb.
   114  var (
   115  	ContainerSessionContext_Verb_name = map[int32]string{
   116  		0: "VERB_UNSPECIFIED",
   117  		1: "PUT",
   118  		2: "DELETE",
   119  		3: "SETEACL",
   120  	}
   121  	ContainerSessionContext_Verb_value = map[string]int32{
   122  		"VERB_UNSPECIFIED": 0,
   123  		"PUT":              1,
   124  		"DELETE":           2,
   125  		"SETEACL":          3,
   126  	}
   127  )
   128  
   129  func (x ContainerSessionContext_Verb) Enum() *ContainerSessionContext_Verb {
   130  	p := new(ContainerSessionContext_Verb)
   131  	*p = x
   132  	return p
   133  }
   134  
   135  func (x ContainerSessionContext_Verb) String() string {
   136  	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
   137  }
   138  
   139  func (ContainerSessionContext_Verb) Descriptor() protoreflect.EnumDescriptor {
   140  	return file_session_grpc_types_proto_enumTypes[1].Descriptor()
   141  }
   142  
   143  func (ContainerSessionContext_Verb) Type() protoreflect.EnumType {
   144  	return &file_session_grpc_types_proto_enumTypes[1]
   145  }
   146  
   147  func (x ContainerSessionContext_Verb) Number() protoreflect.EnumNumber {
   148  	return protoreflect.EnumNumber(x)
   149  }
   150  
   151  // Deprecated: Use ContainerSessionContext_Verb.Descriptor instead.
   152  func (ContainerSessionContext_Verb) EnumDescriptor() ([]byte, []int) {
   153  	return file_session_grpc_types_proto_rawDescGZIP(), []int{1, 0}
   154  }
   155  
   156  // Context information for Session Tokens related to ObjectService requests
   157  type ObjectSessionContext struct {
   158  	state         protoimpl.MessageState
   159  	sizeCache     protoimpl.SizeCache
   160  	unknownFields protoimpl.UnknownFields
   161  
   162  	// Type of request for which the token is issued
   163  	Verb ObjectSessionContext_Verb `protobuf:"varint,1,opt,name=verb,proto3,enum=neo.fs.v2.session.ObjectSessionContext_Verb" json:"verb,omitempty"`
   164  	// Object session target. MUST be correctly formed and set. If `objects`
   165  	// field is not empty, then the session applies only to these elements,
   166  	// otherwise, to all objects from the specified container.
   167  	Target *ObjectSessionContext_Target `protobuf:"bytes,2,opt,name=target,proto3" json:"target,omitempty"`
   168  }
   169  
   170  func (x *ObjectSessionContext) Reset() {
   171  	*x = ObjectSessionContext{}
   172  	if protoimpl.UnsafeEnabled {
   173  		mi := &file_session_grpc_types_proto_msgTypes[0]
   174  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   175  		ms.StoreMessageInfo(mi)
   176  	}
   177  }
   178  
   179  func (x *ObjectSessionContext) String() string {
   180  	return protoimpl.X.MessageStringOf(x)
   181  }
   182  
   183  func (*ObjectSessionContext) ProtoMessage() {}
   184  
   185  func (x *ObjectSessionContext) ProtoReflect() protoreflect.Message {
   186  	mi := &file_session_grpc_types_proto_msgTypes[0]
   187  	if protoimpl.UnsafeEnabled && x != nil {
   188  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   189  		if ms.LoadMessageInfo() == nil {
   190  			ms.StoreMessageInfo(mi)
   191  		}
   192  		return ms
   193  	}
   194  	return mi.MessageOf(x)
   195  }
   196  
   197  // Deprecated: Use ObjectSessionContext.ProtoReflect.Descriptor instead.
   198  func (*ObjectSessionContext) Descriptor() ([]byte, []int) {
   199  	return file_session_grpc_types_proto_rawDescGZIP(), []int{0}
   200  }
   201  
   202  func (x *ObjectSessionContext) GetVerb() ObjectSessionContext_Verb {
   203  	if x != nil {
   204  		return x.Verb
   205  	}
   206  	return ObjectSessionContext_VERB_UNSPECIFIED
   207  }
   208  
   209  func (x *ObjectSessionContext) GetTarget() *ObjectSessionContext_Target {
   210  	if x != nil {
   211  		return x.Target
   212  	}
   213  	return nil
   214  }
   215  
   216  // Context information for Session Tokens related to ContainerService requests.
   217  type ContainerSessionContext struct {
   218  	state         protoimpl.MessageState
   219  	sizeCache     protoimpl.SizeCache
   220  	unknownFields protoimpl.UnknownFields
   221  
   222  	// Type of request for which the token is issued
   223  	Verb ContainerSessionContext_Verb `protobuf:"varint,1,opt,name=verb,proto3,enum=neo.fs.v2.session.ContainerSessionContext_Verb" json:"verb,omitempty"`
   224  	// Spreads the action to all owner containers.
   225  	// If set, container_id field is ignored.
   226  	Wildcard bool `protobuf:"varint,2,opt,name=wildcard,proto3" json:"wildcard,omitempty"`
   227  	// Particular container to which the action applies.
   228  	// Ignored if wildcard flag is set.
   229  	ContainerId *grpc.ContainerID `protobuf:"bytes,3,opt,name=container_id,json=containerID,proto3" json:"container_id,omitempty"`
   230  }
   231  
   232  func (x *ContainerSessionContext) Reset() {
   233  	*x = ContainerSessionContext{}
   234  	if protoimpl.UnsafeEnabled {
   235  		mi := &file_session_grpc_types_proto_msgTypes[1]
   236  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   237  		ms.StoreMessageInfo(mi)
   238  	}
   239  }
   240  
   241  func (x *ContainerSessionContext) String() string {
   242  	return protoimpl.X.MessageStringOf(x)
   243  }
   244  
   245  func (*ContainerSessionContext) ProtoMessage() {}
   246  
   247  func (x *ContainerSessionContext) ProtoReflect() protoreflect.Message {
   248  	mi := &file_session_grpc_types_proto_msgTypes[1]
   249  	if protoimpl.UnsafeEnabled && x != nil {
   250  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   251  		if ms.LoadMessageInfo() == nil {
   252  			ms.StoreMessageInfo(mi)
   253  		}
   254  		return ms
   255  	}
   256  	return mi.MessageOf(x)
   257  }
   258  
   259  // Deprecated: Use ContainerSessionContext.ProtoReflect.Descriptor instead.
   260  func (*ContainerSessionContext) Descriptor() ([]byte, []int) {
   261  	return file_session_grpc_types_proto_rawDescGZIP(), []int{1}
   262  }
   263  
   264  func (x *ContainerSessionContext) GetVerb() ContainerSessionContext_Verb {
   265  	if x != nil {
   266  		return x.Verb
   267  	}
   268  	return ContainerSessionContext_VERB_UNSPECIFIED
   269  }
   270  
   271  func (x *ContainerSessionContext) GetWildcard() bool {
   272  	if x != nil {
   273  		return x.Wildcard
   274  	}
   275  	return false
   276  }
   277  
   278  func (x *ContainerSessionContext) GetContainerId() *grpc.ContainerID {
   279  	if x != nil {
   280  		return x.ContainerId
   281  	}
   282  	return nil
   283  }
   284  
   285  // NeoFS Session Token.
   286  type SessionToken struct {
   287  	state         protoimpl.MessageState
   288  	sizeCache     protoimpl.SizeCache
   289  	unknownFields protoimpl.UnknownFields
   290  
   291  	// Session Token contains the proof of trust between peers to be attached in
   292  	// requests for further verification. Please see corresponding section of
   293  	// NeoFS Technical Specification for details.
   294  	Body *SessionToken_Body `protobuf:"bytes,1,opt,name=body,proto3" json:"body,omitempty"`
   295  	// Signature of `SessionToken` information
   296  	Signature *grpc.Signature `protobuf:"bytes,2,opt,name=signature,proto3" json:"signature,omitempty"`
   297  }
   298  
   299  func (x *SessionToken) Reset() {
   300  	*x = SessionToken{}
   301  	if protoimpl.UnsafeEnabled {
   302  		mi := &file_session_grpc_types_proto_msgTypes[2]
   303  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   304  		ms.StoreMessageInfo(mi)
   305  	}
   306  }
   307  
   308  func (x *SessionToken) String() string {
   309  	return protoimpl.X.MessageStringOf(x)
   310  }
   311  
   312  func (*SessionToken) ProtoMessage() {}
   313  
   314  func (x *SessionToken) ProtoReflect() protoreflect.Message {
   315  	mi := &file_session_grpc_types_proto_msgTypes[2]
   316  	if protoimpl.UnsafeEnabled && x != nil {
   317  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   318  		if ms.LoadMessageInfo() == nil {
   319  			ms.StoreMessageInfo(mi)
   320  		}
   321  		return ms
   322  	}
   323  	return mi.MessageOf(x)
   324  }
   325  
   326  // Deprecated: Use SessionToken.ProtoReflect.Descriptor instead.
   327  func (*SessionToken) Descriptor() ([]byte, []int) {
   328  	return file_session_grpc_types_proto_rawDescGZIP(), []int{2}
   329  }
   330  
   331  func (x *SessionToken) GetBody() *SessionToken_Body {
   332  	if x != nil {
   333  		return x.Body
   334  	}
   335  	return nil
   336  }
   337  
   338  func (x *SessionToken) GetSignature() *grpc.Signature {
   339  	if x != nil {
   340  		return x.Signature
   341  	}
   342  	return nil
   343  }
   344  
   345  // Extended headers for Request/Response. They may contain any user-defined headers
   346  // to be interpreted on application level.
   347  //
   348  // Key name must be a unique valid UTF-8 string. Value can't be empty. Requests or
   349  // Responses with duplicated header names or headers with empty values will be
   350  // considered invalid.
   351  //
   352  // There are some "well-known" headers starting with `__NEOFS__` prefix that
   353  // affect system behaviour:
   354  //
   355  //   - __NEOFS__NETMAP_EPOCH \
   356  //     Netmap epoch to use for object placement calculation. The `value` is string
   357  //     encoded `uint64` in decimal presentation. If set to '0' or not set, the
   358  //     current epoch only will be used.
   359  //   - __NEOFS__NETMAP_LOOKUP_DEPTH \
   360  //     If object can't be found using current epoch's netmap, this header limits
   361  //     how many past epochs the node can look up through. The `value` is string
   362  //     encoded `uint64` in decimal presentation. If set to '0' or not set, only the
   363  //     current epoch will be used.
   364  type XHeader struct {
   365  	state         protoimpl.MessageState
   366  	sizeCache     protoimpl.SizeCache
   367  	unknownFields protoimpl.UnknownFields
   368  
   369  	// Key of the X-Header
   370  	Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
   371  	// Value of the X-Header
   372  	Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"`
   373  }
   374  
   375  func (x *XHeader) Reset() {
   376  	*x = XHeader{}
   377  	if protoimpl.UnsafeEnabled {
   378  		mi := &file_session_grpc_types_proto_msgTypes[3]
   379  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   380  		ms.StoreMessageInfo(mi)
   381  	}
   382  }
   383  
   384  func (x *XHeader) String() string {
   385  	return protoimpl.X.MessageStringOf(x)
   386  }
   387  
   388  func (*XHeader) ProtoMessage() {}
   389  
   390  func (x *XHeader) ProtoReflect() protoreflect.Message {
   391  	mi := &file_session_grpc_types_proto_msgTypes[3]
   392  	if protoimpl.UnsafeEnabled && x != nil {
   393  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   394  		if ms.LoadMessageInfo() == nil {
   395  			ms.StoreMessageInfo(mi)
   396  		}
   397  		return ms
   398  	}
   399  	return mi.MessageOf(x)
   400  }
   401  
   402  // Deprecated: Use XHeader.ProtoReflect.Descriptor instead.
   403  func (*XHeader) Descriptor() ([]byte, []int) {
   404  	return file_session_grpc_types_proto_rawDescGZIP(), []int{3}
   405  }
   406  
   407  func (x *XHeader) GetKey() string {
   408  	if x != nil {
   409  		return x.Key
   410  	}
   411  	return ""
   412  }
   413  
   414  func (x *XHeader) GetValue() string {
   415  	if x != nil {
   416  		return x.Value
   417  	}
   418  	return ""
   419  }
   420  
   421  // Meta information attached to the request. When forwarded between peers,
   422  // request meta headers are folded in matryoshka style.
   423  type RequestMetaHeader struct {
   424  	state         protoimpl.MessageState
   425  	sizeCache     protoimpl.SizeCache
   426  	unknownFields protoimpl.UnknownFields
   427  
   428  	// Peer's API version used
   429  	Version *grpc.Version `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
   430  	// Peer's local epoch number. Set to 0 if unknown.
   431  	Epoch uint64 `protobuf:"varint,2,opt,name=epoch,proto3" json:"epoch,omitempty"`
   432  	// Maximum number of intermediate nodes in the request route
   433  	Ttl uint32 `protobuf:"varint,3,opt,name=ttl,proto3" json:"ttl,omitempty"`
   434  	// Request X-Headers
   435  	XHeaders []*XHeader `protobuf:"bytes,4,rep,name=x_headers,json=xHeaders,proto3" json:"x_headers,omitempty"`
   436  	// Session token within which the request is sent
   437  	SessionToken *SessionToken `protobuf:"bytes,5,opt,name=session_token,json=sessionToken,proto3" json:"session_token,omitempty"`
   438  	// `BearerToken` with eACL overrides for the request
   439  	BearerToken *grpc1.BearerToken `protobuf:"bytes,6,opt,name=bearer_token,json=bearerToken,proto3" json:"bearer_token,omitempty"`
   440  	// `RequestMetaHeader` of the origin request
   441  	Origin *RequestMetaHeader `protobuf:"bytes,7,opt,name=origin,proto3" json:"origin,omitempty"`
   442  	// NeoFS network magic. Must match the value for the network
   443  	// that the server belongs to.
   444  	MagicNumber uint64 `protobuf:"varint,8,opt,name=magic_number,json=magicNumber,proto3" json:"magic_number,omitempty"`
   445  }
   446  
   447  func (x *RequestMetaHeader) Reset() {
   448  	*x = RequestMetaHeader{}
   449  	if protoimpl.UnsafeEnabled {
   450  		mi := &file_session_grpc_types_proto_msgTypes[4]
   451  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   452  		ms.StoreMessageInfo(mi)
   453  	}
   454  }
   455  
   456  func (x *RequestMetaHeader) String() string {
   457  	return protoimpl.X.MessageStringOf(x)
   458  }
   459  
   460  func (*RequestMetaHeader) ProtoMessage() {}
   461  
   462  func (x *RequestMetaHeader) ProtoReflect() protoreflect.Message {
   463  	mi := &file_session_grpc_types_proto_msgTypes[4]
   464  	if protoimpl.UnsafeEnabled && x != nil {
   465  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   466  		if ms.LoadMessageInfo() == nil {
   467  			ms.StoreMessageInfo(mi)
   468  		}
   469  		return ms
   470  	}
   471  	return mi.MessageOf(x)
   472  }
   473  
   474  // Deprecated: Use RequestMetaHeader.ProtoReflect.Descriptor instead.
   475  func (*RequestMetaHeader) Descriptor() ([]byte, []int) {
   476  	return file_session_grpc_types_proto_rawDescGZIP(), []int{4}
   477  }
   478  
   479  func (x *RequestMetaHeader) GetVersion() *grpc.Version {
   480  	if x != nil {
   481  		return x.Version
   482  	}
   483  	return nil
   484  }
   485  
   486  func (x *RequestMetaHeader) GetEpoch() uint64 {
   487  	if x != nil {
   488  		return x.Epoch
   489  	}
   490  	return 0
   491  }
   492  
   493  func (x *RequestMetaHeader) GetTtl() uint32 {
   494  	if x != nil {
   495  		return x.Ttl
   496  	}
   497  	return 0
   498  }
   499  
   500  func (x *RequestMetaHeader) GetXHeaders() []*XHeader {
   501  	if x != nil {
   502  		return x.XHeaders
   503  	}
   504  	return nil
   505  }
   506  
   507  func (x *RequestMetaHeader) GetSessionToken() *SessionToken {
   508  	if x != nil {
   509  		return x.SessionToken
   510  	}
   511  	return nil
   512  }
   513  
   514  func (x *RequestMetaHeader) GetBearerToken() *grpc1.BearerToken {
   515  	if x != nil {
   516  		return x.BearerToken
   517  	}
   518  	return nil
   519  }
   520  
   521  func (x *RequestMetaHeader) GetOrigin() *RequestMetaHeader {
   522  	if x != nil {
   523  		return x.Origin
   524  	}
   525  	return nil
   526  }
   527  
   528  func (x *RequestMetaHeader) GetMagicNumber() uint64 {
   529  	if x != nil {
   530  		return x.MagicNumber
   531  	}
   532  	return 0
   533  }
   534  
   535  // Information about the response
   536  type ResponseMetaHeader struct {
   537  	state         protoimpl.MessageState
   538  	sizeCache     protoimpl.SizeCache
   539  	unknownFields protoimpl.UnknownFields
   540  
   541  	// Peer's API version used
   542  	Version *grpc.Version `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
   543  	// Peer's local epoch number
   544  	Epoch uint64 `protobuf:"varint,2,opt,name=epoch,proto3" json:"epoch,omitempty"`
   545  	// Maximum number of intermediate nodes in the request route
   546  	Ttl uint32 `protobuf:"varint,3,opt,name=ttl,proto3" json:"ttl,omitempty"`
   547  	// Response X-Headers
   548  	XHeaders []*XHeader `protobuf:"bytes,4,rep,name=x_headers,json=xHeaders,proto3" json:"x_headers,omitempty"`
   549  	// `ResponseMetaHeader` of the origin request
   550  	Origin *ResponseMetaHeader `protobuf:"bytes,5,opt,name=origin,proto3" json:"origin,omitempty"`
   551  	// Status return
   552  	Status *grpc2.Status `protobuf:"bytes,6,opt,name=status,proto3" json:"status,omitempty"`
   553  }
   554  
   555  func (x *ResponseMetaHeader) Reset() {
   556  	*x = ResponseMetaHeader{}
   557  	if protoimpl.UnsafeEnabled {
   558  		mi := &file_session_grpc_types_proto_msgTypes[5]
   559  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   560  		ms.StoreMessageInfo(mi)
   561  	}
   562  }
   563  
   564  func (x *ResponseMetaHeader) String() string {
   565  	return protoimpl.X.MessageStringOf(x)
   566  }
   567  
   568  func (*ResponseMetaHeader) ProtoMessage() {}
   569  
   570  func (x *ResponseMetaHeader) ProtoReflect() protoreflect.Message {
   571  	mi := &file_session_grpc_types_proto_msgTypes[5]
   572  	if protoimpl.UnsafeEnabled && x != nil {
   573  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   574  		if ms.LoadMessageInfo() == nil {
   575  			ms.StoreMessageInfo(mi)
   576  		}
   577  		return ms
   578  	}
   579  	return mi.MessageOf(x)
   580  }
   581  
   582  // Deprecated: Use ResponseMetaHeader.ProtoReflect.Descriptor instead.
   583  func (*ResponseMetaHeader) Descriptor() ([]byte, []int) {
   584  	return file_session_grpc_types_proto_rawDescGZIP(), []int{5}
   585  }
   586  
   587  func (x *ResponseMetaHeader) GetVersion() *grpc.Version {
   588  	if x != nil {
   589  		return x.Version
   590  	}
   591  	return nil
   592  }
   593  
   594  func (x *ResponseMetaHeader) GetEpoch() uint64 {
   595  	if x != nil {
   596  		return x.Epoch
   597  	}
   598  	return 0
   599  }
   600  
   601  func (x *ResponseMetaHeader) GetTtl() uint32 {
   602  	if x != nil {
   603  		return x.Ttl
   604  	}
   605  	return 0
   606  }
   607  
   608  func (x *ResponseMetaHeader) GetXHeaders() []*XHeader {
   609  	if x != nil {
   610  		return x.XHeaders
   611  	}
   612  	return nil
   613  }
   614  
   615  func (x *ResponseMetaHeader) GetOrigin() *ResponseMetaHeader {
   616  	if x != nil {
   617  		return x.Origin
   618  	}
   619  	return nil
   620  }
   621  
   622  func (x *ResponseMetaHeader) GetStatus() *grpc2.Status {
   623  	if x != nil {
   624  		return x.Status
   625  	}
   626  	return nil
   627  }
   628  
   629  // Verification info for the request signed by all intermediate nodes.
   630  type RequestVerificationHeader struct {
   631  	state         protoimpl.MessageState
   632  	sizeCache     protoimpl.SizeCache
   633  	unknownFields protoimpl.UnknownFields
   634  
   635  	// Request Body signature. Should be generated once by the request initiator.
   636  	BodySignature *grpc.Signature `protobuf:"bytes,1,opt,name=body_signature,json=bodySignature,proto3" json:"body_signature,omitempty"`
   637  	// Request Meta signature is added and signed by each intermediate node
   638  	MetaSignature *grpc.Signature `protobuf:"bytes,2,opt,name=meta_signature,json=metaSignature,proto3" json:"meta_signature,omitempty"`
   639  	// Signature of previous hops
   640  	OriginSignature *grpc.Signature `protobuf:"bytes,3,opt,name=origin_signature,json=originSignature,proto3" json:"origin_signature,omitempty"`
   641  	// Chain of previous hops signatures
   642  	Origin *RequestVerificationHeader `protobuf:"bytes,4,opt,name=origin,proto3" json:"origin,omitempty"`
   643  }
   644  
   645  func (x *RequestVerificationHeader) Reset() {
   646  	*x = RequestVerificationHeader{}
   647  	if protoimpl.UnsafeEnabled {
   648  		mi := &file_session_grpc_types_proto_msgTypes[6]
   649  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   650  		ms.StoreMessageInfo(mi)
   651  	}
   652  }
   653  
   654  func (x *RequestVerificationHeader) String() string {
   655  	return protoimpl.X.MessageStringOf(x)
   656  }
   657  
   658  func (*RequestVerificationHeader) ProtoMessage() {}
   659  
   660  func (x *RequestVerificationHeader) ProtoReflect() protoreflect.Message {
   661  	mi := &file_session_grpc_types_proto_msgTypes[6]
   662  	if protoimpl.UnsafeEnabled && x != nil {
   663  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   664  		if ms.LoadMessageInfo() == nil {
   665  			ms.StoreMessageInfo(mi)
   666  		}
   667  		return ms
   668  	}
   669  	return mi.MessageOf(x)
   670  }
   671  
   672  // Deprecated: Use RequestVerificationHeader.ProtoReflect.Descriptor instead.
   673  func (*RequestVerificationHeader) Descriptor() ([]byte, []int) {
   674  	return file_session_grpc_types_proto_rawDescGZIP(), []int{6}
   675  }
   676  
   677  func (x *RequestVerificationHeader) GetBodySignature() *grpc.Signature {
   678  	if x != nil {
   679  		return x.BodySignature
   680  	}
   681  	return nil
   682  }
   683  
   684  func (x *RequestVerificationHeader) GetMetaSignature() *grpc.Signature {
   685  	if x != nil {
   686  		return x.MetaSignature
   687  	}
   688  	return nil
   689  }
   690  
   691  func (x *RequestVerificationHeader) GetOriginSignature() *grpc.Signature {
   692  	if x != nil {
   693  		return x.OriginSignature
   694  	}
   695  	return nil
   696  }
   697  
   698  func (x *RequestVerificationHeader) GetOrigin() *RequestVerificationHeader {
   699  	if x != nil {
   700  		return x.Origin
   701  	}
   702  	return nil
   703  }
   704  
   705  // Verification info for the response signed by all intermediate nodes
   706  type ResponseVerificationHeader struct {
   707  	state         protoimpl.MessageState
   708  	sizeCache     protoimpl.SizeCache
   709  	unknownFields protoimpl.UnknownFields
   710  
   711  	// Response Body signature. Should be generated once by an answering node.
   712  	BodySignature *grpc.Signature `protobuf:"bytes,1,opt,name=body_signature,json=bodySignature,proto3" json:"body_signature,omitempty"`
   713  	// Response Meta signature is added and signed by each intermediate node
   714  	MetaSignature *grpc.Signature `protobuf:"bytes,2,opt,name=meta_signature,json=metaSignature,proto3" json:"meta_signature,omitempty"`
   715  	// Signature of previous hops
   716  	OriginSignature *grpc.Signature `protobuf:"bytes,3,opt,name=origin_signature,json=originSignature,proto3" json:"origin_signature,omitempty"`
   717  	// Chain of previous hops signatures
   718  	Origin *ResponseVerificationHeader `protobuf:"bytes,4,opt,name=origin,proto3" json:"origin,omitempty"`
   719  }
   720  
   721  func (x *ResponseVerificationHeader) Reset() {
   722  	*x = ResponseVerificationHeader{}
   723  	if protoimpl.UnsafeEnabled {
   724  		mi := &file_session_grpc_types_proto_msgTypes[7]
   725  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   726  		ms.StoreMessageInfo(mi)
   727  	}
   728  }
   729  
   730  func (x *ResponseVerificationHeader) String() string {
   731  	return protoimpl.X.MessageStringOf(x)
   732  }
   733  
   734  func (*ResponseVerificationHeader) ProtoMessage() {}
   735  
   736  func (x *ResponseVerificationHeader) ProtoReflect() protoreflect.Message {
   737  	mi := &file_session_grpc_types_proto_msgTypes[7]
   738  	if protoimpl.UnsafeEnabled && x != nil {
   739  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   740  		if ms.LoadMessageInfo() == nil {
   741  			ms.StoreMessageInfo(mi)
   742  		}
   743  		return ms
   744  	}
   745  	return mi.MessageOf(x)
   746  }
   747  
   748  // Deprecated: Use ResponseVerificationHeader.ProtoReflect.Descriptor instead.
   749  func (*ResponseVerificationHeader) Descriptor() ([]byte, []int) {
   750  	return file_session_grpc_types_proto_rawDescGZIP(), []int{7}
   751  }
   752  
   753  func (x *ResponseVerificationHeader) GetBodySignature() *grpc.Signature {
   754  	if x != nil {
   755  		return x.BodySignature
   756  	}
   757  	return nil
   758  }
   759  
   760  func (x *ResponseVerificationHeader) GetMetaSignature() *grpc.Signature {
   761  	if x != nil {
   762  		return x.MetaSignature
   763  	}
   764  	return nil
   765  }
   766  
   767  func (x *ResponseVerificationHeader) GetOriginSignature() *grpc.Signature {
   768  	if x != nil {
   769  		return x.OriginSignature
   770  	}
   771  	return nil
   772  }
   773  
   774  func (x *ResponseVerificationHeader) GetOrigin() *ResponseVerificationHeader {
   775  	if x != nil {
   776  		return x.Origin
   777  	}
   778  	return nil
   779  }
   780  
   781  // Carries objects involved in the object session.
   782  type ObjectSessionContext_Target struct {
   783  	state         protoimpl.MessageState
   784  	sizeCache     protoimpl.SizeCache
   785  	unknownFields protoimpl.UnknownFields
   786  
   787  	// Indicates which container the session is spread to. Field MUST be set
   788  	// and correct.
   789  	Container *grpc.ContainerID `protobuf:"bytes,1,opt,name=container,proto3" json:"container,omitempty"`
   790  	// Indicates which objects the session is spread to. Objects are expected
   791  	// to be stored in the NeoFS container referenced by `container` field.
   792  	// Each element MUST have correct format.
   793  	Objects []*grpc.ObjectID `protobuf:"bytes,2,rep,name=objects,proto3" json:"objects,omitempty"`
   794  }
   795  
   796  func (x *ObjectSessionContext_Target) Reset() {
   797  	*x = ObjectSessionContext_Target{}
   798  	if protoimpl.UnsafeEnabled {
   799  		mi := &file_session_grpc_types_proto_msgTypes[8]
   800  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   801  		ms.StoreMessageInfo(mi)
   802  	}
   803  }
   804  
   805  func (x *ObjectSessionContext_Target) String() string {
   806  	return protoimpl.X.MessageStringOf(x)
   807  }
   808  
   809  func (*ObjectSessionContext_Target) ProtoMessage() {}
   810  
   811  func (x *ObjectSessionContext_Target) ProtoReflect() protoreflect.Message {
   812  	mi := &file_session_grpc_types_proto_msgTypes[8]
   813  	if protoimpl.UnsafeEnabled && x != nil {
   814  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   815  		if ms.LoadMessageInfo() == nil {
   816  			ms.StoreMessageInfo(mi)
   817  		}
   818  		return ms
   819  	}
   820  	return mi.MessageOf(x)
   821  }
   822  
   823  // Deprecated: Use ObjectSessionContext_Target.ProtoReflect.Descriptor instead.
   824  func (*ObjectSessionContext_Target) Descriptor() ([]byte, []int) {
   825  	return file_session_grpc_types_proto_rawDescGZIP(), []int{0, 0}
   826  }
   827  
   828  func (x *ObjectSessionContext_Target) GetContainer() *grpc.ContainerID {
   829  	if x != nil {
   830  		return x.Container
   831  	}
   832  	return nil
   833  }
   834  
   835  func (x *ObjectSessionContext_Target) GetObjects() []*grpc.ObjectID {
   836  	if x != nil {
   837  		return x.Objects
   838  	}
   839  	return nil
   840  }
   841  
   842  // Session Token body
   843  type SessionToken_Body struct {
   844  	state         protoimpl.MessageState
   845  	sizeCache     protoimpl.SizeCache
   846  	unknownFields protoimpl.UnknownFields
   847  
   848  	// Token identifier is a valid UUIDv4 in binary form
   849  	Id []byte `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
   850  	// Identifier of the session initiator
   851  	OwnerId *grpc.OwnerID `protobuf:"bytes,2,opt,name=owner_id,json=ownerID,proto3" json:"owner_id,omitempty"`
   852  	// Lifetime of the session
   853  	Lifetime *SessionToken_Body_TokenLifetime `protobuf:"bytes,3,opt,name=lifetime,proto3" json:"lifetime,omitempty"`
   854  	// Public key used in session
   855  	SessionKey []byte `protobuf:"bytes,4,opt,name=session_key,json=sessionKey,proto3" json:"session_key,omitempty"`
   856  	// Session Context information
   857  	//
   858  	// Types that are assignable to Context:
   859  	//
   860  	//	*SessionToken_Body_Object
   861  	//	*SessionToken_Body_Container
   862  	Context isSessionToken_Body_Context `protobuf_oneof:"context"`
   863  }
   864  
   865  func (x *SessionToken_Body) Reset() {
   866  	*x = SessionToken_Body{}
   867  	if protoimpl.UnsafeEnabled {
   868  		mi := &file_session_grpc_types_proto_msgTypes[9]
   869  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   870  		ms.StoreMessageInfo(mi)
   871  	}
   872  }
   873  
   874  func (x *SessionToken_Body) String() string {
   875  	return protoimpl.X.MessageStringOf(x)
   876  }
   877  
   878  func (*SessionToken_Body) ProtoMessage() {}
   879  
   880  func (x *SessionToken_Body) ProtoReflect() protoreflect.Message {
   881  	mi := &file_session_grpc_types_proto_msgTypes[9]
   882  	if protoimpl.UnsafeEnabled && x != nil {
   883  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   884  		if ms.LoadMessageInfo() == nil {
   885  			ms.StoreMessageInfo(mi)
   886  		}
   887  		return ms
   888  	}
   889  	return mi.MessageOf(x)
   890  }
   891  
   892  // Deprecated: Use SessionToken_Body.ProtoReflect.Descriptor instead.
   893  func (*SessionToken_Body) Descriptor() ([]byte, []int) {
   894  	return file_session_grpc_types_proto_rawDescGZIP(), []int{2, 0}
   895  }
   896  
   897  func (x *SessionToken_Body) GetId() []byte {
   898  	if x != nil {
   899  		return x.Id
   900  	}
   901  	return nil
   902  }
   903  
   904  func (x *SessionToken_Body) GetOwnerId() *grpc.OwnerID {
   905  	if x != nil {
   906  		return x.OwnerId
   907  	}
   908  	return nil
   909  }
   910  
   911  func (x *SessionToken_Body) GetLifetime() *SessionToken_Body_TokenLifetime {
   912  	if x != nil {
   913  		return x.Lifetime
   914  	}
   915  	return nil
   916  }
   917  
   918  func (x *SessionToken_Body) GetSessionKey() []byte {
   919  	if x != nil {
   920  		return x.SessionKey
   921  	}
   922  	return nil
   923  }
   924  
   925  func (m *SessionToken_Body) GetContext() isSessionToken_Body_Context {
   926  	if m != nil {
   927  		return m.Context
   928  	}
   929  	return nil
   930  }
   931  
   932  func (x *SessionToken_Body) GetObject() *ObjectSessionContext {
   933  	if x, ok := x.GetContext().(*SessionToken_Body_Object); ok {
   934  		return x.Object
   935  	}
   936  	return nil
   937  }
   938  
   939  func (x *SessionToken_Body) GetContainer() *ContainerSessionContext {
   940  	if x, ok := x.GetContext().(*SessionToken_Body_Container); ok {
   941  		return x.Container
   942  	}
   943  	return nil
   944  }
   945  
   946  type isSessionToken_Body_Context interface {
   947  	isSessionToken_Body_Context()
   948  }
   949  
   950  type SessionToken_Body_Object struct {
   951  	// ObjectService session context
   952  	Object *ObjectSessionContext `protobuf:"bytes,5,opt,name=object,proto3,oneof"`
   953  }
   954  
   955  type SessionToken_Body_Container struct {
   956  	// ContainerService session context
   957  	Container *ContainerSessionContext `protobuf:"bytes,6,opt,name=container,proto3,oneof"`
   958  }
   959  
   960  func (*SessionToken_Body_Object) isSessionToken_Body_Context() {}
   961  
   962  func (*SessionToken_Body_Container) isSessionToken_Body_Context() {}
   963  
   964  // Lifetime parameters of the token. Field names taken from rfc7519.
   965  type SessionToken_Body_TokenLifetime struct {
   966  	state         protoimpl.MessageState
   967  	sizeCache     protoimpl.SizeCache
   968  	unknownFields protoimpl.UnknownFields
   969  
   970  	// Expiration Epoch
   971  	Exp uint64 `protobuf:"varint,1,opt,name=exp,proto3" json:"exp,omitempty"`
   972  	// Not valid before Epoch
   973  	Nbf uint64 `protobuf:"varint,2,opt,name=nbf,proto3" json:"nbf,omitempty"`
   974  	// Issued at Epoch
   975  	Iat uint64 `protobuf:"varint,3,opt,name=iat,proto3" json:"iat,omitempty"`
   976  }
   977  
   978  func (x *SessionToken_Body_TokenLifetime) Reset() {
   979  	*x = SessionToken_Body_TokenLifetime{}
   980  	if protoimpl.UnsafeEnabled {
   981  		mi := &file_session_grpc_types_proto_msgTypes[10]
   982  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   983  		ms.StoreMessageInfo(mi)
   984  	}
   985  }
   986  
   987  func (x *SessionToken_Body_TokenLifetime) String() string {
   988  	return protoimpl.X.MessageStringOf(x)
   989  }
   990  
   991  func (*SessionToken_Body_TokenLifetime) ProtoMessage() {}
   992  
   993  func (x *SessionToken_Body_TokenLifetime) ProtoReflect() protoreflect.Message {
   994  	mi := &file_session_grpc_types_proto_msgTypes[10]
   995  	if protoimpl.UnsafeEnabled && x != nil {
   996  		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
   997  		if ms.LoadMessageInfo() == nil {
   998  			ms.StoreMessageInfo(mi)
   999  		}
  1000  		return ms
  1001  	}
  1002  	return mi.MessageOf(x)
  1003  }
  1004  
  1005  // Deprecated: Use SessionToken_Body_TokenLifetime.ProtoReflect.Descriptor instead.
  1006  func (*SessionToken_Body_TokenLifetime) Descriptor() ([]byte, []int) {
  1007  	return file_session_grpc_types_proto_rawDescGZIP(), []int{2, 0, 0}
  1008  }
  1009  
  1010  func (x *SessionToken_Body_TokenLifetime) GetExp() uint64 {
  1011  	if x != nil {
  1012  		return x.Exp
  1013  	}
  1014  	return 0
  1015  }
  1016  
  1017  func (x *SessionToken_Body_TokenLifetime) GetNbf() uint64 {
  1018  	if x != nil {
  1019  		return x.Nbf
  1020  	}
  1021  	return 0
  1022  }
  1023  
  1024  func (x *SessionToken_Body_TokenLifetime) GetIat() uint64 {
  1025  	if x != nil {
  1026  		return x.Iat
  1027  	}
  1028  	return 0
  1029  }
  1030  
  1031  var File_session_grpc_types_proto protoreflect.FileDescriptor
  1032  
  1033  var file_session_grpc_types_proto_rawDesc = []byte{
  1034  	0x0a, 0x18, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x74,
  1035  	0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x11, 0x6e, 0x65, 0x6f, 0x2e,
  1036  	0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x1a, 0x15, 0x72,
  1037  	0x65, 0x66, 0x73, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70,
  1038  	0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x61, 0x63, 0x6c, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x74,
  1039  	0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x73, 0x74, 0x61, 0x74,
  1040  	0x75, 0x73, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x2e, 0x70, 0x72,
  1041  	0x6f, 0x74, 0x6f, 0x22, 0x85, 0x03, 0x0a, 0x14, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x65,
  1042  	0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x40, 0x0a, 0x04,
  1043  	0x76, 0x65, 0x72, 0x62, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2c, 0x2e, 0x6e, 0x65, 0x6f,
  1044  	0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x4f,
  1045  	0x62, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74,
  1046  	0x65, 0x78, 0x74, 0x2e, 0x56, 0x65, 0x72, 0x62, 0x52, 0x04, 0x76, 0x65, 0x72, 0x62, 0x12, 0x46,
  1047  	0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e,
  1048  	0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x73, 0x65, 0x73, 0x73, 0x69,
  1049  	0x6f, 0x6e, 0x2e, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
  1050  	0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x06,
  1051  	0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x1a, 0x77, 0x0a, 0x06, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74,
  1052  	0x12, 0x39, 0x0a, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x18, 0x01, 0x20,
  1053  	0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e,
  1054  	0x72, 0x65, 0x66, 0x73, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x44,
  1055  	0x52, 0x09, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x12, 0x32, 0x0a, 0x07, 0x6f,
  1056  	0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6e,
  1057  	0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x72, 0x65, 0x66, 0x73, 0x2e, 0x4f, 0x62,
  1058  	0x6a, 0x65, 0x63, 0x74, 0x49, 0x44, 0x52, 0x07, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x22,
  1059  	0x6a, 0x0a, 0x04, 0x56, 0x65, 0x72, 0x62, 0x12, 0x14, 0x0a, 0x10, 0x56, 0x45, 0x52, 0x42, 0x5f,
  1060  	0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x07, 0x0a,
  1061  	0x03, 0x50, 0x55, 0x54, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x47, 0x45, 0x54, 0x10, 0x02, 0x12,
  1062  	0x08, 0x0a, 0x04, 0x48, 0x45, 0x41, 0x44, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x53, 0x45, 0x41,
  1063  	0x52, 0x43, 0x48, 0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10,
  1064  	0x05, 0x12, 0x09, 0x0a, 0x05, 0x52, 0x41, 0x4e, 0x47, 0x45, 0x10, 0x06, 0x12, 0x0d, 0x0a, 0x09,
  1065  	0x52, 0x41, 0x4e, 0x47, 0x45, 0x48, 0x41, 0x53, 0x48, 0x10, 0x07, 0x22, 0xfa, 0x01, 0x0a, 0x17,
  1066  	0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
  1067  	0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x43, 0x0a, 0x04, 0x76, 0x65, 0x72, 0x62, 0x18,
  1068  	0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76,
  1069  	0x32, 0x2e, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69,
  1070  	0x6e, 0x65, 0x72, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78,
  1071  	0x74, 0x2e, 0x56, 0x65, 0x72, 0x62, 0x52, 0x04, 0x76, 0x65, 0x72, 0x62, 0x12, 0x1a, 0x0a, 0x08,
  1072  	0x77, 0x69, 0x6c, 0x64, 0x63, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08,
  1073  	0x77, 0x69, 0x6c, 0x64, 0x63, 0x61, 0x72, 0x64, 0x12, 0x3e, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74,
  1074  	0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b,
  1075  	0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x72, 0x65, 0x66, 0x73, 0x2e,
  1076  	0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x44, 0x52, 0x0b, 0x63, 0x6f, 0x6e,
  1077  	0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x44, 0x22, 0x3e, 0x0a, 0x04, 0x56, 0x65, 0x72, 0x62,
  1078  	0x12, 0x14, 0x0a, 0x10, 0x56, 0x45, 0x52, 0x42, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49,
  1079  	0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x07, 0x0a, 0x03, 0x50, 0x55, 0x54, 0x10, 0x01, 0x12,
  1080  	0x0a, 0x0a, 0x06, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x53,
  1081  	0x45, 0x54, 0x45, 0x41, 0x43, 0x4c, 0x10, 0x03, 0x22, 0xa0, 0x04, 0x0a, 0x0c, 0x53, 0x65, 0x73,
  1082  	0x73, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x38, 0x0a, 0x04, 0x62, 0x6f, 0x64,
  1083  	0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73,
  1084  	0x2e, 0x76, 0x32, 0x2e, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x65, 0x73, 0x73,
  1085  	0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x2e, 0x42, 0x6f, 0x64, 0x79, 0x52, 0x04, 0x62,
  1086  	0x6f, 0x64, 0x79, 0x12, 0x37, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65,
  1087  	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e,
  1088  	0x76, 0x32, 0x2e, 0x72, 0x65, 0x66, 0x73, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72,
  1089  	0x65, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x1a, 0x9c, 0x03, 0x0a,
  1090  	0x04, 0x42, 0x6f, 0x64, 0x79, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
  1091  	0x0c, 0x52, 0x02, 0x69, 0x64, 0x12, 0x32, 0x0a, 0x08, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x5f, 0x69,
  1092  	0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73,
  1093  	0x2e, 0x76, 0x32, 0x2e, 0x72, 0x65, 0x66, 0x73, 0x2e, 0x4f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x44,
  1094  	0x52, 0x07, 0x6f, 0x77, 0x6e, 0x65, 0x72, 0x49, 0x44, 0x12, 0x4e, 0x0a, 0x08, 0x6c, 0x69, 0x66,
  1095  	0x65, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x6e, 0x65,
  1096  	0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e,
  1097  	0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x2e, 0x42, 0x6f, 0x64,
  1098  	0x79, 0x2e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x4c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x52,
  1099  	0x08, 0x6c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x65, 0x73,
  1100  	0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a,
  1101  	0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0x12, 0x41, 0x0a, 0x06, 0x6f, 0x62,
  1102  	0x6a, 0x65, 0x63, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x6e, 0x65, 0x6f,
  1103  	0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x4f,
  1104  	0x62, 0x6a, 0x65, 0x63, 0x74, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74,
  1105  	0x65, 0x78, 0x74, 0x48, 0x00, 0x52, 0x06, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x4a, 0x0a,
  1106  	0x09, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b,
  1107  	0x32, 0x2a, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x73, 0x65, 0x73,
  1108  	0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x53, 0x65,
  1109  	0x73, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x48, 0x00, 0x52, 0x09,
  1110  	0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x1a, 0x45, 0x0a, 0x0d, 0x54, 0x6f, 0x6b,
  1111  	0x65, 0x6e, 0x4c, 0x69, 0x66, 0x65, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x65, 0x78,
  1112  	0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x65, 0x78, 0x70, 0x12, 0x10, 0x0a, 0x03,
  1113  	0x6e, 0x62, 0x66, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x6e, 0x62, 0x66, 0x12, 0x10,
  1114  	0x0a, 0x03, 0x69, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x03, 0x69, 0x61, 0x74,
  1115  	0x42, 0x09, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x31, 0x0a, 0x07, 0x58,
  1116  	0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
  1117  	0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
  1118  	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x22, 0x8d,
  1119  	0x03, 0x0a, 0x11, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x48, 0x65,
  1120  	0x61, 0x64, 0x65, 0x72, 0x12, 0x31, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18,
  1121  	0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76,
  1122  	0x32, 0x2e, 0x72, 0x65, 0x66, 0x73, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x07,
  1123  	0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68,
  1124  	0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x10, 0x0a,
  1125  	0x03, 0x74, 0x74, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x74, 0x74, 0x6c, 0x12,
  1126  	0x37, 0x0a, 0x09, 0x78, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03,
  1127  	0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x73,
  1128  	0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x58, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52, 0x08,
  1129  	0x78, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x44, 0x0a, 0x0d, 0x73, 0x65, 0x73, 0x73,
  1130  	0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
  1131  	0x1f, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x73, 0x65, 0x73, 0x73,
  1132  	0x69, 0x6f, 0x6e, 0x2e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e,
  1133  	0x52, 0x0c, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x3d,
  1134  	0x0a, 0x0c, 0x62, 0x65, 0x61, 0x72, 0x65, 0x72, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x06,
  1135  	0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32,
  1136  	0x2e, 0x61, 0x63, 0x6c, 0x2e, 0x42, 0x65, 0x61, 0x72, 0x65, 0x72, 0x54, 0x6f, 0x6b, 0x65, 0x6e,
  1137  	0x52, 0x0b, 0x62, 0x65, 0x61, 0x72, 0x65, 0x72, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x3c, 0x0a,
  1138  	0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x24, 0x2e,
  1139  	0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f,
  1140  	0x6e, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x48, 0x65, 0x61,
  1141  	0x64, 0x65, 0x72, 0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x21, 0x0a, 0x0c, 0x6d,
  1142  	0x61, 0x67, 0x69, 0x63, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28,
  1143  	0x04, 0x52, 0x0b, 0x6d, 0x61, 0x67, 0x69, 0x63, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0x99,
  1144  	0x02, 0x0a, 0x12, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x48,
  1145  	0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x31, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
  1146  	0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e,
  1147  	0x76, 0x32, 0x2e, 0x72, 0x65, 0x66, 0x73, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52,
  1148  	0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x70, 0x6f, 0x63,
  1149  	0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x65, 0x70, 0x6f, 0x63, 0x68, 0x12, 0x10,
  1150  	0x0a, 0x03, 0x74, 0x74, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x74, 0x74, 0x6c,
  1151  	0x12, 0x37, 0x0a, 0x09, 0x78, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20,
  1152  	0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e,
  1153  	0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x58, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x52,
  1154  	0x08, 0x78, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x3d, 0x0a, 0x06, 0x6f, 0x72, 0x69,
  1155  	0x67, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x25, 0x2e, 0x6e, 0x65, 0x6f, 0x2e,
  1156  	0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65,
  1157  	0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72,
  1158  	0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x12, 0x30, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74,
  1159  	0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66,
  1160  	0x73, 0x2e, 0x76, 0x32, 0x2e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74,
  1161  	0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0xab, 0x02, 0x0a, 0x19, 0x52,
  1162  	0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
  1163  	0x6f, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x40, 0x0a, 0x0e, 0x62, 0x6f, 0x64, 0x79,
  1164  	0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
  1165  	0x32, 0x19, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x72, 0x65, 0x66,
  1166  	0x73, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x0d, 0x62, 0x6f, 0x64,
  1167  	0x79, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x40, 0x0a, 0x0e, 0x6d, 0x65,
  1168  	0x74, 0x61, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01,
  1169  	0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x72,
  1170  	0x65, 0x66, 0x73, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x0d, 0x6d,
  1171  	0x65, 0x74, 0x61, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x44, 0x0a, 0x10,
  1172  	0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65,
  1173  	0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e,
  1174  	0x76, 0x32, 0x2e, 0x72, 0x65, 0x66, 0x73, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72,
  1175  	0x65, 0x52, 0x0f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75,
  1176  	0x72, 0x65, 0x12, 0x44, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01,
  1177  	0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x73,
  1178  	0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x56, 0x65,
  1179  	0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72,
  1180  	0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x22, 0xad, 0x02, 0x0a, 0x1a, 0x52, 0x65, 0x73,
  1181  	0x70, 0x6f, 0x6e, 0x73, 0x65, 0x56, 0x65, 0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
  1182  	0x6e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x12, 0x40, 0x0a, 0x0e, 0x62, 0x6f, 0x64, 0x79, 0x5f,
  1183  	0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
  1184  	0x19, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x72, 0x65, 0x66, 0x73,
  1185  	0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x0d, 0x62, 0x6f, 0x64, 0x79,
  1186  	0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x40, 0x0a, 0x0e, 0x6d, 0x65, 0x74,
  1187  	0x61, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
  1188  	0x0b, 0x32, 0x19, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x72, 0x65,
  1189  	0x66, 0x73, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x0d, 0x6d, 0x65,
  1190  	0x74, 0x61, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x44, 0x0a, 0x10, 0x6f,
  1191  	0x72, 0x69, 0x67, 0x69, 0x6e, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18,
  1192  	0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76,
  1193  	0x32, 0x2e, 0x72, 0x65, 0x66, 0x73, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65,
  1194  	0x52, 0x0f, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72,
  1195  	0x65, 0x12, 0x45, 0x0a, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28,
  1196  	0x0b, 0x32, 0x2d, 0x2e, 0x6e, 0x65, 0x6f, 0x2e, 0x66, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x73, 0x65,
  1197  	0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x56, 0x65,
  1198  	0x72, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72,
  1199  	0x52, 0x06, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x42, 0x5e, 0x5a, 0x3e, 0x67, 0x69, 0x74, 0x68,
  1200  	0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x54, 0x72, 0x75, 0x65, 0x43, 0x6c, 0x6f, 0x75, 0x64,
  1201  	0x4c, 0x61, 0x62, 0x2f, 0x66, 0x72, 0x6f, 0x73, 0x74, 0x66, 0x73, 0x2d, 0x61, 0x70, 0x69, 0x2d,
  1202  	0x67, 0x6f, 0x2f, 0x76, 0x32, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2f, 0x67, 0x72,
  1203  	0x70, 0x63, 0x3b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0xaa, 0x02, 0x1b, 0x4e, 0x65, 0x6f,
  1204  	0x2e, 0x46, 0x69, 0x6c, 0x65, 0x53, 0x74, 0x6f, 0x72, 0x61, 0x67, 0x65, 0x2e, 0x41, 0x50, 0x49,
  1205  	0x2e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
  1206  }
  1207  
  1208  var (
  1209  	file_session_grpc_types_proto_rawDescOnce sync.Once
  1210  	file_session_grpc_types_proto_rawDescData = file_session_grpc_types_proto_rawDesc
  1211  )
  1212  
  1213  func file_session_grpc_types_proto_rawDescGZIP() []byte {
  1214  	file_session_grpc_types_proto_rawDescOnce.Do(func() {
  1215  		file_session_grpc_types_proto_rawDescData = protoimpl.X.CompressGZIP(file_session_grpc_types_proto_rawDescData)
  1216  	})
  1217  	return file_session_grpc_types_proto_rawDescData
  1218  }
  1219  
  1220  var file_session_grpc_types_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
  1221  var file_session_grpc_types_proto_msgTypes = make([]protoimpl.MessageInfo, 11)
  1222  var file_session_grpc_types_proto_goTypes = []interface{}{
  1223  	(ObjectSessionContext_Verb)(0),          // 0: neo.fs.v2.session.ObjectSessionContext.Verb
  1224  	(ContainerSessionContext_Verb)(0),       // 1: neo.fs.v2.session.ContainerSessionContext.Verb
  1225  	(*ObjectSessionContext)(nil),            // 2: neo.fs.v2.session.ObjectSessionContext
  1226  	(*ContainerSessionContext)(nil),         // 3: neo.fs.v2.session.ContainerSessionContext
  1227  	(*SessionToken)(nil),                    // 4: neo.fs.v2.session.SessionToken
  1228  	(*XHeader)(nil),                         // 5: neo.fs.v2.session.XHeader
  1229  	(*RequestMetaHeader)(nil),               // 6: neo.fs.v2.session.RequestMetaHeader
  1230  	(*ResponseMetaHeader)(nil),              // 7: neo.fs.v2.session.ResponseMetaHeader
  1231  	(*RequestVerificationHeader)(nil),       // 8: neo.fs.v2.session.RequestVerificationHeader
  1232  	(*ResponseVerificationHeader)(nil),      // 9: neo.fs.v2.session.ResponseVerificationHeader
  1233  	(*ObjectSessionContext_Target)(nil),     // 10: neo.fs.v2.session.ObjectSessionContext.Target
  1234  	(*SessionToken_Body)(nil),               // 11: neo.fs.v2.session.SessionToken.Body
  1235  	(*SessionToken_Body_TokenLifetime)(nil), // 12: neo.fs.v2.session.SessionToken.Body.TokenLifetime
  1236  	(*grpc.ContainerID)(nil),                // 13: neo.fs.v2.refs.ContainerID
  1237  	(*grpc.Signature)(nil),                  // 14: neo.fs.v2.refs.Signature
  1238  	(*grpc.Version)(nil),                    // 15: neo.fs.v2.refs.Version
  1239  	(*grpc1.BearerToken)(nil),               // 16: neo.fs.v2.acl.BearerToken
  1240  	(*grpc2.Status)(nil),                    // 17: neo.fs.v2.status.Status
  1241  	(*grpc.ObjectID)(nil),                   // 18: neo.fs.v2.refs.ObjectID
  1242  	(*grpc.OwnerID)(nil),                    // 19: neo.fs.v2.refs.OwnerID
  1243  }
  1244  var file_session_grpc_types_proto_depIdxs = []int32{
  1245  	0,  // 0: neo.fs.v2.session.ObjectSessionContext.verb:type_name -> neo.fs.v2.session.ObjectSessionContext.Verb
  1246  	10, // 1: neo.fs.v2.session.ObjectSessionContext.target:type_name -> neo.fs.v2.session.ObjectSessionContext.Target
  1247  	1,  // 2: neo.fs.v2.session.ContainerSessionContext.verb:type_name -> neo.fs.v2.session.ContainerSessionContext.Verb
  1248  	13, // 3: neo.fs.v2.session.ContainerSessionContext.container_id:type_name -> neo.fs.v2.refs.ContainerID
  1249  	11, // 4: neo.fs.v2.session.SessionToken.body:type_name -> neo.fs.v2.session.SessionToken.Body
  1250  	14, // 5: neo.fs.v2.session.SessionToken.signature:type_name -> neo.fs.v2.refs.Signature
  1251  	15, // 6: neo.fs.v2.session.RequestMetaHeader.version:type_name -> neo.fs.v2.refs.Version
  1252  	5,  // 7: neo.fs.v2.session.RequestMetaHeader.x_headers:type_name -> neo.fs.v2.session.XHeader
  1253  	4,  // 8: neo.fs.v2.session.RequestMetaHeader.session_token:type_name -> neo.fs.v2.session.SessionToken
  1254  	16, // 9: neo.fs.v2.session.RequestMetaHeader.bearer_token:type_name -> neo.fs.v2.acl.BearerToken
  1255  	6,  // 10: neo.fs.v2.session.RequestMetaHeader.origin:type_name -> neo.fs.v2.session.RequestMetaHeader
  1256  	15, // 11: neo.fs.v2.session.ResponseMetaHeader.version:type_name -> neo.fs.v2.refs.Version
  1257  	5,  // 12: neo.fs.v2.session.ResponseMetaHeader.x_headers:type_name -> neo.fs.v2.session.XHeader
  1258  	7,  // 13: neo.fs.v2.session.ResponseMetaHeader.origin:type_name -> neo.fs.v2.session.ResponseMetaHeader
  1259  	17, // 14: neo.fs.v2.session.ResponseMetaHeader.status:type_name -> neo.fs.v2.status.Status
  1260  	14, // 15: neo.fs.v2.session.RequestVerificationHeader.body_signature:type_name -> neo.fs.v2.refs.Signature
  1261  	14, // 16: neo.fs.v2.session.RequestVerificationHeader.meta_signature:type_name -> neo.fs.v2.refs.Signature
  1262  	14, // 17: neo.fs.v2.session.RequestVerificationHeader.origin_signature:type_name -> neo.fs.v2.refs.Signature
  1263  	8,  // 18: neo.fs.v2.session.RequestVerificationHeader.origin:type_name -> neo.fs.v2.session.RequestVerificationHeader
  1264  	14, // 19: neo.fs.v2.session.ResponseVerificationHeader.body_signature:type_name -> neo.fs.v2.refs.Signature
  1265  	14, // 20: neo.fs.v2.session.ResponseVerificationHeader.meta_signature:type_name -> neo.fs.v2.refs.Signature
  1266  	14, // 21: neo.fs.v2.session.ResponseVerificationHeader.origin_signature:type_name -> neo.fs.v2.refs.Signature
  1267  	9,  // 22: neo.fs.v2.session.ResponseVerificationHeader.origin:type_name -> neo.fs.v2.session.ResponseVerificationHeader
  1268  	13, // 23: neo.fs.v2.session.ObjectSessionContext.Target.container:type_name -> neo.fs.v2.refs.ContainerID
  1269  	18, // 24: neo.fs.v2.session.ObjectSessionContext.Target.objects:type_name -> neo.fs.v2.refs.ObjectID
  1270  	19, // 25: neo.fs.v2.session.SessionToken.Body.owner_id:type_name -> neo.fs.v2.refs.OwnerID
  1271  	12, // 26: neo.fs.v2.session.SessionToken.Body.lifetime:type_name -> neo.fs.v2.session.SessionToken.Body.TokenLifetime
  1272  	2,  // 27: neo.fs.v2.session.SessionToken.Body.object:type_name -> neo.fs.v2.session.ObjectSessionContext
  1273  	3,  // 28: neo.fs.v2.session.SessionToken.Body.container:type_name -> neo.fs.v2.session.ContainerSessionContext
  1274  	29, // [29:29] is the sub-list for method output_type
  1275  	29, // [29:29] is the sub-list for method input_type
  1276  	29, // [29:29] is the sub-list for extension type_name
  1277  	29, // [29:29] is the sub-list for extension extendee
  1278  	0,  // [0:29] is the sub-list for field type_name
  1279  }
  1280  
  1281  func init() { file_session_grpc_types_proto_init() }
  1282  func file_session_grpc_types_proto_init() {
  1283  	if File_session_grpc_types_proto != nil {
  1284  		return
  1285  	}
  1286  	if !protoimpl.UnsafeEnabled {
  1287  		file_session_grpc_types_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
  1288  			switch v := v.(*ObjectSessionContext); i {
  1289  			case 0:
  1290  				return &v.state
  1291  			case 1:
  1292  				return &v.sizeCache
  1293  			case 2:
  1294  				return &v.unknownFields
  1295  			default:
  1296  				return nil
  1297  			}
  1298  		}
  1299  		file_session_grpc_types_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
  1300  			switch v := v.(*ContainerSessionContext); i {
  1301  			case 0:
  1302  				return &v.state
  1303  			case 1:
  1304  				return &v.sizeCache
  1305  			case 2:
  1306  				return &v.unknownFields
  1307  			default:
  1308  				return nil
  1309  			}
  1310  		}
  1311  		file_session_grpc_types_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
  1312  			switch v := v.(*SessionToken); i {
  1313  			case 0:
  1314  				return &v.state
  1315  			case 1:
  1316  				return &v.sizeCache
  1317  			case 2:
  1318  				return &v.unknownFields
  1319  			default:
  1320  				return nil
  1321  			}
  1322  		}
  1323  		file_session_grpc_types_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
  1324  			switch v := v.(*XHeader); i {
  1325  			case 0:
  1326  				return &v.state
  1327  			case 1:
  1328  				return &v.sizeCache
  1329  			case 2:
  1330  				return &v.unknownFields
  1331  			default:
  1332  				return nil
  1333  			}
  1334  		}
  1335  		file_session_grpc_types_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
  1336  			switch v := v.(*RequestMetaHeader); i {
  1337  			case 0:
  1338  				return &v.state
  1339  			case 1:
  1340  				return &v.sizeCache
  1341  			case 2:
  1342  				return &v.unknownFields
  1343  			default:
  1344  				return nil
  1345  			}
  1346  		}
  1347  		file_session_grpc_types_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
  1348  			switch v := v.(*ResponseMetaHeader); i {
  1349  			case 0:
  1350  				return &v.state
  1351  			case 1:
  1352  				return &v.sizeCache
  1353  			case 2:
  1354  				return &v.unknownFields
  1355  			default:
  1356  				return nil
  1357  			}
  1358  		}
  1359  		file_session_grpc_types_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
  1360  			switch v := v.(*RequestVerificationHeader); i {
  1361  			case 0:
  1362  				return &v.state
  1363  			case 1:
  1364  				return &v.sizeCache
  1365  			case 2:
  1366  				return &v.unknownFields
  1367  			default:
  1368  				return nil
  1369  			}
  1370  		}
  1371  		file_session_grpc_types_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
  1372  			switch v := v.(*ResponseVerificationHeader); i {
  1373  			case 0:
  1374  				return &v.state
  1375  			case 1:
  1376  				return &v.sizeCache
  1377  			case 2:
  1378  				return &v.unknownFields
  1379  			default:
  1380  				return nil
  1381  			}
  1382  		}
  1383  		file_session_grpc_types_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
  1384  			switch v := v.(*ObjectSessionContext_Target); i {
  1385  			case 0:
  1386  				return &v.state
  1387  			case 1:
  1388  				return &v.sizeCache
  1389  			case 2:
  1390  				return &v.unknownFields
  1391  			default:
  1392  				return nil
  1393  			}
  1394  		}
  1395  		file_session_grpc_types_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
  1396  			switch v := v.(*SessionToken_Body); i {
  1397  			case 0:
  1398  				return &v.state
  1399  			case 1:
  1400  				return &v.sizeCache
  1401  			case 2:
  1402  				return &v.unknownFields
  1403  			default:
  1404  				return nil
  1405  			}
  1406  		}
  1407  		file_session_grpc_types_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
  1408  			switch v := v.(*SessionToken_Body_TokenLifetime); i {
  1409  			case 0:
  1410  				return &v.state
  1411  			case 1:
  1412  				return &v.sizeCache
  1413  			case 2:
  1414  				return &v.unknownFields
  1415  			default:
  1416  				return nil
  1417  			}
  1418  		}
  1419  	}
  1420  	file_session_grpc_types_proto_msgTypes[9].OneofWrappers = []interface{}{
  1421  		(*SessionToken_Body_Object)(nil),
  1422  		(*SessionToken_Body_Container)(nil),
  1423  	}
  1424  	type x struct{}
  1425  	out := protoimpl.TypeBuilder{
  1426  		File: protoimpl.DescBuilder{
  1427  			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
  1428  			RawDescriptor: file_session_grpc_types_proto_rawDesc,
  1429  			NumEnums:      2,
  1430  			NumMessages:   11,
  1431  			NumExtensions: 0,
  1432  			NumServices:   0,
  1433  		},
  1434  		GoTypes:           file_session_grpc_types_proto_goTypes,
  1435  		DependencyIndexes: file_session_grpc_types_proto_depIdxs,
  1436  		EnumInfos:         file_session_grpc_types_proto_enumTypes,
  1437  		MessageInfos:      file_session_grpc_types_proto_msgTypes,
  1438  	}.Build()
  1439  	File_session_grpc_types_proto = out.File
  1440  	file_session_grpc_types_proto_rawDesc = nil
  1441  	file_session_grpc_types_proto_goTypes = nil
  1442  	file_session_grpc_types_proto_depIdxs = nil
  1443  }