github.com/badrootd/nibiru-cometbft@v0.37.5-0.20240307173500-2a75559eee9b/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/cosmos/gogoproto/gogoproto"
     9  	proto "github.com/cosmos/gogoproto/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  	// 273 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, 0xde, 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, 0x98, 0x9e, 0x59, 0x92, 0x51, 0x9a, 0xa4, 0x97, 0x9c, 0x9f, 0xab, 0x9f,
   216  	0x9c, 0x9f, 0x9b, 0x5a, 0x92, 0x94, 0x56, 0x82, 0x60, 0x40, 0x42, 0x09, 0x35, 0x2c, 0x93, 0xd8,
   217  	0xc0, 0xa2, 0xc6, 0x80, 0x00, 0x00, 0x00, 0xff, 0xff, 0x02, 0xad, 0x52, 0xe1, 0x8e, 0x01, 0x00,
   218  	0x00,
   219  }
   220  
   221  func (m *PexRequest) Marshal() (dAtA []byte, err error) {
   222  	size := m.Size()
   223  	dAtA = make([]byte, size)
   224  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   225  	if err != nil {
   226  		return nil, err
   227  	}
   228  	return dAtA[:n], nil
   229  }
   230  
   231  func (m *PexRequest) MarshalTo(dAtA []byte) (int, error) {
   232  	size := m.Size()
   233  	return m.MarshalToSizedBuffer(dAtA[:size])
   234  }
   235  
   236  func (m *PexRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   237  	i := len(dAtA)
   238  	_ = i
   239  	var l int
   240  	_ = l
   241  	return len(dAtA) - i, nil
   242  }
   243  
   244  func (m *PexAddrs) Marshal() (dAtA []byte, err error) {
   245  	size := m.Size()
   246  	dAtA = make([]byte, size)
   247  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   248  	if err != nil {
   249  		return nil, err
   250  	}
   251  	return dAtA[:n], nil
   252  }
   253  
   254  func (m *PexAddrs) MarshalTo(dAtA []byte) (int, error) {
   255  	size := m.Size()
   256  	return m.MarshalToSizedBuffer(dAtA[:size])
   257  }
   258  
   259  func (m *PexAddrs) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   260  	i := len(dAtA)
   261  	_ = i
   262  	var l int
   263  	_ = l
   264  	if len(m.Addrs) > 0 {
   265  		for iNdEx := len(m.Addrs) - 1; iNdEx >= 0; iNdEx-- {
   266  			{
   267  				size, err := m.Addrs[iNdEx].MarshalToSizedBuffer(dAtA[:i])
   268  				if err != nil {
   269  					return 0, err
   270  				}
   271  				i -= size
   272  				i = encodeVarintPex(dAtA, i, uint64(size))
   273  			}
   274  			i--
   275  			dAtA[i] = 0xa
   276  		}
   277  	}
   278  	return len(dAtA) - i, nil
   279  }
   280  
   281  func (m *Message) Marshal() (dAtA []byte, err error) {
   282  	size := m.Size()
   283  	dAtA = make([]byte, size)
   284  	n, err := m.MarshalToSizedBuffer(dAtA[:size])
   285  	if err != nil {
   286  		return nil, err
   287  	}
   288  	return dAtA[:n], nil
   289  }
   290  
   291  func (m *Message) MarshalTo(dAtA []byte) (int, error) {
   292  	size := m.Size()
   293  	return m.MarshalToSizedBuffer(dAtA[:size])
   294  }
   295  
   296  func (m *Message) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   297  	i := len(dAtA)
   298  	_ = i
   299  	var l int
   300  	_ = l
   301  	if m.Sum != nil {
   302  		{
   303  			size := m.Sum.Size()
   304  			i -= size
   305  			if _, err := m.Sum.MarshalTo(dAtA[i:]); err != nil {
   306  				return 0, err
   307  			}
   308  		}
   309  	}
   310  	return len(dAtA) - i, nil
   311  }
   312  
   313  func (m *Message_PexRequest) MarshalTo(dAtA []byte) (int, error) {
   314  	size := m.Size()
   315  	return m.MarshalToSizedBuffer(dAtA[:size])
   316  }
   317  
   318  func (m *Message_PexRequest) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   319  	i := len(dAtA)
   320  	if m.PexRequest != nil {
   321  		{
   322  			size, err := m.PexRequest.MarshalToSizedBuffer(dAtA[:i])
   323  			if err != nil {
   324  				return 0, err
   325  			}
   326  			i -= size
   327  			i = encodeVarintPex(dAtA, i, uint64(size))
   328  		}
   329  		i--
   330  		dAtA[i] = 0xa
   331  	}
   332  	return len(dAtA) - i, nil
   333  }
   334  func (m *Message_PexAddrs) MarshalTo(dAtA []byte) (int, error) {
   335  	size := m.Size()
   336  	return m.MarshalToSizedBuffer(dAtA[:size])
   337  }
   338  
   339  func (m *Message_PexAddrs) MarshalToSizedBuffer(dAtA []byte) (int, error) {
   340  	i := len(dAtA)
   341  	if m.PexAddrs != nil {
   342  		{
   343  			size, err := m.PexAddrs.MarshalToSizedBuffer(dAtA[:i])
   344  			if err != nil {
   345  				return 0, err
   346  			}
   347  			i -= size
   348  			i = encodeVarintPex(dAtA, i, uint64(size))
   349  		}
   350  		i--
   351  		dAtA[i] = 0x12
   352  	}
   353  	return len(dAtA) - i, nil
   354  }
   355  func encodeVarintPex(dAtA []byte, offset int, v uint64) int {
   356  	offset -= sovPex(v)
   357  	base := offset
   358  	for v >= 1<<7 {
   359  		dAtA[offset] = uint8(v&0x7f | 0x80)
   360  		v >>= 7
   361  		offset++
   362  	}
   363  	dAtA[offset] = uint8(v)
   364  	return base
   365  }
   366  func (m *PexRequest) Size() (n int) {
   367  	if m == nil {
   368  		return 0
   369  	}
   370  	var l int
   371  	_ = l
   372  	return n
   373  }
   374  
   375  func (m *PexAddrs) Size() (n int) {
   376  	if m == nil {
   377  		return 0
   378  	}
   379  	var l int
   380  	_ = l
   381  	if len(m.Addrs) > 0 {
   382  		for _, e := range m.Addrs {
   383  			l = e.Size()
   384  			n += 1 + l + sovPex(uint64(l))
   385  		}
   386  	}
   387  	return n
   388  }
   389  
   390  func (m *Message) Size() (n int) {
   391  	if m == nil {
   392  		return 0
   393  	}
   394  	var l int
   395  	_ = l
   396  	if m.Sum != nil {
   397  		n += m.Sum.Size()
   398  	}
   399  	return n
   400  }
   401  
   402  func (m *Message_PexRequest) Size() (n int) {
   403  	if m == nil {
   404  		return 0
   405  	}
   406  	var l int
   407  	_ = l
   408  	if m.PexRequest != nil {
   409  		l = m.PexRequest.Size()
   410  		n += 1 + l + sovPex(uint64(l))
   411  	}
   412  	return n
   413  }
   414  func (m *Message_PexAddrs) Size() (n int) {
   415  	if m == nil {
   416  		return 0
   417  	}
   418  	var l int
   419  	_ = l
   420  	if m.PexAddrs != nil {
   421  		l = m.PexAddrs.Size()
   422  		n += 1 + l + sovPex(uint64(l))
   423  	}
   424  	return n
   425  }
   426  
   427  func sovPex(x uint64) (n int) {
   428  	return (math_bits.Len64(x|1) + 6) / 7
   429  }
   430  func sozPex(x uint64) (n int) {
   431  	return sovPex(uint64((x << 1) ^ uint64((int64(x) >> 63))))
   432  }
   433  func (m *PexRequest) Unmarshal(dAtA []byte) error {
   434  	l := len(dAtA)
   435  	iNdEx := 0
   436  	for iNdEx < l {
   437  		preIndex := iNdEx
   438  		var wire uint64
   439  		for shift := uint(0); ; shift += 7 {
   440  			if shift >= 64 {
   441  				return ErrIntOverflowPex
   442  			}
   443  			if iNdEx >= l {
   444  				return io.ErrUnexpectedEOF
   445  			}
   446  			b := dAtA[iNdEx]
   447  			iNdEx++
   448  			wire |= uint64(b&0x7F) << shift
   449  			if b < 0x80 {
   450  				break
   451  			}
   452  		}
   453  		fieldNum := int32(wire >> 3)
   454  		wireType := int(wire & 0x7)
   455  		if wireType == 4 {
   456  			return fmt.Errorf("proto: PexRequest: wiretype end group for non-group")
   457  		}
   458  		if fieldNum <= 0 {
   459  			return fmt.Errorf("proto: PexRequest: illegal tag %d (wire type %d)", fieldNum, wire)
   460  		}
   461  		switch fieldNum {
   462  		default:
   463  			iNdEx = preIndex
   464  			skippy, err := skipPex(dAtA[iNdEx:])
   465  			if err != nil {
   466  				return err
   467  			}
   468  			if (skippy < 0) || (iNdEx+skippy) < 0 {
   469  				return ErrInvalidLengthPex
   470  			}
   471  			if (iNdEx + skippy) > l {
   472  				return io.ErrUnexpectedEOF
   473  			}
   474  			iNdEx += skippy
   475  		}
   476  	}
   477  
   478  	if iNdEx > l {
   479  		return io.ErrUnexpectedEOF
   480  	}
   481  	return nil
   482  }
   483  func (m *PexAddrs) Unmarshal(dAtA []byte) error {
   484  	l := len(dAtA)
   485  	iNdEx := 0
   486  	for iNdEx < l {
   487  		preIndex := iNdEx
   488  		var wire uint64
   489  		for shift := uint(0); ; shift += 7 {
   490  			if shift >= 64 {
   491  				return ErrIntOverflowPex
   492  			}
   493  			if iNdEx >= l {
   494  				return io.ErrUnexpectedEOF
   495  			}
   496  			b := dAtA[iNdEx]
   497  			iNdEx++
   498  			wire |= uint64(b&0x7F) << shift
   499  			if b < 0x80 {
   500  				break
   501  			}
   502  		}
   503  		fieldNum := int32(wire >> 3)
   504  		wireType := int(wire & 0x7)
   505  		if wireType == 4 {
   506  			return fmt.Errorf("proto: PexAddrs: wiretype end group for non-group")
   507  		}
   508  		if fieldNum <= 0 {
   509  			return fmt.Errorf("proto: PexAddrs: illegal tag %d (wire type %d)", fieldNum, wire)
   510  		}
   511  		switch fieldNum {
   512  		case 1:
   513  			if wireType != 2 {
   514  				return fmt.Errorf("proto: wrong wireType = %d for field Addrs", wireType)
   515  			}
   516  			var msglen int
   517  			for shift := uint(0); ; shift += 7 {
   518  				if shift >= 64 {
   519  					return ErrIntOverflowPex
   520  				}
   521  				if iNdEx >= l {
   522  					return io.ErrUnexpectedEOF
   523  				}
   524  				b := dAtA[iNdEx]
   525  				iNdEx++
   526  				msglen |= int(b&0x7F) << shift
   527  				if b < 0x80 {
   528  					break
   529  				}
   530  			}
   531  			if msglen < 0 {
   532  				return ErrInvalidLengthPex
   533  			}
   534  			postIndex := iNdEx + msglen
   535  			if postIndex < 0 {
   536  				return ErrInvalidLengthPex
   537  			}
   538  			if postIndex > l {
   539  				return io.ErrUnexpectedEOF
   540  			}
   541  			m.Addrs = append(m.Addrs, NetAddress{})
   542  			if err := m.Addrs[len(m.Addrs)-1].Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
   543  				return err
   544  			}
   545  			iNdEx = postIndex
   546  		default:
   547  			iNdEx = preIndex
   548  			skippy, err := skipPex(dAtA[iNdEx:])
   549  			if err != nil {
   550  				return err
   551  			}
   552  			if (skippy < 0) || (iNdEx+skippy) < 0 {
   553  				return ErrInvalidLengthPex
   554  			}
   555  			if (iNdEx + skippy) > l {
   556  				return io.ErrUnexpectedEOF
   557  			}
   558  			iNdEx += skippy
   559  		}
   560  	}
   561  
   562  	if iNdEx > l {
   563  		return io.ErrUnexpectedEOF
   564  	}
   565  	return nil
   566  }
   567  func (m *Message) Unmarshal(dAtA []byte) error {
   568  	l := len(dAtA)
   569  	iNdEx := 0
   570  	for iNdEx < l {
   571  		preIndex := iNdEx
   572  		var wire uint64
   573  		for shift := uint(0); ; shift += 7 {
   574  			if shift >= 64 {
   575  				return ErrIntOverflowPex
   576  			}
   577  			if iNdEx >= l {
   578  				return io.ErrUnexpectedEOF
   579  			}
   580  			b := dAtA[iNdEx]
   581  			iNdEx++
   582  			wire |= uint64(b&0x7F) << shift
   583  			if b < 0x80 {
   584  				break
   585  			}
   586  		}
   587  		fieldNum := int32(wire >> 3)
   588  		wireType := int(wire & 0x7)
   589  		if wireType == 4 {
   590  			return fmt.Errorf("proto: Message: wiretype end group for non-group")
   591  		}
   592  		if fieldNum <= 0 {
   593  			return fmt.Errorf("proto: Message: illegal tag %d (wire type %d)", fieldNum, wire)
   594  		}
   595  		switch fieldNum {
   596  		case 1:
   597  			if wireType != 2 {
   598  				return fmt.Errorf("proto: wrong wireType = %d for field PexRequest", wireType)
   599  			}
   600  			var msglen int
   601  			for shift := uint(0); ; shift += 7 {
   602  				if shift >= 64 {
   603  					return ErrIntOverflowPex
   604  				}
   605  				if iNdEx >= l {
   606  					return io.ErrUnexpectedEOF
   607  				}
   608  				b := dAtA[iNdEx]
   609  				iNdEx++
   610  				msglen |= int(b&0x7F) << shift
   611  				if b < 0x80 {
   612  					break
   613  				}
   614  			}
   615  			if msglen < 0 {
   616  				return ErrInvalidLengthPex
   617  			}
   618  			postIndex := iNdEx + msglen
   619  			if postIndex < 0 {
   620  				return ErrInvalidLengthPex
   621  			}
   622  			if postIndex > l {
   623  				return io.ErrUnexpectedEOF
   624  			}
   625  			v := &PexRequest{}
   626  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
   627  				return err
   628  			}
   629  			m.Sum = &Message_PexRequest{v}
   630  			iNdEx = postIndex
   631  		case 2:
   632  			if wireType != 2 {
   633  				return fmt.Errorf("proto: wrong wireType = %d for field PexAddrs", wireType)
   634  			}
   635  			var msglen int
   636  			for shift := uint(0); ; shift += 7 {
   637  				if shift >= 64 {
   638  					return ErrIntOverflowPex
   639  				}
   640  				if iNdEx >= l {
   641  					return io.ErrUnexpectedEOF
   642  				}
   643  				b := dAtA[iNdEx]
   644  				iNdEx++
   645  				msglen |= int(b&0x7F) << shift
   646  				if b < 0x80 {
   647  					break
   648  				}
   649  			}
   650  			if msglen < 0 {
   651  				return ErrInvalidLengthPex
   652  			}
   653  			postIndex := iNdEx + msglen
   654  			if postIndex < 0 {
   655  				return ErrInvalidLengthPex
   656  			}
   657  			if postIndex > l {
   658  				return io.ErrUnexpectedEOF
   659  			}
   660  			v := &PexAddrs{}
   661  			if err := v.Unmarshal(dAtA[iNdEx:postIndex]); err != nil {
   662  				return err
   663  			}
   664  			m.Sum = &Message_PexAddrs{v}
   665  			iNdEx = postIndex
   666  		default:
   667  			iNdEx = preIndex
   668  			skippy, err := skipPex(dAtA[iNdEx:])
   669  			if err != nil {
   670  				return err
   671  			}
   672  			if (skippy < 0) || (iNdEx+skippy) < 0 {
   673  				return ErrInvalidLengthPex
   674  			}
   675  			if (iNdEx + skippy) > l {
   676  				return io.ErrUnexpectedEOF
   677  			}
   678  			iNdEx += skippy
   679  		}
   680  	}
   681  
   682  	if iNdEx > l {
   683  		return io.ErrUnexpectedEOF
   684  	}
   685  	return nil
   686  }
   687  func skipPex(dAtA []byte) (n int, err error) {
   688  	l := len(dAtA)
   689  	iNdEx := 0
   690  	depth := 0
   691  	for iNdEx < l {
   692  		var wire uint64
   693  		for shift := uint(0); ; shift += 7 {
   694  			if shift >= 64 {
   695  				return 0, ErrIntOverflowPex
   696  			}
   697  			if iNdEx >= l {
   698  				return 0, io.ErrUnexpectedEOF
   699  			}
   700  			b := dAtA[iNdEx]
   701  			iNdEx++
   702  			wire |= (uint64(b) & 0x7F) << shift
   703  			if b < 0x80 {
   704  				break
   705  			}
   706  		}
   707  		wireType := int(wire & 0x7)
   708  		switch wireType {
   709  		case 0:
   710  			for shift := uint(0); ; shift += 7 {
   711  				if shift >= 64 {
   712  					return 0, ErrIntOverflowPex
   713  				}
   714  				if iNdEx >= l {
   715  					return 0, io.ErrUnexpectedEOF
   716  				}
   717  				iNdEx++
   718  				if dAtA[iNdEx-1] < 0x80 {
   719  					break
   720  				}
   721  			}
   722  		case 1:
   723  			iNdEx += 8
   724  		case 2:
   725  			var length int
   726  			for shift := uint(0); ; shift += 7 {
   727  				if shift >= 64 {
   728  					return 0, ErrIntOverflowPex
   729  				}
   730  				if iNdEx >= l {
   731  					return 0, io.ErrUnexpectedEOF
   732  				}
   733  				b := dAtA[iNdEx]
   734  				iNdEx++
   735  				length |= (int(b) & 0x7F) << shift
   736  				if b < 0x80 {
   737  					break
   738  				}
   739  			}
   740  			if length < 0 {
   741  				return 0, ErrInvalidLengthPex
   742  			}
   743  			iNdEx += length
   744  		case 3:
   745  			depth++
   746  		case 4:
   747  			if depth == 0 {
   748  				return 0, ErrUnexpectedEndOfGroupPex
   749  			}
   750  			depth--
   751  		case 5:
   752  			iNdEx += 4
   753  		default:
   754  			return 0, fmt.Errorf("proto: illegal wireType %d", wireType)
   755  		}
   756  		if iNdEx < 0 {
   757  			return 0, ErrInvalidLengthPex
   758  		}
   759  		if depth == 0 {
   760  			return iNdEx, nil
   761  		}
   762  	}
   763  	return 0, io.ErrUnexpectedEOF
   764  }
   765  
   766  var (
   767  	ErrInvalidLengthPex        = fmt.Errorf("proto: negative length found during unmarshaling")
   768  	ErrIntOverflowPex          = fmt.Errorf("proto: integer overflow")
   769  	ErrUnexpectedEndOfGroupPex = fmt.Errorf("proto: unexpected end of group")
   770  )