Hackfut Security File Manager
Current Path:
/usr/include/linux
usr
/
include
/
linux
/
📁
..
📄
a.out.h
(7.15 KB)
📄
acct.h
(3.41 KB)
📄
adb.h
(1.05 KB)
📄
adfs_fs.h
(856 B)
📄
affs_hardblocks.h
(1.45 KB)
📄
agpgart.h
(3.83 KB)
📄
aio_abi.h
(3.04 KB)
📄
apm_bios.h
(3.46 KB)
📄
arcfb.h
(150 B)
📄
atalk.h
(927 B)
📄
atm.h
(7.62 KB)
📄
atm_eni.h
(585 B)
📄
atm_he.h
(343 B)
📄
atm_idt77105.h
(892 B)
📄
atm_nicstar.h
(1.19 KB)
📄
atm_tcp.h
(1.5 KB)
📄
atm_zatm.h
(1.57 KB)
📄
atmapi.h
(889 B)
📄
atmarp.h
(1.2 KB)
📄
atmbr2684.h
(3.13 KB)
📄
atmclip.h
(513 B)
📄
atmdev.h
(7.42 KB)
📄
atmioc.h
(1.55 KB)
📄
atmlec.h
(2.5 KB)
📄
atmmpc.h
(4.07 KB)
📄
atmppp.h
(576 B)
📄
atmsap.h
(4.79 KB)
📄
atmsvc.h
(1.75 KB)
📄
audit.h
(15.51 KB)
📄
auto_fs.h
(2.29 KB)
📄
auto_fs4.h
(4.03 KB)
📄
auxvec.h
(1.35 KB)
📄
ax25.h
(2.69 KB)
📄
b1lli.h
(1.62 KB)
📄
baycom.h
(820 B)
📄
bfs_fs.h
(1.79 KB)
📄
binfmts.h
(565 B)
📄
blk_types.h
(6.94 KB)
📄
blkpg.h
(1.56 KB)
📄
blktrace_api.h
(4.37 KB)
📄
bpqether.h
(952 B)
📄
bsg.h
(2.33 KB)
📁
byteorder
📁
can
📄
can.h
(3.25 KB)
📄
capability.h
(10.34 KB)
📄
capi.h
(2.99 KB)
📄
cciss_ioctl.h
(5.69 KB)
📄
cdk.h
(12.47 KB)
📄
cdrom.h
(27.47 KB)
📄
cgroupstats.h
(2.1 KB)
📄
chio.h
(5.16 KB)
📄
cm4000_cs.h
(1.68 KB)
📄
cn_proc.h
(2.65 KB)
📄
coda.h
(17.08 KB)
📄
coda_psdev.h
(679 B)
📄
coff.h
(12.12 KB)
📄
comstats.h
(3.05 KB)
📄
connector.h
(2.08 KB)
📄
const.h
(682 B)
📄
cramfs_fs.h
(2.86 KB)
📄
cuda.h
(769 B)
📄
cyclades.h
(16.65 KB)
📄
cycx_cfm.h
(2.86 KB)
📄
dcbnl.h
(21.6 KB)
📄
dccp.h
(5.66 KB)
📄
dlm.h
(2.47 KB)
📄
dlm_device.h
(2.42 KB)
📄
dlm_netlink.h
(1.04 KB)
📄
dlm_plock.h
(806 B)
📄
dlmconstants.h
(4.9 KB)
📄
dm-ioctl.h
(10.42 KB)
📄
dm-log-userspace.h
(14.82 KB)
📄
dn.h
(4.42 KB)
📄
dqblk_xfs.h
(6.79 KB)
📁
dvb
📄
edd.h
(5.41 KB)
📄
efs_fs_sb.h
(2.11 KB)
📄
elf-em.h
(1.79 KB)
📄
elf-fdpic.h
(2.5 KB)
📄
elf.h
(10.97 KB)
📄
elfcore.h
(2.86 KB)
📄
errno.h
(79 B)
📄
errqueue.h
(443 B)
📄
ethtool.h
(33.37 KB)
📄
eventpoll.h
(1.32 KB)
📄
ext2_fs.h
(18.36 KB)
📄
fadvise.h
(855 B)
📄
falloc.h
(293 B)
📄
fb.h
(15.64 KB)
📄
fcntl.h
(1.57 KB)
📄
fd.h
(11.29 KB)
📄
fdreg.h
(5.23 KB)
📄
fib_rules.h
(1.42 KB)
📄
fiemap.h
(2.49 KB)
📄
filter.h
(3.45 KB)
📄
firewire-cdev.h
(24.47 KB)
📄
firewire-constants.h
(1.93 KB)
📄
flat.h
(2.04 KB)
📄
fs.h
(18.47 KB)
📄
fuse.h
(11.17 KB)
📄
futex.h
(4.79 KB)
📄
gameport.h
(816 B)
📄
gen_stats.h
(1.27 KB)
📄
generic_serial.h
(895 B)
📄
genetlink.h
(1.64 KB)
📄
gfs2_ondisk.h
(11.54 KB)
📄
gigaset_dev.h
(981 B)
📄
hayesesp.h
(230 B)
📁
hdlc
📄
hdlc.h
(574 B)
📄
hdlcdrv.h
(2.78 KB)
📄
hdreg.h
(22.11 KB)
📄
hid.h
(1.78 KB)
📄
hiddev.h
(6.12 KB)
📄
hidraw.h
(1.19 KB)
📄
hpet.h
(686 B)
📄
hysdn_if.h
(1.29 KB)
📄
i2c-dev.h
(2.35 KB)
📄
i2c.h
(6.48 KB)
📄
i2o-dev.h
(11.22 KB)
📄
i8k.h
(1.4 KB)
📄
icmp.h
(2.82 KB)
📄
icmpv6.h
(3.74 KB)
📄
if.h
(8.47 KB)
📄
if_addr.h
(1.42 KB)
📄
if_addrlabel.h
(658 B)
📄
if_arcnet.h
(3.63 KB)
📄
if_arp.h
(5.97 KB)
📄
if_bonding.h
(3.98 KB)
📄
if_bridge.h
(3.72 KB)
📄
if_cablemodem.h
(910 B)
📄
if_ec.h
(901 B)
📄
if_eql.h
(1.25 KB)
📄
if_ether.h
(6.39 KB)
📄
if_fc.h
(1.63 KB)
📄
if_fddi.h
(3.61 KB)
📄
if_frad.h
(2.87 KB)
📄
if_hippi.h
(4.08 KB)
📄
if_infiniband.h
(1.12 KB)
📄
if_link.h
(11.79 KB)
📄
if_ltalk.h
(125 B)
📄
if_packet.h
(3.45 KB)
📄
if_phonet.h
(337 B)
📄
if_plip.h
(596 B)
📄
if_ppp.h
(6.78 KB)
📄
if_pppol2tp.h
(1.94 KB)
📄
if_pppox.h
(3.68 KB)
📄
if_slip.h
(809 B)
📄
if_strip.h
(700 B)
📄
if_tr.h
(3.12 KB)
📄
if_tun.h
(2.94 KB)
📄
if_tunnel.h
(1.42 KB)
📄
if_vlan.h
(1.67 KB)
📄
igmp.h
(2.86 KB)
📄
in.h
(8.99 KB)
📄
in6.h
(7.32 KB)
📄
in_route.h
(873 B)
📄
inet_diag.h
(2.4 KB)
📄
inotify.h
(2.77 KB)
📄
input.h
(26.95 KB)
📄
ioctl.h
(100 B)
📄
ip.h
(3.47 KB)
📄
ip6_tunnel.h
(1.05 KB)
📄
ip_vs.h
(12.29 KB)
📄
ipc.h
(1.99 KB)
📄
ipmi.h
(16.16 KB)
📄
ipmi_msgdefs.h
(4.37 KB)
📄
ipsec.h
(884 B)
📄
ipv6.h
(2.82 KB)
📄
ipv6_route.h
(1.58 KB)
📄
ipx.h
(1.78 KB)
📄
irda.h
(7.47 KB)
📄
irqnr.h
(93 B)
📁
isdn
📄
isdn.h
(5.55 KB)
📄
isdn_divertif.h
(1.01 KB)
📄
isdn_ppp.h
(1.82 KB)
📄
isdnif.h
(2.25 KB)
📄
iso_fs.h
(6.29 KB)
📄
ivtv.h
(2.66 KB)
📄
ivtvfb.h
(1.12 KB)
📄
ixjuser.h
(24.53 KB)
📄
jffs2.h
(6.79 KB)
📄
joystick.h
(3.5 KB)
📄
kd.h
(6.02 KB)
📄
kdev_t.h
(298 B)
📄
kernel.h
(2.4 KB)
📄
kernelcapi.h
(959 B)
📄
keyboard.h
(12.4 KB)
📄
keyctl.h
(2.91 KB)
📄
kvm.h
(20.2 KB)
📄
kvm_para.h
(564 B)
📄
libc-compat.h
(3.46 KB)
📄
limits.h
(874 B)
📄
llc.h
(2.77 KB)
📄
loop.h
(2.14 KB)
📄
lp.h
(3.71 KB)
📄
magic.h
(2.24 KB)
📄
major.h
(4.55 KB)
📄
map_to_7segment.h
(7.02 KB)
📄
matroxfb.h
(1.4 KB)
📄
mempolicy.h
(2 KB)
📄
meye.h
(2.48 KB)
📄
mii.h
(7.76 KB)
📄
minix_fs.h
(2.01 KB)
📄
mman.h
(230 B)
📄
mmtimer.h
(2.01 KB)
📄
mqueue.h
(2.01 KB)
📄
mroute.h
(3.72 KB)
📄
mroute6.h
(3.9 KB)
📄
msdos_fs.h
(5.7 KB)
📄
msg.h
(2.48 KB)
📄
mtio.h
(7.89 KB)
📄
n_r3964.h
(2.29 KB)
📄
nbd.h
(1.91 KB)
📄
ncp.h
(4.94 KB)
📄
ncp_fs.h
(3.28 KB)
📄
ncp_mount.h
(2.06 KB)
📄
ncp_no.h
(651 B)
📄
neighbour.h
(3.96 KB)
📄
net.h
(1.97 KB)
📄
net_dropmon.h
(1.07 KB)
📄
net_tstamp.h
(3.39 KB)
📄
netdevice.h
(1.73 KB)
📁
netfilter
📄
netfilter.h
(1.51 KB)
📁
netfilter_arp
📄
netfilter_arp.h
(380 B)
📁
netfilter_bridge
📄
netfilter_bridge.h
(735 B)
📄
netfilter_decnet.h
(1.83 KB)
📁
netfilter_ipv4
📄
netfilter_ipv4.h
(1.98 KB)
📁
netfilter_ipv6
📄
netfilter_ipv6.h
(2 KB)
📄
netlink.h
(4.85 KB)
📄
netrom.h
(719 B)
📄
nfs.h
(4.25 KB)
📄
nfs2.h
(1.37 KB)
📄
nfs3.h
(2.16 KB)
📄
nfs4.h
(5.63 KB)
📄
nfs4_mount.h
(1.83 KB)
📄
nfs_fs.h
(1.52 KB)
📄
nfs_idmap.h
(2.19 KB)
📄
nfs_mount.h
(3.13 KB)
📄
nfsacl.h
(577 B)
📁
nfsd
📄
nl80211.h
(187.85 KB)
📄
nubus.h
(8.17 KB)
📄
nvram.h
(470 B)
📄
oom.h
(456 B)
📄
param.h
(78 B)
📄
parport.h
(3.56 KB)
📄
patchkey.h
(831 B)
📄
pci.h
(1.45 KB)
📄
pci_regs.h
(37.08 KB)
📄
perf_event.h
(21.34 KB)
📄
personality.h
(1.95 KB)
📄
pfkeyv2.h
(9.91 KB)
📄
pg.h
(2.23 KB)
📄
phantom.h
(1.55 KB)
📄
phonet.h
(4.25 KB)
📄
pkt_cls.h
(9.08 KB)
📄
pkt_sched.h
(10.63 KB)
📄
pktcdvd.h
(2.56 KB)
📄
pmu.h
(5.07 KB)
📄
poll.h
(96 B)
📄
posix_types.h
(1.24 KB)
📄
ppdev.h
(3.07 KB)
📄
ppp-comp.h
(6.36 KB)
📄
ppp_defs.h
(6.31 KB)
📄
pps.h
(3.85 KB)
📄
prctl.h
(4.86 KB)
📄
ptp_clock.h
(3.41 KB)
📄
ptrace.h
(2.24 KB)
📄
qnx4_fs.h
(2.21 KB)
📄
qnxtypes.h
(561 B)
📄
quota.h
(5.59 KB)
📄
radeonfb.h
(297 B)
📁
raid
📄
random.h
(1.06 KB)
📄
raw.h
(302 B)
📄
reboot.h
(1.25 KB)
📄
reiserfs_fs.h
(907 B)
📄
reiserfs_xattr.h
(465 B)
📄
resource.h
(2.04 KB)
📄
rfkill.h
(3.3 KB)
📄
romfs_fs.h
(1.1 KB)
📄
rose.h
(2.05 KB)
📄
route.h
(2.22 KB)
📄
rtc.h
(3.61 KB)
📄
rtnetlink.h
(14.98 KB)
📄
scc.h
(4.44 KB)
📄
sched.h
(2.05 KB)
📄
screen_info.h
(2.15 KB)
📄
sdla.h
(2.77 KB)
📄
selinux_netlink.h
(1.11 KB)
📄
sem.h
(3.58 KB)
📄
serial.h
(6.62 KB)
📄
serial_core.h
(3.93 KB)
📄
serial_reg.h
(12.93 KB)
📄
serio.h
(1.65 KB)
📄
shm.h
(2.14 KB)
📄
signal.h
(129 B)
📄
signalfd.h
(1.07 KB)
📄
smb.h
(1.18 KB)
📄
smb_fs.h
(535 B)
📄
smb_mount.h
(468 B)
📄
smbno.h
(14.18 KB)
📄
snmp.h
(10.9 KB)
📄
socket.h
(738 B)
📄
sockios.h
(5.83 KB)
📄
som.h
(5.35 KB)
📄
sonet.h
(2.16 KB)
📄
sonypi.h
(5.02 KB)
📄
sound.h
(1.07 KB)
📄
soundcard.h
(44.94 KB)
📁
spi
📄
stat.h
(1005 B)
📄
stddef.h
(633 B)
📄
string.h
(175 B)
📁
sunrpc
📄
suspend_ioctls.h
(1.34 KB)
📄
swab.h
(6.14 KB)
📄
synclink.h
(8.49 KB)
📄
sysctl.h
(25.87 KB)
📄
taskstats.h
(6.78 KB)
📁
tc_act
📁
tc_ematch
📄
tcp.h
(5.08 KB)
📄
telephony.h
(8.84 KB)
📄
termios.h
(544 B)
📄
time.h
(1.7 KB)
📄
times.h
(215 B)
📄
timex.h
(6.08 KB)
📄
tiocl.h
(1.63 KB)
📄
tipc.h
(5.77 KB)
📄
tipc_config.h
(15.01 KB)
📄
toshiba.h
(1.25 KB)
📄
tty.h
(128 B)
📄
types.h
(991 B)
📄
udf_fs_i.h
(634 B)
📄
udp.h
(1.14 KB)
📄
uinput.h
(5 KB)
📄
uio.h
(648 B)
📄
ultrasound.h
(4.39 KB)
📄
un.h
(203 B)
📄
unistd.h
(157 B)
📁
usb
📄
usbdevice_fs.h
(5.21 KB)
📄
utime.h
(152 B)
📄
utsname.h
(606 B)
📄
uuid.h
(1.73 KB)
📄
version.h
(281 B)
📄
veth.h
(474 B)
📄
vhost.h
(4.46 KB)
📄
videodev.h
(10.27 KB)
📄
videodev2.h
(64.52 KB)
📄
videotext.h
(4.14 KB)
📄
virtio_9p.h
(351 B)
📄
virtio_balloon.h
(1.23 KB)
📄
virtio_blk.h
(2.91 KB)
📄
virtio_config.h
(1.25 KB)
📄
virtio_console.h
(1.37 KB)
📄
virtio_ids.h
(545 B)
📄
virtio_net.h
(6.86 KB)
📄
virtio_pci.h
(2.21 KB)
📄
virtio_ring.h
(4.38 KB)
📄
virtio_rng.h
(265 B)
📄
vt.h
(3 KB)
📄
wait.h
(580 B)
📄
wanrouter.h
(17.42 KB)
📄
watchdog.h
(2.34 KB)
📁
wimax
📄
wimax.h
(8.17 KB)
📄
wireless.h
(41.65 KB)
📄
x25.h
(3.34 KB)
📄
xattr.h
(646 B)
📄
xfrm.h
(10.31 KB)
Editing: dcbnl.h
/* * Copyright (c) 2008-2011, Intel Corporation. * * This program is free software; you can redistribute it and/or modify it * under the terms and conditions of the GNU General Public License, * version 2, as published by the Free Software Foundation. * * This program is distributed in the hope it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for * more details. * * You should have received a copy of the GNU General Public License along with * this program; if not, write to the Free Software Foundation, Inc., 59 Temple * Place - Suite 330, Boston, MA 02111-1307 USA. * * Author: Lucy Liu <lucy.liu@intel.com> */ #ifndef __LINUX_DCBNL_H__ #define __LINUX_DCBNL_H__ #include <linux/types.h> #define DCB_PROTO_VERSION 1 /* IEEE 802.1Qaz std supported values */ #define IEEE_8021QAZ_MAX_TCS 8 #define IEEE_8021QAZ_TSA_STRICT 0 #define IEEE_8021QAZ_TSA_CB_SHAPER 1 #define IEEE_8021QAZ_TSA_ETS 2 #define IEEE_8021QAZ_TSA_VENDOR 255 /* This structure contains the IEEE 802.1Qaz ETS managed object * * @willing: willing bit in ETS configuration TLV * @ets_cap: indicates supported capacity of ets feature * @cbs: credit based shaper ets algorithm supported * @tc_tx_bw: tc tx bandwidth indexed by traffic class * @tc_rx_bw: tc rx bandwidth indexed by traffic class * @tc_tsa: TSA Assignment table, indexed by traffic class * @prio_tc: priority assignment table mapping 8021Qp to traffic class * @tc_reco_bw: recommended tc bandwidth indexed by traffic class for TLV * @tc_reco_tsa: recommended tc bandwidth indexed by traffic class for TLV * @reco_prio_tc: recommended tc tx bandwidth indexed by traffic class for TLV * * Recommended values are used to set fields in the ETS recommendation TLV * with hardware offloaded LLDP. * * ---- * TSA Assignment 8 bit identifiers * 0 strict priority * 1 credit-based shaper * 2 enhanced transmission selection * 3-254 reserved * 255 vendor specific */ struct ieee_ets { __u8 willing; __u8 ets_cap; __u8 cbs; __u8 tc_tx_bw[IEEE_8021QAZ_MAX_TCS]; __u8 tc_rx_bw[IEEE_8021QAZ_MAX_TCS]; __u8 tc_tsa[IEEE_8021QAZ_MAX_TCS]; __u8 prio_tc[IEEE_8021QAZ_MAX_TCS]; __u8 tc_reco_bw[IEEE_8021QAZ_MAX_TCS]; __u8 tc_reco_tsa[IEEE_8021QAZ_MAX_TCS]; __u8 reco_prio_tc[IEEE_8021QAZ_MAX_TCS]; }; /* This structure contains rate limit extension to the IEEE 802.1Qaz ETS * managed object. * Values are 64 bits long and specified in Kbps to enable usage over both * slow and very fast networks. * * @tc_maxrate: maximal tc tx bandwidth indexed by traffic class */ struct ieee_maxrate { __u64 tc_maxrate[IEEE_8021QAZ_MAX_TCS]; }; /* This structure contains the IEEE 802.1Qaz PFC managed object * * @pfc_cap: Indicates the number of traffic classes on the local device * that may simultaneously have PFC enabled. * @pfc_en: bitmap indicating pfc enabled traffic classes * @mbc: enable macsec bypass capability * @delay: the allowance made for a round-trip propagation delay of the * link in bits. * @requests: count of the sent pfc frames * @indications: count of the received pfc frames */ struct ieee_pfc { __u8 pfc_cap; __u8 pfc_en; __u8 mbc; __u16 delay; __u64 requests[IEEE_8021QAZ_MAX_TCS]; __u64 indications[IEEE_8021QAZ_MAX_TCS]; }; /* CEE DCBX std supported values */ #define CEE_DCBX_MAX_PGS 8 #define CEE_DCBX_MAX_PRIO 8 /** * struct cee_pg - CEE Priority-Group managed object * * @willing: willing bit in the PG tlv * @error: error bit in the PG tlv * @pg_en: enable bit of the PG feature * @tcs_supported: number of traffic classes supported * @pg_bw: bandwidth percentage for each priority group * @prio_pg: priority to PG mapping indexed by priority */ struct cee_pg { __u8 willing; __u8 error; __u8 pg_en; __u8 tcs_supported; __u8 pg_bw[CEE_DCBX_MAX_PGS]; __u8 prio_pg[CEE_DCBX_MAX_PGS]; }; /** * struct cee_pfc - CEE PFC managed object * * @willing: willing bit in the PFC tlv * @error: error bit in the PFC tlv * @pfc_en: bitmap indicating pfc enabled traffic classes * @tcs_supported: number of traffic classes supported */ struct cee_pfc { __u8 willing; __u8 error; __u8 pfc_en; __u8 tcs_supported; }; /* IEEE 802.1Qaz std supported values */ #define IEEE_8021QAZ_APP_SEL_ETHERTYPE 1 #define IEEE_8021QAZ_APP_SEL_STREAM 2 #define IEEE_8021QAZ_APP_SEL_DGRAM 3 #define IEEE_8021QAZ_APP_SEL_ANY 4 /* This structure contains the IEEE 802.1Qaz APP managed object. This * object is also used for the CEE std as well. There is no difference * between the objects. * * @selector: protocol identifier type * @protocol: protocol of type indicated * @priority: 3-bit unsigned integer indicating priority * * ---- * Selector field values * 0 Reserved * 1 Ethertype * 2 Well known port number over TCP or SCTP * 3 Well known port number over UDP or DCCP * 4 Well known port number over TCP, SCTP, UDP, or DCCP * 5-7 Reserved */ struct dcb_app { __u8 selector; __u8 priority; __u16 protocol; }; /** * struct dcb_peer_app_info - APP feature information sent by the peer * * @willing: willing bit in the peer APP tlv * @error: error bit in the peer APP tlv * * In addition to this information the full peer APP tlv also contains * a table of 'app_count' APP objects defined above. */ struct dcb_peer_app_info { __u8 willing; __u8 error; }; struct dcbmsg { __u8 dcb_family; __u8 cmd; __u16 dcb_pad; }; /** * enum dcbnl_commands - supported DCB commands * * @DCB_CMD_UNDEFINED: unspecified command to catch errors * @DCB_CMD_GSTATE: request the state of DCB in the device * @DCB_CMD_SSTATE: set the state of DCB in the device * @DCB_CMD_PGTX_GCFG: request the priority group configuration for Tx * @DCB_CMD_PGTX_SCFG: set the priority group configuration for Tx * @DCB_CMD_PGRX_GCFG: request the priority group configuration for Rx * @DCB_CMD_PGRX_SCFG: set the priority group configuration for Rx * @DCB_CMD_PFC_GCFG: request the priority flow control configuration * @DCB_CMD_PFC_SCFG: set the priority flow control configuration * @DCB_CMD_SET_ALL: apply all changes to the underlying device * @DCB_CMD_GPERM_HWADDR: get the permanent MAC address of the underlying * device. Only useful when using bonding. * @DCB_CMD_GCAP: request the DCB capabilities of the device * @DCB_CMD_GNUMTCS: get the number of traffic classes currently supported * @DCB_CMD_SNUMTCS: set the number of traffic classes * @DCB_CMD_GBCN: set backward congestion notification configuration * @DCB_CMD_SBCN: get backward congestion notification configration. * @DCB_CMD_GAPP: get application protocol configuration * @DCB_CMD_SAPP: set application protocol configuration * @DCB_CMD_IEEE_SET: set IEEE 802.1Qaz configuration * @DCB_CMD_IEEE_GET: get IEEE 802.1Qaz configuration * @DCB_CMD_GDCBX: get DCBX engine configuration * @DCB_CMD_SDCBX: set DCBX engine configuration * @DCB_CMD_GFEATCFG: get DCBX features flags * @DCB_CMD_SFEATCFG: set DCBX features negotiation flags * @DCB_CMD_CEE_GET: get CEE aggregated configuration * @DCB_CMD_IEEE_DEL: delete IEEE 802.1Qaz configuration */ enum dcbnl_commands { DCB_CMD_UNDEFINED, DCB_CMD_GSTATE, DCB_CMD_SSTATE, DCB_CMD_PGTX_GCFG, DCB_CMD_PGTX_SCFG, DCB_CMD_PGRX_GCFG, DCB_CMD_PGRX_SCFG, DCB_CMD_PFC_GCFG, DCB_CMD_PFC_SCFG, DCB_CMD_SET_ALL, DCB_CMD_GPERM_HWADDR, DCB_CMD_GCAP, DCB_CMD_GNUMTCS, DCB_CMD_SNUMTCS, DCB_CMD_PFC_GSTATE, DCB_CMD_PFC_SSTATE, DCB_CMD_BCN_GCFG, DCB_CMD_BCN_SCFG, DCB_CMD_GAPP, DCB_CMD_SAPP, DCB_CMD_IEEE_SET, DCB_CMD_IEEE_GET, DCB_CMD_GDCBX, DCB_CMD_SDCBX, DCB_CMD_GFEATCFG, DCB_CMD_SFEATCFG, DCB_CMD_CEE_GET, DCB_CMD_IEEE_DEL, __DCB_CMD_ENUM_MAX, DCB_CMD_MAX = __DCB_CMD_ENUM_MAX - 1, }; /** * enum dcbnl_attrs - DCB top-level netlink attributes * * @DCB_ATTR_UNDEFINED: unspecified attribute to catch errors * @DCB_ATTR_IFNAME: interface name of the underlying device (NLA_STRING) * @DCB_ATTR_STATE: enable state of DCB in the device (NLA_U8) * @DCB_ATTR_PFC_STATE: enable state of PFC in the device (NLA_U8) * @DCB_ATTR_PFC_CFG: priority flow control configuration (NLA_NESTED) * @DCB_ATTR_NUM_TC: number of traffic classes supported in the device (NLA_U8) * @DCB_ATTR_PG_CFG: priority group configuration (NLA_NESTED) * @DCB_ATTR_SET_ALL: bool to commit changes to hardware or not (NLA_U8) * @DCB_ATTR_PERM_HWADDR: MAC address of the physical device (NLA_NESTED) * @DCB_ATTR_CAP: DCB capabilities of the device (NLA_NESTED) * @DCB_ATTR_NUMTCS: number of traffic classes supported (NLA_NESTED) * @DCB_ATTR_BCN: backward congestion notification configuration (NLA_NESTED) * @DCB_ATTR_IEEE: IEEE 802.1Qaz supported attributes (NLA_NESTED) * @DCB_ATTR_DCBX: DCBX engine configuration in the device (NLA_U8) * @DCB_ATTR_FEATCFG: DCBX features flags (NLA_NESTED) * @DCB_ATTR_CEE: CEE std supported attributes (NLA_NESTED) */ enum dcbnl_attrs { DCB_ATTR_UNDEFINED, DCB_ATTR_IFNAME, DCB_ATTR_STATE, DCB_ATTR_PFC_STATE, DCB_ATTR_PFC_CFG, DCB_ATTR_NUM_TC, DCB_ATTR_PG_CFG, DCB_ATTR_SET_ALL, DCB_ATTR_PERM_HWADDR, DCB_ATTR_CAP, DCB_ATTR_NUMTCS, DCB_ATTR_BCN, DCB_ATTR_APP, /* IEEE std attributes */ DCB_ATTR_IEEE, DCB_ATTR_DCBX, DCB_ATTR_FEATCFG, /* CEE nested attributes */ DCB_ATTR_CEE, __DCB_ATTR_ENUM_MAX, DCB_ATTR_MAX = __DCB_ATTR_ENUM_MAX - 1, }; /** * enum ieee_attrs - IEEE 802.1Qaz get/set attributes * * @DCB_ATTR_IEEE_UNSPEC: unspecified * @DCB_ATTR_IEEE_ETS: negotiated ETS configuration * @DCB_ATTR_IEEE_PFC: negotiated PFC configuration * @DCB_ATTR_IEEE_APP_TABLE: negotiated APP configuration * @DCB_ATTR_IEEE_PEER_ETS: peer ETS configuration - get only * @DCB_ATTR_IEEE_PEER_PFC: peer PFC configuration - get only * @DCB_ATTR_IEEE_PEER_APP: peer APP tlv - get only */ enum ieee_attrs { DCB_ATTR_IEEE_UNSPEC, DCB_ATTR_IEEE_ETS, DCB_ATTR_IEEE_PFC, DCB_ATTR_IEEE_APP_TABLE, DCB_ATTR_IEEE_PEER_ETS, DCB_ATTR_IEEE_PEER_PFC, DCB_ATTR_IEEE_PEER_APP, DCB_ATTR_IEEE_MAXRATE, __DCB_ATTR_IEEE_MAX }; #define DCB_ATTR_IEEE_MAX (__DCB_ATTR_IEEE_MAX - 1) enum ieee_attrs_app { DCB_ATTR_IEEE_APP_UNSPEC, DCB_ATTR_IEEE_APP, __DCB_ATTR_IEEE_APP_MAX }; #define DCB_ATTR_IEEE_APP_MAX (__DCB_ATTR_IEEE_APP_MAX - 1) /** * enum cee_attrs - CEE DCBX get attributes. * * @DCB_ATTR_CEE_UNSPEC: unspecified * @DCB_ATTR_CEE_PEER_PG: peer PG configuration - get only * @DCB_ATTR_CEE_PEER_PFC: peer PFC configuration - get only * @DCB_ATTR_CEE_PEER_APP_TABLE: peer APP tlv - get only * @DCB_ATTR_CEE_TX_PG: TX PG configuration (DCB_CMD_PGTX_GCFG) * @DCB_ATTR_CEE_RX_PG: RX PG configuration (DCB_CMD_PGRX_GCFG) * @DCB_ATTR_CEE_PFC: PFC configuration (DCB_CMD_PFC_GCFG) * @DCB_ATTR_CEE_APP_TABLE: APP configuration (multi DCB_CMD_GAPP) * @DCB_ATTR_CEE_FEAT: DCBX features flags (DCB_CMD_GFEATCFG) * * An aggregated collection of the cee std negotiated parameters. */ enum cee_attrs { DCB_ATTR_CEE_UNSPEC, DCB_ATTR_CEE_PEER_PG, DCB_ATTR_CEE_PEER_PFC, DCB_ATTR_CEE_PEER_APP_TABLE, DCB_ATTR_CEE_TX_PG, DCB_ATTR_CEE_RX_PG, DCB_ATTR_CEE_PFC, DCB_ATTR_CEE_APP_TABLE, DCB_ATTR_CEE_FEAT, __DCB_ATTR_CEE_MAX }; #define DCB_ATTR_CEE_MAX (__DCB_ATTR_CEE_MAX - 1) enum peer_app_attr { DCB_ATTR_CEE_PEER_APP_UNSPEC, DCB_ATTR_CEE_PEER_APP_INFO, DCB_ATTR_CEE_PEER_APP, __DCB_ATTR_CEE_PEER_APP_MAX }; #define DCB_ATTR_CEE_PEER_APP_MAX (__DCB_ATTR_CEE_PEER_APP_MAX - 1) enum cee_attrs_app { DCB_ATTR_CEE_APP_UNSPEC, DCB_ATTR_CEE_APP, __DCB_ATTR_CEE_APP_MAX }; #define DCB_ATTR_CEE_APP_MAX (__DCB_ATTR_CEE_APP_MAX - 1) /** * enum dcbnl_pfc_attrs - DCB Priority Flow Control user priority nested attrs * * @DCB_PFC_UP_ATTR_UNDEFINED: unspecified attribute to catch errors * @DCB_PFC_UP_ATTR_0: Priority Flow Control value for User Priority 0 (NLA_U8) * @DCB_PFC_UP_ATTR_1: Priority Flow Control value for User Priority 1 (NLA_U8) * @DCB_PFC_UP_ATTR_2: Priority Flow Control value for User Priority 2 (NLA_U8) * @DCB_PFC_UP_ATTR_3: Priority Flow Control value for User Priority 3 (NLA_U8) * @DCB_PFC_UP_ATTR_4: Priority Flow Control value for User Priority 4 (NLA_U8) * @DCB_PFC_UP_ATTR_5: Priority Flow Control value for User Priority 5 (NLA_U8) * @DCB_PFC_UP_ATTR_6: Priority Flow Control value for User Priority 6 (NLA_U8) * @DCB_PFC_UP_ATTR_7: Priority Flow Control value for User Priority 7 (NLA_U8) * @DCB_PFC_UP_ATTR_MAX: highest attribute number currently defined * @DCB_PFC_UP_ATTR_ALL: apply to all priority flow control attrs (NLA_FLAG) * */ enum dcbnl_pfc_up_attrs { DCB_PFC_UP_ATTR_UNDEFINED, DCB_PFC_UP_ATTR_0, DCB_PFC_UP_ATTR_1, DCB_PFC_UP_ATTR_2, DCB_PFC_UP_ATTR_3, DCB_PFC_UP_ATTR_4, DCB_PFC_UP_ATTR_5, DCB_PFC_UP_ATTR_6, DCB_PFC_UP_ATTR_7, DCB_PFC_UP_ATTR_ALL, __DCB_PFC_UP_ATTR_ENUM_MAX, DCB_PFC_UP_ATTR_MAX = __DCB_PFC_UP_ATTR_ENUM_MAX - 1, }; /** * enum dcbnl_pg_attrs - DCB Priority Group attributes * * @DCB_PG_ATTR_UNDEFINED: unspecified attribute to catch errors * @DCB_PG_ATTR_TC_0: Priority Group Traffic Class 0 configuration (NLA_NESTED) * @DCB_PG_ATTR_TC_1: Priority Group Traffic Class 1 configuration (NLA_NESTED) * @DCB_PG_ATTR_TC_2: Priority Group Traffic Class 2 configuration (NLA_NESTED) * @DCB_PG_ATTR_TC_3: Priority Group Traffic Class 3 configuration (NLA_NESTED) * @DCB_PG_ATTR_TC_4: Priority Group Traffic Class 4 configuration (NLA_NESTED) * @DCB_PG_ATTR_TC_5: Priority Group Traffic Class 5 configuration (NLA_NESTED) * @DCB_PG_ATTR_TC_6: Priority Group Traffic Class 6 configuration (NLA_NESTED) * @DCB_PG_ATTR_TC_7: Priority Group Traffic Class 7 configuration (NLA_NESTED) * @DCB_PG_ATTR_TC_MAX: highest attribute number currently defined * @DCB_PG_ATTR_TC_ALL: apply to all traffic classes (NLA_NESTED) * @DCB_PG_ATTR_BW_ID_0: Percent of link bandwidth for Priority Group 0 (NLA_U8) * @DCB_PG_ATTR_BW_ID_1: Percent of link bandwidth for Priority Group 1 (NLA_U8) * @DCB_PG_ATTR_BW_ID_2: Percent of link bandwidth for Priority Group 2 (NLA_U8) * @DCB_PG_ATTR_BW_ID_3: Percent of link bandwidth for Priority Group 3 (NLA_U8) * @DCB_PG_ATTR_BW_ID_4: Percent of link bandwidth for Priority Group 4 (NLA_U8) * @DCB_PG_ATTR_BW_ID_5: Percent of link bandwidth for Priority Group 5 (NLA_U8) * @DCB_PG_ATTR_BW_ID_6: Percent of link bandwidth for Priority Group 6 (NLA_U8) * @DCB_PG_ATTR_BW_ID_7: Percent of link bandwidth for Priority Group 7 (NLA_U8) * @DCB_PG_ATTR_BW_ID_MAX: highest attribute number currently defined * @DCB_PG_ATTR_BW_ID_ALL: apply to all priority groups (NLA_FLAG) * */ enum dcbnl_pg_attrs { DCB_PG_ATTR_UNDEFINED, DCB_PG_ATTR_TC_0, DCB_PG_ATTR_TC_1, DCB_PG_ATTR_TC_2, DCB_PG_ATTR_TC_3, DCB_PG_ATTR_TC_4, DCB_PG_ATTR_TC_5, DCB_PG_ATTR_TC_6, DCB_PG_ATTR_TC_7, DCB_PG_ATTR_TC_MAX, DCB_PG_ATTR_TC_ALL, DCB_PG_ATTR_BW_ID_0, DCB_PG_ATTR_BW_ID_1, DCB_PG_ATTR_BW_ID_2, DCB_PG_ATTR_BW_ID_3, DCB_PG_ATTR_BW_ID_4, DCB_PG_ATTR_BW_ID_5, DCB_PG_ATTR_BW_ID_6, DCB_PG_ATTR_BW_ID_7, DCB_PG_ATTR_BW_ID_MAX, DCB_PG_ATTR_BW_ID_ALL, __DCB_PG_ATTR_ENUM_MAX, DCB_PG_ATTR_MAX = __DCB_PG_ATTR_ENUM_MAX - 1, }; /** * enum dcbnl_tc_attrs - DCB Traffic Class attributes * * @DCB_TC_ATTR_PARAM_UNDEFINED: unspecified attribute to catch errors * @DCB_TC_ATTR_PARAM_PGID: (NLA_U8) Priority group the traffic class belongs to * Valid values are: 0-7 * @DCB_TC_ATTR_PARAM_UP_MAPPING: (NLA_U8) Traffic class to user priority map * Some devices may not support changing the * user priority map of a TC. * @DCB_TC_ATTR_PARAM_STRICT_PRIO: (NLA_U8) Strict priority setting * 0 - none * 1 - group strict * 2 - link strict * @DCB_TC_ATTR_PARAM_BW_PCT: optional - (NLA_U8) If supported by the device and * not configured to use link strict priority, * this is the percentage of bandwidth of the * priority group this traffic class belongs to * @DCB_TC_ATTR_PARAM_ALL: (NLA_FLAG) all traffic class parameters * */ enum dcbnl_tc_attrs { DCB_TC_ATTR_PARAM_UNDEFINED, DCB_TC_ATTR_PARAM_PGID, DCB_TC_ATTR_PARAM_UP_MAPPING, DCB_TC_ATTR_PARAM_STRICT_PRIO, DCB_TC_ATTR_PARAM_BW_PCT, DCB_TC_ATTR_PARAM_ALL, __DCB_TC_ATTR_PARAM_ENUM_MAX, DCB_TC_ATTR_PARAM_MAX = __DCB_TC_ATTR_PARAM_ENUM_MAX - 1, }; /** * enum dcbnl_cap_attrs - DCB Capability attributes * * @DCB_CAP_ATTR_UNDEFINED: unspecified attribute to catch errors * @DCB_CAP_ATTR_ALL: (NLA_FLAG) all capability parameters * @DCB_CAP_ATTR_PG: (NLA_U8) device supports Priority Groups * @DCB_CAP_ATTR_PFC: (NLA_U8) device supports Priority Flow Control * @DCB_CAP_ATTR_UP2TC: (NLA_U8) device supports user priority to * traffic class mapping * @DCB_CAP_ATTR_PG_TCS: (NLA_U8) bitmap where each bit represents a * number of traffic classes the device * can be configured to use for Priority Groups * @DCB_CAP_ATTR_PFC_TCS: (NLA_U8) bitmap where each bit represents a * number of traffic classes the device can be * configured to use for Priority Flow Control * @DCB_CAP_ATTR_GSP: (NLA_U8) device supports group strict priority * @DCB_CAP_ATTR_BCN: (NLA_U8) device supports Backwards Congestion * Notification * @DCB_CAP_ATTR_DCBX: (NLA_U8) device supports DCBX engine * */ enum dcbnl_cap_attrs { DCB_CAP_ATTR_UNDEFINED, DCB_CAP_ATTR_ALL, DCB_CAP_ATTR_PG, DCB_CAP_ATTR_PFC, DCB_CAP_ATTR_UP2TC, DCB_CAP_ATTR_PG_TCS, DCB_CAP_ATTR_PFC_TCS, DCB_CAP_ATTR_GSP, DCB_CAP_ATTR_BCN, DCB_CAP_ATTR_DCBX, __DCB_CAP_ATTR_ENUM_MAX, DCB_CAP_ATTR_MAX = __DCB_CAP_ATTR_ENUM_MAX - 1, }; /** * DCBX capability flags * * @DCB_CAP_DCBX_HOST: DCBX negotiation is performed by the host LLDP agent. * 'set' routines are used to configure the device with * the negotiated parameters * * @DCB_CAP_DCBX_LLD_MANAGED: DCBX negotiation is not performed in the host but * by another entity * 'get' routines are used to retrieve the * negotiated parameters * 'set' routines can be used to set the initial * negotiation configuration * * @DCB_CAP_DCBX_VER_CEE: for a non-host DCBX engine, indicates the engine * supports the CEE protocol flavor * * @DCB_CAP_DCBX_VER_IEEE: for a non-host DCBX engine, indicates the engine * supports the IEEE protocol flavor * * @DCB_CAP_DCBX_STATIC: for a non-host DCBX engine, indicates the engine * supports static configuration (i.e no actual * negotiation is performed negotiated parameters equal * the initial configuration) * */ #define DCB_CAP_DCBX_HOST 0x01 #define DCB_CAP_DCBX_LLD_MANAGED 0x02 #define DCB_CAP_DCBX_VER_CEE 0x04 #define DCB_CAP_DCBX_VER_IEEE 0x08 #define DCB_CAP_DCBX_STATIC 0x10 /** * enum dcbnl_numtcs_attrs - number of traffic classes * * @DCB_NUMTCS_ATTR_UNDEFINED: unspecified attribute to catch errors * @DCB_NUMTCS_ATTR_ALL: (NLA_FLAG) all traffic class attributes * @DCB_NUMTCS_ATTR_PG: (NLA_U8) number of traffic classes used for * priority groups * @DCB_NUMTCS_ATTR_PFC: (NLA_U8) number of traffic classes which can * support priority flow control */ enum dcbnl_numtcs_attrs { DCB_NUMTCS_ATTR_UNDEFINED, DCB_NUMTCS_ATTR_ALL, DCB_NUMTCS_ATTR_PG, DCB_NUMTCS_ATTR_PFC, __DCB_NUMTCS_ATTR_ENUM_MAX, DCB_NUMTCS_ATTR_MAX = __DCB_NUMTCS_ATTR_ENUM_MAX - 1, }; enum dcbnl_bcn_attrs{ DCB_BCN_ATTR_UNDEFINED = 0, DCB_BCN_ATTR_RP_0, DCB_BCN_ATTR_RP_1, DCB_BCN_ATTR_RP_2, DCB_BCN_ATTR_RP_3, DCB_BCN_ATTR_RP_4, DCB_BCN_ATTR_RP_5, DCB_BCN_ATTR_RP_6, DCB_BCN_ATTR_RP_7, DCB_BCN_ATTR_RP_ALL, DCB_BCN_ATTR_BCNA_0, DCB_BCN_ATTR_BCNA_1, DCB_BCN_ATTR_ALPHA, DCB_BCN_ATTR_BETA, DCB_BCN_ATTR_GD, DCB_BCN_ATTR_GI, DCB_BCN_ATTR_TMAX, DCB_BCN_ATTR_TD, DCB_BCN_ATTR_RMIN, DCB_BCN_ATTR_W, DCB_BCN_ATTR_RD, DCB_BCN_ATTR_RU, DCB_BCN_ATTR_WRTT, DCB_BCN_ATTR_RI, DCB_BCN_ATTR_C, DCB_BCN_ATTR_ALL, __DCB_BCN_ATTR_ENUM_MAX, DCB_BCN_ATTR_MAX = __DCB_BCN_ATTR_ENUM_MAX - 1, }; /** * enum dcb_general_attr_values - general DCB attribute values * * @DCB_ATTR_UNDEFINED: value used to indicate an attribute is not supported * */ enum dcb_general_attr_values { DCB_ATTR_VALUE_UNDEFINED = 0xff }; #define DCB_APP_IDTYPE_ETHTYPE 0x00 #define DCB_APP_IDTYPE_PORTNUM 0x01 enum dcbnl_app_attrs { DCB_APP_ATTR_UNDEFINED, DCB_APP_ATTR_IDTYPE, DCB_APP_ATTR_ID, DCB_APP_ATTR_PRIORITY, __DCB_APP_ATTR_ENUM_MAX, DCB_APP_ATTR_MAX = __DCB_APP_ATTR_ENUM_MAX - 1, }; /** * enum dcbnl_featcfg_attrs - features conifiguration flags * * @DCB_FEATCFG_ATTR_UNDEFINED: unspecified attribute to catch errors * @DCB_FEATCFG_ATTR_ALL: (NLA_FLAG) all features configuration attributes * @DCB_FEATCFG_ATTR_PG: (NLA_U8) configuration flags for priority groups * @DCB_FEATCFG_ATTR_PFC: (NLA_U8) configuration flags for priority * flow control * @DCB_FEATCFG_ATTR_APP: (NLA_U8) configuration flags for application TLV * */ #define DCB_FEATCFG_ERROR 0x01 /* error in feature resolution */ #define DCB_FEATCFG_ENABLE 0x02 /* enable feature */ #define DCB_FEATCFG_WILLING 0x04 /* feature is willing */ #define DCB_FEATCFG_ADVERTISE 0x08 /* advertise feature */ enum dcbnl_featcfg_attrs { DCB_FEATCFG_ATTR_UNDEFINED, DCB_FEATCFG_ATTR_ALL, DCB_FEATCFG_ATTR_PG, DCB_FEATCFG_ATTR_PFC, DCB_FEATCFG_ATTR_APP, __DCB_FEATCFG_ATTR_ENUM_MAX, DCB_FEATCFG_ATTR_MAX = __DCB_FEATCFG_ATTR_ENUM_MAX - 1, }; #endif /* __LINUX_DCBNL_H__ */
Upload File
Create Folder