tapv2

package
v3.29.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 8, 2024 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

Package tapv2 contains generated bindings for API file tapv2.api.

Contents: - 1 enum - 8 messages

Index

Constants

View Source
const (
	APIFile    = "tapv2"
	APIVersion = "4.0.0"
	VersionCrc = 0xc2f80dc7
)

Variables

View Source
var (
	TapFlags_name = map[uint32]string{
		1:   "TAP_API_FLAG_GSO",
		2:   "TAP_API_FLAG_CSUM_OFFLOAD",
		4:   "TAP_API_FLAG_PERSIST",
		8:   "TAP_API_FLAG_ATTACH",
		16:  "TAP_API_FLAG_TUN",
		32:  "TAP_API_FLAG_GRO_COALESCE",
		64:  "TAP_API_FLAG_PACKED",
		128: "TAP_API_FLAG_IN_ORDER",
	}
	TapFlags_value = map[string]uint32{
		"TAP_API_FLAG_GSO":          1,
		"TAP_API_FLAG_CSUM_OFFLOAD": 2,
		"TAP_API_FLAG_PERSIST":      4,
		"TAP_API_FLAG_ATTACH":       8,
		"TAP_API_FLAG_TUN":          16,
		"TAP_API_FLAG_GRO_COALESCE": 32,
		"TAP_API_FLAG_PACKED":       64,
		"TAP_API_FLAG_IN_ORDER":     128,
	}
)

Functions

func AllMessages

func AllMessages() []api.Message

Messages returns list of all messages in this module.

Types

type RPCService

type RPCService interface {
	SwInterfaceTapV2Dump(ctx context.Context, in *SwInterfaceTapV2Dump) (RPCService_SwInterfaceTapV2DumpClient, error)
	TapCreateV2(ctx context.Context, in *TapCreateV2) (*TapCreateV2Reply, error)
	TapCreateV3(ctx context.Context, in *TapCreateV3) (*TapCreateV3Reply, error)
	TapDeleteV2(ctx context.Context, in *TapDeleteV2) (*TapDeleteV2Reply, error)
}

RPCService defines RPC service tapv2.

func NewServiceClient

func NewServiceClient(conn api.Connection) RPCService

type RPCService_SwInterfaceTapV2DumpClient

type RPCService_SwInterfaceTapV2DumpClient interface {
	Recv() (*SwInterfaceTapV2Details, error)
	api.Stream
}

type SwInterfaceTapV2Details

type SwInterfaceTapV2Details struct {
	SwIfIndex     uint32                        `binapi:"u32,name=sw_if_index" json:"sw_if_index,omitempty"`
	ID            uint32                        `binapi:"u32,name=id" json:"id,omitempty"`
	TxRingSz      uint16                        `binapi:"u16,name=tx_ring_sz" json:"tx_ring_sz,omitempty"`
	RxRingSz      uint16                        `binapi:"u16,name=rx_ring_sz" json:"rx_ring_sz,omitempty"`
	HostMtuSize   uint32                        `binapi:"u32,name=host_mtu_size" json:"host_mtu_size,omitempty"`
	HostMacAddr   ethernet_types.MacAddress     `binapi:"mac_address,name=host_mac_addr" json:"host_mac_addr,omitempty"`
	HostIP4Prefix ip_types.IP4AddressWithPrefix `binapi:"ip4_address_with_prefix,name=host_ip4_prefix" json:"host_ip4_prefix,omitempty"`
	HostIP6Prefix ip_types.IP6AddressWithPrefix `binapi:"ip6_address_with_prefix,name=host_ip6_prefix" json:"host_ip6_prefix,omitempty"`
	TapFlags      TapFlags                      `binapi:"tap_flags,name=tap_flags" json:"tap_flags,omitempty"`
	DevName       string                        `binapi:"string[64],name=dev_name" json:"dev_name,omitempty"`
	HostIfName    string                        `binapi:"string[64],name=host_if_name" json:"host_if_name,omitempty"`
	HostNamespace string                        `binapi:"string[64],name=host_namespace" json:"host_namespace,omitempty"`
	HostBridge    string                        `binapi:"string[64],name=host_bridge" json:"host_bridge,omitempty"`
}

Reply for tap dump request

  • sw_if_index - software index of tap interface
  • id - interface id
  • tx_ring_sz - the number of entries of TX ring
  • rx_ring_sz - the number of entries of RX ring
  • host_mtu_size - host mtu size
  • host_mac_addr - mac address assigned to the host side of the interface
  • host_ip4_prefix - host IPv4 ip address
  • host_ip6_prefix - host IPv6 ip address
  • tap_flags - flags for the TAP interface creation
  • dev_name - Linux tap device name
  • host_if_name - host side interface name
  • host_namespace - host namespace the interface is attached into
  • host_bridge - host bridge the interface is attached into

SwInterfaceTapV2Details defines message 'sw_interface_tap_v2_details'.

func (*SwInterfaceTapV2Details) GetCrcString

func (*SwInterfaceTapV2Details) GetCrcString() string

func (*SwInterfaceTapV2Details) GetMessageName

func (*SwInterfaceTapV2Details) GetMessageName() string

func (*SwInterfaceTapV2Details) GetMessageType

func (*SwInterfaceTapV2Details) GetMessageType() api.MessageType

func (*SwInterfaceTapV2Details) Marshal

func (m *SwInterfaceTapV2Details) Marshal(b []byte) ([]byte, error)

func (*SwInterfaceTapV2Details) Reset

func (m *SwInterfaceTapV2Details) Reset()

func (*SwInterfaceTapV2Details) Size

func (m *SwInterfaceTapV2Details) Size() (size int)

func (*SwInterfaceTapV2Details) Unmarshal

func (m *SwInterfaceTapV2Details) Unmarshal(b []byte) error

type SwInterfaceTapV2Dump

type SwInterfaceTapV2Dump struct {
	SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index,default=4294967295" json:"sw_if_index,omitempty"`
}

Dump tap interfaces request

  • sw_if_index - filter by sw_if_index

SwInterfaceTapV2Dump defines message 'sw_interface_tap_v2_dump'.

func (*SwInterfaceTapV2Dump) GetCrcString

func (*SwInterfaceTapV2Dump) GetCrcString() string

func (*SwInterfaceTapV2Dump) GetMessageName

func (*SwInterfaceTapV2Dump) GetMessageName() string

func (*SwInterfaceTapV2Dump) GetMessageType

func (*SwInterfaceTapV2Dump) GetMessageType() api.MessageType

func (*SwInterfaceTapV2Dump) Marshal

func (m *SwInterfaceTapV2Dump) Marshal(b []byte) ([]byte, error)

func (*SwInterfaceTapV2Dump) Reset

func (m *SwInterfaceTapV2Dump) Reset()

func (*SwInterfaceTapV2Dump) Size

func (m *SwInterfaceTapV2Dump) Size() (size int)

func (*SwInterfaceTapV2Dump) Unmarshal

func (m *SwInterfaceTapV2Dump) Unmarshal(b []byte) error

type TapCreateV2

type TapCreateV2 struct {
	ID               uint32                        `binapi:"u32,name=id,default=4294967295" json:"id,omitempty"`
	UseRandomMac     bool                          `binapi:"bool,name=use_random_mac,default=true" json:"use_random_mac,omitempty"`
	MacAddress       ethernet_types.MacAddress     `binapi:"mac_address,name=mac_address" json:"mac_address,omitempty"`
	NumRxQueues      uint8                         `binapi:"u8,name=num_rx_queues,default=1" json:"num_rx_queues,omitempty"`
	TxRingSz         uint16                        `binapi:"u16,name=tx_ring_sz,default=256" json:"tx_ring_sz,omitempty"`
	RxRingSz         uint16                        `binapi:"u16,name=rx_ring_sz,default=256" json:"rx_ring_sz,omitempty"`
	HostMtuSet       bool                          `binapi:"bool,name=host_mtu_set" json:"host_mtu_set,omitempty"`
	HostMtuSize      uint32                        `binapi:"u32,name=host_mtu_size" json:"host_mtu_size,omitempty"`
	HostMacAddrSet   bool                          `binapi:"bool,name=host_mac_addr_set" json:"host_mac_addr_set,omitempty"`
	HostMacAddr      ethernet_types.MacAddress     `binapi:"mac_address,name=host_mac_addr" json:"host_mac_addr,omitempty"`
	HostIP4PrefixSet bool                          `binapi:"bool,name=host_ip4_prefix_set" json:"host_ip4_prefix_set,omitempty"`
	HostIP4Prefix    ip_types.IP4AddressWithPrefix `binapi:"ip4_address_with_prefix,name=host_ip4_prefix" json:"host_ip4_prefix,omitempty"`
	HostIP6PrefixSet bool                          `binapi:"bool,name=host_ip6_prefix_set" json:"host_ip6_prefix_set,omitempty"`
	HostIP6Prefix    ip_types.IP6AddressWithPrefix `binapi:"ip6_address_with_prefix,name=host_ip6_prefix" json:"host_ip6_prefix,omitempty"`
	HostIP4GwSet     bool                          `binapi:"bool,name=host_ip4_gw_set" json:"host_ip4_gw_set,omitempty"`
	HostIP4Gw        ip_types.IP4Address           `binapi:"ip4_address,name=host_ip4_gw" json:"host_ip4_gw,omitempty"`
	HostIP6GwSet     bool                          `binapi:"bool,name=host_ip6_gw_set" json:"host_ip6_gw_set,omitempty"`
	HostIP6Gw        ip_types.IP6Address           `binapi:"ip6_address,name=host_ip6_gw" json:"host_ip6_gw,omitempty"`
	TapFlags         TapFlags                      `binapi:"tap_flags,name=tap_flags" json:"tap_flags,omitempty"`
	HostNamespaceSet bool                          `binapi:"bool,name=host_namespace_set" json:"host_namespace_set,omitempty"`
	HostNamespace    string                        `binapi:"string[64],name=host_namespace" json:"host_namespace,omitempty"`
	HostIfNameSet    bool                          `binapi:"bool,name=host_if_name_set" json:"host_if_name_set,omitempty"`
	HostIfName       string                        `binapi:"string[64],name=host_if_name" json:"host_if_name,omitempty"`
	HostBridgeSet    bool                          `binapi:"bool,name=host_bridge_set" json:"host_bridge_set,omitempty"`
	HostBridge       string                        `binapi:"string[64],name=host_bridge" json:"host_bridge,omitempty"`
	Tag              string                        `binapi:"string[],name=tag" json:"tag,omitempty"`
}

Initialize a new tap interface with the given parameters

  • id - interface id, 0xffffffff means auto
  • use_random_mac - let the system generate a unique mac address
  • mac_address - mac addr to assign to the interface if use_random not set
  • num_rx_queues - number of rx queues
  • tx_ring_sz - the number of entries of TX ring, optional, default is 256 entries, must be power of 2
  • rx_ring_sz - the number of entries of RX ring, optional, default is 256 entries, must be power of 2
  • host_mtu_set - host MTU should be set
  • host_mtu_size - host MTU size
  • host_mac_addr_set - host side interface mac address should be set
  • host_mac_addr - host side interface mac address
  • host_ip4_prefix_set - host IPv4 ip address should be set
  • host_ip4_prefix - host IPv4 ip address
  • host_ip6_prefix_set - host IPv6 ip address should be set
  • host_ip6_prefix - host IPv6 ip address
  • host_ip4_gw_set - host IPv4 default gateway should be set
  • host_ip4_gw - host IPv4 default gateway
  • host_ip6_gw_set - host IPv6 default gateway should be set
  • host_ip6_gw - host IPv6 default gateway
  • tap_flags - flags for the TAP interface creation
  • host_if_name_set - host side interface name should be set
  • host_if_name - host side interface name
  • host_namespace_set - host namespace should be set
  • host_namespace - host namespace to attach interface to
  • host_bridge_set - host bridge should be set
  • host_bridge - host bridge to attach interface to
  • tag - tag

TapCreateV2 defines message 'tap_create_v2'. Deprecated: the message will be removed in the future versions

func (*TapCreateV2) GetCrcString

func (*TapCreateV2) GetCrcString() string

func (*TapCreateV2) GetMessageName

func (*TapCreateV2) GetMessageName() string

func (*TapCreateV2) GetMessageType

func (*TapCreateV2) GetMessageType() api.MessageType

func (*TapCreateV2) Marshal

func (m *TapCreateV2) Marshal(b []byte) ([]byte, error)

func (*TapCreateV2) Reset

func (m *TapCreateV2) Reset()

func (*TapCreateV2) Size

func (m *TapCreateV2) Size() (size int)

func (*TapCreateV2) Unmarshal

func (m *TapCreateV2) Unmarshal(b []byte) error

type TapCreateV2Reply

type TapCreateV2Reply struct {
	Retval    int32                          `binapi:"i32,name=retval" json:"retval,omitempty"`
	SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
}

Reply for tap create reply

  • retval - return code
  • sw_if_index - software index allocated for the new tap interface

TapCreateV2Reply defines message 'tap_create_v2_reply'. Deprecated: the message will be removed in the future versions

func (*TapCreateV2Reply) GetCrcString

func (*TapCreateV2Reply) GetCrcString() string

func (*TapCreateV2Reply) GetMessageName

func (*TapCreateV2Reply) GetMessageName() string

func (*TapCreateV2Reply) GetMessageType

func (*TapCreateV2Reply) GetMessageType() api.MessageType

func (*TapCreateV2Reply) Marshal

func (m *TapCreateV2Reply) Marshal(b []byte) ([]byte, error)

func (*TapCreateV2Reply) Reset

func (m *TapCreateV2Reply) Reset()

func (*TapCreateV2Reply) Size

func (m *TapCreateV2Reply) Size() (size int)

func (*TapCreateV2Reply) Unmarshal

func (m *TapCreateV2Reply) Unmarshal(b []byte) error

type TapCreateV3

type TapCreateV3 struct {
	ID               uint32                        `binapi:"u32,name=id,default=4294967295" json:"id,omitempty"`
	UseRandomMac     bool                          `binapi:"bool,name=use_random_mac,default=true" json:"use_random_mac,omitempty"`
	MacAddress       ethernet_types.MacAddress     `binapi:"mac_address,name=mac_address" json:"mac_address,omitempty"`
	NumRxQueues      uint16                        `binapi:"u16,name=num_rx_queues,default=1" json:"num_rx_queues,omitempty"`
	NumTxQueues      uint16                        `binapi:"u16,name=num_tx_queues,default=1" json:"num_tx_queues,omitempty"`
	TxRingSz         uint16                        `binapi:"u16,name=tx_ring_sz,default=256" json:"tx_ring_sz,omitempty"`
	RxRingSz         uint16                        `binapi:"u16,name=rx_ring_sz,default=256" json:"rx_ring_sz,omitempty"`
	HostMtuSet       bool                          `binapi:"bool,name=host_mtu_set" json:"host_mtu_set,omitempty"`
	HostMtuSize      uint32                        `binapi:"u32,name=host_mtu_size" json:"host_mtu_size,omitempty"`
	HostMacAddrSet   bool                          `binapi:"bool,name=host_mac_addr_set" json:"host_mac_addr_set,omitempty"`
	HostMacAddr      ethernet_types.MacAddress     `binapi:"mac_address,name=host_mac_addr" json:"host_mac_addr,omitempty"`
	HostIP4PrefixSet bool                          `binapi:"bool,name=host_ip4_prefix_set" json:"host_ip4_prefix_set,omitempty"`
	HostIP4Prefix    ip_types.IP4AddressWithPrefix `binapi:"ip4_address_with_prefix,name=host_ip4_prefix" json:"host_ip4_prefix,omitempty"`
	HostIP6PrefixSet bool                          `binapi:"bool,name=host_ip6_prefix_set" json:"host_ip6_prefix_set,omitempty"`
	HostIP6Prefix    ip_types.IP6AddressWithPrefix `binapi:"ip6_address_with_prefix,name=host_ip6_prefix" json:"host_ip6_prefix,omitempty"`
	HostIP4GwSet     bool                          `binapi:"bool,name=host_ip4_gw_set" json:"host_ip4_gw_set,omitempty"`
	HostIP4Gw        ip_types.IP4Address           `binapi:"ip4_address,name=host_ip4_gw" json:"host_ip4_gw,omitempty"`
	HostIP6GwSet     bool                          `binapi:"bool,name=host_ip6_gw_set" json:"host_ip6_gw_set,omitempty"`
	HostIP6Gw        ip_types.IP6Address           `binapi:"ip6_address,name=host_ip6_gw" json:"host_ip6_gw,omitempty"`
	TapFlags         TapFlags                      `binapi:"tap_flags,name=tap_flags" json:"tap_flags,omitempty"`
	HostNamespaceSet bool                          `binapi:"bool,name=host_namespace_set" json:"host_namespace_set,omitempty"`
	HostNamespace    string                        `binapi:"string[64],name=host_namespace" json:"host_namespace,omitempty"`
	HostIfNameSet    bool                          `binapi:"bool,name=host_if_name_set" json:"host_if_name_set,omitempty"`
	HostIfName       string                        `binapi:"string[64],name=host_if_name" json:"host_if_name,omitempty"`
	HostBridgeSet    bool                          `binapi:"bool,name=host_bridge_set" json:"host_bridge_set,omitempty"`
	HostBridge       string                        `binapi:"string[64],name=host_bridge" json:"host_bridge,omitempty"`
	Tag              string                        `binapi:"string[],name=tag" json:"tag,omitempty"`
}

Initialize a new tap interface with the given parameters

  • id - interface id, 0xffffffff means auto
  • use_random_mac - let the system generate a unique mac address
  • mac_address - mac addr to assign to the interface if use_random not set
  • num_rx_queues - number of rx queues
  • num_tx_queues - number of tx queues
  • tx_ring_sz - the number of entries of TX ring, optional, default is 256 entries, must be power of 2
  • rx_ring_sz - the number of entries of RX ring, optional, default is 256 entries, must be power of 2
  • host_mtu_set - host MTU should be set
  • host_mtu_size - host MTU size
  • host_mac_addr_set - host side interface mac address should be set
  • host_mac_addr - host side interface mac address
  • host_ip4_prefix_set - host IPv4 ip address should be set
  • host_ip4_prefix - host IPv4 ip address
  • host_ip6_prefix_set - host IPv6 ip address should be set
  • host_ip6_prefix - host IPv6 ip address
  • host_ip4_gw_set - host IPv4 default gateway should be set
  • host_ip4_gw - host IPv4 default gateway
  • host_ip6_gw_set - host IPv6 default gateway should be set
  • host_ip6_gw - host IPv6 default gateway
  • tap_flags - flags for the TAP interface creation
  • host_if_name_set - host side interface name should be set
  • host_if_name - host side interface name
  • host_namespace_set - host namespace should be set
  • host_namespace - host namespace to attach interface to
  • host_bridge_set - host bridge should be set
  • host_bridge - host bridge to attach interface to
  • tag - tag

TapCreateV3 defines message 'tap_create_v3'.

func (*TapCreateV3) GetCrcString

func (*TapCreateV3) GetCrcString() string

func (*TapCreateV3) GetMessageName

func (*TapCreateV3) GetMessageName() string

func (*TapCreateV3) GetMessageType

func (*TapCreateV3) GetMessageType() api.MessageType

func (*TapCreateV3) Marshal

func (m *TapCreateV3) Marshal(b []byte) ([]byte, error)

func (*TapCreateV3) Reset

func (m *TapCreateV3) Reset()

func (*TapCreateV3) Size

func (m *TapCreateV3) Size() (size int)

func (*TapCreateV3) Unmarshal

func (m *TapCreateV3) Unmarshal(b []byte) error

type TapCreateV3Reply

type TapCreateV3Reply struct {
	Retval    int32                          `binapi:"i32,name=retval" json:"retval,omitempty"`
	SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
}

Reply for tap create reply

  • retval - return code
  • sw_if_index - software index allocated for the new tap interface

TapCreateV3Reply defines message 'tap_create_v3_reply'.

func (*TapCreateV3Reply) GetCrcString

func (*TapCreateV3Reply) GetCrcString() string

func (*TapCreateV3Reply) GetMessageName

func (*TapCreateV3Reply) GetMessageName() string

func (*TapCreateV3Reply) GetMessageType

func (*TapCreateV3Reply) GetMessageType() api.MessageType

func (*TapCreateV3Reply) Marshal

func (m *TapCreateV3Reply) Marshal(b []byte) ([]byte, error)

func (*TapCreateV3Reply) Reset

func (m *TapCreateV3Reply) Reset()

func (*TapCreateV3Reply) Size

func (m *TapCreateV3Reply) Size() (size int)

func (*TapCreateV3Reply) Unmarshal

func (m *TapCreateV3Reply) Unmarshal(b []byte) error

type TapDeleteV2

type TapDeleteV2 struct {
	SwIfIndex interface_types.InterfaceIndex `binapi:"interface_index,name=sw_if_index" json:"sw_if_index,omitempty"`
}

Delete tap interface

  • sw_if_index - interface index of existing tap interface

TapDeleteV2 defines message 'tap_delete_v2'.

func (*TapDeleteV2) GetCrcString

func (*TapDeleteV2) GetCrcString() string

func (*TapDeleteV2) GetMessageName

func (*TapDeleteV2) GetMessageName() string

func (*TapDeleteV2) GetMessageType

func (*TapDeleteV2) GetMessageType() api.MessageType

func (*TapDeleteV2) Marshal

func (m *TapDeleteV2) Marshal(b []byte) ([]byte, error)

func (*TapDeleteV2) Reset

func (m *TapDeleteV2) Reset()

func (*TapDeleteV2) Size

func (m *TapDeleteV2) Size() (size int)

func (*TapDeleteV2) Unmarshal

func (m *TapDeleteV2) Unmarshal(b []byte) error

type TapDeleteV2Reply

type TapDeleteV2Reply struct {
	Retval int32 `binapi:"i32,name=retval" json:"retval,omitempty"`
}

TapDeleteV2Reply defines message 'tap_delete_v2_reply'.

func (*TapDeleteV2Reply) GetCrcString

func (*TapDeleteV2Reply) GetCrcString() string

func (*TapDeleteV2Reply) GetMessageName

func (*TapDeleteV2Reply) GetMessageName() string

func (*TapDeleteV2Reply) GetMessageType

func (*TapDeleteV2Reply) GetMessageType() api.MessageType

func (*TapDeleteV2Reply) Marshal

func (m *TapDeleteV2Reply) Marshal(b []byte) ([]byte, error)

func (*TapDeleteV2Reply) Reset

func (m *TapDeleteV2Reply) Reset()

func (*TapDeleteV2Reply) Size

func (m *TapDeleteV2Reply) Size() (size int)

func (*TapDeleteV2Reply) Unmarshal

func (m *TapDeleteV2Reply) Unmarshal(b []byte) error

type TapFlags

type TapFlags uint32

TapFlags defines enum 'tap_flags'.

const (
	TAP_API_FLAG_GSO          TapFlags = 1
	TAP_API_FLAG_CSUM_OFFLOAD TapFlags = 2
	TAP_API_FLAG_PERSIST      TapFlags = 4
	TAP_API_FLAG_ATTACH       TapFlags = 8
	TAP_API_FLAG_TUN          TapFlags = 16
	TAP_API_FLAG_GRO_COALESCE TapFlags = 32
	TAP_API_FLAG_PACKED       TapFlags = 64
	TAP_API_FLAG_IN_ORDER     TapFlags = 128
)

func (TapFlags) String

func (x TapFlags) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL