github.com/edwarnicke/govpp@v0.0.0-20230130211138-14ef5d20b1d0/binapi/vmxnet3/vmxnet3.ba.go (about)

     1  // Code generated by GoVPP's binapi-generator. DO NOT EDIT.
     2  // versions:
     3  //  binapi-generator: v0.4.0-dev
     4  //  VPP:              23.02-rc0~189-g57127b32a
     5  // source: /usr/share/vpp/api/plugins/vmxnet3.api.json
     6  
     7  // Package vmxnet3 contains generated bindings for API file vmxnet3.api.
     8  //
     9  // Contents:
    10  //   2 structs
    11  //   8 messages
    12  //
    13  package vmxnet3
    14  
    15  import (
    16  	api "git.fd.io/govpp.git/api"
    17  	codec "git.fd.io/govpp.git/codec"
    18  	ethernet_types "github.com/edwarnicke/govpp/binapi/ethernet_types"
    19  	interface_types "github.com/edwarnicke/govpp/binapi/interface_types"
    20  )
    21  
    22  // This is a compile-time assertion to ensure that this generated file
    23  // is compatible with the GoVPP api package it is being compiled against.
    24  // A compilation error at this line likely means your copy of the
    25  // GoVPP api package needs to be updated.
    26  const _ = api.GoVppAPIPackageIsVersion2
    27  
    28  const (
    29  	APIFile    = "vmxnet3"
    30  	APIVersion = "1.2.0"
    31  	VersionCrc = 0x609454ea
    32  )
    33  
    34  // Vmxnet3RxList defines type 'vmxnet3_rx_list'.
    35  type Vmxnet3RxList struct {
    36  	RxQsize   uint16   `binapi:"u16,name=rx_qsize" json:"rx_qsize,omitempty"`
    37  	RxFill    []uint16 `binapi:"u16[2],name=rx_fill" json:"rx_fill,omitempty"`
    38  	RxNext    uint16   `binapi:"u16,name=rx_next" json:"rx_next,omitempty"`
    39  	RxProduce []uint16 `binapi:"u16[2],name=rx_produce" json:"rx_produce,omitempty"`
    40  	RxConsume []uint16 `binapi:"u16[2],name=rx_consume" json:"rx_consume,omitempty"`
    41  }
    42  
    43  // Vmxnet3TxList defines type 'vmxnet3_tx_list'.
    44  type Vmxnet3TxList struct {
    45  	TxQsize   uint16 `binapi:"u16,name=tx_qsize" json:"tx_qsize,omitempty"`
    46  	TxNext    uint16 `binapi:"u16,name=tx_next" json:"tx_next,omitempty"`
    47  	TxProduce uint16 `binapi:"u16,name=tx_produce" json:"tx_produce,omitempty"`
    48  	TxConsume uint16 `binapi:"u16,name=tx_consume" json:"tx_consume,omitempty"`
    49  }
    50  
    51  // SwVmxnet3InterfaceDetails defines message 'sw_vmxnet3_interface_details'.
    52  type SwVmxnet3InterfaceDetails struct {
    53  	SwIfIndex   interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
    54  	IfName      string                         `binapi:"string[64],name=if_name" json:"if_name,omitempty"`
    55  	HwAddr      ethernet_types.MacAddress      `binapi:"mac_address,name=hw_addr" json:"hw_addr,omitempty"`
    56  	PciAddr     uint32                         `binapi:"u32,name=pci_addr" json:"pci_addr,omitempty"`
    57  	Version     uint8                          `binapi:"u8,name=version" json:"version,omitempty"`
    58  	AdminUpDown bool                           `binapi:"bool,name=admin_up_down" json:"admin_up_down,omitempty"`
    59  	RxCount     uint8                          `binapi:"u8,name=rx_count" json:"rx_count,omitempty"`
    60  	RxList      [16]Vmxnet3RxList              `binapi:"vmxnet3_rx_list[16],name=rx_list" json:"rx_list,omitempty"`
    61  	TxCount     uint8                          `binapi:"u8,name=tx_count" json:"tx_count,omitempty"`
    62  	TxList      [8]Vmxnet3TxList               `binapi:"vmxnet3_tx_list[8],name=tx_list" json:"tx_list,omitempty"`
    63  }
    64  
    65  func (m *SwVmxnet3InterfaceDetails) Reset()               { *m = SwVmxnet3InterfaceDetails{} }
    66  func (*SwVmxnet3InterfaceDetails) GetMessageName() string { return "sw_vmxnet3_interface_details" }
    67  func (*SwVmxnet3InterfaceDetails) GetCrcString() string   { return "6a1a5498" }
    68  func (*SwVmxnet3InterfaceDetails) GetMessageType() api.MessageType {
    69  	return api.ReplyMessage
    70  }
    71  
    72  func (m *SwVmxnet3InterfaceDetails) Size() (size int) {
    73  	if m == nil {
    74  		return 0
    75  	}
    76  	size += 4     // m.SwIfIndex
    77  	size += 64    // m.IfName
    78  	size += 1 * 6 // m.HwAddr
    79  	size += 4     // m.PciAddr
    80  	size += 1     // m.Version
    81  	size += 1     // m.AdminUpDown
    82  	size += 1     // m.RxCount
    83  	for j1 := 0; j1 < 16; j1++ {
    84  		size += 2     // m.RxList[j1].RxQsize
    85  		size += 2 * 2 // m.RxList[j1].RxFill
    86  		size += 2     // m.RxList[j1].RxNext
    87  		size += 2 * 2 // m.RxList[j1].RxProduce
    88  		size += 2 * 2 // m.RxList[j1].RxConsume
    89  	}
    90  	size += 1 // m.TxCount
    91  	for j1 := 0; j1 < 8; j1++ {
    92  		size += 2 // m.TxList[j1].TxQsize
    93  		size += 2 // m.TxList[j1].TxNext
    94  		size += 2 // m.TxList[j1].TxProduce
    95  		size += 2 // m.TxList[j1].TxConsume
    96  	}
    97  	return size
    98  }
    99  func (m *SwVmxnet3InterfaceDetails) Marshal(b []byte) ([]byte, error) {
   100  	if b == nil {
   101  		b = make([]byte, m.Size())
   102  	}
   103  	buf := codec.NewBuffer(b)
   104  	buf.EncodeUint32(uint32(m.SwIfIndex))
   105  	buf.EncodeString(m.IfName, 64)
   106  	buf.EncodeBytes(m.HwAddr[:], 6)
   107  	buf.EncodeUint32(m.PciAddr)
   108  	buf.EncodeUint8(m.Version)
   109  	buf.EncodeBool(m.AdminUpDown)
   110  	buf.EncodeUint8(m.RxCount)
   111  	for j0 := 0; j0 < 16; j0++ {
   112  		buf.EncodeUint16(m.RxList[j0].RxQsize)
   113  		for i := 0; i < 2; i++ {
   114  			var x uint16
   115  			if i < len(m.RxList[j0].RxFill) {
   116  				x = uint16(m.RxList[j0].RxFill[i])
   117  			}
   118  			buf.EncodeUint16(x)
   119  		}
   120  		buf.EncodeUint16(m.RxList[j0].RxNext)
   121  		for i := 0; i < 2; i++ {
   122  			var x uint16
   123  			if i < len(m.RxList[j0].RxProduce) {
   124  				x = uint16(m.RxList[j0].RxProduce[i])
   125  			}
   126  			buf.EncodeUint16(x)
   127  		}
   128  		for i := 0; i < 2; i++ {
   129  			var x uint16
   130  			if i < len(m.RxList[j0].RxConsume) {
   131  				x = uint16(m.RxList[j0].RxConsume[i])
   132  			}
   133  			buf.EncodeUint16(x)
   134  		}
   135  	}
   136  	buf.EncodeUint8(m.TxCount)
   137  	for j0 := 0; j0 < 8; j0++ {
   138  		buf.EncodeUint16(m.TxList[j0].TxQsize)
   139  		buf.EncodeUint16(m.TxList[j0].TxNext)
   140  		buf.EncodeUint16(m.TxList[j0].TxProduce)
   141  		buf.EncodeUint16(m.TxList[j0].TxConsume)
   142  	}
   143  	return buf.Bytes(), nil
   144  }
   145  func (m *SwVmxnet3InterfaceDetails) Unmarshal(b []byte) error {
   146  	buf := codec.NewBuffer(b)
   147  	m.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
   148  	m.IfName = buf.DecodeString(64)
   149  	copy(m.HwAddr[:], buf.DecodeBytes(6))
   150  	m.PciAddr = buf.DecodeUint32()
   151  	m.Version = buf.DecodeUint8()
   152  	m.AdminUpDown = buf.DecodeBool()
   153  	m.RxCount = buf.DecodeUint8()
   154  	for j0 := 0; j0 < 16; j0++ {
   155  		m.RxList[j0].RxQsize = buf.DecodeUint16()
   156  		m.RxList[j0].RxFill = make([]uint16, 2)
   157  		for i := 0; i < len(m.RxList[j0].RxFill); i++ {
   158  			m.RxList[j0].RxFill[i] = buf.DecodeUint16()
   159  		}
   160  		m.RxList[j0].RxNext = buf.DecodeUint16()
   161  		m.RxList[j0].RxProduce = make([]uint16, 2)
   162  		for i := 0; i < len(m.RxList[j0].RxProduce); i++ {
   163  			m.RxList[j0].RxProduce[i] = buf.DecodeUint16()
   164  		}
   165  		m.RxList[j0].RxConsume = make([]uint16, 2)
   166  		for i := 0; i < len(m.RxList[j0].RxConsume); i++ {
   167  			m.RxList[j0].RxConsume[i] = buf.DecodeUint16()
   168  		}
   169  	}
   170  	m.TxCount = buf.DecodeUint8()
   171  	for j0 := 0; j0 < 8; j0++ {
   172  		m.TxList[j0].TxQsize = buf.DecodeUint16()
   173  		m.TxList[j0].TxNext = buf.DecodeUint16()
   174  		m.TxList[j0].TxProduce = buf.DecodeUint16()
   175  		m.TxList[j0].TxConsume = buf.DecodeUint16()
   176  	}
   177  	return nil
   178  }
   179  
   180  // SwVmxnet3InterfaceDump defines message 'sw_vmxnet3_interface_dump'.
   181  type SwVmxnet3InterfaceDump struct {
   182  	SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index,default=4294967295" json:"sw_if_index,omitempty"`
   183  }
   184  
   185  func (m *SwVmxnet3InterfaceDump) Reset()               { *m = SwVmxnet3InterfaceDump{} }
   186  func (*SwVmxnet3InterfaceDump) GetMessageName() string { return "sw_vmxnet3_interface_dump" }
   187  func (*SwVmxnet3InterfaceDump) GetCrcString() string   { return "f9e6675e" }
   188  func (*SwVmxnet3InterfaceDump) GetMessageType() api.MessageType {
   189  	return api.RequestMessage
   190  }
   191  
   192  func (m *SwVmxnet3InterfaceDump) Size() (size int) {
   193  	if m == nil {
   194  		return 0
   195  	}
   196  	size += 4 // m.SwIfIndex
   197  	return size
   198  }
   199  func (m *SwVmxnet3InterfaceDump) Marshal(b []byte) ([]byte, error) {
   200  	if b == nil {
   201  		b = make([]byte, m.Size())
   202  	}
   203  	buf := codec.NewBuffer(b)
   204  	buf.EncodeUint32(uint32(m.SwIfIndex))
   205  	return buf.Bytes(), nil
   206  }
   207  func (m *SwVmxnet3InterfaceDump) Unmarshal(b []byte) error {
   208  	buf := codec.NewBuffer(b)
   209  	m.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
   210  	return nil
   211  }
   212  
   213  // Vmxnet3Create defines message 'vmxnet3_create'.
   214  type Vmxnet3Create struct {
   215  	PciAddr    uint32 `binapi:"u32,name=pci_addr" json:"pci_addr,omitempty"`
   216  	EnableElog int32  `binapi:"i32,name=enable_elog" json:"enable_elog,omitempty"`
   217  	RxqSize    uint16 `binapi:"u16,name=rxq_size" json:"rxq_size,omitempty"`
   218  	RxqNum     uint16 `binapi:"u16,name=rxq_num" json:"rxq_num,omitempty"`
   219  	TxqSize    uint16 `binapi:"u16,name=txq_size" json:"txq_size,omitempty"`
   220  	TxqNum     uint16 `binapi:"u16,name=txq_num" json:"txq_num,omitempty"`
   221  	Bind       uint8  `binapi:"u8,name=bind" json:"bind,omitempty"`
   222  	EnableGso  bool   `binapi:"bool,name=enable_gso" json:"enable_gso,omitempty"`
   223  }
   224  
   225  func (m *Vmxnet3Create) Reset()               { *m = Vmxnet3Create{} }
   226  func (*Vmxnet3Create) GetMessageName() string { return "vmxnet3_create" }
   227  func (*Vmxnet3Create) GetCrcString() string   { return "71a07314" }
   228  func (*Vmxnet3Create) GetMessageType() api.MessageType {
   229  	return api.RequestMessage
   230  }
   231  
   232  func (m *Vmxnet3Create) Size() (size int) {
   233  	if m == nil {
   234  		return 0
   235  	}
   236  	size += 4 // m.PciAddr
   237  	size += 4 // m.EnableElog
   238  	size += 2 // m.RxqSize
   239  	size += 2 // m.RxqNum
   240  	size += 2 // m.TxqSize
   241  	size += 2 // m.TxqNum
   242  	size += 1 // m.Bind
   243  	size += 1 // m.EnableGso
   244  	return size
   245  }
   246  func (m *Vmxnet3Create) Marshal(b []byte) ([]byte, error) {
   247  	if b == nil {
   248  		b = make([]byte, m.Size())
   249  	}
   250  	buf := codec.NewBuffer(b)
   251  	buf.EncodeUint32(m.PciAddr)
   252  	buf.EncodeInt32(m.EnableElog)
   253  	buf.EncodeUint16(m.RxqSize)
   254  	buf.EncodeUint16(m.RxqNum)
   255  	buf.EncodeUint16(m.TxqSize)
   256  	buf.EncodeUint16(m.TxqNum)
   257  	buf.EncodeUint8(m.Bind)
   258  	buf.EncodeBool(m.EnableGso)
   259  	return buf.Bytes(), nil
   260  }
   261  func (m *Vmxnet3Create) Unmarshal(b []byte) error {
   262  	buf := codec.NewBuffer(b)
   263  	m.PciAddr = buf.DecodeUint32()
   264  	m.EnableElog = buf.DecodeInt32()
   265  	m.RxqSize = buf.DecodeUint16()
   266  	m.RxqNum = buf.DecodeUint16()
   267  	m.TxqSize = buf.DecodeUint16()
   268  	m.TxqNum = buf.DecodeUint16()
   269  	m.Bind = buf.DecodeUint8()
   270  	m.EnableGso = buf.DecodeBool()
   271  	return nil
   272  }
   273  
   274  // Vmxnet3CreateReply defines message 'vmxnet3_create_reply'.
   275  type Vmxnet3CreateReply struct {
   276  	Retval    int32                          `binapi:"i32,name=retval" json:"retval,omitempty"`
   277  	SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
   278  }
   279  
   280  func (m *Vmxnet3CreateReply) Reset()               { *m = Vmxnet3CreateReply{} }
   281  func (*Vmxnet3CreateReply) GetMessageName() string { return "vmxnet3_create_reply" }
   282  func (*Vmxnet3CreateReply) GetCrcString() string   { return "5383d31f" }
   283  func (*Vmxnet3CreateReply) GetMessageType() api.MessageType {
   284  	return api.ReplyMessage
   285  }
   286  
   287  func (m *Vmxnet3CreateReply) Size() (size int) {
   288  	if m == nil {
   289  		return 0
   290  	}
   291  	size += 4 // m.Retval
   292  	size += 4 // m.SwIfIndex
   293  	return size
   294  }
   295  func (m *Vmxnet3CreateReply) Marshal(b []byte) ([]byte, error) {
   296  	if b == nil {
   297  		b = make([]byte, m.Size())
   298  	}
   299  	buf := codec.NewBuffer(b)
   300  	buf.EncodeInt32(m.Retval)
   301  	buf.EncodeUint32(uint32(m.SwIfIndex))
   302  	return buf.Bytes(), nil
   303  }
   304  func (m *Vmxnet3CreateReply) Unmarshal(b []byte) error {
   305  	buf := codec.NewBuffer(b)
   306  	m.Retval = buf.DecodeInt32()
   307  	m.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
   308  	return nil
   309  }
   310  
   311  // Vmxnet3Delete defines message 'vmxnet3_delete'.
   312  type Vmxnet3Delete struct {
   313  	SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
   314  }
   315  
   316  func (m *Vmxnet3Delete) Reset()               { *m = Vmxnet3Delete{} }
   317  func (*Vmxnet3Delete) GetMessageName() string { return "vmxnet3_delete" }
   318  func (*Vmxnet3Delete) GetCrcString() string   { return "f9e6675e" }
   319  func (*Vmxnet3Delete) GetMessageType() api.MessageType {
   320  	return api.RequestMessage
   321  }
   322  
   323  func (m *Vmxnet3Delete) Size() (size int) {
   324  	if m == nil {
   325  		return 0
   326  	}
   327  	size += 4 // m.SwIfIndex
   328  	return size
   329  }
   330  func (m *Vmxnet3Delete) Marshal(b []byte) ([]byte, error) {
   331  	if b == nil {
   332  		b = make([]byte, m.Size())
   333  	}
   334  	buf := codec.NewBuffer(b)
   335  	buf.EncodeUint32(uint32(m.SwIfIndex))
   336  	return buf.Bytes(), nil
   337  }
   338  func (m *Vmxnet3Delete) Unmarshal(b []byte) error {
   339  	buf := codec.NewBuffer(b)
   340  	m.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
   341  	return nil
   342  }
   343  
   344  // Vmxnet3DeleteReply defines message 'vmxnet3_delete_reply'.
   345  type Vmxnet3DeleteReply struct {
   346  	Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
   347  }
   348  
   349  func (m *Vmxnet3DeleteReply) Reset()               { *m = Vmxnet3DeleteReply{} }
   350  func (*Vmxnet3DeleteReply) GetMessageName() string { return "vmxnet3_delete_reply" }
   351  func (*Vmxnet3DeleteReply) GetCrcString() string   { return "e8d4e804" }
   352  func (*Vmxnet3DeleteReply) GetMessageType() api.MessageType {
   353  	return api.ReplyMessage
   354  }
   355  
   356  func (m *Vmxnet3DeleteReply) Size() (size int) {
   357  	if m == nil {
   358  		return 0
   359  	}
   360  	size += 4 // m.Retval
   361  	return size
   362  }
   363  func (m *Vmxnet3DeleteReply) Marshal(b []byte) ([]byte, error) {
   364  	if b == nil {
   365  		b = make([]byte, m.Size())
   366  	}
   367  	buf := codec.NewBuffer(b)
   368  	buf.EncodeInt32(m.Retval)
   369  	return buf.Bytes(), nil
   370  }
   371  func (m *Vmxnet3DeleteReply) Unmarshal(b []byte) error {
   372  	buf := codec.NewBuffer(b)
   373  	m.Retval = buf.DecodeInt32()
   374  	return nil
   375  }
   376  
   377  // Vmxnet3Details defines message 'vmxnet3_details'.
   378  type Vmxnet3Details struct {
   379  	SwIfIndex   interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
   380  	IfName      string                         `binapi:"string[64],name=if_name" json:"if_name,omitempty"`
   381  	HwAddr      ethernet_types.MacAddress      `binapi:"mac_address,name=hw_addr" json:"hw_addr,omitempty"`
   382  	PciAddr     uint32                         `binapi:"u32,name=pci_addr" json:"pci_addr,omitempty"`
   383  	Version     uint8                          `binapi:"u8,name=version" json:"version,omitempty"`
   384  	AdminUpDown bool                           `binapi:"bool,name=admin_up_down" json:"admin_up_down,omitempty"`
   385  	RxCount     uint8                          `binapi:"u8,name=rx_count" json:"rx_count,omitempty"`
   386  	RxList      [16]Vmxnet3RxList              `binapi:"vmxnet3_rx_list[16],name=rx_list" json:"rx_list,omitempty"`
   387  	TxCount     uint8                          `binapi:"u8,name=tx_count" json:"tx_count,omitempty"`
   388  	TxList      [8]Vmxnet3TxList               `binapi:"vmxnet3_tx_list[8],name=tx_list" json:"tx_list,omitempty"`
   389  }
   390  
   391  func (m *Vmxnet3Details) Reset()               { *m = Vmxnet3Details{} }
   392  func (*Vmxnet3Details) GetMessageName() string { return "vmxnet3_details" }
   393  func (*Vmxnet3Details) GetCrcString() string   { return "6a1a5498" }
   394  func (*Vmxnet3Details) GetMessageType() api.MessageType {
   395  	return api.ReplyMessage
   396  }
   397  
   398  func (m *Vmxnet3Details) Size() (size int) {
   399  	if m == nil {
   400  		return 0
   401  	}
   402  	size += 4     // m.SwIfIndex
   403  	size += 64    // m.IfName
   404  	size += 1 * 6 // m.HwAddr
   405  	size += 4     // m.PciAddr
   406  	size += 1     // m.Version
   407  	size += 1     // m.AdminUpDown
   408  	size += 1     // m.RxCount
   409  	for j1 := 0; j1 < 16; j1++ {
   410  		size += 2     // m.RxList[j1].RxQsize
   411  		size += 2 * 2 // m.RxList[j1].RxFill
   412  		size += 2     // m.RxList[j1].RxNext
   413  		size += 2 * 2 // m.RxList[j1].RxProduce
   414  		size += 2 * 2 // m.RxList[j1].RxConsume
   415  	}
   416  	size += 1 // m.TxCount
   417  	for j1 := 0; j1 < 8; j1++ {
   418  		size += 2 // m.TxList[j1].TxQsize
   419  		size += 2 // m.TxList[j1].TxNext
   420  		size += 2 // m.TxList[j1].TxProduce
   421  		size += 2 // m.TxList[j1].TxConsume
   422  	}
   423  	return size
   424  }
   425  func (m *Vmxnet3Details) Marshal(b []byte) ([]byte, error) {
   426  	if b == nil {
   427  		b = make([]byte, m.Size())
   428  	}
   429  	buf := codec.NewBuffer(b)
   430  	buf.EncodeUint32(uint32(m.SwIfIndex))
   431  	buf.EncodeString(m.IfName, 64)
   432  	buf.EncodeBytes(m.HwAddr[:], 6)
   433  	buf.EncodeUint32(m.PciAddr)
   434  	buf.EncodeUint8(m.Version)
   435  	buf.EncodeBool(m.AdminUpDown)
   436  	buf.EncodeUint8(m.RxCount)
   437  	for j0 := 0; j0 < 16; j0++ {
   438  		buf.EncodeUint16(m.RxList[j0].RxQsize)
   439  		for i := 0; i < 2; i++ {
   440  			var x uint16
   441  			if i < len(m.RxList[j0].RxFill) {
   442  				x = uint16(m.RxList[j0].RxFill[i])
   443  			}
   444  			buf.EncodeUint16(x)
   445  		}
   446  		buf.EncodeUint16(m.RxList[j0].RxNext)
   447  		for i := 0; i < 2; i++ {
   448  			var x uint16
   449  			if i < len(m.RxList[j0].RxProduce) {
   450  				x = uint16(m.RxList[j0].RxProduce[i])
   451  			}
   452  			buf.EncodeUint16(x)
   453  		}
   454  		for i := 0; i < 2; i++ {
   455  			var x uint16
   456  			if i < len(m.RxList[j0].RxConsume) {
   457  				x = uint16(m.RxList[j0].RxConsume[i])
   458  			}
   459  			buf.EncodeUint16(x)
   460  		}
   461  	}
   462  	buf.EncodeUint8(m.TxCount)
   463  	for j0 := 0; j0 < 8; j0++ {
   464  		buf.EncodeUint16(m.TxList[j0].TxQsize)
   465  		buf.EncodeUint16(m.TxList[j0].TxNext)
   466  		buf.EncodeUint16(m.TxList[j0].TxProduce)
   467  		buf.EncodeUint16(m.TxList[j0].TxConsume)
   468  	}
   469  	return buf.Bytes(), nil
   470  }
   471  func (m *Vmxnet3Details) Unmarshal(b []byte) error {
   472  	buf := codec.NewBuffer(b)
   473  	m.SwIfIndex = interface_types.InterfaceIndex(buf.DecodeUint32())
   474  	m.IfName = buf.DecodeString(64)
   475  	copy(m.HwAddr[:], buf.DecodeBytes(6))
   476  	m.PciAddr = buf.DecodeUint32()
   477  	m.Version = buf.DecodeUint8()
   478  	m.AdminUpDown = buf.DecodeBool()
   479  	m.RxCount = buf.DecodeUint8()
   480  	for j0 := 0; j0 < 16; j0++ {
   481  		m.RxList[j0].RxQsize = buf.DecodeUint16()
   482  		m.RxList[j0].RxFill = make([]uint16, 2)
   483  		for i := 0; i < len(m.RxList[j0].RxFill); i++ {
   484  			m.RxList[j0].RxFill[i] = buf.DecodeUint16()
   485  		}
   486  		m.RxList[j0].RxNext = buf.DecodeUint16()
   487  		m.RxList[j0].RxProduce = make([]uint16, 2)
   488  		for i := 0; i < len(m.RxList[j0].RxProduce); i++ {
   489  			m.RxList[j0].RxProduce[i] = buf.DecodeUint16()
   490  		}
   491  		m.RxList[j0].RxConsume = make([]uint16, 2)
   492  		for i := 0; i < len(m.RxList[j0].RxConsume); i++ {
   493  			m.RxList[j0].RxConsume[i] = buf.DecodeUint16()
   494  		}
   495  	}
   496  	m.TxCount = buf.DecodeUint8()
   497  	for j0 := 0; j0 < 8; j0++ {
   498  		m.TxList[j0].TxQsize = buf.DecodeUint16()
   499  		m.TxList[j0].TxNext = buf.DecodeUint16()
   500  		m.TxList[j0].TxProduce = buf.DecodeUint16()
   501  		m.TxList[j0].TxConsume = buf.DecodeUint16()
   502  	}
   503  	return nil
   504  }
   505  
   506  // Vmxnet3Dump defines message 'vmxnet3_dump'.
   507  // Deprecated: the message will be removed in the future versions
   508  type Vmxnet3Dump struct{}
   509  
   510  func (m *Vmxnet3Dump) Reset()               { *m = Vmxnet3Dump{} }
   511  func (*Vmxnet3Dump) GetMessageName() string { return "vmxnet3_dump" }
   512  func (*Vmxnet3Dump) GetCrcString() string   { return "51077d14" }
   513  func (*Vmxnet3Dump) GetMessageType() api.MessageType {
   514  	return api.RequestMessage
   515  }
   516  
   517  func (m *Vmxnet3Dump) Size() (size int) {
   518  	if m == nil {
   519  		return 0
   520  	}
   521  	return size
   522  }
   523  func (m *Vmxnet3Dump) Marshal(b []byte) ([]byte, error) {
   524  	if b == nil {
   525  		b = make([]byte, m.Size())
   526  	}
   527  	buf := codec.NewBuffer(b)
   528  	return buf.Bytes(), nil
   529  }
   530  func (m *Vmxnet3Dump) Unmarshal(b []byte) error {
   531  	return nil
   532  }
   533  
   534  func init() { file_vmxnet3_binapi_init() }
   535  func file_vmxnet3_binapi_init() {
   536  	api.RegisterMessage((*SwVmxnet3InterfaceDetails)(nil), "sw_vmxnet3_interface_details_6a1a5498")
   537  	api.RegisterMessage((*SwVmxnet3InterfaceDump)(nil), "sw_vmxnet3_interface_dump_f9e6675e")
   538  	api.RegisterMessage((*Vmxnet3Create)(nil), "vmxnet3_create_71a07314")
   539  	api.RegisterMessage((*Vmxnet3CreateReply)(nil), "vmxnet3_create_reply_5383d31f")
   540  	api.RegisterMessage((*Vmxnet3Delete)(nil), "vmxnet3_delete_f9e6675e")
   541  	api.RegisterMessage((*Vmxnet3DeleteReply)(nil), "vmxnet3_delete_reply_e8d4e804")
   542  	api.RegisterMessage((*Vmxnet3Details)(nil), "vmxnet3_details_6a1a5498")
   543  	api.RegisterMessage((*Vmxnet3Dump)(nil), "vmxnet3_dump_51077d14")
   544  }
   545  
   546  // Messages returns list of all messages in this module.
   547  func AllMessages() []api.Message {
   548  	return []api.Message{
   549  		(*SwVmxnet3InterfaceDetails)(nil),
   550  		(*SwVmxnet3InterfaceDump)(nil),
   551  		(*Vmxnet3Create)(nil),
   552  		(*Vmxnet3CreateReply)(nil),
   553  		(*Vmxnet3Delete)(nil),
   554  		(*Vmxnet3DeleteReply)(nil),
   555  		(*Vmxnet3Details)(nil),
   556  		(*Vmxnet3Dump)(nil),
   557  	}
   558  }