#136: Start working on database persistence

This commit is contained in:
TwinProduction
2021-07-12 00:56:30 -04:00
committed by Chris
parent e6335da94f
commit bd1eb7c61b
657 changed files with 2190821 additions and 82 deletions

View File

@ -204,6 +204,7 @@ struct ltchars {
#include <linux/devlink.h>
#include <linux/dm-ioctl.h>
#include <linux/errqueue.h>
#include <linux/ethtool_netlink.h>
#include <linux/falloc.h>
#include <linux/fanotify.h>
#include <linux/filter.h>
@ -563,6 +564,7 @@ ccflags="$@"
$2 ~ /^TIPC_/ ||
$2 !~ "DEVLINK_RELOAD_LIMITS_VALID_MASK" &&
$2 ~ /^DEVLINK_/ ||
$2 ~ /^ETHTOOL_/ ||
$2 ~ /^LWTUNNEL_IP/ ||
$2 !~ "WMESGLEN" &&
$2 ~ /^W[A-Z0-9]+$/ ||

View File

@ -119,13 +119,16 @@ type attrList struct {
Forkattr uint32
}
//sysnb pipe() (r int, w int, err error)
//sysnb pipe(p *[2]int32) (err error)
func Pipe(p []int) (err error) {
if len(p) != 2 {
return EINVAL
}
p[0], p[1], err = pipe()
var x [2]int32
err = pipe(&x)
p[0] = int(x[0])
p[1] = int(x[1])
return
}

View File

@ -75,16 +75,3 @@ func Accept4(fd int, flags int) (nfd int, sa Sockaddr, err error) {
}
return
}
//sysnb pipe2(p *[2]_C_int, flags int) (err error)
func Pipe2(p []int, flags int) error {
if len(p) != 2 {
return EINVAL
}
var pp [2]_C_int
err := pipe2(&pp, flags)
p[0] = int(pp[0])
p[1] = int(pp[1])
return err
}

View File

@ -68,6 +68,19 @@ func Pipe(p []int) (err error) {
return nil
}
//sysnb pipe2(p *[2]_C_int, flags int) (err error)
func Pipe2(p []int, flags int) error {
if len(p) != 2 {
return EINVAL
}
var pp [2]_C_int
err := pipe2(&pp, flags)
p[0] = int(pp[0])
p[1] = int(pp[1])
return err
}
func (sa *SockaddrInet4) sockaddr() (unsafe.Pointer, _Socklen, error) {
if sa.Port < 0 || sa.Port > 0xFFFF {
return nil, 0, EINVAL

View File

@ -527,6 +527,119 @@ const (
EPOLL_CTL_DEL = 0x2
EPOLL_CTL_MOD = 0x3
EROFS_SUPER_MAGIC_V1 = 0xe0f5e1e2
ESP_V4_FLOW = 0xa
ESP_V6_FLOW = 0xc
ETHER_FLOW = 0x12
ETHTOOL_BUSINFO_LEN = 0x20
ETHTOOL_EROMVERS_LEN = 0x20
ETHTOOL_FEC_AUTO = 0x2
ETHTOOL_FEC_BASER = 0x10
ETHTOOL_FEC_LLRS = 0x20
ETHTOOL_FEC_NONE = 0x1
ETHTOOL_FEC_OFF = 0x4
ETHTOOL_FEC_RS = 0x8
ETHTOOL_FLAG_ALL = 0x7
ETHTOOL_FLAG_COMPACT_BITSETS = 0x1
ETHTOOL_FLAG_OMIT_REPLY = 0x2
ETHTOOL_FLAG_STATS = 0x4
ETHTOOL_FLASHDEV = 0x33
ETHTOOL_FLASH_MAX_FILENAME = 0x80
ETHTOOL_FWVERS_LEN = 0x20
ETHTOOL_F_COMPAT = 0x4
ETHTOOL_F_UNSUPPORTED = 0x1
ETHTOOL_F_WISH = 0x2
ETHTOOL_GCHANNELS = 0x3c
ETHTOOL_GCOALESCE = 0xe
ETHTOOL_GDRVINFO = 0x3
ETHTOOL_GEEE = 0x44
ETHTOOL_GEEPROM = 0xb
ETHTOOL_GENL_NAME = "ethtool"
ETHTOOL_GENL_VERSION = 0x1
ETHTOOL_GET_DUMP_DATA = 0x40
ETHTOOL_GET_DUMP_FLAG = 0x3f
ETHTOOL_GET_TS_INFO = 0x41
ETHTOOL_GFEATURES = 0x3a
ETHTOOL_GFECPARAM = 0x50
ETHTOOL_GFLAGS = 0x25
ETHTOOL_GGRO = 0x2b
ETHTOOL_GGSO = 0x23
ETHTOOL_GLINK = 0xa
ETHTOOL_GLINKSETTINGS = 0x4c
ETHTOOL_GMODULEEEPROM = 0x43
ETHTOOL_GMODULEINFO = 0x42
ETHTOOL_GMSGLVL = 0x7
ETHTOOL_GPAUSEPARAM = 0x12
ETHTOOL_GPERMADDR = 0x20
ETHTOOL_GPFLAGS = 0x27
ETHTOOL_GPHYSTATS = 0x4a
ETHTOOL_GREGS = 0x4
ETHTOOL_GRINGPARAM = 0x10
ETHTOOL_GRSSH = 0x46
ETHTOOL_GRXCLSRLALL = 0x30
ETHTOOL_GRXCLSRLCNT = 0x2e
ETHTOOL_GRXCLSRULE = 0x2f
ETHTOOL_GRXCSUM = 0x14
ETHTOOL_GRXFH = 0x29
ETHTOOL_GRXFHINDIR = 0x38
ETHTOOL_GRXNTUPLE = 0x36
ETHTOOL_GRXRINGS = 0x2d
ETHTOOL_GSET = 0x1
ETHTOOL_GSG = 0x18
ETHTOOL_GSSET_INFO = 0x37
ETHTOOL_GSTATS = 0x1d
ETHTOOL_GSTRINGS = 0x1b
ETHTOOL_GTSO = 0x1e
ETHTOOL_GTUNABLE = 0x48
ETHTOOL_GTXCSUM = 0x16
ETHTOOL_GUFO = 0x21
ETHTOOL_GWOL = 0x5
ETHTOOL_MCGRP_MONITOR_NAME = "monitor"
ETHTOOL_NWAY_RST = 0x9
ETHTOOL_PERQUEUE = 0x4b
ETHTOOL_PHYS_ID = 0x1c
ETHTOOL_PHY_EDPD_DFLT_TX_MSECS = 0xffff
ETHTOOL_PHY_EDPD_DISABLE = 0x0
ETHTOOL_PHY_EDPD_NO_TX = 0xfffe
ETHTOOL_PHY_FAST_LINK_DOWN_OFF = 0xff
ETHTOOL_PHY_FAST_LINK_DOWN_ON = 0x0
ETHTOOL_PHY_GTUNABLE = 0x4e
ETHTOOL_PHY_STUNABLE = 0x4f
ETHTOOL_RESET = 0x34
ETHTOOL_RXNTUPLE_ACTION_CLEAR = -0x2
ETHTOOL_RXNTUPLE_ACTION_DROP = -0x1
ETHTOOL_RX_FLOW_SPEC_RING = 0xffffffff
ETHTOOL_RX_FLOW_SPEC_RING_VF = 0xff00000000
ETHTOOL_RX_FLOW_SPEC_RING_VF_OFF = 0x20
ETHTOOL_SCHANNELS = 0x3d
ETHTOOL_SCOALESCE = 0xf
ETHTOOL_SEEE = 0x45
ETHTOOL_SEEPROM = 0xc
ETHTOOL_SET_DUMP = 0x3e
ETHTOOL_SFEATURES = 0x3b
ETHTOOL_SFECPARAM = 0x51
ETHTOOL_SFLAGS = 0x26
ETHTOOL_SGRO = 0x2c
ETHTOOL_SGSO = 0x24
ETHTOOL_SLINKSETTINGS = 0x4d
ETHTOOL_SMSGLVL = 0x8
ETHTOOL_SPAUSEPARAM = 0x13
ETHTOOL_SPFLAGS = 0x28
ETHTOOL_SRINGPARAM = 0x11
ETHTOOL_SRSSH = 0x47
ETHTOOL_SRXCLSRLDEL = 0x31
ETHTOOL_SRXCLSRLINS = 0x32
ETHTOOL_SRXCSUM = 0x15
ETHTOOL_SRXFH = 0x2a
ETHTOOL_SRXFHINDIR = 0x39
ETHTOOL_SRXNTUPLE = 0x35
ETHTOOL_SSET = 0x2
ETHTOOL_SSG = 0x19
ETHTOOL_STSO = 0x1f
ETHTOOL_STUNABLE = 0x49
ETHTOOL_STXCSUM = 0x17
ETHTOOL_SUFO = 0x22
ETHTOOL_SWOL = 0x6
ETHTOOL_TEST = 0x1a
ETH_P_1588 = 0x88f7
ETH_P_8021AD = 0x88a8
ETH_P_8021AH = 0x88e7
@ -996,6 +1109,7 @@ const (
IPV6_DONTFRAG = 0x3e
IPV6_DROP_MEMBERSHIP = 0x15
IPV6_DSTOPTS = 0x3b
IPV6_FLOW = 0x11
IPV6_FREEBIND = 0x4e
IPV6_HDRINCL = 0x24
IPV6_HOPLIMIT = 0x34
@ -1045,6 +1159,7 @@ const (
IPV6_TRANSPARENT = 0x4b
IPV6_UNICAST_HOPS = 0x10
IPV6_UNICAST_IF = 0x4c
IPV6_USER_FLOW = 0xe
IPV6_V6ONLY = 0x1a
IPV6_XFRM_POLICY = 0x23
IP_ADD_MEMBERSHIP = 0x23
@ -1101,6 +1216,7 @@ const (
IP_TTL = 0x2
IP_UNBLOCK_SOURCE = 0x25
IP_UNICAST_IF = 0x32
IP_USER_FLOW = 0xd
IP_XFRM_POLICY = 0x11
ISOFS_SUPER_MAGIC = 0x9660
ISTRIP = 0x20
@ -2340,6 +2456,8 @@ const (
TCP_TX_DELAY = 0x25
TCP_ULP = 0x1f
TCP_USER_TIMEOUT = 0x12
TCP_V4_FLOW = 0x1
TCP_V6_FLOW = 0x5
TCP_WINDOW_CLAMP = 0xa
TCP_ZEROCOPY_RECEIVE = 0x23
TFD_TIMER_ABSTIME = 0x1
@ -2466,6 +2584,7 @@ const (
VM_SOCKETS_INVALID_VERSION = 0xffffffff
VQUIT = 0x1
VT0 = 0x0
WAKE_MAGIC = 0x20
WALL = 0x40000000
WCLONE = 0x80000000
WCONTINUED = 0x8

View File

@ -462,10 +462,8 @@ func libc_munlockall_trampoline()
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
func pipe() (r int, w int, err error) {
r0, r1, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), 0, 0, 0)
r = int(r0)
w = int(r1)
func pipe(p *[2]int32) (err error) {
_, _, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), uintptr(unsafe.Pointer(p)), 0, 0)
if e1 != 0 {
err = errnoErr(e1)
}

View File

@ -462,10 +462,8 @@ func libc_munlockall_trampoline()
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
func pipe() (r int, w int, err error) {
r0, r1, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), 0, 0, 0)
r = int(r0)
w = int(r1)
func pipe(p *[2]int32) (err error) {
_, _, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), uintptr(unsafe.Pointer(p)), 0, 0)
if e1 != 0 {
err = errnoErr(e1)
}

View File

@ -462,10 +462,8 @@ func libc_munlockall_trampoline()
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
func pipe() (r int, w int, err error) {
r0, r1, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), 0, 0, 0)
r = int(r0)
w = int(r1)
func pipe(p *[2]int32) (err error) {
_, _, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), uintptr(unsafe.Pointer(p)), 0, 0)
if e1 != 0 {
err = errnoErr(e1)
}

View File

@ -462,10 +462,8 @@ func libc_munlockall_trampoline()
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
func pipe() (r int, w int, err error) {
r0, r1, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), 0, 0, 0)
r = int(r0)
w = int(r1)
func pipe(p *[2]int32) (err error) {
_, _, e1 := syscall_rawSyscall(funcPC(libc_pipe_trampoline), uintptr(unsafe.Pointer(p)), 0, 0)
if e1 != 0 {
err = errnoErr(e1)
}

View File

@ -14,22 +14,19 @@ import (
//go:cgo_import_dynamic libc_writev writev "libc.so"
//go:cgo_import_dynamic libc_pwritev pwritev "libc.so"
//go:cgo_import_dynamic libc_accept4 accept4 "libsocket.so"
//go:cgo_import_dynamic libc_pipe2 pipe2 "libc.so"
//go:linkname procreadv libc_readv
//go:linkname procpreadv libc_preadv
//go:linkname procwritev libc_writev
//go:linkname procpwritev libc_pwritev
//go:linkname procaccept4 libc_accept4
//go:linkname procpipe2 libc_pipe2
var (
procreadv,
procpreadv,
procwritev,
procpwritev,
procaccept4,
procpipe2 syscallFunc
procaccept4 syscallFunc
)
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
@ -102,13 +99,3 @@ func accept4(s int, rsa *RawSockaddrAny, addrlen *_Socklen, flags int) (fd int,
}
return
}
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
func pipe2(p *[2]_C_int, flags int) (err error) {
_, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procpipe2)), 2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0, 0, 0, 0)
if e1 != 0 {
err = e1
}
return
}

View File

@ -11,6 +11,7 @@ import (
)
//go:cgo_import_dynamic libc_pipe pipe "libc.so"
//go:cgo_import_dynamic libc_pipe2 pipe2 "libc.so"
//go:cgo_import_dynamic libc_getsockname getsockname "libsocket.so"
//go:cgo_import_dynamic libc_getcwd getcwd "libc.so"
//go:cgo_import_dynamic libc_getgroups getgroups "libc.so"
@ -140,6 +141,7 @@ import (
//go:cgo_import_dynamic libc_recvfrom recvfrom "libsocket.so"
//go:linkname procpipe libc_pipe
//go:linkname procpipe2 libc_pipe2
//go:linkname procgetsockname libc_getsockname
//go:linkname procGetcwd libc_getcwd
//go:linkname procgetgroups libc_getgroups
@ -270,6 +272,7 @@ import (
var (
procpipe,
procpipe2,
procgetsockname,
procGetcwd,
procgetgroups,
@ -412,6 +415,16 @@ func pipe(p *[2]_C_int) (n int, err error) {
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
func pipe2(p *[2]_C_int, flags int) (err error) {
_, _, e1 := rawSysvicall6(uintptr(unsafe.Pointer(&procpipe2)), 2, uintptr(unsafe.Pointer(p)), uintptr(flags), 0, 0, 0, 0)
if e1 != 0 {
err = e1
}
return
}
// THIS FILE IS GENERATED BY THE COMMAND AT THE TOP; DO NOT EDIT
func getsockname(fd int, rsa *RawSockaddrAny, addrlen *_Socklen) (err error) {
_, _, e1 := sysvicall6(uintptr(unsafe.Pointer(&procgetsockname)), 3, uintptr(fd), uintptr(unsafe.Pointer(rsa)), uintptr(unsafe.Pointer(addrlen)), 0, 0, 0)
if e1 != 0 {

View File

@ -3222,3 +3222,461 @@ const (
MPLS_IPTUNNEL_TTL = 0x2
MPLS_IPTUNNEL_MAX = 0x2
)
const (
ETHTOOL_ID_UNSPEC = 0x0
ETHTOOL_RX_COPYBREAK = 0x1
ETHTOOL_TX_COPYBREAK = 0x2
ETHTOOL_PFC_PREVENTION_TOUT = 0x3
ETHTOOL_TUNABLE_UNSPEC = 0x0
ETHTOOL_TUNABLE_U8 = 0x1
ETHTOOL_TUNABLE_U16 = 0x2
ETHTOOL_TUNABLE_U32 = 0x3
ETHTOOL_TUNABLE_U64 = 0x4
ETHTOOL_TUNABLE_STRING = 0x5
ETHTOOL_TUNABLE_S8 = 0x6
ETHTOOL_TUNABLE_S16 = 0x7
ETHTOOL_TUNABLE_S32 = 0x8
ETHTOOL_TUNABLE_S64 = 0x9
ETHTOOL_PHY_ID_UNSPEC = 0x0
ETHTOOL_PHY_DOWNSHIFT = 0x1
ETHTOOL_PHY_FAST_LINK_DOWN = 0x2
ETHTOOL_PHY_EDPD = 0x3
ETHTOOL_LINK_EXT_STATE_AUTONEG = 0x0
ETHTOOL_LINK_EXT_STATE_LINK_TRAINING_FAILURE = 0x1
ETHTOOL_LINK_EXT_STATE_LINK_LOGICAL_MISMATCH = 0x2
ETHTOOL_LINK_EXT_STATE_BAD_SIGNAL_INTEGRITY = 0x3
ETHTOOL_LINK_EXT_STATE_NO_CABLE = 0x4
ETHTOOL_LINK_EXT_STATE_CABLE_ISSUE = 0x5
ETHTOOL_LINK_EXT_STATE_EEPROM_ISSUE = 0x6
ETHTOOL_LINK_EXT_STATE_CALIBRATION_FAILURE = 0x7
ETHTOOL_LINK_EXT_STATE_POWER_BUDGET_EXCEEDED = 0x8
ETHTOOL_LINK_EXT_STATE_OVERHEAT = 0x9
ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_PARTNER_DETECTED = 0x1
ETHTOOL_LINK_EXT_SUBSTATE_AN_ACK_NOT_RECEIVED = 0x2
ETHTOOL_LINK_EXT_SUBSTATE_AN_NEXT_PAGE_EXCHANGE_FAILED = 0x3
ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_PARTNER_DETECTED_FORCE_MODE = 0x4
ETHTOOL_LINK_EXT_SUBSTATE_AN_FEC_MISMATCH_DURING_OVERRIDE = 0x5
ETHTOOL_LINK_EXT_SUBSTATE_AN_NO_HCD = 0x6
ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_FRAME_LOCK_NOT_ACQUIRED = 0x1
ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_LINK_INHIBIT_TIMEOUT = 0x2
ETHTOOL_LINK_EXT_SUBSTATE_LT_KR_LINK_PARTNER_DID_NOT_SET_RECEIVER_READY = 0x3
ETHTOOL_LINK_EXT_SUBSTATE_LT_REMOTE_FAULT = 0x4
ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_ACQUIRE_BLOCK_LOCK = 0x1
ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_ACQUIRE_AM_LOCK = 0x2
ETHTOOL_LINK_EXT_SUBSTATE_LLM_PCS_DID_NOT_GET_ALIGN_STATUS = 0x3
ETHTOOL_LINK_EXT_SUBSTATE_LLM_FC_FEC_IS_NOT_LOCKED = 0x4
ETHTOOL_LINK_EXT_SUBSTATE_LLM_RS_FEC_IS_NOT_LOCKED = 0x5
ETHTOOL_LINK_EXT_SUBSTATE_BSI_LARGE_NUMBER_OF_PHYSICAL_ERRORS = 0x1
ETHTOOL_LINK_EXT_SUBSTATE_BSI_UNSUPPORTED_RATE = 0x2
ETHTOOL_LINK_EXT_SUBSTATE_CI_UNSUPPORTED_CABLE = 0x1
ETHTOOL_LINK_EXT_SUBSTATE_CI_CABLE_TEST_FAILURE = 0x2
ETHTOOL_FLASH_ALL_REGIONS = 0x0
ETHTOOL_F_UNSUPPORTED__BIT = 0x0
ETHTOOL_F_WISH__BIT = 0x1
ETHTOOL_F_COMPAT__BIT = 0x2
ETHTOOL_FEC_NONE_BIT = 0x0
ETHTOOL_FEC_AUTO_BIT = 0x1
ETHTOOL_FEC_OFF_BIT = 0x2
ETHTOOL_FEC_RS_BIT = 0x3
ETHTOOL_FEC_BASER_BIT = 0x4
ETHTOOL_FEC_LLRS_BIT = 0x5
ETHTOOL_LINK_MODE_10baseT_Half_BIT = 0x0
ETHTOOL_LINK_MODE_10baseT_Full_BIT = 0x1
ETHTOOL_LINK_MODE_100baseT_Half_BIT = 0x2
ETHTOOL_LINK_MODE_100baseT_Full_BIT = 0x3
ETHTOOL_LINK_MODE_1000baseT_Half_BIT = 0x4
ETHTOOL_LINK_MODE_1000baseT_Full_BIT = 0x5
ETHTOOL_LINK_MODE_Autoneg_BIT = 0x6
ETHTOOL_LINK_MODE_TP_BIT = 0x7
ETHTOOL_LINK_MODE_AUI_BIT = 0x8
ETHTOOL_LINK_MODE_MII_BIT = 0x9
ETHTOOL_LINK_MODE_FIBRE_BIT = 0xa
ETHTOOL_LINK_MODE_BNC_BIT = 0xb
ETHTOOL_LINK_MODE_10000baseT_Full_BIT = 0xc
ETHTOOL_LINK_MODE_Pause_BIT = 0xd
ETHTOOL_LINK_MODE_Asym_Pause_BIT = 0xe
ETHTOOL_LINK_MODE_2500baseX_Full_BIT = 0xf
ETHTOOL_LINK_MODE_Backplane_BIT = 0x10
ETHTOOL_LINK_MODE_1000baseKX_Full_BIT = 0x11
ETHTOOL_LINK_MODE_10000baseKX4_Full_BIT = 0x12
ETHTOOL_LINK_MODE_10000baseKR_Full_BIT = 0x13
ETHTOOL_LINK_MODE_10000baseR_FEC_BIT = 0x14
ETHTOOL_LINK_MODE_20000baseMLD2_Full_BIT = 0x15
ETHTOOL_LINK_MODE_20000baseKR2_Full_BIT = 0x16
ETHTOOL_LINK_MODE_40000baseKR4_Full_BIT = 0x17
ETHTOOL_LINK_MODE_40000baseCR4_Full_BIT = 0x18
ETHTOOL_LINK_MODE_40000baseSR4_Full_BIT = 0x19
ETHTOOL_LINK_MODE_40000baseLR4_Full_BIT = 0x1a
ETHTOOL_LINK_MODE_56000baseKR4_Full_BIT = 0x1b
ETHTOOL_LINK_MODE_56000baseCR4_Full_BIT = 0x1c
ETHTOOL_LINK_MODE_56000baseSR4_Full_BIT = 0x1d
ETHTOOL_LINK_MODE_56000baseLR4_Full_BIT = 0x1e
ETHTOOL_LINK_MODE_25000baseCR_Full_BIT = 0x1f
ETHTOOL_LINK_MODE_25000baseKR_Full_BIT = 0x20
ETHTOOL_LINK_MODE_25000baseSR_Full_BIT = 0x21
ETHTOOL_LINK_MODE_50000baseCR2_Full_BIT = 0x22
ETHTOOL_LINK_MODE_50000baseKR2_Full_BIT = 0x23
ETHTOOL_LINK_MODE_100000baseKR4_Full_BIT = 0x24
ETHTOOL_LINK_MODE_100000baseSR4_Full_BIT = 0x25
ETHTOOL_LINK_MODE_100000baseCR4_Full_BIT = 0x26
ETHTOOL_LINK_MODE_100000baseLR4_ER4_Full_BIT = 0x27
ETHTOOL_LINK_MODE_50000baseSR2_Full_BIT = 0x28
ETHTOOL_LINK_MODE_1000baseX_Full_BIT = 0x29
ETHTOOL_LINK_MODE_10000baseCR_Full_BIT = 0x2a
ETHTOOL_LINK_MODE_10000baseSR_Full_BIT = 0x2b
ETHTOOL_LINK_MODE_10000baseLR_Full_BIT = 0x2c
ETHTOOL_LINK_MODE_10000baseLRM_Full_BIT = 0x2d
ETHTOOL_LINK_MODE_10000baseER_Full_BIT = 0x2e
ETHTOOL_LINK_MODE_2500baseT_Full_BIT = 0x2f
ETHTOOL_LINK_MODE_5000baseT_Full_BIT = 0x30
ETHTOOL_LINK_MODE_FEC_NONE_BIT = 0x31
ETHTOOL_LINK_MODE_FEC_RS_BIT = 0x32
ETHTOOL_LINK_MODE_FEC_BASER_BIT = 0x33
ETHTOOL_LINK_MODE_50000baseKR_Full_BIT = 0x34
ETHTOOL_LINK_MODE_50000baseSR_Full_BIT = 0x35
ETHTOOL_LINK_MODE_50000baseCR_Full_BIT = 0x36
ETHTOOL_LINK_MODE_50000baseLR_ER_FR_Full_BIT = 0x37
ETHTOOL_LINK_MODE_50000baseDR_Full_BIT = 0x38
ETHTOOL_LINK_MODE_100000baseKR2_Full_BIT = 0x39
ETHTOOL_LINK_MODE_100000baseSR2_Full_BIT = 0x3a
ETHTOOL_LINK_MODE_100000baseCR2_Full_BIT = 0x3b
ETHTOOL_LINK_MODE_100000baseLR2_ER2_FR2_Full_BIT = 0x3c
ETHTOOL_LINK_MODE_100000baseDR2_Full_BIT = 0x3d
ETHTOOL_LINK_MODE_200000baseKR4_Full_BIT = 0x3e
ETHTOOL_LINK_MODE_200000baseSR4_Full_BIT = 0x3f
ETHTOOL_LINK_MODE_200000baseLR4_ER4_FR4_Full_BIT = 0x40
ETHTOOL_LINK_MODE_200000baseDR4_Full_BIT = 0x41
ETHTOOL_LINK_MODE_200000baseCR4_Full_BIT = 0x42
ETHTOOL_LINK_MODE_100baseT1_Full_BIT = 0x43
ETHTOOL_LINK_MODE_1000baseT1_Full_BIT = 0x44
ETHTOOL_LINK_MODE_400000baseKR8_Full_BIT = 0x45
ETHTOOL_LINK_MODE_400000baseSR8_Full_BIT = 0x46
ETHTOOL_LINK_MODE_400000baseLR8_ER8_FR8_Full_BIT = 0x47
ETHTOOL_LINK_MODE_400000baseDR8_Full_BIT = 0x48
ETHTOOL_LINK_MODE_400000baseCR8_Full_BIT = 0x49
ETHTOOL_LINK_MODE_FEC_LLRS_BIT = 0x4a
ETHTOOL_LINK_MODE_100000baseKR_Full_BIT = 0x4b
ETHTOOL_LINK_MODE_100000baseSR_Full_BIT = 0x4c
ETHTOOL_LINK_MODE_100000baseLR_ER_FR_Full_BIT = 0x4d
ETHTOOL_LINK_MODE_100000baseCR_Full_BIT = 0x4e
ETHTOOL_LINK_MODE_100000baseDR_Full_BIT = 0x4f
ETHTOOL_LINK_MODE_200000baseKR2_Full_BIT = 0x50
ETHTOOL_LINK_MODE_200000baseSR2_Full_BIT = 0x51
ETHTOOL_LINK_MODE_200000baseLR2_ER2_FR2_Full_BIT = 0x52
ETHTOOL_LINK_MODE_200000baseDR2_Full_BIT = 0x53
ETHTOOL_LINK_MODE_200000baseCR2_Full_BIT = 0x54
ETHTOOL_LINK_MODE_400000baseKR4_Full_BIT = 0x55
ETHTOOL_LINK_MODE_400000baseSR4_Full_BIT = 0x56
ETHTOOL_LINK_MODE_400000baseLR4_ER4_FR4_Full_BIT = 0x57
ETHTOOL_LINK_MODE_400000baseDR4_Full_BIT = 0x58
ETHTOOL_LINK_MODE_400000baseCR4_Full_BIT = 0x59
ETHTOOL_LINK_MODE_100baseFX_Half_BIT = 0x5a
ETHTOOL_LINK_MODE_100baseFX_Full_BIT = 0x5b
ETHTOOL_MSG_USER_NONE = 0x0
ETHTOOL_MSG_STRSET_GET = 0x1
ETHTOOL_MSG_LINKINFO_GET = 0x2
ETHTOOL_MSG_LINKINFO_SET = 0x3
ETHTOOL_MSG_LINKMODES_GET = 0x4
ETHTOOL_MSG_LINKMODES_SET = 0x5
ETHTOOL_MSG_LINKSTATE_GET = 0x6
ETHTOOL_MSG_DEBUG_GET = 0x7
ETHTOOL_MSG_DEBUG_SET = 0x8
ETHTOOL_MSG_WOL_GET = 0x9
ETHTOOL_MSG_WOL_SET = 0xa
ETHTOOL_MSG_FEATURES_GET = 0xb
ETHTOOL_MSG_FEATURES_SET = 0xc
ETHTOOL_MSG_PRIVFLAGS_GET = 0xd
ETHTOOL_MSG_PRIVFLAGS_SET = 0xe
ETHTOOL_MSG_RINGS_GET = 0xf
ETHTOOL_MSG_RINGS_SET = 0x10
ETHTOOL_MSG_CHANNELS_GET = 0x11
ETHTOOL_MSG_CHANNELS_SET = 0x12
ETHTOOL_MSG_COALESCE_GET = 0x13
ETHTOOL_MSG_COALESCE_SET = 0x14
ETHTOOL_MSG_PAUSE_GET = 0x15
ETHTOOL_MSG_PAUSE_SET = 0x16
ETHTOOL_MSG_EEE_GET = 0x17
ETHTOOL_MSG_EEE_SET = 0x18
ETHTOOL_MSG_TSINFO_GET = 0x19
ETHTOOL_MSG_CABLE_TEST_ACT = 0x1a
ETHTOOL_MSG_CABLE_TEST_TDR_ACT = 0x1b
ETHTOOL_MSG_TUNNEL_INFO_GET = 0x1c
ETHTOOL_MSG_USER_MAX = 0x1c
ETHTOOL_MSG_KERNEL_NONE = 0x0
ETHTOOL_MSG_STRSET_GET_REPLY = 0x1
ETHTOOL_MSG_LINKINFO_GET_REPLY = 0x2
ETHTOOL_MSG_LINKINFO_NTF = 0x3
ETHTOOL_MSG_LINKMODES_GET_REPLY = 0x4
ETHTOOL_MSG_LINKMODES_NTF = 0x5
ETHTOOL_MSG_LINKSTATE_GET_REPLY = 0x6
ETHTOOL_MSG_DEBUG_GET_REPLY = 0x7
ETHTOOL_MSG_DEBUG_NTF = 0x8
ETHTOOL_MSG_WOL_GET_REPLY = 0x9
ETHTOOL_MSG_WOL_NTF = 0xa
ETHTOOL_MSG_FEATURES_GET_REPLY = 0xb
ETHTOOL_MSG_FEATURES_SET_REPLY = 0xc
ETHTOOL_MSG_FEATURES_NTF = 0xd
ETHTOOL_MSG_PRIVFLAGS_GET_REPLY = 0xe
ETHTOOL_MSG_PRIVFLAGS_NTF = 0xf
ETHTOOL_MSG_RINGS_GET_REPLY = 0x10
ETHTOOL_MSG_RINGS_NTF = 0x11
ETHTOOL_MSG_CHANNELS_GET_REPLY = 0x12
ETHTOOL_MSG_CHANNELS_NTF = 0x13
ETHTOOL_MSG_COALESCE_GET_REPLY = 0x14
ETHTOOL_MSG_COALESCE_NTF = 0x15
ETHTOOL_MSG_PAUSE_GET_REPLY = 0x16
ETHTOOL_MSG_PAUSE_NTF = 0x17
ETHTOOL_MSG_EEE_GET_REPLY = 0x18
ETHTOOL_MSG_EEE_NTF = 0x19
ETHTOOL_MSG_TSINFO_GET_REPLY = 0x1a
ETHTOOL_MSG_CABLE_TEST_NTF = 0x1b
ETHTOOL_MSG_CABLE_TEST_TDR_NTF = 0x1c
ETHTOOL_MSG_TUNNEL_INFO_GET_REPLY = 0x1d
ETHTOOL_MSG_KERNEL_MAX = 0x1d
ETHTOOL_A_HEADER_UNSPEC = 0x0
ETHTOOL_A_HEADER_DEV_INDEX = 0x1
ETHTOOL_A_HEADER_DEV_NAME = 0x2
ETHTOOL_A_HEADER_FLAGS = 0x3
ETHTOOL_A_HEADER_MAX = 0x3
ETHTOOL_A_BITSET_BIT_UNSPEC = 0x0
ETHTOOL_A_BITSET_BIT_INDEX = 0x1
ETHTOOL_A_BITSET_BIT_NAME = 0x2
ETHTOOL_A_BITSET_BIT_VALUE = 0x3
ETHTOOL_A_BITSET_BIT_MAX = 0x3
ETHTOOL_A_BITSET_BITS_UNSPEC = 0x0
ETHTOOL_A_BITSET_BITS_BIT = 0x1
ETHTOOL_A_BITSET_BITS_MAX = 0x1
ETHTOOL_A_BITSET_UNSPEC = 0x0
ETHTOOL_A_BITSET_NOMASK = 0x1
ETHTOOL_A_BITSET_SIZE = 0x2
ETHTOOL_A_BITSET_BITS = 0x3
ETHTOOL_A_BITSET_VALUE = 0x4
ETHTOOL_A_BITSET_MASK = 0x5
ETHTOOL_A_BITSET_MAX = 0x5
ETHTOOL_A_STRING_UNSPEC = 0x0
ETHTOOL_A_STRING_INDEX = 0x1
ETHTOOL_A_STRING_VALUE = 0x2
ETHTOOL_A_STRING_MAX = 0x2
ETHTOOL_A_STRINGS_UNSPEC = 0x0
ETHTOOL_A_STRINGS_STRING = 0x1
ETHTOOL_A_STRINGS_MAX = 0x1
ETHTOOL_A_STRINGSET_UNSPEC = 0x0
ETHTOOL_A_STRINGSET_ID = 0x1
ETHTOOL_A_STRINGSET_COUNT = 0x2
ETHTOOL_A_STRINGSET_STRINGS = 0x3
ETHTOOL_A_STRINGSET_MAX = 0x3
ETHTOOL_A_STRINGSETS_UNSPEC = 0x0
ETHTOOL_A_STRINGSETS_STRINGSET = 0x1
ETHTOOL_A_STRINGSETS_MAX = 0x1
ETHTOOL_A_STRSET_UNSPEC = 0x0
ETHTOOL_A_STRSET_HEADER = 0x1
ETHTOOL_A_STRSET_STRINGSETS = 0x2
ETHTOOL_A_STRSET_COUNTS_ONLY = 0x3
ETHTOOL_A_STRSET_MAX = 0x3
ETHTOOL_A_LINKINFO_UNSPEC = 0x0
ETHTOOL_A_LINKINFO_HEADER = 0x1
ETHTOOL_A_LINKINFO_PORT = 0x2
ETHTOOL_A_LINKINFO_PHYADDR = 0x3
ETHTOOL_A_LINKINFO_TP_MDIX = 0x4
ETHTOOL_A_LINKINFO_TP_MDIX_CTRL = 0x5
ETHTOOL_A_LINKINFO_TRANSCEIVER = 0x6
ETHTOOL_A_LINKINFO_MAX = 0x6
ETHTOOL_A_LINKMODES_UNSPEC = 0x0
ETHTOOL_A_LINKMODES_HEADER = 0x1
ETHTOOL_A_LINKMODES_AUTONEG = 0x2
ETHTOOL_A_LINKMODES_OURS = 0x3
ETHTOOL_A_LINKMODES_PEER = 0x4
ETHTOOL_A_LINKMODES_SPEED = 0x5
ETHTOOL_A_LINKMODES_DUPLEX = 0x6
ETHTOOL_A_LINKMODES_MASTER_SLAVE_CFG = 0x7
ETHTOOL_A_LINKMODES_MASTER_SLAVE_STATE = 0x8
ETHTOOL_A_LINKMODES_MAX = 0x8
ETHTOOL_A_LINKSTATE_UNSPEC = 0x0
ETHTOOL_A_LINKSTATE_HEADER = 0x1
ETHTOOL_A_LINKSTATE_LINK = 0x2
ETHTOOL_A_LINKSTATE_SQI = 0x3
ETHTOOL_A_LINKSTATE_SQI_MAX = 0x4
ETHTOOL_A_LINKSTATE_EXT_STATE = 0x5
ETHTOOL_A_LINKSTATE_EXT_SUBSTATE = 0x6
ETHTOOL_A_LINKSTATE_MAX = 0x6
ETHTOOL_A_DEBUG_UNSPEC = 0x0
ETHTOOL_A_DEBUG_HEADER = 0x1
ETHTOOL_A_DEBUG_MSGMASK = 0x2
ETHTOOL_A_DEBUG_MAX = 0x2
ETHTOOL_A_WOL_UNSPEC = 0x0
ETHTOOL_A_WOL_HEADER = 0x1
ETHTOOL_A_WOL_MODES = 0x2
ETHTOOL_A_WOL_SOPASS = 0x3
ETHTOOL_A_WOL_MAX = 0x3
ETHTOOL_A_FEATURES_UNSPEC = 0x0
ETHTOOL_A_FEATURES_HEADER = 0x1
ETHTOOL_A_FEATURES_HW = 0x2
ETHTOOL_A_FEATURES_WANTED = 0x3
ETHTOOL_A_FEATURES_ACTIVE = 0x4
ETHTOOL_A_FEATURES_NOCHANGE = 0x5
ETHTOOL_A_FEATURES_MAX = 0x5
ETHTOOL_A_PRIVFLAGS_UNSPEC = 0x0
ETHTOOL_A_PRIVFLAGS_HEADER = 0x1
ETHTOOL_A_PRIVFLAGS_FLAGS = 0x2
ETHTOOL_A_PRIVFLAGS_MAX = 0x2
ETHTOOL_A_RINGS_UNSPEC = 0x0
ETHTOOL_A_RINGS_HEADER = 0x1
ETHTOOL_A_RINGS_RX_MAX = 0x2
ETHTOOL_A_RINGS_RX_MINI_MAX = 0x3
ETHTOOL_A_RINGS_RX_JUMBO_MAX = 0x4
ETHTOOL_A_RINGS_TX_MAX = 0x5
ETHTOOL_A_RINGS_RX = 0x6
ETHTOOL_A_RINGS_RX_MINI = 0x7
ETHTOOL_A_RINGS_RX_JUMBO = 0x8
ETHTOOL_A_RINGS_TX = 0x9
ETHTOOL_A_RINGS_MAX = 0x9
ETHTOOL_A_CHANNELS_UNSPEC = 0x0
ETHTOOL_A_CHANNELS_HEADER = 0x1
ETHTOOL_A_CHANNELS_RX_MAX = 0x2
ETHTOOL_A_CHANNELS_TX_MAX = 0x3
ETHTOOL_A_CHANNELS_OTHER_MAX = 0x4
ETHTOOL_A_CHANNELS_COMBINED_MAX = 0x5
ETHTOOL_A_CHANNELS_RX_COUNT = 0x6
ETHTOOL_A_CHANNELS_TX_COUNT = 0x7
ETHTOOL_A_CHANNELS_OTHER_COUNT = 0x8
ETHTOOL_A_CHANNELS_COMBINED_COUNT = 0x9
ETHTOOL_A_CHANNELS_MAX = 0x9
ETHTOOL_A_COALESCE_UNSPEC = 0x0
ETHTOOL_A_COALESCE_HEADER = 0x1
ETHTOOL_A_COALESCE_RX_USECS = 0x2
ETHTOOL_A_COALESCE_RX_MAX_FRAMES = 0x3
ETHTOOL_A_COALESCE_RX_USECS_IRQ = 0x4
ETHTOOL_A_COALESCE_RX_MAX_FRAMES_IRQ = 0x5
ETHTOOL_A_COALESCE_TX_USECS = 0x6
ETHTOOL_A_COALESCE_TX_MAX_FRAMES = 0x7
ETHTOOL_A_COALESCE_TX_USECS_IRQ = 0x8
ETHTOOL_A_COALESCE_TX_MAX_FRAMES_IRQ = 0x9
ETHTOOL_A_COALESCE_STATS_BLOCK_USECS = 0xa
ETHTOOL_A_COALESCE_USE_ADAPTIVE_RX = 0xb
ETHTOOL_A_COALESCE_USE_ADAPTIVE_TX = 0xc
ETHTOOL_A_COALESCE_PKT_RATE_LOW = 0xd
ETHTOOL_A_COALESCE_RX_USECS_LOW = 0xe
ETHTOOL_A_COALESCE_RX_MAX_FRAMES_LOW = 0xf
ETHTOOL_A_COALESCE_TX_USECS_LOW = 0x10
ETHTOOL_A_COALESCE_TX_MAX_FRAMES_LOW = 0x11
ETHTOOL_A_COALESCE_PKT_RATE_HIGH = 0x12
ETHTOOL_A_COALESCE_RX_USECS_HIGH = 0x13
ETHTOOL_A_COALESCE_RX_MAX_FRAMES_HIGH = 0x14
ETHTOOL_A_COALESCE_TX_USECS_HIGH = 0x15
ETHTOOL_A_COALESCE_TX_MAX_FRAMES_HIGH = 0x16
ETHTOOL_A_COALESCE_RATE_SAMPLE_INTERVAL = 0x17
ETHTOOL_A_COALESCE_MAX = 0x17
ETHTOOL_A_PAUSE_UNSPEC = 0x0
ETHTOOL_A_PAUSE_HEADER = 0x1
ETHTOOL_A_PAUSE_AUTONEG = 0x2
ETHTOOL_A_PAUSE_RX = 0x3
ETHTOOL_A_PAUSE_TX = 0x4
ETHTOOL_A_PAUSE_STATS = 0x5
ETHTOOL_A_PAUSE_MAX = 0x5
ETHTOOL_A_PAUSE_STAT_UNSPEC = 0x0
ETHTOOL_A_PAUSE_STAT_PAD = 0x1
ETHTOOL_A_PAUSE_STAT_TX_FRAMES = 0x2
ETHTOOL_A_PAUSE_STAT_RX_FRAMES = 0x3
ETHTOOL_A_PAUSE_STAT_MAX = 0x3
ETHTOOL_A_EEE_UNSPEC = 0x0
ETHTOOL_A_EEE_HEADER = 0x1
ETHTOOL_A_EEE_MODES_OURS = 0x2
ETHTOOL_A_EEE_MODES_PEER = 0x3
ETHTOOL_A_EEE_ACTIVE = 0x4
ETHTOOL_A_EEE_ENABLED = 0x5
ETHTOOL_A_EEE_TX_LPI_ENABLED = 0x6
ETHTOOL_A_EEE_TX_LPI_TIMER = 0x7
ETHTOOL_A_EEE_MAX = 0x7
ETHTOOL_A_TSINFO_UNSPEC = 0x0
ETHTOOL_A_TSINFO_HEADER = 0x1
ETHTOOL_A_TSINFO_TIMESTAMPING = 0x2
ETHTOOL_A_TSINFO_TX_TYPES = 0x3
ETHTOOL_A_TSINFO_RX_FILTERS = 0x4
ETHTOOL_A_TSINFO_PHC_INDEX = 0x5
ETHTOOL_A_TSINFO_MAX = 0x5
ETHTOOL_A_CABLE_TEST_UNSPEC = 0x0
ETHTOOL_A_CABLE_TEST_HEADER = 0x1
ETHTOOL_A_CABLE_TEST_MAX = 0x1
ETHTOOL_A_CABLE_RESULT_CODE_UNSPEC = 0x0
ETHTOOL_A_CABLE_RESULT_CODE_OK = 0x1
ETHTOOL_A_CABLE_RESULT_CODE_OPEN = 0x2
ETHTOOL_A_CABLE_RESULT_CODE_SAME_SHORT = 0x3
ETHTOOL_A_CABLE_RESULT_CODE_CROSS_SHORT = 0x4
ETHTOOL_A_CABLE_PAIR_A = 0x0
ETHTOOL_A_CABLE_PAIR_B = 0x1
ETHTOOL_A_CABLE_PAIR_C = 0x2
ETHTOOL_A_CABLE_PAIR_D = 0x3
ETHTOOL_A_CABLE_RESULT_UNSPEC = 0x0
ETHTOOL_A_CABLE_RESULT_PAIR = 0x1
ETHTOOL_A_CABLE_RESULT_CODE = 0x2
ETHTOOL_A_CABLE_RESULT_MAX = 0x2
ETHTOOL_A_CABLE_FAULT_LENGTH_UNSPEC = 0x0
ETHTOOL_A_CABLE_FAULT_LENGTH_PAIR = 0x1
ETHTOOL_A_CABLE_FAULT_LENGTH_CM = 0x2
ETHTOOL_A_CABLE_FAULT_LENGTH_MAX = 0x2
ETHTOOL_A_CABLE_TEST_NTF_STATUS_UNSPEC = 0x0
ETHTOOL_A_CABLE_TEST_NTF_STATUS_STARTED = 0x1
ETHTOOL_A_CABLE_TEST_NTF_STATUS_COMPLETED = 0x2
ETHTOOL_A_CABLE_NEST_UNSPEC = 0x0
ETHTOOL_A_CABLE_NEST_RESULT = 0x1
ETHTOOL_A_CABLE_NEST_FAULT_LENGTH = 0x2
ETHTOOL_A_CABLE_NEST_MAX = 0x2
ETHTOOL_A_CABLE_TEST_NTF_UNSPEC = 0x0
ETHTOOL_A_CABLE_TEST_NTF_HEADER = 0x1
ETHTOOL_A_CABLE_TEST_NTF_STATUS = 0x2
ETHTOOL_A_CABLE_TEST_NTF_NEST = 0x3
ETHTOOL_A_CABLE_TEST_NTF_MAX = 0x3
ETHTOOL_A_CABLE_TEST_TDR_CFG_UNSPEC = 0x0
ETHTOOL_A_CABLE_TEST_TDR_CFG_FIRST = 0x1
ETHTOOL_A_CABLE_TEST_TDR_CFG_LAST = 0x2
ETHTOOL_A_CABLE_TEST_TDR_CFG_STEP = 0x3
ETHTOOL_A_CABLE_TEST_TDR_CFG_PAIR = 0x4
ETHTOOL_A_CABLE_TEST_TDR_CFG_MAX = 0x4
ETHTOOL_A_CABLE_TEST_TDR_UNSPEC = 0x0
ETHTOOL_A_CABLE_TEST_TDR_HEADER = 0x1
ETHTOOL_A_CABLE_TEST_TDR_CFG = 0x2
ETHTOOL_A_CABLE_TEST_TDR_MAX = 0x2
ETHTOOL_A_CABLE_AMPLITUDE_UNSPEC = 0x0
ETHTOOL_A_CABLE_AMPLITUDE_PAIR = 0x1
ETHTOOL_A_CABLE_AMPLITUDE_mV = 0x2
ETHTOOL_A_CABLE_AMPLITUDE_MAX = 0x2
ETHTOOL_A_CABLE_PULSE_UNSPEC = 0x0
ETHTOOL_A_CABLE_PULSE_mV = 0x1
ETHTOOL_A_CABLE_PULSE_MAX = 0x1
ETHTOOL_A_CABLE_STEP_UNSPEC = 0x0
ETHTOOL_A_CABLE_STEP_FIRST_DISTANCE = 0x1
ETHTOOL_A_CABLE_STEP_LAST_DISTANCE = 0x2
ETHTOOL_A_CABLE_STEP_STEP_DISTANCE = 0x3
ETHTOOL_A_CABLE_STEP_MAX = 0x3
ETHTOOL_A_CABLE_TDR_NEST_UNSPEC = 0x0
ETHTOOL_A_CABLE_TDR_NEST_STEP = 0x1
ETHTOOL_A_CABLE_TDR_NEST_AMPLITUDE = 0x2
ETHTOOL_A_CABLE_TDR_NEST_PULSE = 0x3
ETHTOOL_A_CABLE_TDR_NEST_MAX = 0x3
ETHTOOL_A_CABLE_TEST_TDR_NTF_UNSPEC = 0x0
ETHTOOL_A_CABLE_TEST_TDR_NTF_HEADER = 0x1
ETHTOOL_A_CABLE_TEST_TDR_NTF_STATUS = 0x2
ETHTOOL_A_CABLE_TEST_TDR_NTF_NEST = 0x3
ETHTOOL_A_CABLE_TEST_TDR_NTF_MAX = 0x3
ETHTOOL_UDP_TUNNEL_TYPE_VXLAN = 0x0
ETHTOOL_UDP_TUNNEL_TYPE_GENEVE = 0x1
ETHTOOL_UDP_TUNNEL_TYPE_VXLAN_GPE = 0x2
ETHTOOL_A_TUNNEL_UDP_ENTRY_UNSPEC = 0x0
ETHTOOL_A_TUNNEL_UDP_ENTRY_PORT = 0x1
ETHTOOL_A_TUNNEL_UDP_ENTRY_TYPE = 0x2
ETHTOOL_A_TUNNEL_UDP_ENTRY_MAX = 0x2
ETHTOOL_A_TUNNEL_UDP_TABLE_UNSPEC = 0x0
ETHTOOL_A_TUNNEL_UDP_TABLE_SIZE = 0x1
ETHTOOL_A_TUNNEL_UDP_TABLE_TYPES = 0x2
ETHTOOL_A_TUNNEL_UDP_TABLE_ENTRY = 0x3
ETHTOOL_A_TUNNEL_UDP_TABLE_MAX = 0x3
ETHTOOL_A_TUNNEL_UDP_UNSPEC = 0x0
ETHTOOL_A_TUNNEL_UDP_TABLE = 0x1
ETHTOOL_A_TUNNEL_UDP_MAX = 0x1
ETHTOOL_A_TUNNEL_INFO_UNSPEC = 0x0
ETHTOOL_A_TUNNEL_INFO_HEADER = 0x1
ETHTOOL_A_TUNNEL_INFO_UDP_PORTS = 0x2
ETHTOOL_A_TUNNEL_INFO_MAX = 0x2
)