summaryrefslogtreecommitdiff
path: root/vendor/github.com/vishvananda/netlink/nl
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/vishvananda/netlink/nl')
-rw-r--r--vendor/github.com/vishvananda/netlink/nl/conntrack_linux.go1
-rw-r--r--vendor/github.com/vishvananda/netlink/nl/devlink_linux.go55
-rw-r--r--vendor/github.com/vishvananda/netlink/nl/link_linux.go9
-rw-r--r--vendor/github.com/vishvananda/netlink/nl/lwt_linux.go29
-rw-r--r--vendor/github.com/vishvananda/netlink/nl/nl_linux.go53
-rw-r--r--vendor/github.com/vishvananda/netlink/nl/rdma_link_linux.go4
-rw-r--r--vendor/github.com/vishvananda/netlink/nl/seg6_linux.go4
-rw-r--r--vendor/github.com/vishvananda/netlink/nl/syscall.go2
-rw-r--r--vendor/github.com/vishvananda/netlink/nl/tc_linux.go105
9 files changed, 247 insertions, 15 deletions
diff --git a/vendor/github.com/vishvananda/netlink/nl/conntrack_linux.go b/vendor/github.com/vishvananda/netlink/nl/conntrack_linux.go
index 14924027e..183601803 100644
--- a/vendor/github.com/vishvananda/netlink/nl/conntrack_linux.go
+++ b/vendor/github.com/vishvananda/netlink/nl/conntrack_linux.go
@@ -44,6 +44,7 @@ const (
NLA_F_NESTED uint16 = (1 << 15) // #define NLA_F_NESTED (1 << 15)
NLA_F_NET_BYTEORDER uint16 = (1 << 14) // #define NLA_F_NESTED (1 << 14)
NLA_TYPE_MASK = ^(NLA_F_NESTED | NLA_F_NET_BYTEORDER)
+ NLA_ALIGNTO uint16 = 4 // #define NLA_ALIGNTO 4
)
// enum ctattr_type {
diff --git a/vendor/github.com/vishvananda/netlink/nl/devlink_linux.go b/vendor/github.com/vishvananda/netlink/nl/devlink_linux.go
index aa6155e21..2995da492 100644
--- a/vendor/github.com/vishvananda/netlink/nl/devlink_linux.go
+++ b/vendor/github.com/vishvananda/netlink/nl/devlink_linux.go
@@ -11,22 +11,37 @@ const (
const (
DEVLINK_CMD_GET = 1
DEVLINK_CMD_PORT_GET = 5
+ DEVLINK_CMD_PORT_SET = 6
+ DEVLINK_CMD_PORT_NEW = 7
+ DEVLINK_CMD_PORT_DEL = 8
DEVLINK_CMD_ESWITCH_GET = 29
DEVLINK_CMD_ESWITCH_SET = 30
+ DEVLINK_CMD_INFO_GET = 51
)
const (
- DEVLINK_ATTR_BUS_NAME = 1
- DEVLINK_ATTR_DEV_NAME = 2
- DEVLINK_ATTR_PORT_INDEX = 3
- DEVLINK_ATTR_PORT_TYPE = 4
- DEVLINK_ATTR_PORT_NETDEV_IFINDEX = 6
- DEVLINK_ATTR_PORT_NETDEV_NAME = 7
- DEVLINK_ATTR_PORT_IBDEV_NAME = 8
- DEVLINK_ATTR_ESWITCH_MODE = 25
- DEVLINK_ATTR_ESWITCH_INLINE_MODE = 26
- DEVLINK_ATTR_ESWITCH_ENCAP_MODE = 62
- DEVLINK_ATTR_PORT_FLAVOUR = 77
+ DEVLINK_ATTR_BUS_NAME = 1
+ DEVLINK_ATTR_DEV_NAME = 2
+ DEVLINK_ATTR_PORT_INDEX = 3
+ DEVLINK_ATTR_PORT_TYPE = 4
+ DEVLINK_ATTR_PORT_NETDEV_IFINDEX = 6
+ DEVLINK_ATTR_PORT_NETDEV_NAME = 7
+ DEVLINK_ATTR_PORT_IBDEV_NAME = 8
+ DEVLINK_ATTR_ESWITCH_MODE = 25
+ DEVLINK_ATTR_ESWITCH_INLINE_MODE = 26
+ DEVLINK_ATTR_ESWITCH_ENCAP_MODE = 62
+ DEVLINK_ATTR_PORT_FLAVOUR = 77
+ DEVLINK_ATTR_INFO_DRIVER_NAME = 98
+ DEVLINK_ATTR_INFO_SERIAL_NUMBER = 99
+ DEVLINK_ATTR_INFO_VERSION_FIXED = 100
+ DEVLINK_ATTR_INFO_VERSION_RUNNING = 101
+ DEVLINK_ATTR_INFO_VERSION_STORED = 102
+ DEVLINK_ATTR_INFO_VERSION_NAME = 103
+ DEVLINK_ATTR_INFO_VERSION_VALUE = 104
+ DEVLINK_ATTR_PORT_PCI_PF_NUMBER = 127
+ DEVLINK_ATTR_PORT_FUNCTION = 145
+ DEVLINK_ATTR_PORT_CONTROLLER_NUMBER = 150
+ DEVLINK_ATTR_PORT_PCI_SF_NUMBER = 164
)
const (
@@ -53,6 +68,8 @@ const (
DEVLINK_PORT_FLAVOUR_PCI_PF = 3
DEVLINK_PORT_FLAVOUR_PCI_VF = 4
DEVLINK_PORT_FLAVOUR_VIRTUAL = 5
+ DEVLINK_PORT_FLAVOUR_UNUSED = 6
+ DEVLINK_PORT_FLAVOUR_PCI_SF = 7
)
const (
@@ -61,3 +78,19 @@ const (
DEVLINK_PORT_TYPE_ETH = 2
DEVLINK_PORT_TYPE_IB = 3
)
+
+const (
+ DEVLINK_PORT_FUNCTION_ATTR_HW_ADDR = 1
+ DEVLINK_PORT_FN_ATTR_STATE = 2
+ DEVLINK_PORT_FN_ATTR_OPSTATE = 3
+)
+
+const (
+ DEVLINK_PORT_FN_STATE_INACTIVE = 0
+ DEVLINK_PORT_FN_STATE_ACTIVE = 1
+)
+
+const (
+ DEVLINK_PORT_FN_OPSTATE_DETACHED = 0
+ DEVLINK_PORT_FN_OPSTATE_ATTACHED = 1
+)
diff --git a/vendor/github.com/vishvananda/netlink/nl/link_linux.go b/vendor/github.com/vishvananda/netlink/nl/link_linux.go
index c72cc436e..e10edbc09 100644
--- a/vendor/github.com/vishvananda/netlink/nl/link_linux.go
+++ b/vendor/github.com/vishvananda/netlink/nl/link_linux.go
@@ -709,3 +709,12 @@ const (
IFLA_CAN_BITRATE_MAX
IFLA_CAN_MAX = IFLA_CAN_BITRATE_MAX
)
+
+const (
+ IFLA_BAREUDP_UNSPEC = iota
+ IFLA_BAREUDP_PORT
+ IFLA_BAREUDP_ETHERTYPE
+ IFLA_BAREUDP_SRCPORT_MIN
+ IFLA_BAREUDP_MULTIPROTO_MODE
+ IFLA_BAREUDP_MAX = IFLA_BAREUDP_MULTIPROTO_MODE
+)
diff --git a/vendor/github.com/vishvananda/netlink/nl/lwt_linux.go b/vendor/github.com/vishvananda/netlink/nl/lwt_linux.go
new file mode 100644
index 000000000..bafd593c4
--- /dev/null
+++ b/vendor/github.com/vishvananda/netlink/nl/lwt_linux.go
@@ -0,0 +1,29 @@
+package nl
+
+const (
+ LWT_BPF_PROG_UNSPEC = iota
+ LWT_BPF_PROG_FD
+ LWT_BPF_PROG_NAME
+ __LWT_BPF_PROG_MAX
+)
+
+const (
+ LWT_BPF_PROG_MAX = __LWT_BPF_PROG_MAX - 1
+)
+
+const (
+ LWT_BPF_UNSPEC = iota
+ LWT_BPF_IN
+ LWT_BPF_OUT
+ LWT_BPF_XMIT
+ LWT_BPF_XMIT_HEADROOM
+ __LWT_BPF_MAX
+)
+
+const (
+ LWT_BPF_MAX = __LWT_BPF_MAX - 1
+)
+
+const (
+ LWT_BPF_MAX_HEADROOM = 256
+)
diff --git a/vendor/github.com/vishvananda/netlink/nl/nl_linux.go b/vendor/github.com/vishvananda/netlink/nl/nl_linux.go
index dcd4b9469..a49f67570 100644
--- a/vendor/github.com/vishvananda/netlink/nl/nl_linux.go
+++ b/vendor/github.com/vishvananda/netlink/nl/nl_linux.go
@@ -27,7 +27,8 @@ const (
// tc rules or filters, or other more memory requiring data.
RECEIVE_BUFFER_SIZE = 65536
// Kernel netlink pid
- PidKernel uint32 = 0
+ PidKernel uint32 = 0
+ SizeofCnMsgOp = 0x18
)
// SupportedNlFamilies contains the list of netlink families this netlink package supports
@@ -85,6 +86,56 @@ type NetlinkRequestData interface {
Serialize() []byte
}
+const (
+ PROC_CN_MCAST_LISTEN = 1
+ PROC_CN_MCAST_IGNORE
+)
+
+type CbID struct {
+ Idx uint32
+ Val uint32
+}
+
+type CnMsg struct {
+ ID CbID
+ Seq uint32
+ Ack uint32
+ Length uint16
+ Flags uint16
+}
+
+type CnMsgOp struct {
+ CnMsg
+ // here we differ from the C header
+ Op uint32
+}
+
+func NewCnMsg(idx, val, op uint32) *CnMsgOp {
+ var cm CnMsgOp
+
+ cm.ID.Idx = idx
+ cm.ID.Val = val
+
+ cm.Ack = 0
+ cm.Seq = 1
+ cm.Length = uint16(binary.Size(op))
+ cm.Op = op
+
+ return &cm
+}
+
+func (msg *CnMsgOp) Serialize() []byte {
+ return (*(*[SizeofCnMsgOp]byte)(unsafe.Pointer(msg)))[:]
+}
+
+func DeserializeCnMsgOp(b []byte) *CnMsgOp {
+ return (*CnMsgOp)(unsafe.Pointer(&b[0:SizeofCnMsgOp][0]))
+}
+
+func (msg *CnMsgOp) Len() int {
+ return SizeofCnMsgOp
+}
+
// IfInfomsg is related to links, but it is used for list requests as well
type IfInfomsg struct {
unix.IfInfomsg
diff --git a/vendor/github.com/vishvananda/netlink/nl/rdma_link_linux.go b/vendor/github.com/vishvananda/netlink/nl/rdma_link_linux.go
index 1224b747d..ce43ee155 100644
--- a/vendor/github.com/vishvananda/netlink/nl/rdma_link_linux.go
+++ b/vendor/github.com/vishvananda/netlink/nl/rdma_link_linux.go
@@ -11,6 +11,8 @@ const (
const (
RDMA_NLDEV_CMD_GET = 1
RDMA_NLDEV_CMD_SET = 2
+ RDMA_NLDEV_CMD_NEWLINK = 3
+ RDMA_NLDEV_CMD_DELLINK = 4
RDMA_NLDEV_CMD_SYS_GET = 6
RDMA_NLDEV_CMD_SYS_SET = 7
)
@@ -30,6 +32,8 @@ const (
RDMA_NLDEV_ATTR_PORT_STATE = 12
RDMA_NLDEV_ATTR_PORT_PHYS_STATE = 13
RDMA_NLDEV_ATTR_DEV_NODE_TYPE = 14
+ RDMA_NLDEV_ATTR_NDEV_NAME = 51
+ RDMA_NLDEV_ATTR_LINK_TYPE = 65
RDMA_NLDEV_SYS_ATTR_NETNS_MODE = 66
RDMA_NLDEV_NET_NS_FD = 68
)
diff --git a/vendor/github.com/vishvananda/netlink/nl/seg6_linux.go b/vendor/github.com/vishvananda/netlink/nl/seg6_linux.go
index 5774cbb15..fe88285f2 100644
--- a/vendor/github.com/vishvananda/netlink/nl/seg6_linux.go
+++ b/vendor/github.com/vishvananda/netlink/nl/seg6_linux.go
@@ -23,7 +23,7 @@ func (s1 *IPv6SrHdr) Equal(s2 IPv6SrHdr) bool {
return false
}
for i := range s1.Segments {
- if s1.Segments[i].Equal(s2.Segments[i]) != true {
+ if !s1.Segments[i].Equal(s2.Segments[i]) {
return false
}
}
@@ -89,7 +89,7 @@ func DecodeSEG6Encap(buf []byte) (int, []net.IP, error) {
}
buf = buf[12:]
if len(buf)%16 != 0 {
- err := fmt.Errorf("DecodeSEG6Encap: error parsing Segment List (buf len: %d)\n", len(buf))
+ err := fmt.Errorf("DecodeSEG6Encap: error parsing Segment List (buf len: %d)", len(buf))
return mode, nil, err
}
for len(buf) > 0 {
diff --git a/vendor/github.com/vishvananda/netlink/nl/syscall.go b/vendor/github.com/vishvananda/netlink/nl/syscall.go
index 4a01e6e59..bdf6ba639 100644
--- a/vendor/github.com/vishvananda/netlink/nl/syscall.go
+++ b/vendor/github.com/vishvananda/netlink/nl/syscall.go
@@ -1,6 +1,6 @@
package nl
-// syscall package lack of rule atributes type.
+// syscall package lack of rule attributes type.
// Thus there are defined below
const (
FRA_UNSPEC = iota
diff --git a/vendor/github.com/vishvananda/netlink/nl/tc_linux.go b/vendor/github.com/vishvananda/netlink/nl/tc_linux.go
index c24d53eb7..002beda92 100644
--- a/vendor/github.com/vishvananda/netlink/nl/tc_linux.go
+++ b/vendor/github.com/vishvananda/netlink/nl/tc_linux.go
@@ -882,6 +882,111 @@ const (
TCA_HFSC_USC
)
+const (
+ TCA_FLOWER_UNSPEC = iota
+ TCA_FLOWER_CLASSID
+ TCA_FLOWER_INDEV
+ TCA_FLOWER_ACT
+ TCA_FLOWER_KEY_ETH_DST /* ETH_ALEN */
+ TCA_FLOWER_KEY_ETH_DST_MASK /* ETH_ALEN */
+ TCA_FLOWER_KEY_ETH_SRC /* ETH_ALEN */
+ TCA_FLOWER_KEY_ETH_SRC_MASK /* ETH_ALEN */
+ TCA_FLOWER_KEY_ETH_TYPE /* be16 */
+ TCA_FLOWER_KEY_IP_PROTO /* u8 */
+ TCA_FLOWER_KEY_IPV4_SRC /* be32 */
+ TCA_FLOWER_KEY_IPV4_SRC_MASK /* be32 */
+ TCA_FLOWER_KEY_IPV4_DST /* be32 */
+ TCA_FLOWER_KEY_IPV4_DST_MASK /* be32 */
+ TCA_FLOWER_KEY_IPV6_SRC /* struct in6_addr */
+ TCA_FLOWER_KEY_IPV6_SRC_MASK /* struct in6_addr */
+ TCA_FLOWER_KEY_IPV6_DST /* struct in6_addr */
+ TCA_FLOWER_KEY_IPV6_DST_MASK /* struct in6_addr */
+ TCA_FLOWER_KEY_TCP_SRC /* be16 */
+ TCA_FLOWER_KEY_TCP_DST /* be16 */
+ TCA_FLOWER_KEY_UDP_SRC /* be16 */
+ TCA_FLOWER_KEY_UDP_DST /* be16 */
+
+ TCA_FLOWER_FLAGS
+ TCA_FLOWER_KEY_VLAN_ID /* be16 */
+ TCA_FLOWER_KEY_VLAN_PRIO /* u8 */
+ TCA_FLOWER_KEY_VLAN_ETH_TYPE /* be16 */
+
+ TCA_FLOWER_KEY_ENC_KEY_ID /* be32 */
+ TCA_FLOWER_KEY_ENC_IPV4_SRC /* be32 */
+ TCA_FLOWER_KEY_ENC_IPV4_SRC_MASK /* be32 */
+ TCA_FLOWER_KEY_ENC_IPV4_DST /* be32 */
+ TCA_FLOWER_KEY_ENC_IPV4_DST_MASK /* be32 */
+ TCA_FLOWER_KEY_ENC_IPV6_SRC /* struct in6_addr */
+ TCA_FLOWER_KEY_ENC_IPV6_SRC_MASK /* struct in6_addr */
+ TCA_FLOWER_KEY_ENC_IPV6_DST /* struct in6_addr */
+ TCA_FLOWER_KEY_ENC_IPV6_DST_MASK /* struct in6_addr */
+
+ TCA_FLOWER_KEY_TCP_SRC_MASK /* be16 */
+ TCA_FLOWER_KEY_TCP_DST_MASK /* be16 */
+ TCA_FLOWER_KEY_UDP_SRC_MASK /* be16 */
+ TCA_FLOWER_KEY_UDP_DST_MASK /* be16 */
+ TCA_FLOWER_KEY_SCTP_SRC_MASK /* be16 */
+ TCA_FLOWER_KEY_SCTP_DST_MASK /* be16 */
+
+ TCA_FLOWER_KEY_SCTP_SRC /* be16 */
+ TCA_FLOWER_KEY_SCTP_DST /* be16 */
+
+ TCA_FLOWER_KEY_ENC_UDP_SRC_PORT /* be16 */
+ TCA_FLOWER_KEY_ENC_UDP_SRC_PORT_MASK /* be16 */
+ TCA_FLOWER_KEY_ENC_UDP_DST_PORT /* be16 */
+ TCA_FLOWER_KEY_ENC_UDP_DST_PORT_MASK /* be16 */
+
+ TCA_FLOWER_KEY_FLAGS /* be32 */
+ TCA_FLOWER_KEY_FLAGS_MASK /* be32 */
+
+ TCA_FLOWER_KEY_ICMPV4_CODE /* u8 */
+ TCA_FLOWER_KEY_ICMPV4_CODE_MASK /* u8 */
+ TCA_FLOWER_KEY_ICMPV4_TYPE /* u8 */
+ TCA_FLOWER_KEY_ICMPV4_TYPE_MASK /* u8 */
+ TCA_FLOWER_KEY_ICMPV6_CODE /* u8 */
+ TCA_FLOWER_KEY_ICMPV6_CODE_MASK /* u8 */
+ TCA_FLOWER_KEY_ICMPV6_TYPE /* u8 */
+ TCA_FLOWER_KEY_ICMPV6_TYPE_MASK /* u8 */
+
+ TCA_FLOWER_KEY_ARP_SIP /* be32 */
+ TCA_FLOWER_KEY_ARP_SIP_MASK /* be32 */
+ TCA_FLOWER_KEY_ARP_TIP /* be32 */
+ TCA_FLOWER_KEY_ARP_TIP_MASK /* be32 */
+ TCA_FLOWER_KEY_ARP_OP /* u8 */
+ TCA_FLOWER_KEY_ARP_OP_MASK /* u8 */
+ TCA_FLOWER_KEY_ARP_SHA /* ETH_ALEN */
+ TCA_FLOWER_KEY_ARP_SHA_MASK /* ETH_ALEN */
+ TCA_FLOWER_KEY_ARP_THA /* ETH_ALEN */
+ TCA_FLOWER_KEY_ARP_THA_MASK /* ETH_ALEN */
+
+ TCA_FLOWER_KEY_MPLS_TTL /* u8 - 8 bits */
+ TCA_FLOWER_KEY_MPLS_BOS /* u8 - 1 bit */
+ TCA_FLOWER_KEY_MPLS_TC /* u8 - 3 bits */
+ TCA_FLOWER_KEY_MPLS_LABEL /* be32 - 20 bits */
+
+ TCA_FLOWER_KEY_TCP_FLAGS /* be16 */
+ TCA_FLOWER_KEY_TCP_FLAGS_MASK /* be16 */
+
+ TCA_FLOWER_KEY_IP_TOS /* u8 */
+ TCA_FLOWER_KEY_IP_TOS_MASK /* u8 */
+ TCA_FLOWER_KEY_IP_TTL /* u8 */
+ TCA_FLOWER_KEY_IP_TTL_MASK /* u8 */
+
+ TCA_FLOWER_KEY_CVLAN_ID /* be16 */
+ TCA_FLOWER_KEY_CVLAN_PRIO /* u8 */
+ TCA_FLOWER_KEY_CVLAN_ETH_TYPE /* be16 */
+
+ TCA_FLOWER_KEY_ENC_IP_TOS /* u8 */
+ TCA_FLOWER_KEY_ENC_IP_TOS_MASK /* u8 */
+ TCA_FLOWER_KEY_ENC_IP_TTL /* u8 */
+ TCA_FLOWER_KEY_ENC_IP_TTL_MASK /* u8 */
+
+ TCA_FLOWER_KEY_ENC_OPTS
+ TCA_FLOWER_KEY_ENC_OPTS_MASK
+
+ __TCA_FLOWER_MAX
+)
+
// struct tc_sfq_qopt {
// unsigned quantum; /* Bytes per round allocated to flow */
// int perturb_period; /* Period of hash perturbation */