kubernetes/vendor/github.com/vishvananda/netlink/link_linux.go

const SizeofLinkStats32

const SizeofLinkStats64

const TUNTAP_MODE_TUN

const TUNTAP_MODE_TAP

const TUNTAP_DEFAULTS

const TUNTAP_VNET_HDR

const TUNTAP_TUN_EXCL

const TUNTAP_NO_PI

const TUNTAP_ONE_QUEUE

const TUNTAP_MULTI_QUEUE

const TUNTAP_MULTI_QUEUE_DEFAULTS

var StringToTuntapModeMap

func (ttm TuntapMode) String() string {}

const VF_LINK_STATE_AUTO

const VF_LINK_STATE_ENABLE

const VF_LINK_STATE_DISABLE

var macvlanModes

func ensureIndex(link *LinkAttrs) {}

func (h *Handle) ensureIndex(link *LinkAttrs) {}

func (h *Handle) LinkSetARPOff(link Link) error {}

func LinkSetARPOff(link Link) error {}

func (h *Handle) LinkSetARPOn(link Link) error {}

func LinkSetARPOn(link Link) error {}

func (h *Handle) SetPromiscOn(link Link) error {}

// LinkSetAllmulticastOn enables the reception of all hardware multicast packets for the link device.
// Equivalent to: `ip link set $link allmulticast on`
func LinkSetAllmulticastOn(link Link) error {}

// LinkSetAllmulticastOn enables the reception of all hardware multicast packets for the link device.
// Equivalent to: `ip link set $link allmulticast on`
func (h *Handle) LinkSetAllmulticastOn(link Link) error {}

// LinkSetAllmulticastOff disables the reception of all hardware multicast packets for the link device.
// Equivalent to: `ip link set $link allmulticast off`
func LinkSetAllmulticastOff(link Link) error {}

// LinkSetAllmulticastOff disables the reception of all hardware multicast packets for the link device.
// Equivalent to: `ip link set $link allmulticast off`
func (h *Handle) LinkSetAllmulticastOff(link Link) error {}

// LinkSetMulticastOn enables the reception of multicast packets for the link device.
// Equivalent to: `ip link set $link multicast on`
func LinkSetMulticastOn(link Link) error {}

// LinkSetMulticastOn enables the reception of multicast packets for the link device.
// Equivalent to: `ip link set $link multicast on`
func (h *Handle) LinkSetMulticastOn(link Link) error {}

// LinkSetAllmulticastOff disables the reception of multicast packets for the link device.
// Equivalent to: `ip link set $link multicast off`
func LinkSetMulticastOff(link Link) error {}

// LinkSetAllmulticastOff disables the reception of multicast packets for the link device.
// Equivalent to: `ip link set $link multicast off`
func (h *Handle) LinkSetMulticastOff(link Link) error {}

func MacvlanMACAddrAdd(link Link, addr net.HardwareAddr) error {}

func (h *Handle) MacvlanMACAddrAdd(link Link, addr net.HardwareAddr) error {}

func MacvlanMACAddrDel(link Link, addr net.HardwareAddr) error {}

func (h *Handle) MacvlanMACAddrDel(link Link, addr net.HardwareAddr) error {}

func MacvlanMACAddrFlush(link Link) error {}

func (h *Handle) MacvlanMACAddrFlush(link Link) error {}

func MacvlanMACAddrSet(link Link, addrs []net.HardwareAddr) error {}

func (h *Handle) MacvlanMACAddrSet(link Link, addrs []net.HardwareAddr) error {}

func (h *Handle) macvlanMACAddrChange(link Link, addrs []net.HardwareAddr, mode uint32) error {}

// LinkSetMacvlanMode sets the mode of a macvlan or macvtap link device.
// Note that passthrough mode cannot be set to and from and will fail.
// Equivalent to: `ip link set $link type (macvlan|macvtap) mode $mode
func LinkSetMacvlanMode(link Link, mode MacvlanMode) error {}

// LinkSetMacvlanMode sets the mode of the macvlan or macvtap link device.
// Note that passthrough mode cannot be set to and from and will fail.
// Equivalent to: `ip link set $link type (macvlan|macvtap) mode $mode
func (h *Handle) LinkSetMacvlanMode(link Link, mode MacvlanMode) error {}

func BridgeSetMcastSnoop(link Link, on bool) error {}

func (h *Handle) BridgeSetMcastSnoop(link Link, on bool) error {}

func BridgeSetVlanFiltering(link Link, on bool) error {}

func (h *Handle) BridgeSetVlanFiltering(link Link, on bool) error {}

func BridgeSetVlanDefaultPVID(link Link, pvid uint16) error {}

func (h *Handle) BridgeSetVlanDefaultPVID(link Link, pvid uint16) error {}

func SetPromiscOn(link Link) error {}

func (h *Handle) SetPromiscOff(link Link) error {}

func SetPromiscOff(link Link) error {}

// LinkSetUp enables the link device.
// Equivalent to: `ip link set $link up`
func LinkSetUp(link Link) error {}

// LinkSetUp enables the link device.
// Equivalent to: `ip link set $link up`
func (h *Handle) LinkSetUp(link Link) error {}

// LinkSetDown disables link device.
// Equivalent to: `ip link set $link down`
func LinkSetDown(link Link) error {}

// LinkSetDown disables link device.
// Equivalent to: `ip link set $link down`
func (h *Handle) LinkSetDown(link Link) error {}

// LinkSetMTU sets the mtu of the link device.
// Equivalent to: `ip link set $link mtu $mtu`
func LinkSetMTU(link Link, mtu int) error {}

// LinkSetMTU sets the mtu of the link device.
// Equivalent to: `ip link set $link mtu $mtu`
func (h *Handle) LinkSetMTU(link Link, mtu int) error {}

// LinkSetName sets the name of the link device.
// Equivalent to: `ip link set $link name $name`
func LinkSetName(link Link, name string) error {}

// LinkSetName sets the name of the link device.
// Equivalent to: `ip link set $link name $name`
func (h *Handle) LinkSetName(link Link, name string) error {}

// LinkSetAlias sets the alias of the link device.
// Equivalent to: `ip link set dev $link alias $name`
func LinkSetAlias(link Link, name string) error {}

// LinkSetAlias sets the alias of the link device.
// Equivalent to: `ip link set dev $link alias $name`
func (h *Handle) LinkSetAlias(link Link, name string) error {}

// LinkAddAltName adds a new alternative name for the link device.
// Equivalent to: `ip link property add $link altname $name`
func LinkAddAltName(link Link, name string) error {}

// LinkAddAltName adds a new alternative name for the link device.
// Equivalent to: `ip link property add $link altname $name`
func (h *Handle) LinkAddAltName(link Link, name string) error {}

// LinkDelAltName delete an alternative name for the link device.
// Equivalent to: `ip link property del $link altname $name`
func LinkDelAltName(link Link, name string) error {}

// LinkDelAltName delete an alternative name for the link device.
// Equivalent to: `ip link property del $link altname $name`
func (h *Handle) LinkDelAltName(link Link, name string) error {}

// LinkSetHardwareAddr sets the hardware address of the link device.
// Equivalent to: `ip link set $link address $hwaddr`
func LinkSetHardwareAddr(link Link, hwaddr net.HardwareAddr) error {}

// LinkSetHardwareAddr sets the hardware address of the link device.
// Equivalent to: `ip link set $link address $hwaddr`
func (h *Handle) LinkSetHardwareAddr(link Link, hwaddr net.HardwareAddr) error {}

// LinkSetVfHardwareAddr sets the hardware address of a vf for the link.
// Equivalent to: `ip link set $link vf $vf mac $hwaddr`
func LinkSetVfHardwareAddr(link Link, vf int, hwaddr net.HardwareAddr) error {}

// LinkSetVfHardwareAddr sets the hardware address of a vf for the link.
// Equivalent to: `ip link set $link vf $vf mac $hwaddr`
func (h *Handle) LinkSetVfHardwareAddr(link Link, vf int, hwaddr net.HardwareAddr) error {}

// LinkSetVfVlan sets the vlan of a vf for the link.
// Equivalent to: `ip link set $link vf $vf vlan $vlan`
func LinkSetVfVlan(link Link, vf, vlan int) error {}

// LinkSetVfVlan sets the vlan of a vf for the link.
// Equivalent to: `ip link set $link vf $vf vlan $vlan`
func (h *Handle) LinkSetVfVlan(link Link, vf, vlan int) error {}

// LinkSetVfVlanQos sets the vlan and qos priority of a vf for the link.
// Equivalent to: `ip link set $link vf $vf vlan $vlan qos $qos`
func LinkSetVfVlanQos(link Link, vf, vlan, qos int) error {}

// LinkSetVfVlanQos sets the vlan and qos priority of a vf for the link.
// Equivalent to: `ip link set $link vf $vf vlan $vlan qos $qos`
func (h *Handle) LinkSetVfVlanQos(link Link, vf, vlan, qos int) error {}

// LinkSetVfVlanQosProto sets the vlan, qos and protocol of a vf for the link.
// Equivalent to: `ip link set $link vf $vf vlan $vlan qos $qos proto $proto`
func LinkSetVfVlanQosProto(link Link, vf, vlan, qos, proto int) error {}

// LinkSetVfVlanQosProto sets the vlan, qos and protocol of a vf for the link.
// Equivalent to: `ip link set $link vf $vf vlan $vlan qos $qos proto $proto`
func (h *Handle) LinkSetVfVlanQosProto(link Link, vf, vlan, qos, proto int) error {}

// LinkSetVfTxRate sets the tx rate of a vf for the link.
// Equivalent to: `ip link set $link vf $vf rate $rate`
func LinkSetVfTxRate(link Link, vf, rate int) error {}

// LinkSetVfTxRate sets the tx rate of a vf for the link.
// Equivalent to: `ip link set $link vf $vf rate $rate`
func (h *Handle) LinkSetVfTxRate(link Link, vf, rate int) error {}

// LinkSetVfRate sets the min and max tx rate of a vf for the link.
// Equivalent to: `ip link set $link vf $vf min_tx_rate $min_rate max_tx_rate $max_rate`
func LinkSetVfRate(link Link, vf, minRate, maxRate int) error {}

// LinkSetVfRate sets the min and max tx rate of a vf for the link.
// Equivalent to: `ip link set $link vf $vf min_tx_rate $min_rate max_tx_rate $max_rate`
func (h *Handle) LinkSetVfRate(link Link, vf, minRate, maxRate int) error {}

// LinkSetVfState enables/disables virtual link state on a vf.
// Equivalent to: `ip link set $link vf $vf state $state`
func LinkSetVfState(link Link, vf int, state uint32) error {}

// LinkSetVfState enables/disables virtual link state on a vf.
// Equivalent to: `ip link set $link vf $vf state $state`
func (h *Handle) LinkSetVfState(link Link, vf int, state uint32) error {}

// LinkSetVfSpoofchk enables/disables spoof check on a vf for the link.
// Equivalent to: `ip link set $link vf $vf spoofchk $check`
func LinkSetVfSpoofchk(link Link, vf int, check bool) error {}

// LinkSetVfSpoofchk enables/disables spoof check on a vf for the link.
// Equivalent to: `ip link set $link vf $vf spoofchk $check`
func (h *Handle) LinkSetVfSpoofchk(link Link, vf int, check bool) error {}

// LinkSetVfTrust enables/disables trust state on a vf for the link.
// Equivalent to: `ip link set $link vf $vf trust $state`
func LinkSetVfTrust(link Link, vf int, state bool) error {}

// LinkSetVfTrust enables/disables trust state on a vf for the link.
// Equivalent to: `ip link set $link vf $vf trust $state`
func (h *Handle) LinkSetVfTrust(link Link, vf int, state bool) error {}

// LinkSetVfNodeGUID sets the node GUID of a vf for the link.
// Equivalent to: `ip link set dev $link vf $vf node_guid $nodeguid`
func LinkSetVfNodeGUID(link Link, vf int, nodeguid net.HardwareAddr) error {}

// LinkSetVfPortGUID sets the port GUID of a vf for the link.
// Equivalent to: `ip link set dev $link vf $vf port_guid $portguid`
func LinkSetVfPortGUID(link Link, vf int, portguid net.HardwareAddr) error {}

// LinkSetVfGUID sets the node or port GUID of a vf for the link.
func (h *Handle) LinkSetVfGUID(link Link, vf int, vfGuid net.HardwareAddr, guidType int) error {}

// LinkSetMaster sets the master of the link device.
// Equivalent to: `ip link set $link master $master`
func LinkSetMaster(link Link, master Link) error {}

// LinkSetMaster sets the master of the link device.
// Equivalent to: `ip link set $link master $master`
func (h *Handle) LinkSetMaster(link Link, master Link) error {}

// LinkSetNoMaster removes the master of the link device.
// Equivalent to: `ip link set $link nomaster`
func LinkSetNoMaster(link Link) error {}

// LinkSetNoMaster removes the master of the link device.
// Equivalent to: `ip link set $link nomaster`
func (h *Handle) LinkSetNoMaster(link Link) error {}

// LinkSetMasterByIndex sets the master of the link device.
// Equivalent to: `ip link set $link master $master`
func LinkSetMasterByIndex(link Link, masterIndex int) error {}

// LinkSetMasterByIndex sets the master of the link device.
// Equivalent to: `ip link set $link master $master`
func (h *Handle) LinkSetMasterByIndex(link Link, masterIndex int) error {}

// LinkSetNsPid puts the device into a new network namespace. The
// pid must be a pid of a running process.
// Equivalent to: `ip link set $link netns $pid`
func LinkSetNsPid(link Link, nspid int) error {}

// LinkSetNsPid puts the device into a new network namespace. The
// pid must be a pid of a running process.
// Equivalent to: `ip link set $link netns $pid`
func (h *Handle) LinkSetNsPid(link Link, nspid int) error {}

// LinkSetNsFd puts the device into a new network namespace. The
// fd must be an open file descriptor to a network namespace.
// Similar to: `ip link set $link netns $ns`
func LinkSetNsFd(link Link, fd int) error {}

// LinkSetNsFd puts the device into a new network namespace. The
// fd must be an open file descriptor to a network namespace.
// Similar to: `ip link set $link netns $ns`
func (h *Handle) LinkSetNsFd(link Link, fd int) error {}

// LinkSetXdpFd adds a bpf function to the driver. The fd must be a bpf
// program loaded with bpf(type=BPF_PROG_TYPE_XDP)
func LinkSetXdpFd(link Link, fd int) error {}

// LinkSetXdpFdWithFlags adds a bpf function to the driver with the given
// options. The fd must be a bpf program loaded with bpf(type=BPF_PROG_TYPE_XDP)
func LinkSetXdpFdWithFlags(link Link, fd, flags int) error {}

// LinkSetGSOMaxSegs sets the GSO maximum segment count of the link device.
// Equivalent to: `ip link set $link gso_max_segs $maxSegs`
func LinkSetGSOMaxSegs(link Link, maxSegs int) error {}

// LinkSetGSOMaxSegs sets the GSO maximum segment count of the link device.
// Equivalent to: `ip link set $link gso_max_segs $maxSegs`
func (h *Handle) LinkSetGSOMaxSegs(link Link, maxSize int) error {}

// LinkSetGSOMaxSize sets the IPv6 GSO maximum size of the link device.
// Equivalent to: `ip link set $link gso_max_size $maxSize`
func LinkSetGSOMaxSize(link Link, maxSize int) error {}

// LinkSetGSOMaxSize sets the IPv6 GSO maximum size of the link device.
// Equivalent to: `ip link set $link gso_max_size $maxSize`
func (h *Handle) LinkSetGSOMaxSize(link Link, maxSize int) error {}

// LinkSetGROMaxSize sets the IPv6 GRO maximum size of the link device.
// Equivalent to: `ip link set $link gro_max_size $maxSize`
func LinkSetGROMaxSize(link Link, maxSize int) error {}

// LinkSetGROMaxSize sets the IPv6 GRO maximum size of the link device.
// Equivalent to: `ip link set $link gro_max_size $maxSize`
func (h *Handle) LinkSetGROMaxSize(link Link, maxSize int) error {}

// LinkSetGSOIPv4MaxSize sets the IPv4 GSO maximum size of the link device.
// Equivalent to: `ip link set $link gso_ipv4_max_size $maxSize`
func LinkSetGSOIPv4MaxSize(link Link, maxSize int) error {}

// LinkSetGSOIPv4MaxSize sets the IPv4 GSO maximum size of the link device.
// Equivalent to: `ip link set $link gso_ipv4_max_size $maxSize`
func (h *Handle) LinkSetGSOIPv4MaxSize(link Link, maxSize int) error {}

// LinkSetGROIPv4MaxSize sets the IPv4 GRO maximum size of the link device.
// Equivalent to: `ip link set $link gro_ipv4_max_size $maxSize`
func LinkSetGROIPv4MaxSize(link Link, maxSize int) error {}

// LinkSetGROIPv4MaxSize sets the IPv4 GRO maximum size of the link device.
// Equivalent to: `ip link set $link gro_ipv4_max_size $maxSize`
func (h *Handle) LinkSetGROIPv4MaxSize(link Link, maxSize int) error {}

func boolAttr(val bool) []byte {}

type vxlanPortRange

func addVxlanAttrs(vxlan *Vxlan, linkInfo *nl.RtAttr) {}

func addBondAttrs(bond *Bond, linkInfo *nl.RtAttr) {}

func cleanupFds(fds []*os.File) {}

// LinkAdd adds a new link device. The type and features of the device
// are taken from the parameters in the link object.
// Equivalent to: `ip link add $link`
func LinkAdd(link Link) error {}

// LinkAdd adds a new link device. The type and features of the device
// are taken from the parameters in the link object.
// Equivalent to: `ip link add $link`
func (h *Handle) LinkAdd(link Link) error {}

func LinkModify(link Link) error {}

func (h *Handle) LinkModify(link Link) error {}

func (h *Handle) linkModify(link Link, flags int) error {}

// LinkDel deletes link device. Either Index or Name must be set in
// the link object for it to be deleted. The other values are ignored.
// Equivalent to: `ip link del $link`
func LinkDel(link Link) error {}

// LinkDel deletes link device. Either Index or Name must be set in
// the link object for it to be deleted. The other values are ignored.
// Equivalent to: `ip link del $link`
func (h *Handle) LinkDel(link Link) error {}

func (h *Handle) linkByNameDump(name string) (Link, error) {}

func (h *Handle) linkByAliasDump(alias string) (Link, error) {}

// LinkByName finds a link by name and returns a pointer to the object.
func LinkByName(name string) (Link, error) {}

// LinkByName finds a link by name and returns a pointer to the object.
func (h *Handle) LinkByName(name string) (Link, error) {}

// LinkByAlias finds a link by its alias and returns a pointer to the object.
// If there are multiple links with the alias it returns the first one
func LinkByAlias(alias string) (Link, error) {}

// LinkByAlias finds a link by its alias and returns a pointer to the object.
// If there are multiple links with the alias it returns the first one
func (h *Handle) LinkByAlias(alias string) (Link, error) {}

// LinkByIndex finds a link by index and returns a pointer to the object.
func LinkByIndex(index int) (Link, error) {}

// LinkByIndex finds a link by index and returns a pointer to the object.
func (h *Handle) LinkByIndex(index int) (Link, error) {}

func execGetLink(req *nl.NetlinkRequest) (Link, error) {}

// LinkDeserialize deserializes a raw message received from netlink into
// a link object.
func LinkDeserialize(hdr *unix.NlMsghdr, m []byte) (Link, error) {}

func readSysPropAsInt64(ifname, prop string) (int64, error) {}

// LinkList gets a list of link devices.
// Equivalent to: `ip link show`
func LinkList() ([]Link, error) {}

// LinkList gets a list of link devices.
// Equivalent to: `ip link show`
func (h *Handle) LinkList() ([]Link, error) {}

type LinkUpdate

// LinkSubscribe takes a chan down which notifications will be sent
// when links change.  Close the 'done' chan to stop subscription.
func LinkSubscribe(ch chan<- LinkUpdate, done <-chan struct{}

// LinkSubscribeAt works like LinkSubscribe plus it allows the caller
// to choose the network namespace in which to subscribe (ns).
func LinkSubscribeAt(ns netns.NsHandle, ch chan<- LinkUpdate, done <-chan struct{}

type LinkSubscribeOptions

// LinkSubscribeWithOptions work like LinkSubscribe but enable to
// provide additional options to modify the behavior. Currently, the
// namespace can be provided as well as an error callback.
func LinkSubscribeWithOptions(ch chan<- LinkUpdate, done <-chan struct{}

func linkSubscribeAt(newNs, curNs netns.NsHandle, ch chan<- LinkUpdate, done <-chan struct{}

func LinkSetHairpin(link Link, mode bool) error {}

func (h *Handle) LinkSetHairpin(link Link, mode bool) error {}

func LinkSetGuard(link Link, mode bool) error {}

func (h *Handle) LinkSetGuard(link Link, mode bool) error {}

// LinkSetBRSlaveGroupFwdMask set the group_fwd_mask of a bridge slave interface
func LinkSetBRSlaveGroupFwdMask(link Link, mask uint16) error {}

// LinkSetBRSlaveGroupFwdMask set the group_fwd_mask of a bridge slave interface
func (h *Handle) LinkSetBRSlaveGroupFwdMask(link Link, mask uint16) error {}

func LinkSetFastLeave(link Link, mode bool) error {}

func (h *Handle) LinkSetFastLeave(link Link, mode bool) error {}

func LinkSetLearning(link Link, mode bool) error {}

func (h *Handle) LinkSetLearning(link Link, mode bool) error {}

func LinkSetRootBlock(link Link, mode bool) error {}

func (h *Handle) LinkSetRootBlock(link Link, mode bool) error {}

func LinkSetFlood(link Link, mode bool) error {}

func (h *Handle) LinkSetFlood(link Link, mode bool) error {}

func LinkSetIsolated(link Link, mode bool) error {}

func (h *Handle) LinkSetIsolated(link Link, mode bool) error {}

func LinkSetBrProxyArp(link Link, mode bool) error {}

func (h *Handle) LinkSetBrProxyArp(link Link, mode bool) error {}

func LinkSetBrProxyArpWiFi(link Link, mode bool) error {}

func (h *Handle) LinkSetBrProxyArpWiFi(link Link, mode bool) error {}

func LinkSetBrNeighSuppress(link Link, mode bool) error {}

func (h *Handle) LinkSetBrNeighSuppress(link Link, mode bool) error {}

func (h *Handle) setProtinfoAttrRawVal(link Link, val []byte, attr int) error {}

func (h *Handle) setProtinfoAttr(link Link, mode bool, attr int) error {}

// LinkSetTxQLen sets the transaction queue length for the link.
// Equivalent to: `ip link set $link txqlen $qlen`
func LinkSetTxQLen(link Link, qlen int) error {}

// LinkSetTxQLen sets the transaction queue length for the link.
// Equivalent to: `ip link set $link txqlen $qlen`
func (h *Handle) LinkSetTxQLen(link Link, qlen int) error {}

// LinkSetGroup sets the link group id which can be used to perform mass actions
// with iproute2 as well use it as a reference in nft filters.
// Equivalent to: `ip link set $link group $id`
func LinkSetGroup(link Link, group int) error {}

// LinkSetGroup sets the link group id which can be used to perform mass actions
// with iproute2 as well use it as a reference in nft filters.
// Equivalent to: `ip link set $link group $id`
func (h *Handle) LinkSetGroup(link Link, group int) error {}

func addNetkitAttrs(nk *Netkit, linkInfo *nl.RtAttr, flag int) error {}

func parseNetkitData(link Link, data []syscall.NetlinkRouteAttr) {}

func parseVlanData(link Link, data []syscall.NetlinkRouteAttr) {}

func parseVxlanData(link Link, data []syscall.NetlinkRouteAttr) {}

func parseBondData(link Link, data []syscall.NetlinkRouteAttr) {}

func parseBondArpIpTargets(value []byte) []net.IP {}

func addBondSlaveAttrs(bondSlave *BondSlave, linkInfo *nl.RtAttr) {}

func parseBondSlaveData(slave LinkSlave, data []syscall.NetlinkRouteAttr) {}

func parseVrfSlaveData(slave LinkSlave, data []syscall.NetlinkRouteAttr) {}

func parseIPVlanData(link Link, data []syscall.NetlinkRouteAttr) {}

func parseIPVtapData(link Link, data []syscall.NetlinkRouteAttr) {}

func addMacvtapAttrs(macvtap *Macvtap, linkInfo *nl.RtAttr) {}

func parseMacvtapData(link Link, data []syscall.NetlinkRouteAttr) {}

func addMacvlanAttrs(macvlan *Macvlan, linkInfo *nl.RtAttr) {}

func parseMacvlanData(link Link, data []syscall.NetlinkRouteAttr) {}

// copied from pkg/net_linux.go
func linkFlags(rawFlags uint32) net.Flags {}

func addGeneveAttrs(geneve *Geneve, linkInfo *nl.RtAttr) {}

func parseGeneveData(link Link, data []syscall.NetlinkRouteAttr) {}

func addGretapAttrs(gretap *Gretap, linkInfo *nl.RtAttr) {}

func parseGretapData(link Link, data []syscall.NetlinkRouteAttr) {}

func addGretunAttrs(gre *Gretun, linkInfo *nl.RtAttr) {}

func parseGretunData(link Link, data []syscall.NetlinkRouteAttr) {}

func addXdpAttrs(xdp *LinkXdp, req *nl.NetlinkRequest) {}

func parseLinkXdp(data []byte) (*LinkXdp, error) {}

func addIptunAttrs(iptun *Iptun, linkInfo *nl.RtAttr) {}

func parseIptunData(link Link, data []syscall.NetlinkRouteAttr) {}

func addIp6tnlAttrs(ip6tnl *Ip6tnl, linkInfo *nl.RtAttr) {}

func parseIp6tnlData(link Link, data []syscall.NetlinkRouteAttr) {}

func addSittunAttrs(sittun *Sittun, linkInfo *nl.RtAttr) {}

func parseSittunData(link Link, data []syscall.NetlinkRouteAttr) {}

func addVtiAttrs(vti *Vti, linkInfo *nl.RtAttr) {}

func parseVtiData(link Link, data []syscall.NetlinkRouteAttr) {}

func addVrfAttrs(vrf *Vrf, linkInfo *nl.RtAttr) {}

func parseVrfData(link Link, data []syscall.NetlinkRouteAttr) {}

func addBridgeAttrs(bridge *Bridge, linkInfo *nl.RtAttr) {}

func parseBridgeData(bridge Link, data []syscall.NetlinkRouteAttr) {}

func addGTPAttrs(gtp *GTP, linkInfo *nl.RtAttr) {}

func parseGTPData(link Link, data []syscall.NetlinkRouteAttr) {}

func parseVfInfoList(data []syscall.NetlinkRouteAttr) ([]VfInfo, error) {}

func parseVfInfo(data []syscall.NetlinkRouteAttr, id int) (VfInfo, error) {}

func addXfrmiAttrs(xfrmi *Xfrmi, linkInfo *nl.RtAttr) {}

func parseXfrmiData(link Link, data []syscall.NetlinkRouteAttr) {}

func ioctlBondSlave(cmd uintptr, link Link, master *Bond) error {}

// LinkSetBondSlaveActive sets specified slave to ACTIVE in an `active-backup` bond link via ioctl interface.
//
//	Multiple calls keeps the status unchanged(shown in the unit test).
func LinkSetBondSlaveActive(link Link, master *Bond) error {}

// LinkSetBondSlave add slave to bond link via ioctl interface.
func LinkSetBondSlave(link Link, master *Bond) error {}

// LinkSetBondSlave removes specified slave from bond link via ioctl interface.
func LinkDelBondSlave(link Link, master *Bond) error {}

// LinkSetBondSlaveQueueId modify bond slave queue-id.
func (h *Handle) LinkSetBondSlaveQueueId(link Link, queueId uint16) error {}

// LinkSetBondSlaveQueueId modify bond slave queue-id.
func LinkSetBondSlaveQueueId(link Link, queueId uint16) error {}

func vethStatsSerialize(stats ethtoolStats) ([]byte, error) {}

type vethEthtoolStats

func vethStatsDeserialize(b []byte) (vethEthtoolStats, error) {}

// VethPeerIndex get veth peer index.
func VethPeerIndex(link *Veth) (int, error) {}

func parseTuntapData(link Link, data []syscall.NetlinkRouteAttr) {}

func parseIPoIBData(link Link, data []syscall.NetlinkRouteAttr) {}

func parseCanData(link Link, data []syscall.NetlinkRouteAttr) {}

func addIPoIBAttrs(ipoib *IPoIB, linkInfo *nl.RtAttr) {}

func addBareUDPAttrs(bareudp *BareUDP, linkInfo *nl.RtAttr) {}

func parseBareUDPData(link Link, data []syscall.NetlinkRouteAttr) {}