SILENT KILLERPanel

Current Path: > > usr > include > linux


Operation   : Linux premium88.web-hosting.com 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13 UTC 2025 x86_64
Software     : Apache
Server IP    : 185.61.154.216 | Your IP: 216.73.216.44
Domains      : 1034 Domain(s)
Permission   : [ 0755 ]

Files and Folders in: //usr/include/linux

NameTypeSizeLast ModifiedActions
android Directory - -
byteorder Directory - -
caif Directory - -
can Directory - -
cifs Directory - -
dvb Directory - -
genwqe Directory - -
hdlc Directory - -
hsi Directory - -
iio Directory - -
isdn Directory - -
mmc Directory - -
netfilter Directory - -
netfilter_arp Directory - -
netfilter_bridge Directory - -
netfilter_ipv4 Directory - -
netfilter_ipv6 Directory - -
nfsd Directory - -
raid Directory - -
sched Directory - -
spi Directory - -
sunrpc Directory - -
tc_act Directory - -
tc_ematch Directory - -
usb Directory - -
wimax Directory - -
a.out.h File 6892 bytes August 20 2025 15:07:53.
acct.h File 3733 bytes August 20 2025 15:07:51.
adb.h File 1140 bytes August 20 2025 15:07:51.
adfs_fs.h File 936 bytes August 20 2025 15:07:53.
affs_hardblocks.h File 1544 bytes August 20 2025 15:07:50.
agpgart.h File 3940 bytes August 20 2025 15:07:51.
aio_abi.h File 3417 bytes August 20 2025 15:07:52.
am437x-vpfe.h File 3681 bytes August 20 2025 15:07:53.
apm_bios.h File 3683 bytes August 20 2025 15:07:53.
arcfb.h File 213 bytes August 20 2025 15:07:52.
arm_sdei.h File 2751 bytes August 20 2025 15:07:52.
aspeed-lpc-ctrl.h File 1780 bytes August 20 2025 15:07:50.
atalk.h File 1023 bytes August 20 2025 15:07:50.
atm.h File 7888 bytes August 20 2025 15:07:52.
atm_eni.h File 648 bytes August 20 2025 15:07:50.
atm_he.h File 406 bytes August 20 2025 15:07:51.
atm_idt77105.h File 955 bytes August 20 2025 15:07:51.
atm_nicstar.h File 1278 bytes August 20 2025 15:07:50.
atm_tcp.h File 1622 bytes August 20 2025 15:07:52.
atm_zatm.h File 1540 bytes August 20 2025 15:07:53.
atmapi.h File 952 bytes August 20 2025 15:07:52.
atmarp.h File 1296 bytes August 20 2025 15:07:51.
atmbr2684.h File 3271 bytes August 20 2025 15:07:51.
atmclip.h File 576 bytes August 20 2025 15:07:50.
atmdev.h File 7677 bytes August 20 2025 15:07:50.
atmioc.h File 1646 bytes August 20 2025 15:07:51.
atmlec.h File 2381 bytes August 20 2025 15:07:50.
atmmpc.h File 4226 bytes August 20 2025 15:07:50.
atmppp.h File 639 bytes August 20 2025 15:07:52.
atmsap.h File 4970 bytes August 20 2025 15:07:50.
atmsvc.h File 1853 bytes August 20 2025 15:07:50.
audit.h File 20394 bytes August 20 2025 15:07:51.
auto_dev-ioctl.h File 4986 bytes August 20 2025 15:07:50.
auto_fs.h File 6428 bytes August 20 2025 15:07:52.
auto_fs4.h File 451 bytes August 20 2025 15:07:52.
auxvec.h File 1597 bytes August 20 2025 15:07:51.
ax25.h File 2824 bytes August 20 2025 15:07:53.
b1lli.h File 1717 bytes August 20 2025 15:07:51.
batadv_packet.h File 20495 bytes August 20 2025 15:07:50.
batman_adv.h File 11977 bytes August 20 2025 15:07:52.
baycom.h File 883 bytes August 20 2025 15:07:50.
bcache.h File 8366 bytes August 20 2025 15:07:50.
bcm933xx_hcs.h File 419 bytes August 20 2025 15:07:50.
bfs_fs.h File 1893 bytes August 20 2025 15:07:52.
binfmts.h File 628 bytes August 20 2025 15:07:52.
blkpg.h File 904 bytes August 20 2025 15:07:53.
blktrace_api.h File 4701 bytes August 20 2025 15:07:50.
blkzoned.h File 6608 bytes August 20 2025 15:07:50.
bpf.h File 228660 bytes August 20 2025 15:07:51.
bpf_common.h File 1367 bytes August 20 2025 15:07:52.
bpf_perf_event.h File 529 bytes August 20 2025 15:07:52.
bpfilter.h File 465 bytes August 20 2025 15:07:50.
bpqether.h File 981 bytes August 20 2025 15:07:51.
bsg.h File 2494 bytes August 20 2025 15:07:52.
bt-bmc.h File 572 bytes August 20 2025 15:07:51.
btf.h File 4796 bytes August 20 2025 15:07:50.
btrfs.h File 28913 bytes August 20 2025 15:07:50.
btrfs_tree.h File 25285 bytes August 20 2025 15:07:52.
can.h File 7881 bytes August 20 2025 15:07:51.
capability.h File 13521 bytes August 20 2025 15:07:50.
capi.h File 3124 bytes August 20 2025 15:07:53.
cciss_defs.h File 3281 bytes August 20 2025 15:07:52.
cciss_ioctl.h File 2761 bytes August 20 2025 15:07:52.
cdrom.h File 28859 bytes August 20 2025 15:07:52.
cec-funcs.h File 53901 bytes August 20 2025 15:07:52.
cec.h File 37691 bytes August 20 2025 15:07:52.
cfm_bridge.h File 1456 bytes August 20 2025 15:07:51.
cgroupstats.h File 2219 bytes August 20 2025 15:07:50.
chio.h File 5344 bytes August 20 2025 15:07:51.
close_range.h File 377 bytes August 20 2025 15:07:52.
cm4000_cs.h File 1806 bytes August 20 2025 15:07:52.
cn_proc.h File 3456 bytes August 20 2025 15:07:51.
coda.h File 17505 bytes August 20 2025 15:07:52.
coda_psdev.h File 783 bytes August 20 2025 15:07:51.
coff.h File 12476 bytes August 20 2025 15:07:50.
connector.h File 2253 bytes August 20 2025 15:07:52.
const.h File 788 bytes August 20 2025 15:07:52.
coresight-stm.h File 674 bytes August 20 2025 15:07:52.
cramfs_fs.h File 3555 bytes August 20 2025 15:07:52.
cryptouser.h File 3392 bytes August 20 2025 15:07:50.
cuda.h File 905 bytes August 20 2025 15:07:51.
cyclades.h File 17108 bytes August 20 2025 15:07:51.
cycx_cfm.h File 2990 bytes August 20 2025 15:07:51.
dcbnl.h File 25238 bytes August 20 2025 15:07:51.
dccp.h File 6436 bytes August 20 2025 15:07:50.
devlink.h File 21556 bytes August 20 2025 15:07:51.
dlm.h File 2553 bytes August 20 2025 15:07:51.
dlm_device.h File 2543 bytes August 20 2025 15:07:52.
dlm_netlink.h File 1159 bytes August 20 2025 15:07:52.
dlm_plock.h File 894 bytes August 20 2025 15:07:53.
dlmconstants.h File 5080 bytes August 20 2025 15:07:52.
dm-ioctl.h File 11400 bytes August 20 2025 15:07:52.
dm-log-userspace.h File 15191 bytes August 20 2025 15:07:51.
dma-buf.h File 5247 bytes August 20 2025 15:07:50.
dn.h File 4642 bytes August 20 2025 15:07:53.
dqblk_xfs.h File 9245 bytes August 20 2025 15:07:50.
edd.h File 5604 bytes August 20 2025 15:07:51.
efs_fs_sb.h File 2227 bytes August 20 2025 15:07:52.
elf-em.h File 2187 bytes August 20 2025 15:07:51.
elf-fdpic.h File 1124 bytes August 20 2025 15:07:51.
elf.h File 13471 bytes August 20 2025 15:07:51.
elfcore.h File 2995 bytes August 20 2025 15:07:49.
errno.h File 23 bytes August 20 2025 15:07:50.
errqueue.h File 1477 bytes August 20 2025 15:07:51.
erspan.h File 1059 bytes August 20 2025 15:07:53.
ethtool.h File 83855 bytes August 20 2025 15:07:52.
ethtool_netlink.h File 22826 bytes August 20 2025 15:07:52.
eventpoll.h File 2734 bytes August 20 2025 15:07:52.
fadvise.h File 842 bytes August 20 2025 15:07:52.
falloc.h File 3584 bytes August 20 2025 15:07:51.
fanotify.h File 5341 bytes August 20 2025 15:07:50.
fb.h File 16477 bytes August 20 2025 15:07:51.
fcntl.h File 4174 bytes August 20 2025 15:07:53.
fd.h File 11672 bytes August 20 2025 15:07:51.
fdreg.h File 5420 bytes August 20 2025 15:07:51.
fib_rules.h File 2036 bytes August 20 2025 15:07:50.
fiemap.h File 2775 bytes August 20 2025 15:07:51.
filter.h File 2216 bytes August 20 2025 15:07:50.
firewire-cdev.h File 43886 bytes August 20 2025 15:07:50.
firewire-constants.h File 3231 bytes August 20 2025 15:07:50.
flat.h File 2148 bytes August 20 2025 15:07:50.
fou.h File 694 bytes August 20 2025 15:07:52.
fpga-dfl.h File 8728 bytes August 20 2025 15:07:51.
fs.h File 13424 bytes August 20 2025 15:07:52.
fsl_hypervisor.h File 7301 bytes August 20 2025 15:07:52.
fsmap.h File 4393 bytes August 20 2025 15:07:51.
fuse.h File 23473 bytes August 20 2025 15:07:52.
futex.h File 4993 bytes August 20 2025 15:07:53.
gameport.h File 897 bytes August 20 2025 15:07:52.
gen_stats.h File 1526 bytes August 20 2025 15:07:52.
genetlink.h File 2175 bytes August 20 2025 15:07:51.
gfs2_ondisk.h File 14743 bytes August 20 2025 15:07:51.
gigaset_dev.h File 1442 bytes August 20 2025 15:07:50.
gpio.h File 6751 bytes August 20 2025 15:07:51.
gsmmux.h File 1041 bytes August 20 2025 15:07:50.
gtp.h File 681 bytes August 20 2025 15:07:50.
hash_info.h File 921 bytes August 20 2025 15:07:50.
hdlc.h File 637 bytes August 20 2025 15:07:52.
hdlcdrv.h File 2908 bytes August 20 2025 15:07:49.
hdreg.h File 22703 bytes August 20 2025 15:07:51.
hid.h File 1901 bytes August 20 2025 15:07:52.
hiddev.h File 6345 bytes August 20 2025 15:07:52.
hidraw.h File 1993 bytes August 20 2025 15:07:51.
hpet.h File 743 bytes August 20 2025 15:07:50.
hsr_netlink.h File 1081 bytes August 20 2025 15:07:53.
hw_breakpoint.h File 742 bytes August 20 2025 15:07:52.
hyperv.h File 11152 bytes August 20 2025 15:07:51.
hysdn_if.h File 1382 bytes August 20 2025 15:07:52.
i2c-dev.h File 2612 bytes August 20 2025 15:07:52.
i2c.h File 7132 bytes August 20 2025 15:07:52.
i2o-dev.h File 11555 bytes August 20 2025 15:07:51.
i8k.h File 1528 bytes August 20 2025 15:07:52.
icmp.h File 2975 bytes August 20 2025 15:07:52.
icmpv6.h File 4038 bytes August 20 2025 15:07:53.
idxd.h File 8417 bytes August 20 2025 15:07:50.
if.h File 10901 bytes August 20 2025 15:07:50.
if_addr.h File 1886 bytes August 20 2025 15:07:51.
if_addrlabel.h File 721 bytes August 20 2025 15:07:52.
if_alg.h File 946 bytes August 20 2025 15:07:51.
if_arcnet.h File 3717 bytes August 20 2025 15:07:52.
if_arp.h File 6577 bytes August 20 2025 15:07:51.
if_bonding.h File 5291 bytes August 20 2025 15:07:50.
if_bridge.h File 19514 bytes August 20 2025 15:07:52.
if_cablemodem.h File 986 bytes August 20 2025 15:07:51.
if_eql.h File 1349 bytes August 20 2025 15:07:50.
if_ether.h File 8248 bytes August 20 2025 15:07:50.
if_fc.h File 1738 bytes August 20 2025 15:07:50.
if_fddi.h File 3748 bytes August 20 2025 15:07:52.
if_frad.h File 3019 bytes August 20 2025 15:07:50.
if_hippi.h File 4235 bytes August 20 2025 15:07:50.
if_infiniband.h File 1245 bytes August 20 2025 15:07:51.
if_link.h File 31005 bytes August 20 2025 15:07:52.
if_ltalk.h File 210 bytes August 20 2025 15:07:52.
if_macsec.h File 5832 bytes August 20 2025 15:07:50.
if_packet.h File 7919 bytes August 20 2025 15:07:51.
if_phonet.h File 424 bytes August 20 2025 15:07:50.
if_plip.h File 660 bytes August 20 2025 15:07:50.
if_ppp.h File 29 bytes August 20 2025 15:07:52.
if_pppol2tp.h File 3292 bytes August 20 2025 15:07:51.
if_pppox.h File 4879 bytes August 20 2025 15:07:50.
if_slip.h File 872 bytes August 20 2025 15:07:50.
if_team.h File 2600 bytes August 20 2025 15:07:50.
if_tun.h File 4098 bytes August 20 2025 15:07:50.
if_tunnel.h File 4512 bytes August 20 2025 15:07:51.
if_vlan.h File 1831 bytes August 20 2025 15:07:50.
if_x25.h File 881 bytes August 20 2025 15:07:51.
if_xdp.h File 3011 bytes August 20 2025 15:07:53.
ife.h File 351 bytes August 20 2025 15:07:50.
igmp.h File 3064 bytes August 20 2025 15:07:51.
ila.h File 1246 bytes August 20 2025 15:07:51.
in.h File 10014 bytes August 20 2025 15:07:51.
in6.h File 7438 bytes August 20 2025 15:07:52.
in_route.h File 936 bytes August 20 2025 15:07:53.
inet_diag.h File 4672 bytes August 20 2025 15:07:50.
inotify.h File 3292 bytes August 20 2025 15:07:52.
input-event-codes.h File 28606 bytes August 20 2025 15:07:51.
input.h File 15985 bytes August 20 2025 15:07:52.
io_uring.h File 6207 bytes August 20 2025 15:07:51.
ioctl.h File 163 bytes August 20 2025 15:07:50.
iommu.h File 4904 bytes August 20 2025 15:07:51.
ip.h File 4728 bytes August 20 2025 15:07:53.
ip6_tunnel.h File 1953 bytes August 20 2025 15:07:50.
ip_vs.h File 13631 bytes August 20 2025 15:07:52.
ipc.h File 2101 bytes August 20 2025 15:07:52.
ipmi.h File 15442 bytes August 20 2025 15:07:51.
ipmi_bmc.h File 464 bytes August 20 2025 15:07:52.
ipmi_msgdefs.h File 3430 bytes August 20 2025 15:07:50.
ipmi_ssif_bmc.h File 441 bytes August 20 2025 15:07:50.
ipsec.h File 947 bytes August 20 2025 15:07:52.
ipv6.h File 3967 bytes August 20 2025 15:07:50.
ipv6_route.h File 1908 bytes August 20 2025 15:07:50.
ipx.h File 2347 bytes August 20 2025 15:07:51.
irqnr.h File 104 bytes August 20 2025 15:07:50.
isdn.h File 5774 bytes August 20 2025 15:07:50.
isdn_divertif.h File 1200 bytes August 20 2025 15:07:51.
isdn_ppp.h File 1923 bytes August 20 2025 15:07:52.
isdnif.h File 2370 bytes August 20 2025 15:07:51.
iso_fs.h File 6485 bytes August 20 2025 15:07:51.
isst_if.h File 5384 bytes August 20 2025 15:07:51.
ivtv.h File 3022 bytes August 20 2025 15:07:52.
ivtvfb.h File 1207 bytes August 20 2025 15:07:52.
jffs2.h File 7018 bytes August 20 2025 15:07:51.
joystick.h File 3434 bytes August 20 2025 15:07:52.
kcm.h File 822 bytes August 20 2025 15:07:50.
kcmp.h File 522 bytes August 20 2025 15:07:52.
kcov.h File 1099 bytes August 20 2025 15:07:50.
kd.h File 6253 bytes August 20 2025 15:07:50.
kdev_t.h File 383 bytes August 20 2025 15:07:51.
kernel-page-flags.h File 900 bytes August 20 2025 15:07:50.
kernel.h File 438 bytes August 20 2025 15:07:52.
kernelcapi.h File 1019 bytes August 20 2025 15:07:53.
kexec.h File 1835 bytes August 20 2025 15:07:51.
keyboard.h File 12783 bytes August 20 2025 15:07:50.
keyctl.h File 3500 bytes August 20 2025 15:07:53.
kfd_ioctl.h File 28814 bytes August 20 2025 15:07:51.
kfd_sysfs.h File 4350 bytes August 20 2025 15:07:50.
kvm.h File 61561 bytes August 20 2025 15:07:53.
kvm_para.h File 1001 bytes August 20 2025 15:07:50.
l2tp.h File 5591 bytes August 20 2025 15:07:51.
libc-compat.h File 8289 bytes August 20 2025 15:07:52.
lightnvm.h File 5042 bytes August 20 2025 15:07:51.
limits.h File 937 bytes August 20 2025 15:07:50.
lirc.h File 7813 bytes August 20 2025 15:07:53.
llc.h File 3164 bytes August 20 2025 15:07:52.
loop.h File 3497 bytes August 20 2025 15:07:51.
lp.h File 4190 bytes August 20 2025 15:07:52.
lwtunnel.h File 2179 bytes August 20 2025 15:07:50.
magic.h File 3531 bytes August 20 2025 15:07:53.
major.h File 4713 bytes August 20 2025 15:07:50.
map_to_7segment.h File 7251 bytes August 20 2025 15:07:50.
matroxfb.h File 1464 bytes August 20 2025 15:07:52.
max2175.h File 1035 bytes August 20 2025 15:07:52.
mdio.h File 17272 bytes August 20 2025 15:07:50.
media-bus-format.h File 6411 bytes August 20 2025 15:07:51.
media.h File 11382 bytes August 20 2025 15:07:51.
mei.h File 3475 bytes August 20 2025 15:07:52.
membarrier.h File 7899 bytes August 20 2025 15:07:50.
memfd.h File 1324 bytes August 20 2025 15:07:49.
mempolicy.h File 2231 bytes August 20 2025 15:07:52.
meye.h File 2529 bytes August 20 2025 15:07:50.
mic_common.h File 6519 bytes August 20 2025 15:07:51.
mic_ioctl.h File 2252 bytes August 20 2025 15:07:51.
mii.h File 9496 bytes August 20 2025 15:07:51.
minix_fs.h File 2122 bytes August 20 2025 15:07:50.
mman.h File 1385 bytes August 20 2025 15:07:51.
mmtimer.h File 2117 bytes August 20 2025 15:07:50.
module.h File 255 bytes August 20 2025 15:07:49.
mount.h File 4546 bytes August 20 2025 15:07:50.
mpls.h File 2302 bytes August 20 2025 15:07:51.
mpls_iptunnel.h File 761 bytes August 20 2025 15:07:52.
mptcp.h File 5608 bytes August 20 2025 15:07:52.
mqueue.h File 2201 bytes August 20 2025 15:07:52.
mroute.h File 5427 bytes August 20 2025 15:07:53.
mroute6.h File 4577 bytes August 20 2025 15:07:50.
mrp_bridge.h File 1708 bytes August 20 2025 15:07:50.
msdos_fs.h File 6963 bytes August 20 2025 15:07:51.
msg.h File 3374 bytes August 20 2025 15:07:52.
mtio.h File 8175 bytes August 20 2025 15:07:52.
n_r3964.h File 2410 bytes August 20 2025 15:07:51.
nbd-netlink.h File 2408 bytes August 20 2025 15:07:51.
nbd.h File 3024 bytes August 20 2025 15:07:52.
ncsi.h File 3880 bytes August 20 2025 15:07:53.
ndctl.h File 6866 bytes August 20 2025 15:07:52.
neighbour.h File 5138 bytes August 20 2025 15:07:51.
net.h File 2085 bytes August 20 2025 15:07:52.
net_dropmon.h File 2922 bytes August 20 2025 15:07:52.
net_namespace.h File 715 bytes August 20 2025 15:07:51.
net_tstamp.h File 5806 bytes August 20 2025 15:07:49.
netconf.h File 614 bytes August 20 2025 15:07:51.
netdevice.h File 2253 bytes August 20 2025 15:07:51.
netfilter.h File 1820 bytes August 20 2025 15:07:52.
netfilter_arp.h File 445 bytes August 20 2025 15:07:50.
netfilter_bridge.h File 1168 bytes August 20 2025 15:07:52.
netfilter_decnet.h File 1979 bytes August 20 2025 15:07:50.
netfilter_ipv4.h File 2169 bytes August 20 2025 15:07:50.
netfilter_ipv6.h File 2189 bytes August 20 2025 15:07:52.
netlink.h File 11495 bytes August 20 2025 15:07:53.
netlink_diag.h File 1524 bytes August 20 2025 15:07:53.
netrom.h File 807 bytes August 20 2025 15:07:52.
nexthop.h File 1534 bytes August 20 2025 15:07:50.
nfc.h File 11209 bytes August 20 2025 15:07:50.
nfs.h File 4500 bytes August 20 2025 15:07:50.
nfs2.h File 1468 bytes August 20 2025 15:07:51.
nfs3.h File 2453 bytes August 20 2025 15:07:51.
nfs4.h File 6599 bytes August 20 2025 15:07:50.
nfs4_mount.h File 1932 bytes August 20 2025 15:07:51.
nfs_fs.h File 1641 bytes August 20 2025 15:07:50.
nfs_idmap.h File 2243 bytes August 20 2025 15:07:51.
nfs_mount.h File 2142 bytes August 20 2025 15:07:52.
nfsacl.h File 718 bytes August 20 2025 15:07:50.
nilfs2_api.h File 7589 bytes August 20 2025 15:07:51.
nilfs2_ondisk.h File 18033 bytes August 20 2025 15:07:52.
nitro_enclaves.h File 13152 bytes August 20 2025 15:07:52.
nl80211.h File 335264 bytes August 20 2025 15:07:50.
nsfs.h File 639 bytes August 20 2025 15:07:51.
nubus.h File 8191 bytes August 20 2025 15:07:53.
nvme_ioctl.h File 2112 bytes August 20 2025 15:07:51.
nvram.h File 532 bytes August 20 2025 15:07:50.
omap3isp.h File 20853 bytes August 20 2025 15:07:50.
omapfb.h File 5918 bytes August 20 2025 15:07:51.
oom.h File 511 bytes August 20 2025 15:07:51.
openat2.h File 1289 bytes August 20 2025 15:07:49.
openvswitch.h File 40184 bytes August 20 2025 15:07:51.
packet_diag.h File 1672 bytes August 20 2025 15:07:50.
param.h File 141 bytes August 20 2025 15:07:52.
parport.h File 3644 bytes August 20 2025 15:07:52.
patchkey.h File 892 bytes August 20 2025 15:07:52.
pci.h File 1380 bytes August 20 2025 15:07:51.
pci_regs.h File 57827 bytes August 20 2025 15:07:50.
pcitest.h File 711 bytes August 20 2025 15:07:51.
perf_event.h File 40580 bytes August 20 2025 15:07:52.
personality.h File 2097 bytes August 20 2025 15:07:50.
pfkeyv2.h File 10569 bytes August 20 2025 15:07:52.
pfrut.h File 7987 bytes August 20 2025 15:07:52.
pg.h File 2394 bytes August 20 2025 15:07:51.
phantom.h File 1654 bytes August 20 2025 15:07:52.
phonet.h File 4677 bytes August 20 2025 15:07:52.
pkt_cls.h File 18511 bytes August 20 2025 15:07:53.
pkt_sched.h File 30296 bytes August 20 2025 15:07:52.
pktcdvd.h File 2687 bytes August 20 2025 15:07:51.
pmu.h File 5319 bytes August 20 2025 15:07:50.
poll.h File 22 bytes August 20 2025 15:07:52.
posix_acl.h File 1254 bytes August 20 2025 15:07:51.
posix_acl_xattr.h File 1115 bytes August 20 2025 15:07:53.
posix_types.h File 1098 bytes August 20 2025 15:07:50.
ppdev.h File 3211 bytes August 20 2025 15:07:51.
ppp-comp.h File 2527 bytes August 20 2025 15:07:50.
ppp-ioctl.h File 5475 bytes August 20 2025 15:07:51.
ppp_defs.h File 5107 bytes August 20 2025 15:07:51.
pps.h File 4734 bytes August 20 2025 15:07:52.
pr.h File 1073 bytes August 20 2025 15:07:51.
prctl.h File 8023 bytes August 20 2025 15:07:52.
psample.h File 2271 bytes August 20 2025 15:07:51.
psci.h File 4328 bytes August 20 2025 15:07:53.
psp-sev.h File 4586 bytes August 20 2025 15:07:51.
ptp_clock.h File 7456 bytes August 20 2025 15:07:50.
ptrace.h File 3674 bytes August 20 2025 15:07:52.
qemu_fw_cfg.h File 2469 bytes August 20 2025 15:07:53.
qnx4_fs.h File 2328 bytes August 20 2025 15:07:51.
qnxtypes.h File 624 bytes August 20 2025 15:07:52.
qrtr.h File 893 bytes August 20 2025 15:07:50.
quota.h File 6291 bytes August 20 2025 15:07:50.
radeonfb.h File 360 bytes August 20 2025 15:07:51.
random.h File 1370 bytes August 20 2025 15:07:52.
raw.h File 365 bytes August 20 2025 15:07:53.
rds.h File 9301 bytes August 20 2025 15:07:51.
reboot.h File 1343 bytes August 20 2025 15:07:52.
reiserfs_fs.h File 775 bytes August 20 2025 15:07:50.
reiserfs_xattr.h File 533 bytes August 20 2025 15:07:52.
resource.h File 2347 bytes August 20 2025 15:07:53.
rfkill.h File 6608 bytes August 20 2025 15:07:50.
rio_cm_cdev.h File 3248 bytes August 20 2025 15:07:53.
rio_mport_cdev.h File 9330 bytes August 20 2025 15:07:52.
romfs_fs.h File 1238 bytes August 20 2025 15:07:53.
rose.h File 2232 bytes August 20 2025 15:07:50.
route.h File 2332 bytes August 20 2025 15:07:52.
rpmsg.h File 544 bytes August 20 2025 15:07:53.
rseq.h File 4904 bytes August 20 2025 15:07:51.
rtc.h File 4009 bytes August 20 2025 15:07:50.
rtnetlink.h File 20201 bytes August 20 2025 15:07:51.
rxrpc.h File 5080 bytes August 20 2025 15:07:52.
scc.h File 4597 bytes August 20 2025 15:07:50.
sched.h File 2797 bytes August 20 2025 15:07:52.
scif_ioctl.h File 6382 bytes August 20 2025 15:07:50.
screen_info.h File 2479 bytes August 20 2025 15:07:52.
sctp.h File 35994 bytes August 20 2025 15:07:51.
sdla.h File 2839 bytes August 20 2025 15:07:52.
seccomp.h File 2257 bytes August 20 2025 15:07:53.
securebits.h File 2704 bytes August 20 2025 15:07:50.
sed-opal.h File 3275 bytes August 20 2025 15:07:50.
seg6.h File 1170 bytes August 20 2025 15:07:52.
seg6_genl.h File 589 bytes August 20 2025 15:07:51.
seg6_hmac.h File 423 bytes August 20 2025 15:07:52.
seg6_iptunnel.h File 927 bytes August 20 2025 15:07:51.
seg6_local.h File 2060 bytes August 20 2025 15:07:53.
selinux_netlink.h File 1195 bytes August 20 2025 15:07:53.
sem.h File 3043 bytes August 20 2025 15:07:50.
serial.h File 3866 bytes August 20 2025 15:07:52.
serial_core.h File 6245 bytes August 20 2025 15:07:52.
serial_reg.h File 15496 bytes August 20 2025 15:07:50.
serio.h File 2037 bytes August 20 2025 15:07:52.
sev-guest.h File 2303 bytes August 20 2025 15:07:52.
shm.h File 3785 bytes August 20 2025 15:07:52.
signal.h File 388 bytes August 20 2025 15:07:52.
signalfd.h File 1233 bytes August 20 2025 15:07:51.
smc.h File 8513 bytes August 20 2025 15:07:50.
smc_diag.h File 2728 bytes August 20 2025 15:07:50.
smiapp.h File 1058 bytes August 20 2025 15:07:52.
snmp.h File 13663 bytes August 20 2025 15:07:51.
sock_diag.h File 1301 bytes August 20 2025 15:07:50.
socket.h File 901 bytes August 20 2025 15:07:50.
sockios.h File 6106 bytes August 20 2025 15:07:52.
sonet.h File 2290 bytes August 20 2025 15:07:50.
sonypi.h File 5309 bytes August 20 2025 15:07:51.
sound.h File 1237 bytes August 20 2025 15:07:51.
soundcard.h File 46038 bytes August 20 2025 15:07:53.
stat.h File 6352 bytes August 20 2025 15:07:49.
stddef.h File 1532 bytes August 20 2025 15:07:51.
stm.h File 1275 bytes August 20 2025 15:07:52.
string.h File 238 bytes August 20 2025 15:07:50.
suspend_ioctls.h File 1431 bytes August 20 2025 15:07:51.
swab.h File 6921 bytes August 20 2025 15:07:52.
switchtec_ioctl.h File 5262 bytes August 20 2025 15:07:50.
sync_file.h File 2883 bytes August 20 2025 15:07:53.
synclink.h File 8985 bytes August 20 2025 15:07:52.
sysctl.h File 25842 bytes August 20 2025 15:07:51.
sysinfo.h File 1049 bytes August 20 2025 15:07:50.
target_core_user.h File 4633 bytes August 20 2025 15:07:53.
taskstats.h File 7180 bytes August 20 2025 15:07:53.
tcp.h File 9920 bytes August 20 2025 15:07:51.
tcp_metrics.h File 1549 bytes August 20 2025 15:07:52.
tdx-guest.h File 1305 bytes August 20 2025 15:07:52.
tee.h File 13165 bytes August 20 2025 15:07:52.
termios.h File 506 bytes August 20 2025 15:07:52.
thermal.h File 3309 bytes August 20 2025 15:07:50.
time.h File 1748 bytes August 20 2025 15:07:50.
time_types.h File 1175 bytes August 20 2025 15:07:53.
timerfd.h File 936 bytes August 20 2025 15:07:50.
times.h File 278 bytes August 20 2025 15:07:51.
timex.h File 6403 bytes August 20 2025 15:07:53.
tiocl.h File 1729 bytes August 20 2025 15:07:49.
tipc.h File 8825 bytes August 20 2025 15:07:51.
tipc_config.h File 14708 bytes August 20 2025 15:07:52.
tipc_netlink.h File 9395 bytes August 20 2025 15:07:52.
tipc_sockets_diag.h File 468 bytes August 20 2025 15:07:50.
tls.h File 4288 bytes August 20 2025 15:07:52.
toshiba.h File 1930 bytes August 20 2025 15:07:50.
tty.h File 1585 bytes August 20 2025 15:07:52.
tty_flags.h File 4527 bytes August 20 2025 15:07:52.
types.h File 1476 bytes August 20 2025 15:07:53.
udf_fs_i.h File 697 bytes August 20 2025 15:07:51.
udp.h File 1661 bytes August 20 2025 15:07:51.
uhid.h File 4648 bytes August 20 2025 15:07:51.
uinput.h File 9261 bytes August 20 2025 15:07:52.
uio.h File 732 bytes August 20 2025 15:07:50.
uleds.h File 798 bytes August 20 2025 15:07:50.
ultrasound.h File 4562 bytes August 20 2025 15:07:53.
un.h File 384 bytes August 20 2025 15:07:52.
unistd.h File 220 bytes August 20 2025 15:07:50.
unix_diag.h File 1253 bytes August 20 2025 15:07:51.
usbdevice_fs.h File 8317 bytes August 20 2025 15:07:52.
usbip.h File 640 bytes August 20 2025 15:07:50.
userfaultfd.h File 7774 bytes August 20 2025 15:07:52.
userio.h File 1516 bytes August 20 2025 15:07:52.
utime.h File 215 bytes August 20 2025 15:07:50.
utsname.h File 669 bytes August 20 2025 15:07:53.
uuid.h File 1356 bytes August 20 2025 15:07:50.
uvcvideo.h File 2635 bytes August 20 2025 15:07:51.
v4l2-common.h File 4177 bytes August 20 2025 15:07:50.
v4l2-controls.h File 51777 bytes August 20 2025 15:07:50.
v4l2-dv-timings.h File 31562 bytes August 20 2025 15:07:52.
v4l2-mediabus.h File 5101 bytes August 20 2025 15:07:52.
v4l2-subdev.h File 6096 bytes August 20 2025 15:07:51.
vbox_err.h File 7257 bytes August 20 2025 15:07:52.
vbox_vmmdev_types.h File 8356 bytes August 20 2025 15:07:51.
vboxguest.h File 8729 bytes August 20 2025 15:07:53.
vdpa.h File 1421 bytes August 20 2025 15:07:51.
version.h File 430 bytes August 20 2025 15:09:08.
veth.h File 224 bytes August 20 2025 15:07:53.
vfio.h File 52223 bytes August 20 2025 15:07:51.
vfio_ccw.h File 1317 bytes August 20 2025 15:07:50.
vfio_zdev.h File 2542 bytes August 20 2025 15:07:50.
vhost.h File 6418 bytes August 20 2025 15:07:51.
vhost_types.h File 3997 bytes August 20 2025 15:07:51.
videodev2.h File 90741 bytes August 20 2025 15:07:50.
virtio_9p.h File 2041 bytes August 20 2025 15:07:50.
virtio_balloon.h File 5274 bytes August 20 2025 15:07:50.
virtio_blk.h File 6797 bytes August 20 2025 15:07:52.
virtio_bt.h File 772 bytes August 20 2025 15:07:51.
virtio_config.h File 4005 bytes August 20 2025 15:07:52.
virtio_console.h File 3136 bytes August 20 2025 15:07:50.
virtio_crypto.h File 13874 bytes August 20 2025 15:07:51.
virtio_fs.h File 572 bytes August 20 2025 15:07:52.
virtio_gpu.h File 11454 bytes August 20 2025 15:07:50.
virtio_ids.h File 3269 bytes August 20 2025 15:07:51.
virtio_input.h File 2506 bytes August 20 2025 15:07:51.
virtio_iommu.h File 3783 bytes August 20 2025 15:07:51.
virtio_mem.h File 7157 bytes August 20 2025 15:07:51.
virtio_mmio.h File 4969 bytes August 20 2025 15:07:50.
virtio_net.h File 10549 bytes August 20 2025 15:07:51.
virtio_pci.h File 7406 bytes August 20 2025 15:07:50.
virtio_ring.h File 7497 bytes August 20 2025 15:07:53.
virtio_rng.h File 265 bytes August 20 2025 15:07:53.
virtio_scsi.h File 6035 bytes August 20 2025 15:07:51.
virtio_snd.h File 9304 bytes August 20 2025 15:07:50.
virtio_types.h File 2153 bytes August 20 2025 15:07:51.
virtio_vsock.h File 3086 bytes August 20 2025 15:07:52.
vm_sockets.h File 6494 bytes August 20 2025 15:07:50.
vm_sockets_diag.h File 963 bytes August 20 2025 15:07:51.
vmcore.h File 431 bytes August 20 2025 15:07:52.
vsockmon.h File 1885 bytes August 20 2025 15:07:50.
vt.h File 3059 bytes August 20 2025 15:07:51.
vtpm_proxy.h File 1719 bytes August 20 2025 15:07:51.
wait.h File 682 bytes August 20 2025 15:07:52.
wanrouter.h File 453 bytes August 20 2025 15:07:52.
watchdog.h File 2335 bytes August 20 2025 15:07:52.
wimax.h File 8371 bytes August 20 2025 15:07:52.
wireless.h File 42703 bytes August 20 2025 15:07:49.
wmi.h File 1886 bytes August 20 2025 15:07:52.
x25.h File 3562 bytes August 20 2025 15:07:52.
xattr.h File 2860 bytes August 20 2025 15:07:53.
xdp_diag.h File 1468 bytes August 20 2025 15:07:52.
xfrm.h File 11994 bytes August 20 2025 15:07:53.
xilinx-v4l2-controls.h File 2976 bytes August 20 2025 15:07:52.
zorro.h File 3296 bytes August 20 2025 15:07:52.
zorro_ids.h File 29963 bytes August 20 2025 15:07:52.

Reading File: //usr/include/linux/if_link.h

/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
#ifndef _LINUX_IF_LINK_H
#define _LINUX_IF_LINK_H

#include <linux/types.h>
#include <linux/netlink.h>

/* This struct should be in sync with struct rtnl_link_stats64 */
struct rtnl_link_stats {
	__u32	rx_packets;		/* total packets received	*/
	__u32	tx_packets;		/* total packets transmitted	*/
	__u32	rx_bytes;		/* total bytes received 	*/
	__u32	tx_bytes;		/* total bytes transmitted	*/
	__u32	rx_errors;		/* bad packets received		*/
	__u32	tx_errors;		/* packet transmit problems	*/
	__u32	rx_dropped;		/* no space in linux buffers	*/
	__u32	tx_dropped;		/* no space available in linux	*/
	__u32	multicast;		/* multicast packets received	*/
	__u32	collisions;

	/* detailed rx_errors: */
	__u32	rx_length_errors;
	__u32	rx_over_errors;		/* receiver ring buff overflow	*/
	__u32	rx_crc_errors;		/* recved pkt with crc error	*/
	__u32	rx_frame_errors;	/* recv'd frame alignment error */
	__u32	rx_fifo_errors;		/* recv'r fifo overrun		*/
	__u32	rx_missed_errors;	/* receiver missed packet	*/

	/* detailed tx_errors */
	__u32	tx_aborted_errors;
	__u32	tx_carrier_errors;
	__u32	tx_fifo_errors;
	__u32	tx_heartbeat_errors;
	__u32	tx_window_errors;

	/* for cslip etc */
	__u32	rx_compressed;
	__u32	tx_compressed;

	__u32	rx_nohandler;		/* dropped, no handler found	*/

};

/**
 * struct rtnl_link_stats64 - The main device statistics structure.
 *
 * @rx_packets: Number of good packets received by the interface.
 *   For hardware interfaces counts all good packets received from the device
 *   by the host, including packets which host had to drop at various stages
 *   of processing (even in the driver).
 *
 * @tx_packets: Number of packets successfully transmitted.
 *   For hardware interfaces counts packets which host was able to successfully
 *   hand over to the device, which does not necessarily mean that packets
 *   had been successfully transmitted out of the device, only that device
 *   acknowledged it copied them out of host memory.
 *
 * @rx_bytes: Number of good received bytes, corresponding to @rx_packets.
 *
 *   For IEEE 802.3 devices should count the length of Ethernet Frames
 *   excluding the FCS.
 *
 * @tx_bytes: Number of good transmitted bytes, corresponding to @tx_packets.
 *
 *   For IEEE 802.3 devices should count the length of Ethernet Frames
 *   excluding the FCS.
 *
 * @rx_errors: Total number of bad packets received on this network device.
 *   This counter must include events counted by @rx_length_errors,
 *   @rx_crc_errors, @rx_frame_errors and other errors not otherwise
 *   counted.
 *
 * @tx_errors: Total number of transmit problems.
 *   This counter must include events counter by @tx_aborted_errors,
 *   @tx_carrier_errors, @tx_fifo_errors, @tx_heartbeat_errors,
 *   @tx_window_errors and other errors not otherwise counted.
 *
 * @rx_dropped: Number of packets received but not processed,
 *   e.g. due to lack of resources or unsupported protocol.
 *   For hardware interfaces this counter should not include packets
 *   dropped by the device which are counted separately in
 *   @rx_missed_errors (since procfs folds those two counters together).
 *
 * @tx_dropped: Number of packets dropped on their way to transmission,
 *   e.g. due to lack of resources.
 *
 * @multicast: Multicast packets received.
 *   For hardware interfaces this statistic is commonly calculated
 *   at the device level (unlike @rx_packets) and therefore may include
 *   packets which did not reach the host.
 *
 *   For IEEE 802.3 devices this counter may be equivalent to:
 *
 *    - 30.3.1.1.21 aMulticastFramesReceivedOK
 *
 * @collisions: Number of collisions during packet transmissions.
 *
 * @rx_length_errors: Number of packets dropped due to invalid length.
 *   Part of aggregate "frame" errors in `/proc/net/dev`.
 *
 *   For IEEE 802.3 devices this counter should be equivalent to a sum
 *   of the following attributes:
 *
 *    - 30.3.1.1.23 aInRangeLengthErrors
 *    - 30.3.1.1.24 aOutOfRangeLengthField
 *    - 30.3.1.1.25 aFrameTooLongErrors
 *
 * @rx_over_errors: Receiver FIFO overflow event counter.
 *
 *   Historically the count of overflow events. Such events may be
 *   reported in the receive descriptors or via interrupts, and may
 *   not correspond one-to-one with dropped packets.
 *
 *   The recommended interpretation for high speed interfaces is -
 *   number of packets dropped because they did not fit into buffers
 *   provided by the host, e.g. packets larger than MTU or next buffer
 *   in the ring was not available for a scatter transfer.
 *
 *   Part of aggregate "frame" errors in `/proc/net/dev`.
 *
 *   This statistics was historically used interchangeably with
 *   @rx_fifo_errors.
 *
 *   This statistic corresponds to hardware events and is not commonly used
 *   on software devices.
 *
 * @rx_crc_errors: Number of packets received with a CRC error.
 *   Part of aggregate "frame" errors in `/proc/net/dev`.
 *
 *   For IEEE 802.3 devices this counter must be equivalent to:
 *
 *    - 30.3.1.1.6 aFrameCheckSequenceErrors
 *
 * @rx_frame_errors: Receiver frame alignment errors.
 *   Part of aggregate "frame" errors in `/proc/net/dev`.
 *
 *   For IEEE 802.3 devices this counter should be equivalent to:
 *
 *    - 30.3.1.1.7 aAlignmentErrors
 *
 * @rx_fifo_errors: Receiver FIFO error counter.
 *
 *   Historically the count of overflow events. Those events may be
 *   reported in the receive descriptors or via interrupts, and may
 *   not correspond one-to-one with dropped packets.
 *
 *   This statistics was used interchangeably with @rx_over_errors.
 *   Not recommended for use in drivers for high speed interfaces.
 *
 *   This statistic is used on software devices, e.g. to count software
 *   packet queue overflow (can) or sequencing errors (GRE).
 *
 * @rx_missed_errors: Count of packets missed by the host.
 *   Folded into the "drop" counter in `/proc/net/dev`.
 *
 *   Counts number of packets dropped by the device due to lack
 *   of buffer space. This usually indicates that the host interface
 *   is slower than the network interface, or host is not keeping up
 *   with the receive packet rate.
 *
 *   This statistic corresponds to hardware events and is not used
 *   on software devices.
 *
 * @tx_aborted_errors:
 *   Part of aggregate "carrier" errors in `/proc/net/dev`.
 *   For IEEE 802.3 devices capable of half-duplex operation this counter
 *   must be equivalent to:
 *
 *    - 30.3.1.1.11 aFramesAbortedDueToXSColls
 *
 *   High speed interfaces may use this counter as a general device
 *   discard counter.
 *
 * @tx_carrier_errors: Number of frame transmission errors due to loss
 *   of carrier during transmission.
 *   Part of aggregate "carrier" errors in `/proc/net/dev`.
 *
 *   For IEEE 802.3 devices this counter must be equivalent to:
 *
 *    - 30.3.1.1.13 aCarrierSenseErrors
 *
 * @tx_fifo_errors: Number of frame transmission errors due to device
 *   FIFO underrun / underflow. This condition occurs when the device
 *   begins transmission of a frame but is unable to deliver the
 *   entire frame to the transmitter in time for transmission.
 *   Part of aggregate "carrier" errors in `/proc/net/dev`.
 *
 * @tx_heartbeat_errors: Number of Heartbeat / SQE Test errors for
 *   old half-duplex Ethernet.
 *   Part of aggregate "carrier" errors in `/proc/net/dev`.
 *
 *   For IEEE 802.3 devices possibly equivalent to:
 *
 *    - 30.3.2.1.4 aSQETestErrors
 *
 * @tx_window_errors: Number of frame transmission errors due
 *   to late collisions (for Ethernet - after the first 64B of transmission).
 *   Part of aggregate "carrier" errors in `/proc/net/dev`.
 *
 *   For IEEE 802.3 devices this counter must be equivalent to:
 *
 *    - 30.3.1.1.10 aLateCollisions
 *
 * @rx_compressed: Number of correctly received compressed packets.
 *   This counters is only meaningful for interfaces which support
 *   packet compression (e.g. CSLIP, PPP).
 *
 * @tx_compressed: Number of transmitted compressed packets.
 *   This counters is only meaningful for interfaces which support
 *   packet compression (e.g. CSLIP, PPP).
 *
 * @rx_nohandler: Number of packets received on the interface
 *   but dropped by the networking stack because the device is
 *   not designated to receive packets (e.g. backup link in a bond).
 */
struct rtnl_link_stats64 {
	__u64	rx_packets;
	__u64	tx_packets;
	__u64	rx_bytes;
	__u64	tx_bytes;
	__u64	rx_errors;
	__u64	tx_errors;
	__u64	rx_dropped;
	__u64	tx_dropped;
	__u64	multicast;
	__u64	collisions;

	/* detailed rx_errors: */
	__u64	rx_length_errors;
	__u64	rx_over_errors;
	__u64	rx_crc_errors;
	__u64	rx_frame_errors;
	__u64	rx_fifo_errors;
	__u64	rx_missed_errors;

	/* detailed tx_errors */
	__u64	tx_aborted_errors;
	__u64	tx_carrier_errors;
	__u64	tx_fifo_errors;
	__u64	tx_heartbeat_errors;
	__u64	tx_window_errors;

	/* for cslip etc */
	__u64	rx_compressed;
	__u64	tx_compressed;
	__u64	rx_nohandler;

};


/* The struct should be in sync with struct ifmap */
struct rtnl_link_ifmap {
	__u64	mem_start;
	__u64	mem_end;
	__u64	base_addr;
	__u16	irq;
	__u8	dma;
	__u8	port;
};

/*
 * IFLA_AF_SPEC
 *   Contains nested attributes for address family specific attributes.
 *   Each address family may create a attribute with the address family
 *   number as type and create its own attribute structure in it.
 *
 *   Example:
 *   [IFLA_AF_SPEC] = {
 *       [AF_INET] = {
 *           [IFLA_INET_CONF] = ...,
 *       },
 *       [AF_INET6] = {
 *           [IFLA_INET6_FLAGS] = ...,
 *           [IFLA_INET6_CONF] = ...,
 *       }
 *   }
 */

enum {
	IFLA_UNSPEC,
	IFLA_ADDRESS,
	IFLA_BROADCAST,
	IFLA_IFNAME,
	IFLA_MTU,
	IFLA_LINK,
	IFLA_QDISC,
	IFLA_STATS,
	IFLA_COST,
#define IFLA_COST IFLA_COST
	IFLA_PRIORITY,
#define IFLA_PRIORITY IFLA_PRIORITY
	IFLA_MASTER,
#define IFLA_MASTER IFLA_MASTER
	IFLA_WIRELESS,		/* Wireless Extension event - see wireless.h */
#define IFLA_WIRELESS IFLA_WIRELESS
	IFLA_PROTINFO,		/* Protocol specific information for a link */
#define IFLA_PROTINFO IFLA_PROTINFO
	IFLA_TXQLEN,
#define IFLA_TXQLEN IFLA_TXQLEN
	IFLA_MAP,
#define IFLA_MAP IFLA_MAP
	IFLA_WEIGHT,
#define IFLA_WEIGHT IFLA_WEIGHT
	IFLA_OPERSTATE,
	IFLA_LINKMODE,
	IFLA_LINKINFO,
#define IFLA_LINKINFO IFLA_LINKINFO
	IFLA_NET_NS_PID,
	IFLA_IFALIAS,
	IFLA_NUM_VF,		/* Number of VFs if device is SR-IOV PF */
	IFLA_VFINFO_LIST,
	IFLA_STATS64,
	IFLA_VF_PORTS,
	IFLA_PORT_SELF,
	IFLA_AF_SPEC,
	IFLA_GROUP,		/* Group the device belongs to */
	IFLA_NET_NS_FD,
	IFLA_EXT_MASK,		/* Extended info mask, VFs, etc */
	IFLA_PROMISCUITY,	/* Promiscuity count: > 0 means acts PROMISC */
#define IFLA_PROMISCUITY IFLA_PROMISCUITY
	IFLA_NUM_TX_QUEUES,
	IFLA_NUM_RX_QUEUES,
	IFLA_CARRIER,
	IFLA_PHYS_PORT_ID,
	IFLA_CARRIER_CHANGES,
	IFLA_PHYS_SWITCH_ID,
	IFLA_LINK_NETNSID,
	IFLA_PHYS_PORT_NAME,
	IFLA_PROTO_DOWN,
	IFLA_GSO_MAX_SEGS,
	IFLA_GSO_MAX_SIZE,
	IFLA_PAD,
	IFLA_XDP,
	IFLA_EVENT,
	IFLA_NEW_NETNSID,
	IFLA_IF_NETNSID,
	IFLA_TARGET_NETNSID = IFLA_IF_NETNSID, /* new alias */
	IFLA_CARRIER_UP_COUNT,
	IFLA_CARRIER_DOWN_COUNT,
	IFLA_NEW_IFINDEX,
	IFLA_MIN_MTU,
	IFLA_MAX_MTU,
	IFLA_PROP_LIST,
	IFLA_ALT_IFNAME, /* Alternative ifname */
	IFLA_PERM_ADDRESS,
	__RH_RESERVED_IFLA_PROTO_DOWN_REASON,

	/* device (sysfs) name as parent, used instead
	 * of IFLA_LINK where there's no parent netdev
	 */
	IFLA_PARENT_DEV_NAME,
	IFLA_PARENT_DEV_BUS_NAME,

	__IFLA_MAX
};


#define IFLA_MAX (__IFLA_MAX - 1)

/* backwards compatibility for userspace */
#define IFLA_RTA(r)  ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct ifinfomsg))))
#define IFLA_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct ifinfomsg))

enum {
	IFLA_INET_UNSPEC,
	IFLA_INET_CONF,
	__IFLA_INET_MAX,
};

#define IFLA_INET_MAX (__IFLA_INET_MAX - 1)

/* ifi_flags.

   IFF_* flags.

   The only change is:
   IFF_LOOPBACK, IFF_BROADCAST and IFF_POINTOPOINT are
   more not changeable by user. They describe link media
   characteristics and set by device driver.

   Comments:
   - Combination IFF_BROADCAST|IFF_POINTOPOINT is invalid
   - If neither of these three flags are set;
     the interface is NBMA.

   - IFF_MULTICAST does not mean anything special:
   multicasts can be used on all not-NBMA links.
   IFF_MULTICAST means that this media uses special encapsulation
   for multicast frames. Apparently, all IFF_POINTOPOINT and
   IFF_BROADCAST devices are able to use multicasts too.
 */

/* IFLA_LINK.
   For usual devices it is equal ifi_index.
   If it is a "virtual interface" (f.e. tunnel), ifi_link
   can point to real physical interface (f.e. for bandwidth calculations),
   or maybe 0, what means, that real media is unknown (usual
   for IPIP tunnels, when route to endpoint is allowed to change)
 */

/* Subtype attributes for IFLA_PROTINFO */
enum {
	IFLA_INET6_UNSPEC,
	IFLA_INET6_FLAGS,	/* link flags			*/
	IFLA_INET6_CONF,	/* sysctl parameters		*/
	IFLA_INET6_STATS,	/* statistics			*/
	IFLA_INET6_MCAST,	/* MC things. What of them?	*/
	IFLA_INET6_CACHEINFO,	/* time values and max reasm size */
	IFLA_INET6_ICMP6STATS,	/* statistics (icmpv6)		*/
	IFLA_INET6_TOKEN,	/* device token			*/
	IFLA_INET6_ADDR_GEN_MODE, /* implicit address generator mode */
	__IFLA_INET6_MAX
};

#define IFLA_INET6_MAX	(__IFLA_INET6_MAX - 1)

enum in6_addr_gen_mode {
	IN6_ADDR_GEN_MODE_EUI64,
	IN6_ADDR_GEN_MODE_NONE,
	IN6_ADDR_GEN_MODE_STABLE_PRIVACY,
	IN6_ADDR_GEN_MODE_RANDOM,
};

/* Bridge section */

enum {
	IFLA_BR_UNSPEC,
	IFLA_BR_FORWARD_DELAY,
	IFLA_BR_HELLO_TIME,
	IFLA_BR_MAX_AGE,
	IFLA_BR_AGEING_TIME,
	IFLA_BR_STP_STATE,
	IFLA_BR_PRIORITY,
	IFLA_BR_VLAN_FILTERING,
	IFLA_BR_VLAN_PROTOCOL,
	IFLA_BR_GROUP_FWD_MASK,
	IFLA_BR_ROOT_ID,
	IFLA_BR_BRIDGE_ID,
	IFLA_BR_ROOT_PORT,
	IFLA_BR_ROOT_PATH_COST,
	IFLA_BR_TOPOLOGY_CHANGE,
	IFLA_BR_TOPOLOGY_CHANGE_DETECTED,
	IFLA_BR_HELLO_TIMER,
	IFLA_BR_TCN_TIMER,
	IFLA_BR_TOPOLOGY_CHANGE_TIMER,
	IFLA_BR_GC_TIMER,
	IFLA_BR_GROUP_ADDR,
	IFLA_BR_FDB_FLUSH,
	IFLA_BR_MCAST_ROUTER,
	IFLA_BR_MCAST_SNOOPING,
	IFLA_BR_MCAST_QUERY_USE_IFADDR,
	IFLA_BR_MCAST_QUERIER,
	IFLA_BR_MCAST_HASH_ELASTICITY,
	IFLA_BR_MCAST_HASH_MAX,
	IFLA_BR_MCAST_LAST_MEMBER_CNT,
	IFLA_BR_MCAST_STARTUP_QUERY_CNT,
	IFLA_BR_MCAST_LAST_MEMBER_INTVL,
	IFLA_BR_MCAST_MEMBERSHIP_INTVL,
	IFLA_BR_MCAST_QUERIER_INTVL,
	IFLA_BR_MCAST_QUERY_INTVL,
	IFLA_BR_MCAST_QUERY_RESPONSE_INTVL,
	IFLA_BR_MCAST_STARTUP_QUERY_INTVL,
	IFLA_BR_NF_CALL_IPTABLES,
	IFLA_BR_NF_CALL_IP6TABLES,
	IFLA_BR_NF_CALL_ARPTABLES,
	IFLA_BR_VLAN_DEFAULT_PVID,
	IFLA_BR_PAD,
	IFLA_BR_VLAN_STATS_ENABLED,
	IFLA_BR_MCAST_STATS_ENABLED,
	IFLA_BR_MCAST_IGMP_VERSION,
	IFLA_BR_MCAST_MLD_VERSION,
	IFLA_BR_VLAN_STATS_PER_PORT,
	IFLA_BR_MULTI_BOOLOPT,
	IFLA_BR_MCAST_QUERIER_STATE,
	__IFLA_BR_MAX,
};

#define IFLA_BR_MAX	(__IFLA_BR_MAX - 1)

struct ifla_bridge_id {
	__u8	prio[2];
	__u8	addr[6]; /* ETH_ALEN */
};

enum {
	BRIDGE_MODE_UNSPEC,
	BRIDGE_MODE_HAIRPIN,
};

enum {
	IFLA_BRPORT_UNSPEC,
	IFLA_BRPORT_STATE,	/* Spanning tree state     */
	IFLA_BRPORT_PRIORITY,	/* "             priority  */
	IFLA_BRPORT_COST,	/* "             cost      */
	IFLA_BRPORT_MODE,	/* mode (hairpin)          */
	IFLA_BRPORT_GUARD,	/* bpdu guard              */
	IFLA_BRPORT_PROTECT,	/* root port protection    */
	IFLA_BRPORT_FAST_LEAVE,	/* multicast fast leave    */
	IFLA_BRPORT_LEARNING,	/* mac learning */
	IFLA_BRPORT_UNICAST_FLOOD, /* flood unicast traffic */
	IFLA_BRPORT_PROXYARP,	/* proxy ARP */
	IFLA_BRPORT_LEARNING_SYNC, /* mac learning sync from device */
	IFLA_BRPORT_PROXYARP_WIFI, /* proxy ARP for Wi-Fi */
	IFLA_BRPORT_ROOT_ID,	/* designated root */
	IFLA_BRPORT_BRIDGE_ID,	/* designated bridge */
	IFLA_BRPORT_DESIGNATED_PORT,
	IFLA_BRPORT_DESIGNATED_COST,
	IFLA_BRPORT_ID,
	IFLA_BRPORT_NO,
	IFLA_BRPORT_TOPOLOGY_CHANGE_ACK,
	IFLA_BRPORT_CONFIG_PENDING,
	IFLA_BRPORT_MESSAGE_AGE_TIMER,
	IFLA_BRPORT_FORWARD_DELAY_TIMER,
	IFLA_BRPORT_HOLD_TIMER,
	IFLA_BRPORT_FLUSH,
	IFLA_BRPORT_MULTICAST_ROUTER,
	IFLA_BRPORT_PAD,
	IFLA_BRPORT_MCAST_FLOOD,
	IFLA_BRPORT_MCAST_TO_UCAST,
	IFLA_BRPORT_VLAN_TUNNEL,
	IFLA_BRPORT_BCAST_FLOOD,
	IFLA_BRPORT_GROUP_FWD_MASK,
	IFLA_BRPORT_NEIGH_SUPPRESS,
	IFLA_BRPORT_ISOLATED,
	IFLA_BRPORT_BACKUP_PORT,
	IFLA_BRPORT_MRP_RING_OPEN,
	IFLA_BRPORT_MRP_IN_OPEN,
	IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT,
	IFLA_BRPORT_MCAST_EHT_HOSTS_CNT,
	IFLA_BRPORT_LOCKED,
	__IFLA_BRPORT_MAX
};
#define IFLA_BRPORT_MAX (__IFLA_BRPORT_MAX - 1)

struct ifla_cacheinfo {
	__u32	max_reasm_len;
	__u32	tstamp;		/* ipv6InterfaceTable updated timestamp */
	__u32	reachable_time;
	__u32	retrans_time;
};

enum {
	IFLA_INFO_UNSPEC,
	IFLA_INFO_KIND,
	IFLA_INFO_DATA,
	IFLA_INFO_XSTATS,
	IFLA_INFO_SLAVE_KIND,
	IFLA_INFO_SLAVE_DATA,
	__IFLA_INFO_MAX,
};

#define IFLA_INFO_MAX	(__IFLA_INFO_MAX - 1)

/* VLAN section */

enum {
	IFLA_VLAN_UNSPEC,
	IFLA_VLAN_ID,
	IFLA_VLAN_FLAGS,
	IFLA_VLAN_EGRESS_QOS,
	IFLA_VLAN_INGRESS_QOS,
	IFLA_VLAN_PROTOCOL,
	__IFLA_VLAN_MAX,
};

#define IFLA_VLAN_MAX	(__IFLA_VLAN_MAX - 1)

struct ifla_vlan_flags {
	__u32	flags;
	__u32	mask;
};

enum {
	IFLA_VLAN_QOS_UNSPEC,
	IFLA_VLAN_QOS_MAPPING,
	__IFLA_VLAN_QOS_MAX
};

#define IFLA_VLAN_QOS_MAX	(__IFLA_VLAN_QOS_MAX - 1)

struct ifla_vlan_qos_mapping {
	__u32 from;
	__u32 to;
};

/* MACVLAN section */
enum {
	IFLA_MACVLAN_UNSPEC,
	IFLA_MACVLAN_MODE,
	IFLA_MACVLAN_FLAGS,
	IFLA_MACVLAN_MACADDR_MODE,
	IFLA_MACVLAN_MACADDR,
	IFLA_MACVLAN_MACADDR_DATA,
	IFLA_MACVLAN_MACADDR_COUNT,
	IFLA_MACVLAN_BC_QUEUE_LEN,
	IFLA_MACVLAN_BC_QUEUE_LEN_USED,
	IFLA_MACVLAN_BC_CUTOFF,
	__IFLA_MACVLAN_MAX,
};

#define IFLA_MACVLAN_MAX (__IFLA_MACVLAN_MAX - 1)

enum macvlan_mode {
	MACVLAN_MODE_PRIVATE = 1, /* don't talk to other macvlans */
	MACVLAN_MODE_VEPA    = 2, /* talk to other ports through ext bridge */
	MACVLAN_MODE_BRIDGE  = 4, /* talk to bridge ports directly */
	MACVLAN_MODE_PASSTHRU = 8,/* take over the underlying device */
	MACVLAN_MODE_SOURCE  = 16,/* use source MAC address list to assign */
};

enum macvlan_macaddr_mode {
	MACVLAN_MACADDR_ADD,
	MACVLAN_MACADDR_DEL,
	MACVLAN_MACADDR_FLUSH,
	MACVLAN_MACADDR_SET,
};

#define MACVLAN_FLAG_NOPROMISC	1

/* VRF section */
enum {
	IFLA_VRF_UNSPEC,
	IFLA_VRF_TABLE,
	__IFLA_VRF_MAX
};

#define IFLA_VRF_MAX (__IFLA_VRF_MAX - 1)

enum {
	IFLA_VRF_PORT_UNSPEC,
	IFLA_VRF_PORT_TABLE,
	__IFLA_VRF_PORT_MAX
};

#define IFLA_VRF_PORT_MAX (__IFLA_VRF_PORT_MAX - 1)

/* MACSEC section */
enum {
	IFLA_MACSEC_UNSPEC,
	IFLA_MACSEC_SCI,
	IFLA_MACSEC_PORT,
	IFLA_MACSEC_ICV_LEN,
	IFLA_MACSEC_CIPHER_SUITE,
	IFLA_MACSEC_WINDOW,
	IFLA_MACSEC_ENCODING_SA,
	IFLA_MACSEC_ENCRYPT,
	IFLA_MACSEC_PROTECT,
	IFLA_MACSEC_INC_SCI,
	IFLA_MACSEC_ES,
	IFLA_MACSEC_SCB,
	IFLA_MACSEC_REPLAY_PROTECT,
	IFLA_MACSEC_VALIDATION,
	IFLA_MACSEC_PAD,
	__IFLA_MACSEC_MAX,
};

#define IFLA_MACSEC_MAX (__IFLA_MACSEC_MAX - 1)

/* XFRM section */
enum {
	IFLA_XFRM_UNSPEC,
	IFLA_XFRM_LINK,
	IFLA_XFRM_IF_ID,
	__IFLA_XFRM_MAX
};

#define IFLA_XFRM_MAX (__IFLA_XFRM_MAX - 1)

enum macsec_validation_type {
	MACSEC_VALIDATE_DISABLED = 0,
	MACSEC_VALIDATE_CHECK = 1,
	MACSEC_VALIDATE_STRICT = 2,
	__MACSEC_VALIDATE_END,
	MACSEC_VALIDATE_MAX = __MACSEC_VALIDATE_END - 1,
};

/* IPVLAN section */
enum {
	IFLA_IPVLAN_UNSPEC,
	IFLA_IPVLAN_MODE,
	IFLA_IPVLAN_FLAGS,
	__IFLA_IPVLAN_MAX
};

#define IFLA_IPVLAN_MAX (__IFLA_IPVLAN_MAX - 1)

enum ipvlan_mode {
	IPVLAN_MODE_L2 = 0,
	IPVLAN_MODE_L3,
	IPVLAN_MODE_L3S,
	IPVLAN_MODE_MAX
};

#define IPVLAN_F_PRIVATE	0x01
#define IPVLAN_F_VEPA		0x02

/* VXLAN section */
enum {
	IFLA_VXLAN_UNSPEC,
	IFLA_VXLAN_ID,
	IFLA_VXLAN_GROUP,	/* group or remote address */
	IFLA_VXLAN_LINK,
	IFLA_VXLAN_LOCAL,
	IFLA_VXLAN_TTL,
	IFLA_VXLAN_TOS,
	IFLA_VXLAN_LEARNING,
	IFLA_VXLAN_AGEING,
	IFLA_VXLAN_LIMIT,
	IFLA_VXLAN_PORT_RANGE,	/* source port */
	IFLA_VXLAN_PROXY,
	IFLA_VXLAN_RSC,
	IFLA_VXLAN_L2MISS,
	IFLA_VXLAN_L3MISS,
	IFLA_VXLAN_PORT,	/* destination port */
	IFLA_VXLAN_GROUP6,
	IFLA_VXLAN_LOCAL6,
	IFLA_VXLAN_UDP_CSUM,
	IFLA_VXLAN_UDP_ZERO_CSUM6_TX,
	IFLA_VXLAN_UDP_ZERO_CSUM6_RX,
	IFLA_VXLAN_REMCSUM_TX,
	IFLA_VXLAN_REMCSUM_RX,
	IFLA_VXLAN_GBP,
	IFLA_VXLAN_REMCSUM_NOPARTIAL,
	IFLA_VXLAN_COLLECT_METADATA,
	IFLA_VXLAN_LABEL,
	IFLA_VXLAN_GPE,
	IFLA_VXLAN_TTL_INHERIT,
	IFLA_VXLAN_DF,
	__IFLA_VXLAN_MAX
};
#define IFLA_VXLAN_MAX	(__IFLA_VXLAN_MAX - 1)

struct ifla_vxlan_port_range {
	__be16	low;
	__be16	high;
};

enum ifla_vxlan_df {
	VXLAN_DF_UNSET = 0,
	VXLAN_DF_SET,
	VXLAN_DF_INHERIT,
	__VXLAN_DF_END,
	VXLAN_DF_MAX = __VXLAN_DF_END - 1,
};

/* GENEVE section */
enum {
	IFLA_GENEVE_UNSPEC,
	IFLA_GENEVE_ID,
	IFLA_GENEVE_REMOTE,
	IFLA_GENEVE_TTL,
	IFLA_GENEVE_TOS,
	IFLA_GENEVE_PORT,	/* destination port */
	IFLA_GENEVE_COLLECT_METADATA,
	IFLA_GENEVE_REMOTE6,
	IFLA_GENEVE_UDP_CSUM,
	IFLA_GENEVE_UDP_ZERO_CSUM6_TX,
	IFLA_GENEVE_UDP_ZERO_CSUM6_RX,
	IFLA_GENEVE_LABEL,
	IFLA_GENEVE_TTL_INHERIT,
	IFLA_GENEVE_DF,
	__IFLA_GENEVE_MAX
};
#define IFLA_GENEVE_MAX	(__IFLA_GENEVE_MAX - 1)

enum ifla_geneve_df {
	GENEVE_DF_UNSET = 0,
	GENEVE_DF_SET,
	GENEVE_DF_INHERIT,
	__GENEVE_DF_END,
	GENEVE_DF_MAX = __GENEVE_DF_END - 1,
};

/* Bareudp section  */
enum {
	IFLA_BAREUDP_UNSPEC,
	IFLA_BAREUDP_PORT,
	IFLA_BAREUDP_ETHERTYPE,
	IFLA_BAREUDP_SRCPORT_MIN,
	IFLA_BAREUDP_MULTIPROTO_MODE,
	__IFLA_BAREUDP_MAX
};

#define IFLA_BAREUDP_MAX (__IFLA_BAREUDP_MAX - 1)

/* PPP section */
enum {
	IFLA_PPP_UNSPEC,
	IFLA_PPP_DEV_FD,
	__IFLA_PPP_MAX
};
#define IFLA_PPP_MAX (__IFLA_PPP_MAX - 1)

/* GTP section */

enum ifla_gtp_role {
	GTP_ROLE_GGSN = 0,
	GTP_ROLE_SGSN,
};

enum {
	IFLA_GTP_UNSPEC,
	IFLA_GTP_FD0,
	IFLA_GTP_FD1,
	IFLA_GTP_PDP_HASHSIZE,
	IFLA_GTP_ROLE,
	__IFLA_GTP_MAX,
};
#define IFLA_GTP_MAX (__IFLA_GTP_MAX - 1)

/* Bonding section */

enum {
	IFLA_BOND_UNSPEC,
	IFLA_BOND_MODE,
	IFLA_BOND_ACTIVE_SLAVE,
	IFLA_BOND_MIIMON,
	IFLA_BOND_UPDELAY,
	IFLA_BOND_DOWNDELAY,
	IFLA_BOND_USE_CARRIER,
	IFLA_BOND_ARP_INTERVAL,
	IFLA_BOND_ARP_IP_TARGET,
	IFLA_BOND_ARP_VALIDATE,
	IFLA_BOND_ARP_ALL_TARGETS,
	IFLA_BOND_PRIMARY,
	IFLA_BOND_PRIMARY_RESELECT,
	IFLA_BOND_FAIL_OVER_MAC,
	IFLA_BOND_XMIT_HASH_POLICY,
	IFLA_BOND_RESEND_IGMP,
	IFLA_BOND_NUM_PEER_NOTIF,
	IFLA_BOND_ALL_SLAVES_ACTIVE,
	IFLA_BOND_MIN_LINKS,
	IFLA_BOND_LP_INTERVAL,
	IFLA_BOND_PACKETS_PER_SLAVE,
	IFLA_BOND_AD_LACP_RATE,
	IFLA_BOND_AD_SELECT,
	IFLA_BOND_AD_INFO,
	IFLA_BOND_AD_ACTOR_SYS_PRIO,
	IFLA_BOND_AD_USER_PORT_KEY,
	IFLA_BOND_AD_ACTOR_SYSTEM,
	IFLA_BOND_TLB_DYNAMIC_LB,
	IFLA_BOND_PEER_NOTIF_DELAY,
	IFLA_BOND_AD_LACP_ACTIVE,
	__IFLA_BOND_MAX,
};

#define IFLA_BOND_MAX	(__IFLA_BOND_MAX - 1)

enum {
	IFLA_BOND_AD_INFO_UNSPEC,
	IFLA_BOND_AD_INFO_AGGREGATOR,
	IFLA_BOND_AD_INFO_NUM_PORTS,
	IFLA_BOND_AD_INFO_ACTOR_KEY,
	IFLA_BOND_AD_INFO_PARTNER_KEY,
	IFLA_BOND_AD_INFO_PARTNER_MAC,
	__IFLA_BOND_AD_INFO_MAX,
};

#define IFLA_BOND_AD_INFO_MAX	(__IFLA_BOND_AD_INFO_MAX - 1)

enum {
	IFLA_BOND_SLAVE_UNSPEC,
	IFLA_BOND_SLAVE_STATE,
	IFLA_BOND_SLAVE_MII_STATUS,
	IFLA_BOND_SLAVE_LINK_FAILURE_COUNT,
	IFLA_BOND_SLAVE_PERM_HWADDR,
	IFLA_BOND_SLAVE_QUEUE_ID,
	IFLA_BOND_SLAVE_AD_AGGREGATOR_ID,
	IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE,
	IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE,
	__IFLA_BOND_SLAVE_MAX,
};

#define IFLA_BOND_SLAVE_MAX	(__IFLA_BOND_SLAVE_MAX - 1)

/* SR-IOV virtual function management section */

enum {
	IFLA_VF_INFO_UNSPEC,
	IFLA_VF_INFO,
	__IFLA_VF_INFO_MAX,
};

#define IFLA_VF_INFO_MAX (__IFLA_VF_INFO_MAX - 1)

enum {
	IFLA_VF_UNSPEC,
	IFLA_VF_MAC,		/* Hardware queue specific attributes */
	IFLA_VF_VLAN,		/* VLAN ID and QoS */
	IFLA_VF_TX_RATE,	/* Max TX Bandwidth Allocation */
	IFLA_VF_SPOOFCHK,	/* Spoof Checking on/off switch */
	IFLA_VF_LINK_STATE,	/* link state enable/disable/auto switch */
	IFLA_VF_RATE,		/* Min and Max TX Bandwidth Allocation */
	IFLA_VF_RSS_QUERY_EN,	/* RSS Redirection Table and Hash Key query
				 * on/off switch
				 */
	IFLA_VF_STATS,		/* network device statistics */
	IFLA_VF_TRUST,		/* Trust VF */
	IFLA_VF_IB_NODE_GUID,	/* VF Infiniband node GUID */
	IFLA_VF_IB_PORT_GUID,	/* VF Infiniband port GUID */
	IFLA_VF_VLAN_LIST,	/* nested list of vlans, option for QinQ */
	IFLA_VF_BROADCAST,	/* VF broadcast */
	__IFLA_VF_MAX,
};

#define IFLA_VF_MAX (__IFLA_VF_MAX - 1)

struct ifla_vf_mac {
	__u32 vf;
	__u8 mac[32]; /* MAX_ADDR_LEN */
};

struct ifla_vf_broadcast {
	__u8 broadcast[32];
};

struct ifla_vf_vlan {
	__u32 vf;
	__u32 vlan; /* 0 - 4095, 0 disables VLAN filter */
	__u32 qos;
};

enum {
	IFLA_VF_VLAN_INFO_UNSPEC,
	IFLA_VF_VLAN_INFO,	/* VLAN ID, QoS and VLAN protocol */
	__IFLA_VF_VLAN_INFO_MAX,
};

#define IFLA_VF_VLAN_INFO_MAX (__IFLA_VF_VLAN_INFO_MAX - 1)
#define MAX_VLAN_LIST_LEN 1

struct ifla_vf_vlan_info {
	__u32 vf;
	__u32 vlan; /* 0 - 4095, 0 disables VLAN filter */
	__u32 qos;
	__be16 vlan_proto; /* VLAN protocol either 802.1Q or 802.1ad */
};

struct ifla_vf_tx_rate {
	__u32 vf;
	__u32 rate; /* Max TX bandwidth in Mbps, 0 disables throttling */
};

struct ifla_vf_rate {
	__u32 vf;
	__u32 min_tx_rate; /* Min Bandwidth in Mbps */
	__u32 max_tx_rate; /* Max Bandwidth in Mbps */
};

struct ifla_vf_spoofchk {
	__u32 vf;
	__u32 setting;
};

struct ifla_vf_guid {
	__u32 vf;
	__u64 guid;
};

enum {
	IFLA_VF_LINK_STATE_AUTO,	/* link state of the uplink */
	IFLA_VF_LINK_STATE_ENABLE,	/* link always up */
	IFLA_VF_LINK_STATE_DISABLE,	/* link always down */
	__IFLA_VF_LINK_STATE_MAX,
};

struct ifla_vf_link_state {
	__u32 vf;
	__u32 link_state;
};

struct ifla_vf_rss_query_en {
	__u32 vf;
	__u32 setting;
};

enum {
	IFLA_VF_STATS_RX_PACKETS,
	IFLA_VF_STATS_TX_PACKETS,
	IFLA_VF_STATS_RX_BYTES,
	IFLA_VF_STATS_TX_BYTES,
	IFLA_VF_STATS_BROADCAST,
	IFLA_VF_STATS_MULTICAST,
	IFLA_VF_STATS_PAD,
	IFLA_VF_STATS_RX_DROPPED,
	IFLA_VF_STATS_TX_DROPPED,
	__IFLA_VF_STATS_MAX,
};

#define IFLA_VF_STATS_MAX (__IFLA_VF_STATS_MAX - 1)

struct ifla_vf_trust {
	__u32 vf;
	__u32 setting;
};

/* VF ports management section
 *
 *	Nested layout of set/get msg is:
 *
 *		[IFLA_NUM_VF]
 *		[IFLA_VF_PORTS]
 *			[IFLA_VF_PORT]
 *				[IFLA_PORT_*], ...
 *			[IFLA_VF_PORT]
 *				[IFLA_PORT_*], ...
 *			...
 *		[IFLA_PORT_SELF]
 *			[IFLA_PORT_*], ...
 */

enum {
	IFLA_VF_PORT_UNSPEC,
	IFLA_VF_PORT,			/* nest */
	__IFLA_VF_PORT_MAX,
};

#define IFLA_VF_PORT_MAX (__IFLA_VF_PORT_MAX - 1)

enum {
	IFLA_PORT_UNSPEC,
	IFLA_PORT_VF,			/* __u32 */
	IFLA_PORT_PROFILE,		/* string */
	IFLA_PORT_VSI_TYPE,		/* 802.1Qbg (pre-)standard VDP */
	IFLA_PORT_INSTANCE_UUID,	/* binary UUID */
	IFLA_PORT_HOST_UUID,		/* binary UUID */
	IFLA_PORT_REQUEST,		/* __u8 */
	IFLA_PORT_RESPONSE,		/* __u16, output only */
	__IFLA_PORT_MAX,
};

#define IFLA_PORT_MAX (__IFLA_PORT_MAX - 1)

#define PORT_PROFILE_MAX	40
#define PORT_UUID_MAX		16
#define PORT_SELF_VF		-1

enum {
	PORT_REQUEST_PREASSOCIATE = 0,
	PORT_REQUEST_PREASSOCIATE_RR,
	PORT_REQUEST_ASSOCIATE,
	PORT_REQUEST_DISASSOCIATE,
};

enum {
	PORT_VDP_RESPONSE_SUCCESS = 0,
	PORT_VDP_RESPONSE_INVALID_FORMAT,
	PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES,
	PORT_VDP_RESPONSE_UNUSED_VTID,
	PORT_VDP_RESPONSE_VTID_VIOLATION,
	PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION,
	PORT_VDP_RESPONSE_OUT_OF_SYNC,
	/* 0x08-0xFF reserved for future VDP use */
	PORT_PROFILE_RESPONSE_SUCCESS = 0x100,
	PORT_PROFILE_RESPONSE_INPROGRESS,
	PORT_PROFILE_RESPONSE_INVALID,
	PORT_PROFILE_RESPONSE_BADSTATE,
	PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES,
	PORT_PROFILE_RESPONSE_ERROR,
};

struct ifla_port_vsi {
	__u8 vsi_mgr_id;
	__u8 vsi_type_id[3];
	__u8 vsi_type_version;
	__u8 pad[3];
};


/* IPoIB section */

enum {
	IFLA_IPOIB_UNSPEC,
	IFLA_IPOIB_PKEY,
	IFLA_IPOIB_MODE,
	IFLA_IPOIB_UMCAST,
	__IFLA_IPOIB_MAX
};

enum {
	IPOIB_MODE_DATAGRAM  = 0, /* using unreliable datagram QPs */
	IPOIB_MODE_CONNECTED = 1, /* using connected QPs */
};

#define IFLA_IPOIB_MAX (__IFLA_IPOIB_MAX - 1)


/* HSR section */

enum {
	IFLA_HSR_UNSPEC,
	IFLA_HSR_SLAVE1,
	IFLA_HSR_SLAVE2,
	IFLA_HSR_MULTICAST_SPEC,	/* Last byte of supervision addr */
	IFLA_HSR_SUPERVISION_ADDR,	/* Supervision frame multicast addr */
	IFLA_HSR_SEQ_NR,
	IFLA_HSR_VERSION,		/* HSR version */
	__IFLA_HSR_MAX,
};

#define IFLA_HSR_MAX (__IFLA_HSR_MAX - 1)

/* STATS section */

struct if_stats_msg {
	__u8  family;
	__u8  pad1;
	__u16 pad2;
	__u32 ifindex;
	__u32 filter_mask;
};

/* A stats attribute can be netdev specific or a global stat.
 * For netdev stats, lets use the prefix IFLA_STATS_LINK_*
 */
enum {
	IFLA_STATS_UNSPEC, /* also used as 64bit pad attribute */
	IFLA_STATS_LINK_64,
	IFLA_STATS_LINK_XSTATS,
	IFLA_STATS_LINK_XSTATS_SLAVE,
	IFLA_STATS_LINK_OFFLOAD_XSTATS,
	IFLA_STATS_AF_SPEC,
	__IFLA_STATS_MAX,
};

#define IFLA_STATS_MAX (__IFLA_STATS_MAX - 1)

#define IFLA_STATS_FILTER_BIT(ATTR)	(1 << (ATTR - 1))

/* These are embedded into IFLA_STATS_LINK_XSTATS:
 * [IFLA_STATS_LINK_XSTATS]
 * -> [LINK_XSTATS_TYPE_xxx]
 *    -> [rtnl link type specific attributes]
 */
enum {
	LINK_XSTATS_TYPE_UNSPEC,
	LINK_XSTATS_TYPE_BRIDGE,
	LINK_XSTATS_TYPE_BOND,
	__LINK_XSTATS_TYPE_MAX
};
#define LINK_XSTATS_TYPE_MAX (__LINK_XSTATS_TYPE_MAX - 1)

/* These are stats embedded into IFLA_STATS_LINK_OFFLOAD_XSTATS */
enum {
	IFLA_OFFLOAD_XSTATS_UNSPEC,
	IFLA_OFFLOAD_XSTATS_CPU_HIT, /* struct rtnl_link_stats64 */
	__IFLA_OFFLOAD_XSTATS_MAX
};
#define IFLA_OFFLOAD_XSTATS_MAX (__IFLA_OFFLOAD_XSTATS_MAX - 1)

/* XDP section */

#define XDP_FLAGS_UPDATE_IF_NOEXIST	(1U << 0)
#define XDP_FLAGS_SKB_MODE		(1U << 1)
#define XDP_FLAGS_DRV_MODE		(1U << 2)
#define XDP_FLAGS_HW_MODE		(1U << 3)
#define XDP_FLAGS_REPLACE		(1U << 4)
#define XDP_FLAGS_MODES			(XDP_FLAGS_SKB_MODE | \
					 XDP_FLAGS_DRV_MODE | \
					 XDP_FLAGS_HW_MODE)
#define XDP_FLAGS_MASK			(XDP_FLAGS_UPDATE_IF_NOEXIST | \
					 XDP_FLAGS_MODES | XDP_FLAGS_REPLACE)

/* These are stored into IFLA_XDP_ATTACHED on dump. */
enum {
	XDP_ATTACHED_NONE = 0,
	XDP_ATTACHED_DRV,
	XDP_ATTACHED_SKB,
	XDP_ATTACHED_HW,
	XDP_ATTACHED_MULTI,
};

enum {
	IFLA_XDP_UNSPEC,
	IFLA_XDP_FD,
	IFLA_XDP_ATTACHED,
	IFLA_XDP_FLAGS,
	IFLA_XDP_PROG_ID,
	IFLA_XDP_DRV_PROG_ID,
	IFLA_XDP_SKB_PROG_ID,
	IFLA_XDP_HW_PROG_ID,
	IFLA_XDP_EXPECTED_FD,
	__IFLA_XDP_MAX,
};

#define IFLA_XDP_MAX (__IFLA_XDP_MAX - 1)

enum {
	IFLA_EVENT_NONE,
	IFLA_EVENT_REBOOT,		/* internal reset / reboot */
	IFLA_EVENT_FEATURES,		/* change in offload features */
	IFLA_EVENT_BONDING_FAILOVER,	/* change in active slave */
	IFLA_EVENT_NOTIFY_PEERS,	/* re-sent grat. arp/ndisc */
	IFLA_EVENT_IGMP_RESEND,		/* re-sent IGMP JOIN */
	IFLA_EVENT_BONDING_OPTIONS,	/* change in bonding options */
};

/* tun section */

enum {
	IFLA_TUN_UNSPEC,
	IFLA_TUN_OWNER,
	IFLA_TUN_GROUP,
	IFLA_TUN_TYPE,
	IFLA_TUN_PI,
	IFLA_TUN_VNET_HDR,
	IFLA_TUN_PERSIST,
	IFLA_TUN_MULTI_QUEUE,
	IFLA_TUN_NUM_QUEUES,
	IFLA_TUN_NUM_DISABLED_QUEUES,
	__IFLA_TUN_MAX,
};

#define IFLA_TUN_MAX (__IFLA_TUN_MAX - 1)

/* rmnet section */

#define RMNET_FLAGS_INGRESS_DEAGGREGATION         (1U << 0)
#define RMNET_FLAGS_INGRESS_MAP_COMMANDS          (1U << 1)
#define RMNET_FLAGS_INGRESS_MAP_CKSUMV4           (1U << 2)
#define RMNET_FLAGS_EGRESS_MAP_CKSUMV4            (1U << 3)

enum {
	IFLA_RMNET_UNSPEC,
	IFLA_RMNET_MUX_ID,
	IFLA_RMNET_FLAGS,
	__IFLA_RMNET_MAX,
};

#define IFLA_RMNET_MAX	(__IFLA_RMNET_MAX - 1)

struct ifla_rmnet_flags {
	__u32	flags;
	__u32	mask;
};

#endif /* _LINUX_IF_LINK_H */

SILENT KILLER Tool