Implement LINKSTATE_GET netlink request to get link state information. At the moment, only link up flag as provided by ETHTOOL_GLINK ioctl command is returned. LINKSTATE_GET request can be used with NLM_F_DUMP (without device identification) to request the information for all devices in current network namespace providing the data.
Showing the changes to include/uapi/linux (1 of 9 files). Show all
Unified · Split
| @@ -19,6 +19,7 @@ enum { · 18 unmodified lines | ||
| 19 | 19 | ETHTOOL_MSG_LINKINFO_SET, |
| 20 | 20 | ETHTOOL_MSG_LINKMODES_GET, |
| 21 | 21 | ETHTOOL_MSG_LINKMODES_SET, |
| 22 | + ETHTOOL_MSG_LINKSTATE_GET, | |
| 22 | 23 | |
| 23 | 24 | /* add new constants above here */ |
| 24 | 25 | __ETHTOOL_MSG_USER_CNT, |
| @@ -33,6 +34,7 @@ enum { · 8 unmodified lines | ||
| 33 | 34 | ETHTOOL_MSG_LINKINFO_NTF, |
| 34 | 35 | ETHTOOL_MSG_LINKMODES_GET_REPLY, |
| 35 | 36 | ETHTOOL_MSG_LINKMODES_NTF, |
| 37 | + ETHTOOL_MSG_LINKSTATE_GET_REPLY, | |
| 36 | 38 | |
| 37 | 39 | /* add new constants above here */ |
| 38 | 40 | __ETHTOOL_MSG_KERNEL_CNT, |
| @@ -181,6 +183,18 @@ enum { · 142 unmodified lines | ||
| 181 | 183 | ETHTOOL_A_LINKMODES_MAX = __ETHTOOL_A_LINKMODES_CNT - 1 |
| 182 | 184 | }; |
| 183 | 185 | |
| 186 | +/* LINKSTATE */ | |
| 187 | + | |
| 188 | +enum { | |
| 189 | + ETHTOOL_A_LINKSTATE_UNSPEC, | |
| 190 | + ETHTOOL_A_LINKSTATE_HEADER, /* nest - _A_HEADER_* */ | |
| 191 | + ETHTOOL_A_LINKSTATE_LINK, /* u8 */ | |
| 192 | + | |
| 193 | + /* add new constants above here */ | |
| 194 | + __ETHTOOL_A_LINKSTATE_CNT, | |
| 195 | + ETHTOOL_A_LINKSTATE_MAX = __ETHTOOL_A_LINKSTATE_CNT - 1 | |
| 196 | +}; | |
| 197 | + | |
| 184 | 198 | /* generic netlink info */ |
| 185 | 199 | #define ETHTOOL_GENL_NAME "ethtool" |
| 186 | 200 | #define ETHTOOL_GENL_VERSION 1 |