adds MaxNodes and Start to FindStorageNodes (#569)

* adds MaxNodes and Start params to FindStorageNodesRequest

* use Gets on protos
This commit is contained in:
Jennifer Li Johnson 2018-11-02 14:50:28 -04:00 committed by GitHub
parent fe36d5cd7d
commit 7de84a0a40
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 112 additions and 96 deletions

View File

@ -57,7 +57,11 @@ func (o *Server) BulkLookup(ctx context.Context, reqs *pb.LookupRequests) (*pb.L
// FindStorageNodes searches the overlay network for nodes that meet the provided requirements
func (o *Server) FindStorageNodes(ctx context.Context, req *pb.FindStorageNodesRequest) (resp *pb.FindStorageNodesResponse, err error) {
opts := req.GetOpts()
maxNodes := opts.GetAmount()
maxNodes := req.GetMaxNodes()
if maxNodes <= 0 {
maxNodes = opts.GetAmount()
}
excluded := opts.GetExcludedNodes()
restrictions := opts.GetRestrictions()
restrictedBandwidth := restrictions.GetFreeBandwidth()
@ -67,7 +71,7 @@ func (o *Server) FindStorageNodes(ctx context.Context, req *pb.FindStorageNodesR
result := []*pb.Node{}
for {
var nodes []*pb.Node
nodes, start, err = o.populate(ctx, start, maxNodes, restrictedBandwidth, restrictedSpace, excluded)
nodes, start, err = o.populate(ctx, req.GetStart(), maxNodes, restrictedBandwidth, restrictedSpace, excluded)
if err != nil {
return nil, Error.Wrap(err)
}

View File

@ -1,5 +1,5 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: overlay.proto
// source: pkg/pb/overlay.proto
package pb
@ -34,7 +34,6 @@ const (
var NodeTransport_name = map[int32]string{
0: "TCP_TLS_GRPC",
}
var NodeTransport_value = map[string]int32{
"TCP_TLS_GRPC": 0,
}
@ -42,9 +41,8 @@ var NodeTransport_value = map[string]int32{
func (x NodeTransport) String() string {
return proto.EnumName(NodeTransport_name, int32(x))
}
func (NodeTransport) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{0}
return fileDescriptor_overlay_3299686c77e632f1, []int{0}
}
// NodeType is an enum of possible node types
@ -59,7 +57,6 @@ var NodeType_name = map[int32]string{
0: "ADMIN",
1: "STORAGE",
}
var NodeType_value = map[string]int32{
"ADMIN": 0,
"STORAGE": 1,
@ -68,9 +65,8 @@ var NodeType_value = map[string]int32{
func (x NodeType) String() string {
return proto.EnumName(NodeType_name, int32(x))
}
func (NodeType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{1}
return fileDescriptor_overlay_3299686c77e632f1, []int{1}
}
type Restriction_Operator int32
@ -90,7 +86,6 @@ var Restriction_Operator_name = map[int32]string{
3: "LTE",
4: "GTE",
}
var Restriction_Operator_value = map[string]int32{
"LT": 0,
"EQ": 1,
@ -102,9 +97,8 @@ var Restriction_Operator_value = map[string]int32{
func (x Restriction_Operator) String() string {
return proto.EnumName(Restriction_Operator_name, int32(x))
}
func (Restriction_Operator) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{15, 0}
return fileDescriptor_overlay_3299686c77e632f1, []int{15, 0}
}
type Restriction_Operand int32
@ -118,7 +112,6 @@ var Restriction_Operand_name = map[int32]string{
0: "freeBandwidth",
1: "freeDisk",
}
var Restriction_Operand_value = map[string]int32{
"freeBandwidth": 0,
"freeDisk": 1,
@ -127,9 +120,8 @@ var Restriction_Operand_value = map[string]int32{
func (x Restriction_Operand) String() string {
return proto.EnumName(Restriction_Operand_name, int32(x))
}
func (Restriction_Operand) EnumDescriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{15, 1}
return fileDescriptor_overlay_3299686c77e632f1, []int{15, 1}
}
// LookupRequest is is request message for the lookup rpc call
@ -144,7 +136,7 @@ func (m *LookupRequest) Reset() { *m = LookupRequest{} }
func (m *LookupRequest) String() string { return proto.CompactTextString(m) }
func (*LookupRequest) ProtoMessage() {}
func (*LookupRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{0}
return fileDescriptor_overlay_3299686c77e632f1, []int{0}
}
func (m *LookupRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LookupRequest.Unmarshal(m, b)
@ -183,7 +175,7 @@ func (m *LookupResponse) Reset() { *m = LookupResponse{} }
func (m *LookupResponse) String() string { return proto.CompactTextString(m) }
func (*LookupResponse) ProtoMessage() {}
func (*LookupResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{1}
return fileDescriptor_overlay_3299686c77e632f1, []int{1}
}
func (m *LookupResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LookupResponse.Unmarshal(m, b)
@ -222,7 +214,7 @@ func (m *LookupRequests) Reset() { *m = LookupRequests{} }
func (m *LookupRequests) String() string { return proto.CompactTextString(m) }
func (*LookupRequests) ProtoMessage() {}
func (*LookupRequests) Descriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{2}
return fileDescriptor_overlay_3299686c77e632f1, []int{2}
}
func (m *LookupRequests) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LookupRequests.Unmarshal(m, b)
@ -261,7 +253,7 @@ func (m *LookupResponses) Reset() { *m = LookupResponses{} }
func (m *LookupResponses) String() string { return proto.CompactTextString(m) }
func (*LookupResponses) ProtoMessage() {}
func (*LookupResponses) Descriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{3}
return fileDescriptor_overlay_3299686c77e632f1, []int{3}
}
func (m *LookupResponses) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LookupResponses.Unmarshal(m, b)
@ -300,7 +292,7 @@ func (m *FindStorageNodesResponse) Reset() { *m = FindStorageNodesRespon
func (m *FindStorageNodesResponse) String() string { return proto.CompactTextString(m) }
func (*FindStorageNodesResponse) ProtoMessage() {}
func (*FindStorageNodesResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{4}
return fileDescriptor_overlay_3299686c77e632f1, []int{4}
}
func (m *FindStorageNodesResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindStorageNodesResponse.Unmarshal(m, b)
@ -332,6 +324,8 @@ type FindStorageNodesRequest struct {
ObjectSize int64 `protobuf:"varint,1,opt,name=objectSize,proto3" json:"objectSize,omitempty"`
ContractLength *duration.Duration `protobuf:"bytes,2,opt,name=contractLength,proto3" json:"contractLength,omitempty"`
Opts *OverlayOptions `protobuf:"bytes,3,opt,name=opts,proto3" json:"opts,omitempty"`
Start []byte `protobuf:"bytes,4,opt,name=start,proto3" json:"start,omitempty"`
MaxNodes int64 `protobuf:"varint,5,opt,name=maxNodes,proto3" json:"maxNodes,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
@ -341,7 +335,7 @@ func (m *FindStorageNodesRequest) Reset() { *m = FindStorageNodesRequest
func (m *FindStorageNodesRequest) String() string { return proto.CompactTextString(m) }
func (*FindStorageNodesRequest) ProtoMessage() {}
func (*FindStorageNodesRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{5}
return fileDescriptor_overlay_3299686c77e632f1, []int{5}
}
func (m *FindStorageNodesRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_FindStorageNodesRequest.Unmarshal(m, b)
@ -382,6 +376,20 @@ func (m *FindStorageNodesRequest) GetOpts() *OverlayOptions {
return nil
}
func (m *FindStorageNodesRequest) GetStart() []byte {
if m != nil {
return m.Start
}
return nil
}
func (m *FindStorageNodesRequest) GetMaxNodes() int64 {
if m != nil {
return m.MaxNodes
}
return 0
}
// NodeAddress contains the information needed to communicate with a node on the network
type NodeAddress struct {
Transport NodeTransport `protobuf:"varint,1,opt,name=transport,proto3,enum=overlay.NodeTransport" json:"transport,omitempty"`
@ -395,7 +403,7 @@ func (m *NodeAddress) Reset() { *m = NodeAddress{} }
func (m *NodeAddress) String() string { return proto.CompactTextString(m) }
func (*NodeAddress) ProtoMessage() {}
func (*NodeAddress) Descriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{6}
return fileDescriptor_overlay_3299686c77e632f1, []int{6}
}
func (m *NodeAddress) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_NodeAddress.Unmarshal(m, b)
@ -446,7 +454,7 @@ func (m *OverlayOptions) Reset() { *m = OverlayOptions{} }
func (m *OverlayOptions) String() string { return proto.CompactTextString(m) }
func (*OverlayOptions) ProtoMessage() {}
func (*OverlayOptions) Descriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{7}
return fileDescriptor_overlay_3299686c77e632f1, []int{7}
}
func (m *OverlayOptions) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_OverlayOptions.Unmarshal(m, b)
@ -522,7 +530,7 @@ func (m *NodeRep) Reset() { *m = NodeRep{} }
func (m *NodeRep) String() string { return proto.CompactTextString(m) }
func (*NodeRep) ProtoMessage() {}
func (*NodeRep) Descriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{8}
return fileDescriptor_overlay_3299686c77e632f1, []int{8}
}
func (m *NodeRep) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_NodeRep.Unmarshal(m, b)
@ -576,7 +584,7 @@ func (m *NodeRestrictions) Reset() { *m = NodeRestrictions{} }
func (m *NodeRestrictions) String() string { return proto.CompactTextString(m) }
func (*NodeRestrictions) ProtoMessage() {}
func (*NodeRestrictions) Descriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{9}
return fileDescriptor_overlay_3299686c77e632f1, []int{9}
}
func (m *NodeRestrictions) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_NodeRestrictions.Unmarshal(m, b)
@ -625,7 +633,7 @@ func (m *Node) Reset() { *m = Node{} }
func (m *Node) String() string { return proto.CompactTextString(m) }
func (*Node) ProtoMessage() {}
func (*Node) Descriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{10}
return fileDescriptor_overlay_3299686c77e632f1, []int{10}
}
func (m *Node) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Node.Unmarshal(m, b)
@ -687,7 +695,7 @@ func (m *QueryRequest) Reset() { *m = QueryRequest{} }
func (m *QueryRequest) String() string { return proto.CompactTextString(m) }
func (*QueryRequest) ProtoMessage() {}
func (*QueryRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{11}
return fileDescriptor_overlay_3299686c77e632f1, []int{11}
}
func (m *QueryRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_QueryRequest.Unmarshal(m, b)
@ -747,7 +755,7 @@ func (m *QueryResponse) Reset() { *m = QueryResponse{} }
func (m *QueryResponse) String() string { return proto.CompactTextString(m) }
func (*QueryResponse) ProtoMessage() {}
func (*QueryResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{12}
return fileDescriptor_overlay_3299686c77e632f1, []int{12}
}
func (m *QueryResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_QueryResponse.Unmarshal(m, b)
@ -791,7 +799,7 @@ func (m *PingRequest) Reset() { *m = PingRequest{} }
func (m *PingRequest) String() string { return proto.CompactTextString(m) }
func (*PingRequest) ProtoMessage() {}
func (*PingRequest) Descriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{13}
return fileDescriptor_overlay_3299686c77e632f1, []int{13}
}
func (m *PingRequest) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PingRequest.Unmarshal(m, b)
@ -821,7 +829,7 @@ func (m *PingResponse) Reset() { *m = PingResponse{} }
func (m *PingResponse) String() string { return proto.CompactTextString(m) }
func (*PingResponse) ProtoMessage() {}
func (*PingResponse) Descriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{14}
return fileDescriptor_overlay_3299686c77e632f1, []int{14}
}
func (m *PingResponse) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PingResponse.Unmarshal(m, b)
@ -854,7 +862,7 @@ func (m *Restriction) Reset() { *m = Restriction{} }
func (m *Restriction) String() string { return proto.CompactTextString(m) }
func (*Restriction) ProtoMessage() {}
func (*Restriction) Descriptor() ([]byte, []int) {
return fileDescriptor_61fc82527fbe24ad, []int{15}
return fileDescriptor_overlay_3299686c77e632f1, []int{15}
}
func (m *Restriction) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Restriction.Unmarshal(m, b)
@ -1059,7 +1067,7 @@ var _Overlay_serviceDesc = grpc.ServiceDesc{
},
},
Streams: []grpc.StreamDesc{},
Metadata: "overlay.proto",
Metadata: "pkg/pb/overlay.proto",
}
// NodesClient is the client API for Nodes service.
@ -1156,72 +1164,74 @@ var _Nodes_serviceDesc = grpc.ServiceDesc{
},
},
Streams: []grpc.StreamDesc{},
Metadata: "overlay.proto",
Metadata: "pkg/pb/overlay.proto",
}
func init() { proto.RegisterFile("overlay.proto", fileDescriptor_61fc82527fbe24ad) }
func init() { proto.RegisterFile("pkg/pb/overlay.proto", fileDescriptor_overlay_3299686c77e632f1) }
var fileDescriptor_61fc82527fbe24ad = []byte{
// 968 bytes of a gzipped FileDescriptorProto
var fileDescriptor_overlay_3299686c77e632f1 = []byte{
// 998 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x55, 0x6d, 0x6f, 0xe3, 0x44,
0x10, 0xae, 0x9d, 0xf7, 0x49, 0xe2, 0xf3, 0x8d, 0xee, 0xda, 0x10, 0x1d, 0xa7, 0xd6, 0x50, 0x51,
0x8a, 0x94, 0x93, 0xd2, 0x53, 0xa5, 0x4a, 0xa0, 0xaa, 0x6f, 0x54, 0x27, 0x42, 0xdb, 0xdb, 0x04,
0x21, 0x21, 0xa1, 0xca, 0x89, 0xf7, 0x72, 0xa6, 0xc9, 0xae, 0xb1, 0xd7, 0x77, 0x17, 0x7e, 0x04,
0xff, 0x82, 0x0f, 0x48, 0xfc, 0x26, 0x7e, 0x07, 0x1f, 0x91, 0x77, 0xd7, 0x4e, 0xec, 0x36, 0x27,
0xf8, 0x64, 0xcf, 0x33, 0xcf, 0x8c, 0x67, 0x66, 0x1f, 0xcf, 0x42, 0x9b, 0xbf, 0xa3, 0xe1, 0xcc,
0x5d, 0xf4, 0x82, 0x90, 0x0b, 0x8e, 0x35, 0x6d, 0x76, 0x9f, 0x4f, 0x39, 0x9f, 0xce, 0xe8, 0x0b,
0x09, 0x8f, 0xe3, 0x37, 0x2f, 0xbc, 0x38, 0x74, 0x85, 0xcf, 0x99, 0x22, 0x3a, 0x5f, 0x40, 0x7b,
0xc0, 0xf9, 0x5d, 0x1c, 0x10, 0xfa, 0x6b, 0x4c, 0x23, 0x81, 0x9b, 0x50, 0x65, 0xdc, 0xa3, 0xaf,
0xce, 0x3b, 0xc6, 0xb6, 0xb1, 0xd7, 0x20, 0xda, 0x72, 0x0e, 0xc0, 0x4a, 0x89, 0x51, 0xc0, 0x59,
0x44, 0x71, 0x07, 0xca, 0x89, 0x4f, 0xf2, 0x9a, 0xfd, 0x76, 0x2f, 0xad, 0xe0, 0x8a, 0x7b, 0x94,
0x48, 0x97, 0x73, 0xb5, 0x0c, 0x92, 0xd9, 0x23, 0xfc, 0x1a, 0xda, 0x33, 0x89, 0x84, 0x0a, 0xe9,
0x18, 0xdb, 0xa5, 0xbd, 0x66, 0x7f, 0x33, 0x8b, 0xce, 0xf1, 0x49, 0x9e, 0xec, 0x10, 0x78, 0x94,
0x2f, 0x22, 0xc2, 0x63, 0xb0, 0x52, 0x8e, 0x82, 0x74, 0xc6, 0xad, 0x7b, 0x19, 0x95, 0x9b, 0x14,
0xe8, 0xce, 0x31, 0x74, 0xbe, 0xf5, 0x99, 0x37, 0x14, 0x3c, 0x74, 0xa7, 0x34, 0x29, 0x3e, 0xca,
0x5a, 0xfc, 0x0c, 0x2a, 0x49, 0x1f, 0x91, 0xce, 0x59, 0xe8, 0x51, 0xf9, 0x9c, 0x3f, 0x0d, 0xd8,
0xba, 0x9f, 0x41, 0x4d, 0xf3, 0x39, 0x00, 0x1f, 0xff, 0x42, 0x27, 0x62, 0xe8, 0xff, 0xa6, 0x26,
0x55, 0x22, 0x2b, 0x08, 0x9e, 0x80, 0x35, 0xe1, 0x4c, 0x84, 0xee, 0x44, 0x0c, 0x28, 0x9b, 0x8a,
0xb7, 0x1d, 0x53, 0x4e, 0xf3, 0x93, 0x9e, 0x3a, 0xb7, 0x5e, 0x7a, 0x6e, 0xbd, 0x73, 0x7d, 0x6e,
0xa4, 0x10, 0x80, 0x5f, 0x41, 0x99, 0x07, 0x22, 0xea, 0x94, 0x64, 0xe0, 0xb2, 0xed, 0x6b, 0xf5,
0xbc, 0x0e, 0x92, 0xa8, 0x88, 0x48, 0x92, 0xf3, 0x33, 0x34, 0x93, 0xfa, 0x4e, 0x3c, 0x2f, 0xa4,
0x51, 0x84, 0x2f, 0xa1, 0x21, 0x42, 0x97, 0x45, 0x01, 0x0f, 0x85, 0xac, 0xce, 0x5a, 0x39, 0x89,
0x84, 0x38, 0x4a, 0xbd, 0x64, 0x49, 0xc4, 0x0e, 0xd4, 0x5c, 0x95, 0x40, 0x56, 0xdb, 0x20, 0xa9,
0xe9, 0xfc, 0x61, 0x82, 0x95, 0xff, 0x2e, 0x1e, 0x01, 0xcc, 0xdd, 0x0f, 0x03, 0x57, 0x50, 0x36,
0x59, 0x68, 0xad, 0x7c, 0xa4, 0xbb, 0x15, 0x32, 0x1e, 0x42, 0x7b, 0xee, 0x33, 0x42, 0x83, 0x58,
0x48, 0xa7, 0x9e, 0x8d, 0x9d, 0x3f, 0x05, 0x1a, 0x90, 0x3c, 0x0d, 0x1d, 0x68, 0xcd, 0x7d, 0x36,
0x0c, 0x28, 0xf5, 0xbe, 0x1b, 0x07, 0x6a, 0x32, 0x25, 0x92, 0xc3, 0x12, 0x99, 0xbb, 0x73, 0x1e,
0x33, 0xd1, 0x29, 0x4b, 0xaf, 0xb6, 0xf0, 0x1b, 0x68, 0x85, 0x34, 0x12, 0xa1, 0x3f, 0x91, 0xe5,
0x77, 0x2a, 0xba, 0xe0, 0xfc, 0x27, 0x97, 0x04, 0x92, 0xa3, 0xe3, 0x2e, 0x58, 0xf4, 0xc3, 0x64,
0x16, 0x7b, 0xd4, 0xbb, 0x55, 0xca, 0xa9, 0x6e, 0x97, 0xf6, 0x1a, 0xa4, 0x9d, 0xa2, 0x52, 0x1d,
0xce, 0x7b, 0xa8, 0xe9, 0xda, 0xf1, 0x19, 0x34, 0xe6, 0x3e, 0xfb, 0x21, 0x10, 0xfe, 0x5c, 0x09,
0xc4, 0x24, 0x4b, 0x00, 0xf7, 0xe0, 0xd1, 0xdc, 0x67, 0x27, 0xb1, 0xe7, 0x8b, 0x61, 0x3c, 0x99,
0xa4, 0x23, 0x37, 0x49, 0x11, 0xc6, 0xcf, 0xe5, 0xb0, 0x24, 0x74, 0x26, 0xfb, 0x52, 0x5d, 0xe7,
0x41, 0x67, 0x04, 0x76, 0xb1, 0x83, 0x24, 0xf2, 0x4d, 0x48, 0xe9, 0xa9, 0xcb, 0xbc, 0xf7, 0xbe,
0x27, 0xde, 0x6a, 0x99, 0xe6, 0x41, 0xec, 0x42, 0x3d, 0x01, 0xce, 0xfd, 0xe8, 0x4e, 0x96, 0x50,
0x22, 0x99, 0xed, 0xfc, 0x65, 0x40, 0x39, 0x49, 0x8b, 0x16, 0x98, 0xbe, 0xa7, 0x17, 0x87, 0xe9,
0x7b, 0xd8, 0xcb, 0x2b, 0xa5, 0xd9, 0x7f, 0x92, 0x1b, 0xa4, 0x96, 0x61, 0xa6, 0x1f, 0xdc, 0x85,
0xb2, 0x58, 0x04, 0x54, 0xd6, 0x6e, 0xf5, 0x1f, 0xe7, 0xa5, 0xb8, 0x08, 0x28, 0x91, 0xee, 0x7b,
0x87, 0x54, 0xfe, 0x5f, 0x87, 0xe4, 0xfc, 0x6e, 0x40, 0xeb, 0x75, 0x4c, 0xc3, 0x45, 0xfa, 0x97,
0xee, 0x42, 0x35, 0xa2, 0xcc, 0xa3, 0xe1, 0xc3, 0xbb, 0x4c, 0x3b, 0x13, 0x9a, 0x70, 0xc3, 0x29,
0x15, 0xba, 0x99, 0x22, 0x4d, 0x39, 0xf1, 0x09, 0x54, 0x66, 0xfe, 0xdc, 0x4f, 0x4f, 0x40, 0x19,
0xc9, 0xfc, 0x02, 0x9f, 0x4d, 0xc7, 0xee, 0xe4, 0x4e, 0xd6, 0x5b, 0x27, 0x99, 0xed, 0xb8, 0xd0,
0xd6, 0xf5, 0xe8, 0xbd, 0xf3, 0x1f, 0x0b, 0xfa, 0x12, 0xea, 0xd9, 0xd6, 0x33, 0x1f, 0xda, 0x50,
0x99, 0xdb, 0x69, 0x43, 0xf3, 0xc6, 0x67, 0x53, 0xdd, 0xb1, 0x63, 0x41, 0x4b, 0x99, 0xda, 0xfd,
0x8f, 0x01, 0xcd, 0x95, 0x89, 0xe1, 0x11, 0xd4, 0x79, 0x40, 0x43, 0x57, 0xf0, 0x50, 0xef, 0x85,
0x4f, 0xb3, 0xcc, 0x2b, 0xbc, 0xde, 0xb5, 0x26, 0x91, 0x8c, 0x8e, 0x87, 0x50, 0x93, 0xef, 0xcc,
0x93, 0x63, 0xb2, 0xfa, 0xcf, 0xd6, 0x47, 0x32, 0x8f, 0xa4, 0xe4, 0x64, 0x6c, 0xef, 0xdc, 0x59,
0x4c, 0xd3, 0xb1, 0x49, 0xc3, 0x79, 0x09, 0xf5, 0xf4, 0x1b, 0x58, 0x05, 0x73, 0x30, 0xb2, 0x37,
0x92, 0xe7, 0xc5, 0x6b, 0xdb, 0x48, 0x9e, 0x97, 0x23, 0xdb, 0xc4, 0x1a, 0x94, 0x06, 0xa3, 0x0b,
0xbb, 0x94, 0xbc, 0x5c, 0x8e, 0x2e, 0xec, 0xb2, 0xb3, 0x0f, 0x35, 0x9d, 0x1f, 0x1f, 0x17, 0xd4,
0x6d, 0x6f, 0x60, 0x6b, 0x29, 0x65, 0xdb, 0xd8, 0xdf, 0x81, 0x76, 0x6e, 0xd3, 0xa1, 0x0d, 0xad,
0xd1, 0xd9, 0xcd, 0xed, 0x68, 0x30, 0xbc, 0xbd, 0x24, 0x37, 0x67, 0xf6, 0xc6, 0xbe, 0x03, 0xf5,
0x54, 0x81, 0xd8, 0x80, 0xca, 0xc9, 0xf9, 0xf7, 0xaf, 0xae, 0xec, 0x0d, 0x6c, 0x42, 0x6d, 0x38,
0xba, 0x26, 0x27, 0x97, 0x17, 0xb6, 0xd1, 0xff, 0xdb, 0x80, 0x9a, 0x5e, 0x7d, 0x78, 0x04, 0x55,
0x75, 0xe9, 0xe0, 0x9a, 0x7b, 0xad, 0xbb, 0xee, 0x76, 0xc2, 0x63, 0x80, 0xd3, 0x78, 0x76, 0xa7,
0xc3, 0xb7, 0x1e, 0x0e, 0x8f, 0xba, 0x9d, 0x35, 0xf1, 0x11, 0xfe, 0x08, 0x76, 0xf1, 0x32, 0xc2,
0xed, 0x8c, 0xbd, 0xe6, 0x9e, 0xea, 0xee, 0x7c, 0x84, 0xa1, 0x32, 0xf7, 0x05, 0x54, 0x54, 0xb6,
0x43, 0xa8, 0x48, 0xb5, 0xe2, 0xd3, 0x2c, 0x68, 0xf5, 0x6f, 0xea, 0x6e, 0x16, 0x61, 0xdd, 0xda,
0x01, 0x94, 0x13, 0xcd, 0xe1, 0x72, 0x07, 0xac, 0x28, 0xb2, 0xfb, 0xb4, 0x80, 0xaa, 0xa0, 0xd3,
0xf2, 0x4f, 0x66, 0x30, 0x1e, 0x57, 0xe5, 0x45, 0x71, 0xf0, 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff,
0xcc, 0x47, 0x3e, 0xe7, 0xe6, 0x08, 0x00, 0x00,
0x10, 0xae, 0x9d, 0xf7, 0x49, 0xe2, 0xf3, 0x8d, 0xee, 0xda, 0x10, 0x1d, 0xa7, 0xd6, 0x50, 0x11,
0x8a, 0x94, 0x4a, 0xe9, 0xa9, 0x52, 0x25, 0x50, 0x95, 0xbe, 0x50, 0x9d, 0x08, 0x6d, 0x6f, 0x13,
0x84, 0x84, 0x84, 0x2a, 0x27, 0xde, 0xcb, 0x99, 0x24, 0xb6, 0xb1, 0xd7, 0x77, 0x0d, 0x3f, 0x82,
0x7f, 0xc1, 0x37, 0xfe, 0x11, 0x12, 0xbf, 0x83, 0x8f, 0x68, 0x5f, 0xec, 0xc4, 0x6e, 0x73, 0x82,
0x4f, 0xde, 0x99, 0x79, 0x66, 0x3c, 0xf3, 0xcc, 0xec, 0x2c, 0x3c, 0x0b, 0x66, 0xd3, 0xc3, 0x60,
0x7c, 0xe8, 0xbf, 0xa7, 0xe1, 0xdc, 0x5e, 0x76, 0x83, 0xd0, 0x67, 0x3e, 0x56, 0x94, 0xd8, 0x7e,
0x39, 0xf5, 0xfd, 0xe9, 0x9c, 0x1e, 0x0a, 0xf5, 0x38, 0x7e, 0x7b, 0xe8, 0xc4, 0xa1, 0xcd, 0x5c,
0xdf, 0x93, 0x40, 0xeb, 0x0b, 0x68, 0x0e, 0x7c, 0x7f, 0x16, 0x07, 0x84, 0xfe, 0x1a, 0xd3, 0x88,
0xe1, 0x36, 0x94, 0x3d, 0xdf, 0xa1, 0xaf, 0x2f, 0x5a, 0xda, 0xae, 0xd6, 0xa9, 0x11, 0x25, 0x59,
0x47, 0x60, 0x24, 0xc0, 0x28, 0xf0, 0xbd, 0x88, 0xe2, 0x1e, 0x14, 0xb9, 0x4d, 0xe0, 0xea, 0xbd,
0x66, 0x37, 0xc9, 0xe0, 0xda, 0x77, 0x28, 0x11, 0x26, 0xeb, 0x7a, 0xe5, 0x24, 0xa2, 0x47, 0xf8,
0x35, 0x34, 0xe7, 0x42, 0x13, 0x4a, 0x4d, 0x4b, 0xdb, 0x2d, 0x74, 0xea, 0xbd, 0xed, 0xd4, 0x3b,
0x83, 0x27, 0x59, 0xb0, 0x45, 0xe0, 0x49, 0x36, 0x89, 0x08, 0x4f, 0xc1, 0x48, 0x30, 0x52, 0xa5,
0x22, 0xee, 0x3c, 0x88, 0x28, 0xcd, 0x24, 0x07, 0xb7, 0x4e, 0xa1, 0xf5, 0xad, 0xeb, 0x39, 0x43,
0xe6, 0x87, 0xf6, 0x94, 0xf2, 0xe4, 0xa3, 0xb4, 0xc4, 0xcf, 0xa0, 0xc4, 0xeb, 0x88, 0x54, 0xcc,
0x5c, 0x8d, 0xd2, 0x66, 0xfd, 0xa5, 0xc1, 0xce, 0xc3, 0x08, 0x92, 0xcd, 0x97, 0x00, 0xfe, 0xf8,
0x17, 0x3a, 0x61, 0x43, 0xf7, 0x37, 0xc9, 0x54, 0x81, 0xac, 0x69, 0xb0, 0x0f, 0xc6, 0xc4, 0xf7,
0x58, 0x68, 0x4f, 0xd8, 0x80, 0x7a, 0x53, 0xf6, 0xae, 0xa5, 0x0b, 0x36, 0x3f, 0xe9, 0xca, 0xbe,
0x75, 0x93, 0xbe, 0x75, 0x2f, 0x54, 0xdf, 0x48, 0xce, 0x01, 0xbf, 0x82, 0xa2, 0x1f, 0xb0, 0xa8,
0x55, 0x10, 0x8e, 0xab, 0xb2, 0x6f, 0xe4, 0xf7, 0x26, 0xe0, 0x5e, 0x11, 0x11, 0x20, 0x7c, 0x06,
0xa5, 0x88, 0xd9, 0x21, 0x6b, 0x15, 0x77, 0xb5, 0x4e, 0x83, 0x48, 0x01, 0xdb, 0x50, 0x5d, 0xd8,
0xf7, 0x22, 0xf1, 0x56, 0x49, 0xe4, 0x98, 0xca, 0xd6, 0xcf, 0x50, 0xe7, 0x87, 0xbe, 0xe3, 0x84,
0x34, 0x8a, 0xf0, 0x15, 0xd4, 0x58, 0x68, 0x7b, 0x51, 0xe0, 0x87, 0x4c, 0xd4, 0x63, 0xac, 0xf5,
0x8e, 0x03, 0x47, 0x89, 0x95, 0xac, 0x80, 0xd8, 0x82, 0x8a, 0x2d, 0x03, 0x88, 0xfa, 0x6a, 0x24,
0x11, 0xad, 0x3f, 0x74, 0x30, 0xb2, 0x99, 0xe2, 0x09, 0xc0, 0xc2, 0xbe, 0x1f, 0xd8, 0x8c, 0x7a,
0x93, 0xa5, 0x9a, 0xae, 0x8f, 0xf0, 0xb1, 0x06, 0xc6, 0x63, 0x68, 0x2e, 0x5c, 0x8f, 0xd0, 0x20,
0x66, 0xc2, 0xa8, 0xd8, 0x34, 0xb3, 0x7d, 0xa3, 0x01, 0xc9, 0xc2, 0xd0, 0x82, 0xc6, 0xc2, 0xf5,
0x86, 0x01, 0xa5, 0xce, 0x77, 0xe3, 0x40, 0x72, 0x59, 0x20, 0x19, 0x1d, 0xbf, 0x18, 0xf6, 0xc2,
0x8f, 0x3d, 0xc9, 0x5d, 0x81, 0x28, 0x09, 0xbf, 0x81, 0x46, 0x48, 0x23, 0x16, 0xba, 0x13, 0x91,
0xbe, 0x20, 0x90, 0x27, 0x9c, 0xfd, 0xe5, 0x0a, 0x40, 0x32, 0x70, 0xdc, 0x07, 0x83, 0xde, 0x4f,
0xe6, 0xb1, 0x43, 0x9d, 0x3b, 0x39, 0x6b, 0xe5, 0xdd, 0x42, 0xa7, 0x46, 0x9a, 0x89, 0x56, 0xb6,
0xe1, 0x03, 0x54, 0x54, 0xee, 0xf8, 0x02, 0x6a, 0x0b, 0xd7, 0xfb, 0x21, 0x60, 0xee, 0x42, 0x8e,
0x94, 0x4e, 0x56, 0x0a, 0xec, 0xc0, 0x93, 0x85, 0xeb, 0xf5, 0x63, 0xc7, 0x65, 0xc3, 0x78, 0x32,
0x49, 0x28, 0xd7, 0x49, 0x5e, 0x8d, 0x9f, 0x0b, 0xb2, 0x84, 0xea, 0x5c, 0xd4, 0x25, 0xab, 0xce,
0x2a, 0xad, 0x11, 0x98, 0xf9, 0x0a, 0xb8, 0xe7, 0xdb, 0x90, 0xd2, 0x33, 0xdb, 0x73, 0x3e, 0xb8,
0x0e, 0x7b, 0xa7, 0x06, 0x3b, 0xab, 0xe4, 0x53, 0xc5, 0x15, 0x17, 0x6e, 0x34, 0x13, 0x29, 0x14,
0x48, 0x2a, 0x5b, 0x7f, 0x6a, 0x50, 0xe4, 0x61, 0xd1, 0x00, 0xdd, 0x75, 0xd4, 0xaa, 0xd1, 0x5d,
0x07, 0xbb, 0xd9, 0x49, 0xa9, 0xf7, 0x9e, 0x65, 0x88, 0x54, 0x63, 0x98, 0xce, 0x0f, 0xee, 0x43,
0x91, 0x2d, 0x03, 0x2a, 0x72, 0x37, 0x7a, 0x4f, 0xb3, 0xa3, 0xb8, 0x0c, 0x28, 0x11, 0xe6, 0x07,
0x4d, 0x2a, 0xfe, 0xaf, 0x26, 0x59, 0xbf, 0x6b, 0xd0, 0x78, 0x13, 0xd3, 0x70, 0x99, 0xdc, 0xeb,
0x7d, 0x28, 0x47, 0xd4, 0x73, 0x68, 0xf8, 0xf8, 0xf6, 0x53, 0x46, 0x0e, 0x63, 0x76, 0x38, 0xa5,
0x4c, 0x15, 0x93, 0x87, 0x49, 0x23, 0xbf, 0x95, 0x73, 0x77, 0xe1, 0x26, 0x1d, 0x90, 0x02, 0xe7,
0x2f, 0x70, 0xbd, 0xe9, 0xd8, 0x9e, 0xcc, 0x44, 0xbe, 0x55, 0x92, 0xca, 0x96, 0x0d, 0x4d, 0x95,
0x8f, 0xda, 0x54, 0xff, 0x31, 0xa1, 0x2f, 0xa1, 0x9a, 0xee, 0x49, 0xfd, 0xb1, 0x9d, 0x96, 0x9a,
0xad, 0x26, 0xd4, 0x6f, 0x5d, 0x6f, 0xaa, 0x2a, 0xb6, 0x0c, 0x68, 0x48, 0x51, 0x99, 0xff, 0xd1,
0xa0, 0xbe, 0xc6, 0x18, 0x9e, 0x40, 0xd5, 0x0f, 0x68, 0x68, 0x33, 0x3f, 0x54, 0x7b, 0xe1, 0xd3,
0x34, 0xf2, 0x1a, 0xae, 0x7b, 0xa3, 0x40, 0x24, 0x85, 0xe3, 0x31, 0x54, 0xc4, 0xd9, 0x73, 0x04,
0x4d, 0x46, 0xef, 0xc5, 0x66, 0x4f, 0xcf, 0x21, 0x09, 0x98, 0xd3, 0xf6, 0xde, 0x9e, 0xc7, 0x34,
0xa1, 0x4d, 0x08, 0xd6, 0x2b, 0xa8, 0x26, 0xff, 0xc0, 0x32, 0xe8, 0x83, 0x91, 0xb9, 0xc5, 0xbf,
0x97, 0x6f, 0x4c, 0x8d, 0x7f, 0xaf, 0x46, 0xa6, 0x8e, 0x15, 0x28, 0x0c, 0x46, 0x97, 0x66, 0x81,
0x1f, 0xae, 0x46, 0x97, 0x66, 0xd1, 0x3a, 0x80, 0x8a, 0x8a, 0x8f, 0x4f, 0x73, 0xd3, 0x6d, 0x6e,
0x61, 0x63, 0x35, 0xca, 0xa6, 0x76, 0xb0, 0x07, 0xcd, 0xcc, 0xa6, 0x43, 0x13, 0x1a, 0xa3, 0xf3,
0xdb, 0xbb, 0xd1, 0x60, 0x78, 0x77, 0x45, 0x6e, 0xcf, 0xcd, 0xad, 0x03, 0x0b, 0xaa, 0xc9, 0x04,
0x62, 0x0d, 0x4a, 0xfd, 0x8b, 0xef, 0x5f, 0x5f, 0x9b, 0x5b, 0x58, 0x87, 0xca, 0x70, 0x74, 0x43,
0xfa, 0x57, 0x97, 0xa6, 0xd6, 0xfb, 0x5b, 0x83, 0x8a, 0x5a, 0x7d, 0x78, 0x02, 0x65, 0xf9, 0x4c,
0xe1, 0x86, 0x97, 0xb0, 0xbd, 0xe9, 0x3d, 0xc3, 0x53, 0x80, 0xb3, 0x78, 0x3e, 0x53, 0xee, 0x3b,
0x8f, 0xbb, 0x47, 0xed, 0xd6, 0x06, 0xff, 0x08, 0x7f, 0x04, 0x33, 0xff, 0x7c, 0xe1, 0x6e, 0x8a,
0xde, 0xf0, 0xb2, 0xb5, 0xf7, 0x3e, 0x82, 0x90, 0x91, 0x7b, 0x0c, 0x4a, 0x32, 0xda, 0x31, 0x94,
0xc4, 0xb4, 0xe2, 0xf3, 0xd4, 0x69, 0xfd, 0x36, 0xb5, 0xb7, 0xf3, 0x6a, 0x55, 0xda, 0x11, 0x14,
0xf9, 0xcc, 0xe1, 0x6a, 0x07, 0xac, 0x4d, 0x64, 0xfb, 0x79, 0x4e, 0x2b, 0x9d, 0xce, 0x8a, 0x3f,
0xe9, 0xc1, 0x78, 0x5c, 0x16, 0x0f, 0xc5, 0xd1, 0xbf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x62, 0xb0,
0x59, 0x85, 0x1f, 0x09, 0x00, 0x00,
}

View File

@ -59,6 +59,8 @@ message FindStorageNodesRequest {
int64 objectSize = 1;
google.protobuf.Duration contractLength = 2;
OverlayOptions opts = 3;
bytes start = 4;
int64 maxNodes = 5;
}
// NodeAddress contains the information needed to communicate with a node on the network