github.com/vipernet-xyz/tm@v0.34.24/proto/tendermint/p2p/pex.pb.go (about)

     1  // Code generated by protoc-gen-gogo. DO NOT EDIT.
     2  // source: tendermint/p2p/pex.proto
     3  
     4  package p2p
     5  
     6  import (
     7  	fmt "fmt"
     8  	_ "github.com/gogo/protobuf/gogoproto"
     9  	proto "github.com/gogo/protobuf/proto"
    10  	io "io"
    11  	math "math"
    12  	math_bits "math/bits"
    13  )
    14  
    15  // Reference imports to suppress errors if they are not otherwise used.
    16  var _ = proto.Marshal
    17  var _ = fmt.Errorf
    18  var _ = math.Inf
    19  
    20  // This is a compile-time assertion to ensure that this generated file
    21  // is compatible with the proto package it is being compiled against.
    22  // A compilation error at this line likely means your copy of the
    23  // proto package needs to be updated.
    24  const _ = proto.GoGoProtoPackageIsVersion3 // please upgrade the proto package
    25  
    26  type PexRequest struct {
    27  }
    28  
    29  func (m *PexRequest) Reset()         { *m = PexRequest{} }
    30  func (m *PexRequest) String() string { return proto.CompactTextString(m) }
    31  func (*PexRequest) ProtoMessage()    {}
    32  func (*PexRequest) Descriptor() ([]byte, []int) {
    33  	return fileDescriptor_81c2f011fd13be57, []int{0}
    34  }
    35  func (m *PexRequest) XXX_Unmarshal(b []byte) error {
    36  	return m.Unmarshal(b)
    37  }
    38  func (m *PexRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
    39  	if deterministic {
    40  		return xxx_messageInfo_PexRequest.Marshal(b, m, deterministic)
    41  	} else {
    42  		b = b[:cap(b)]
    43  		n, err := m.MarshalToSizedBuffer(b)
    44  		if err != nil {
    45  			return nil, err
    46  		}
    47  		return b[:n], nil
    48  	}
    49  }
    50  func (m *PexRequest) XXX_Merge(src proto.Message) {
    51  	xxx_messageInfo_PexRequest.Merge(m, src)
    52  }
    53  func (m *PexRequest) XXX_Size() int {
    54  	return m.Size()
    55  }
    56  func (m *PexRequest) XXX_DiscardUnknown() {
    57  	xxx_messageInfo_PexRequest.DiscardUnknown(m)
    58  }
    59  
    60  var xxx_messageInfo_PexRequest proto.InternalMessageInfo
    61  
    62  type PexAddrs struct {
    63  	Addrs []NetAddress `protobuf:"bytes,1,rep,name=addrs,proto3" json:"addrs"`
    64  }
    65  
    66  func (m *PexAddrs) Reset()         { *m = PexAddrs{} }
    67  func (m *PexAddrs) String() string { return proto.CompactTextString(m) }
    68  func (*PexAddrs) ProtoMessage()    {}
    69  func (*PexAddrs) Descriptor() ([]byte, []int) {
    70  	return fileDescriptor_81c2f011fd13be57, []int{1}
    71  }
    72  func (m *PexAddrs) XXX_Unmarshal(b []byte) error {
    73  	return m.Unmarshal(b)
    74  }
    75  func (m *PexAddrs) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
    76  	if deterministic {
    77  		return xxx_messageInfo_PexAddrs.Marshal(b, m, deterministic)
    78  	} else {
    79  		b = b[:cap(b)]
    80  		n, err := m.MarshalToSizedBuffer(b)
    81  		if err != nil {
    82  			return nil, err
    83  		}
    84  		return b[:n], nil
    85  	}
    86  }
    87  func (m *PexAddrs) XXX_Merge(src proto.Message) {
    88  	xxx_messageInfo_PexAddrs.Merge(m, src)
    89  }
    90  func (m *PexAddrs) XXX_Size() int {
    91  	return m.Size()
    92  }
    93  func (m *PexAddrs) XXX_DiscardUnknown() {
    94  	xxx_messageInfo_PexAddrs.DiscardUnknown(m)
    95  }
    96  
    97  var xxx_messageInfo_PexAddrs proto.InternalMessageInfo
    98  
    99  func (m *PexAddrs) GetAddrs() []NetAddress {
   100  	if m != nil {
   101  		return m.Addrs
   102  	}
   103  	return nil
   104  }
   105  
   106  type Message struct {
   107  	// Types that are valid to be assigned to Sum:
   108  	//	*Message_PexRequest
   109  	//	*Message_PexAddrs
   110  	Sum isMessage_Sum `protobuf_oneof:"sum"`
   111  }
   112  
   113  func (m *Message) Reset()         { *m = Message{} }
   114  func (m *Message) String() string { return proto.CompactTextString(m) }
   115  func (*Message) ProtoMessage()    {}
   116  func (*Message) Descriptor() ([]byte, []int) {
   117  	return fileDescriptor_81c2f011fd13be57, []int{2}
   118  }
   119  func (m *Message) XXX_Unmarshal(b []byte) error {
   120  	return m.Unmarshal(b)
   121  }
   122  func (m *Message) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
   123  	if deterministic {
   124  		return xxx_messageInfo_Message.Marshal(b, m, deterministic)
   125  	} else {
   126  		b = b[:cap(b)]
   127  		n, err := m.MarshalToSizedBuffer(b)
   128  		if err != nil {
   129  			return nil, err
   130  		}
   131  		return b[:n], nil
   132  	}
   133  }
   134  func (m *Message) XXX_Merge(src proto.Message) {
   135  	xxx_messageInfo_Message.Merge(m, src)
   136  }
   137  func (m *Message) XXX_Size() int {
   138  	return m.Size()
   139  }
   140  func (m *Message) XXX_DiscardUnknown() {
   141  	xxx_messageInfo_Message.DiscardUnknown(m)
   142  }
   143  
   144  var xxx_messageInfo_Message proto.InternalMessageInfo
   145  
   146  type isMessage_Sum interface {
   147  	isMessage_Sum()
   148  	MarshalTo([]byte) (int, error)
   149  	Size() int
   150  }
   151  
   152  type Message_PexRequest struct {
   153  	PexRequest *PexRequest `protobuf:"bytes,1,opt,name=pex_request,json=pexRequest,proto3,oneof" json:"pex_request,omitempty"`
   154  }
   155  type Message_PexAddrs struct {
   156  	PexAddrs *PexAddrs `protobuf:"bytes,2,opt,name=pex_addrs,json=pexAddrs,proto3,oneof" json:"pex_addrs,omitempty"`
   157  }
   158  
   159  func (*Message_PexRequest) isMessage_Sum() {}
   160  func (*Message_PexAddrs) isMessage_Sum()   {}
   161  
   162  func (m *Message) GetSum() isMessage_Sum {
   163  	if m != nil {
   164  		return m.Sum
   165  	}
   166  	return nil
   167  }
   168  
   169  func (m *Message) GetPexRequest() *PexRequest {
   170  	if x, ok := m.GetSum().(*Message_PexRequest); ok {
   171  		return x.PexRequest
   172  	}
   173  	return nil
   174  }
   175  
   176  func (m *Message) GetPexAddrs() *PexAddrs {
   177  	if x, ok := m.GetSum().(*Message_PexAddrs); ok {
   178  		return x.PexAddrs
   179  	}
   180  	return nil
   181  }
   182  
   183  // XXX_OneofWrappers is for the internal use of the proto package.
   184  func (*Message) XXX_OneofWrappers() []interface{} {
   185  	return []interface{}{
   186  		(*Message_PexRequest)(nil),
   187  		(*Message_PexAddrs)(nil),
   188  	}
   189  }
   190  
   191  func init() {
   192  	proto.RegisterType((*PexRequest)(nil), "tendermint.p2p.PexRequest")
   193  	proto.RegisterType((*PexAddrs)(nil), "tendermint.p2p.PexAddrs")
   194  	proto.RegisterType((*Message)(nil), "tendermint.p2p.Message")
   195  }
   196  
   197  func init() { proto.RegisterFile("tendermint/p2p/pex.proto", fileDescriptor_81c2f011fd13be57) }
   198  
   199  var fileDescriptor_81c2f011fd13be57 = []byte{
   200  	// 268 bytes of a gzipped FileDescriptorProto
   201  	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0x92, 0x28, 0x49, 0xcd, 0x4b,
   202  	0x49, 0x2d, 0xca, 0xcd, 0xcc, 0x2b, 0xd1, 0x2f, 0x30, 0x2a, 0xd0, 0x2f, 0x48, 0xad, 0xd0, 0x2b,
   203  	0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x43, 0xc8, 0xe8, 0x15, 0x18, 0x15, 0x48, 0x49, 0xa1, 0xa9,
   204  	0x2c, 0xa9, 0x2c, 0x48, 0x2d, 0x86, 0xa8, 0x95, 0x12, 0x49, 0xcf, 0x4f, 0xcf, 0x07, 0x33, 0xf5,
   205  	0x41, 0x2c, 0x88, 0xa8, 0x12, 0x0f, 0x17, 0x57, 0x40, 0x6a, 0x45, 0x50, 0x6a, 0x61, 0x69, 0x6a,
   206  	0x71, 0x89, 0x92, 0x13, 0x17, 0x47, 0x40, 0x6a, 0x85, 0x63, 0x4a, 0x4a, 0x51, 0xb1, 0x90, 0x19,
   207  	0x17, 0x6b, 0x22, 0x88, 0x21, 0xc1, 0xa8, 0xc0, 0xac, 0xc1, 0x6d, 0x24, 0xa5, 0x87, 0x6a, 0x97,
   208  	0x9e, 0x5f, 0x6a, 0x09, 0x48, 0x61, 0x6a, 0x71, 0xb1, 0x13, 0xcb, 0x89, 0x7b, 0xf2, 0x0c, 0x41,
   209  	0x10, 0xe5, 0x4a, 0x1d, 0x8c, 0x5c, 0xec, 0xbe, 0xa9, 0xc5, 0xc5, 0x89, 0xe9, 0xa9, 0x42, 0xb6,
   210  	0x5c, 0xdc, 0x05, 0xa9, 0x15, 0xf1, 0x45, 0x10, 0xe3, 0x25, 0x18, 0x15, 0x18, 0xb1, 0x99, 0x84,
   211  	0x70, 0x80, 0x07, 0x43, 0x10, 0x57, 0x01, 0x9c, 0x27, 0x64, 0xce, 0xc5, 0x09, 0xd2, 0x0e, 0x71,
   212  	0x06, 0x13, 0x58, 0xb3, 0x04, 0x16, 0xcd, 0x60, 0xf7, 0x7a, 0x30, 0x04, 0x71, 0x14, 0x40, 0xd9,
   213  	0x4e, 0xac, 0x5c, 0xcc, 0xc5, 0xa5, 0xb9, 0x4e, 0xfe, 0x27, 0x1e, 0xc9, 0x31, 0x5e, 0x78, 0x24,
   214  	0xc7, 0xf8, 0xe0, 0x91, 0x1c, 0xe3, 0x84, 0xc7, 0x72, 0x0c, 0x17, 0x1e, 0xcb, 0x31, 0xdc, 0x78,
   215  	0x2c, 0xc7, 0x10, 0x65, 0x9a, 0x9e, 0x59, 0x92, 0x51, 0x9a, 0xa4, 0x97, 0x9c, 0x9f, 0xab, 0x8f,
   216  	0x14, 0x66, 0xc8, 0xc1, 0x07, 0x0e, 0x29, 0xd4, 0xf0, 0x4c, 0x62, 0x03, 0x8b, 0x1a, 0x03, 0x02,
   217  	0x00, 0x00, 0xff, 0xff, 0x3c, 0x0b, 0xcb, 0x40, 0x92, 0x01, 0x00, 0x00,
   218  }
   219  
   220  func (m *PexRequest) Marshal() (dAtA []byte, err error) {
   221  	size := m.Size()
   222  	dAtA = make([]byte, size)
   223  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   224  	if err != nil {
   225  		return nil, err
   226  	}
   227  	return dAtA[:n], nil
   228  }
   229  
   230  func (m *PexRequest) MarshalTo(dAtA []byte) (int, error) {
   231  	size := m.Size()
   232  	return m.MarshalToSizedBuffer(dAtA[:size])
   233  }
   234  
   235  func (m *PexRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   236  	i := len(dAtA)
   237  	_ = i
   238  	var l int
   239  	_ = l
   240  	return len(dAtA) - i, nil
   241  }
   242  
   243  func (m *PexAddrs) Marshal() (dAtA []byte, err error) {
   244  	size := m.Size()
   245  	dAtA = make([]byte, size)
   246  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   247  	if err != nil {
   248  		return nil, err
   249  	}
   250  	return dAtA[:n], nil
   251  }
   252  
   253  func (m *PexAddrs) MarshalTo(dAtA []byte) (int, error) {
   254  	size := m.Size()
   255  	return m.MarshalToSizedBuffer(dAtA[:size])
   256  }
   257  
   258  func (m *PexAddrs) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   259  	i := len(dAtA)
   260  	_ = i
   261  	var l int
   262  	_ = l
   263  	if len(m.Addrs) > 0 {
   264  		for iNdEx := len(m.Addrs) - 1; iNdEx >= 0; iNdEx-- {
   265  			{
   266  				size, err := m.Addrs[iNdEx].MarshalToSizedBuffer(dAtA[:i])
   267  				if err != nil {
   268  					return 0, err
   269  				}
   270  				i -= size
   271  				i = encodeVarintPex(dAtA, i, uint64(size))
   272  			}
   273  			i--
   274  			dAtA[i] = 0xa
   275  		}
   276  	}
   277  	return len(dAtA) - i, nil
   278  }
   279  
   280  func (m *Message) Marshal() (dAtA []byte, err error) {
   281  	size := m.Size()
   282  	dAtA = make([]byte, size)
   283  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   284  	if err != nil {
   285  		return nil, err
   286  	}
   287  	return dAtA[:n], nil
   288  }
   289  
   290  func (m *Message) MarshalTo(dAtA []byte) (int, error) {
   291  	size := m.Size()
   292  	return m.MarshalToSizedBuffer(dAtA[:size])
   293  }
   294  
   295  func (m *Message) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   296  	i := len(dAtA)
   297  	_ = i
   298  	var l int
   299  	_ = l
   300  	if m.Sum != nil {
   301  		{
   302  			size := m.Sum.Size()
   303  			i -= size
   304  			if _, err := m.Sum.MarshalTo(dAtA[i:]); err != nil {
   305  				return 0, err
   306  			}
   307  		}
   308  	}
   309  	return len(dAtA) - i, nil
   310  }
   311  
   312  func (m *Message_PexRequest) MarshalTo(dAtA []byte) (int, error) {
   313  	size := m.Size()
   314  	return m.MarshalToSizedBuffer(dAtA[:size])
   315  }
   316  
   317  func (m *Message_PexRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   318  	i := len(dAtA)
   319  	if m.PexRequest != nil {
   320  		{
   321  			size, err := m.PexRequest.MarshalToSizedBuffer(dAtA[:i])
   322  			if err != nil {
   323  				return 0, err
   324  			}
   325  			i -= size
   326  			i = encodeVarintPex(dAtA, i, uint64(size))
   327  		}
   328  		i--
   329  		dAtA[i] = 0xa
   330  	}
   331  	return len(dAtA) - i, nil
   332  }
   333  func (m *Message_PexAddrs) MarshalTo(dAtA []byte) (int, error) {
   334  	size := m.Size()
   335  	return m.MarshalToSizedBuffer(dAtA[:size])
   336  }
   337  
   338  func (m *Message_PexAddrs) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   339  	i := len(dAtA)
   340  	if m.PexAddrs != nil {
   341  		{
   342  			size, err := m.PexAddrs.MarshalToSizedBuffer(dAtA[:i])
   343  			if err != nil {
   344  				return 0, err
   345  			}
   346  			i -= size
   347  			i = encodeVarintPex(dAtA, i, uint64(size))
   348  		}
   349  		i--
   350  		dAtA[i] = 0x12
   351  	}
   352  	return len(dAtA) - i, nil
   353  }
   354  func encodeVarintPex(dAtA []byte, offset int, v uint64) int {
   355  	offset -= sovPex(v)
   356  	base := offset
   357  	for v >= 1<<7 {
   358  		dAtA[offset] = uint8(v&0x7f | 0x80)
   359  		v >>= 7
   360  		offset++
   361  	}
   362  	dAtA[offset] = uint8(v)
   363  	return base
   364  }
   365  func (m *PexRequest) Size() (n int) {
   366  	if m == nil {
   367  		return 0
   368  	}
   369  	var l int
   370  	_ = l
   371  	return n
   372  }
   373  
   374  func (m *PexAddrs) Size() (n int) {
   375  	if m == nil {
   376  		return 0
   377  	}
   378  	var l int
   379  	_ = l
   380  	if len(m.Addrs) > 0 {
   381  		for _, e := range m.Addrs {
   382  			l = e.Size()
   383  			n += 1 + l + sovPex(uint64(l))
   384  		}
   385  	}
   386  	return n
   387  }
   388  
   389  func (m *Message) Size() (n int) {
   390  	if m == nil {
   391  		return 0
   392  	}
   393  	var l int
   394  	_ = l
   395  	if m.Sum != nil {
   396  		n += m.Sum.Size()
   397  	}
   398  	return n
   399  }
   400  
   401  func (m *Message_PexRequest) Size() (n int) {
   402  	if m == nil {
   403  		return 0
   404  	}
   405  	var l int
   406  	_ = l
   407  	if m.PexRequest != nil {
   408  		l = m.PexRequest.Size()
   409  		n += 1 + l + sovPex(uint64(l))
   410  	}
   411  	return n
   412  }
   413  func (m *Message_PexAddrs) Size() (n int) {
   414  	if m == nil {
   415  		return 0
   416  	}
   417  	var l int
   418  	_ = l
   419  	if m.PexAddrs != nil {
   420  		l = m.PexAddrs.Size()
   421  		n += 1 + l + sovPex(uint64(l))
   422  	}
   423  	return n
   424  }
   425  
   426  func sovPex(x uint64) (n int) {
   427  	return (math_bits.Len64(x|1) + 6) / 7
   428  }
   429  func sozPex(x uint64) (n int) {
   430  	return sovPex(uint64((x << 1) ^ uint64((int64(x) >> 63))))
   431  }
   432  func (m *PexRequest) Unmarshal(dAtA []byte) error {
   433  	l := len(dAtA)
   434  	iNdEx := 0
   435  	for iNdEx < l {
   436  		preIndex := iNdEx
   437  		var wire uint64
   438  		for shift := uint(0); ; shift += 7 {
   439  			if shift >= 64 {
   440  				return ErrIntOverflowPex
   441  			}
   442  			if iNdEx >= l {
   443  				return io.ErrUnexpectedEOF
   444  			}
   445  			b := dAtA[iNdEx]
   446  			iNdEx++
   447  			wire |= uint64(b&0x7F) << shift
   448  			if b < 0x80 {
   449  				break
   450  			}
   451  		}
   452  		fieldNum := int32(wire >> 3)
   453  		wireType := int(wire & 0x7)
   454  		if wireType == 4 {
   455  			return fmt.Errorf("proto: PexRequest: wiretype end group for non-group")
   456  		}
   457  		if fieldNum <= 0 {
   458  			return fmt.Errorf("proto: PexRequest: illegal tag %d (wire type %d)", fieldNum, wire)
   459  		}
   460  		switch fieldNum {
   461  		default:
   462  			iNdEx = preIndex
   463  			skippy, err := skipPex(dAtA[iNdEx:])
   464  			if err != nil {
   465  				return err
   466  			}
   467  			if (skippy < 0) || (iNdEx+skippy) < 0 {
   468  				return ErrInvalidLengthPex
   469  			}
   470  			if (iNdEx + skippy) > l {
   471  				return io.ErrUnexpectedEOF
   472  			}
   473  			iNdEx += skippy
   474  		}
   475  	}
   476  
   477  	if iNdEx > l {
   478  		return io.ErrUnexpectedEOF
   479  	}
   480  	return nil
   481  }
   482  func (m *PexAddrs) Unmarshal(dAtA []byte) error {
   483  	l := len(dAtA)
   484  	iNdEx := 0
   485  	for iNdEx < l {
   486  		preIndex := iNdEx
   487  		var wire uint64
   488  		for shift := uint(0); ; shift += 7 {
   489  			if shift >= 64 {
   490  				return ErrIntOverflowPex
   491  			}
   492  			if iNdEx >= l {
   493  				return io.ErrUnexpectedEOF
   494  			}
   495  			b := dAtA[iNdEx]
   496  			iNdEx++
   497  			wire |= uint64(b&0x7F) << shift
   498  			if b < 0x80 {
   499  				break
   500  			}
   501  		}
   502  		fieldNum := int32(wire >> 3)
   503  		wireType := int(wire & 0x7)
   504  		if wireType == 4 {
   505  			return fmt.Errorf("proto: PexAddrs: wiretype end group for non-group")
   506  		}
   507  		if fieldNum <= 0 {
   508  			return fmt.Errorf("proto: PexAddrs: illegal tag %d (wire type %d)", fieldNum, wire)
   509  		}
   510  		switch fieldNum {
   511  		case 1:
   512  			if wireType != 2 {
   513  				return fmt.Errorf("proto: wrong wireType = %d for field Addrs", wireType)
   514  			}
   515  			var msglen int
   516  			for shift := uint(0); ; shift += 7 {
   517  				if shift >= 64 {
   518  					return ErrIntOverflowPex
   519  				}
   520  				if iNdEx >= l {
   521  					return io.ErrUnexpectedEOF
   522  				}
   523  				b := dAtA[iNdEx]
   524  				iNdEx++
   525  				msglen |= int(b&0x7F) << shift
   526  				if b < 0x80 {
   527  					break
   528  				}
   529  			}
   530  			if msglen < 0 {
   531  				return ErrInvalidLengthPex
   532  			}
   533  			postIndex := iNdEx + msglen
   534  			if postIndex < 0 {
   535  				return ErrInvalidLengthPex
   536  			}
   537  			if postIndex > l {
   538  				return io.ErrUnexpectedEOF
   539  			}
   540  			m.Addrs = append(m.Addrs, NetAddress{})
   541  			if err := m.Addrs[len(m.Addrs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
   542  				return err
   543  			}
   544  			iNdEx = postIndex
   545  		default:
   546  			iNdEx = preIndex
   547  			skippy, err := skipPex(dAtA[iNdEx:])
   548  			if err != nil {
   549  				return err
   550  			}
   551  			if (skippy < 0) || (iNdEx+skippy) < 0 {
   552  				return ErrInvalidLengthPex
   553  			}
   554  			if (iNdEx + skippy) > l {
   555  				return io.ErrUnexpectedEOF
   556  			}
   557  			iNdEx += skippy
   558  		}
   559  	}
   560  
   561  	if iNdEx > l {
   562  		return io.ErrUnexpectedEOF
   563  	}
   564  	return nil
   565  }
   566  func (m *Message) Unmarshal(dAtA []byte) error {
   567  	l := len(dAtA)
   568  	iNdEx := 0
   569  	for iNdEx < l {
   570  		preIndex := iNdEx
   571  		var wire uint64
   572  		for shift := uint(0); ; shift += 7 {
   573  			if shift >= 64 {
   574  				return ErrIntOverflowPex
   575  			}
   576  			if iNdEx >= l {
   577  				return io.ErrUnexpectedEOF
   578  			}
   579  			b := dAtA[iNdEx]
   580  			iNdEx++
   581  			wire |= uint64(b&0x7F) << shift
   582  			if b < 0x80 {
   583  				break
   584  			}
   585  		}
   586  		fieldNum := int32(wire >> 3)
   587  		wireType := int(wire & 0x7)
   588  		if wireType == 4 {
   589  			return fmt.Errorf("proto: Message: wiretype end group for non-group")
   590  		}
   591  		if fieldNum <= 0 {
   592  			return fmt.Errorf("proto: Message: illegal tag %d (wire type %d)", fieldNum, wire)
   593  		}
   594  		switch fieldNum {
   595  		case 1:
   596  			if wireType != 2 {
   597  				return fmt.Errorf("proto: wrong wireType = %d for field PexRequest", wireType)
   598  			}
   599  			var msglen int
   600  			for shift := uint(0); ; shift += 7 {
   601  				if shift >= 64 {
   602  					return ErrIntOverflowPex
   603  				}
   604  				if iNdEx >= l {
   605  					return io.ErrUnexpectedEOF
   606  				}
   607  				b := dAtA[iNdEx]
   608  				iNdEx++
   609  				msglen |= int(b&0x7F) << shift
   610  				if b < 0x80 {
   611  					break
   612  				}
   613  			}
   614  			if msglen < 0 {
   615  				return ErrInvalidLengthPex
   616  			}
   617  			postIndex := iNdEx + msglen
   618  			if postIndex < 0 {
   619  				return ErrInvalidLengthPex
   620  			}
   621  			if postIndex > l {
   622  				return io.ErrUnexpectedEOF
   623  			}
   624  			v := &PexRequest{}
   625  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
   626  				return err
   627  			}
   628  			m.Sum = &Message_PexRequest{v}
   629  			iNdEx = postIndex
   630  		case 2:
   631  			if wireType != 2 {
   632  				return fmt.Errorf("proto: wrong wireType = %d for field PexAddrs", wireType)
   633  			}
   634  			var msglen int
   635  			for shift := uint(0); ; shift += 7 {
   636  				if shift >= 64 {
   637  					return ErrIntOverflowPex
   638  				}
   639  				if iNdEx >= l {
   640  					return io.ErrUnexpectedEOF
   641  				}
   642  				b := dAtA[iNdEx]
   643  				iNdEx++
   644  				msglen |= int(b&0x7F) << shift
   645  				if b < 0x80 {
   646  					break
   647  				}
   648  			}
   649  			if msglen < 0 {
   650  				return ErrInvalidLengthPex
   651  			}
   652  			postIndex := iNdEx + msglen
   653  			if postIndex < 0 {
   654  				return ErrInvalidLengthPex
   655  			}
   656  			if postIndex > l {
   657  				return io.ErrUnexpectedEOF
   658  			}
   659  			v := &PexAddrs{}
   660  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
   661  				return err
   662  			}
   663  			m.Sum = &Message_PexAddrs{v}
   664  			iNdEx = postIndex
   665  		default:
   666  			iNdEx = preIndex
   667  			skippy, err := skipPex(dAtA[iNdEx:])
   668  			if err != nil {
   669  				return err
   670  			}
   671  			if (skippy < 0) || (iNdEx+skippy) < 0 {
   672  				return ErrInvalidLengthPex
   673  			}
   674  			if (iNdEx + skippy) > l {
   675  				return io.ErrUnexpectedEOF
   676  			}
   677  			iNdEx += skippy
   678  		}
   679  	}
   680  
   681  	if iNdEx > l {
   682  		return io.ErrUnexpectedEOF
   683  	}
   684  	return nil
   685  }
   686  func skipPex(dAtA []byte) (n int, err error) {
   687  	l := len(dAtA)
   688  	iNdEx := 0
   689  	depth := 0
   690  	for iNdEx < l {
   691  		var wire uint64
   692  		for shift := uint(0); ; shift += 7 {
   693  			if shift >= 64 {
   694  				return 0, ErrIntOverflowPex
   695  			}
   696  			if iNdEx >= l {
   697  				return 0, io.ErrUnexpectedEOF
   698  			}
   699  			b := dAtA[iNdEx]
   700  			iNdEx++
   701  			wire |= (uint64(b) & 0x7F) << shift
   702  			if b < 0x80 {
   703  				break
   704  			}
   705  		}
   706  		wireType := int(wire & 0x7)
   707  		switch wireType {
   708  		case 0:
   709  			for shift := uint(0); ; shift += 7 {
   710  				if shift >= 64 {
   711  					return 0, ErrIntOverflowPex
   712  				}
   713  				if iNdEx >= l {
   714  					return 0, io.ErrUnexpectedEOF
   715  				}
   716  				iNdEx++
   717  				if dAtA[iNdEx-1] < 0x80 {
   718  					break
   719  				}
   720  			}
   721  		case 1:
   722  			iNdEx += 8
   723  		case 2:
   724  			var length int
   725  			for shift := uint(0); ; shift += 7 {
   726  				if shift >= 64 {
   727  					return 0, ErrIntOverflowPex
   728  				}
   729  				if iNdEx >= l {
   730  					return 0, io.ErrUnexpectedEOF
   731  				}
   732  				b := dAtA[iNdEx]
   733  				iNdEx++
   734  				length |= (int(b) & 0x7F) << shift
   735  				if b < 0x80 {
   736  					break
   737  				}
   738  			}
   739  			if length < 0 {
   740  				return 0, ErrInvalidLengthPex
   741  			}
   742  			iNdEx += length
   743  		case 3:
   744  			depth++
   745  		case 4:
   746  			if depth == 0 {
   747  				return 0, ErrUnexpectedEndOfGroupPex
   748  			}
   749  			depth--
   750  		case 5:
   751  			iNdEx += 4
   752  		default:
   753  			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
   754  		}
   755  		if iNdEx < 0 {
   756  			return 0, ErrInvalidLengthPex
   757  		}
   758  		if depth == 0 {
   759  			return iNdEx, nil
   760  		}
   761  	}
   762  	return 0, io.ErrUnexpectedEOF
   763  }
   764  
   765  var (
   766  	ErrInvalidLengthPex        = fmt.Errorf("proto: negative length found during unmarshaling")
   767  	ErrIntOverflowPex          = fmt.Errorf("proto: integer overflow")
   768  	ErrUnexpectedEndOfGroupPex = fmt.Errorf("proto: unexpected end of group")
   769  )