我有一个网络接口,显示如下数据:
driver: r8152
version: v1.12.12
firmware-version: rtl8153a-4 v2 02/07/20
expansion-rom-version:
bus-info: usb-0000:00:14.0-9
supports-statistics: yes
supports-test: no
supports-eeprom-access: no
supports-register-dump: no
supports-priv-flags: no
但是,我无法通过如下ioctl调用收集驱动程序信息:
socketfd = socket(AF_INET, SOCK_DGRAM, IPPROTO_IP);
if (socketfd == -1)
printf ("error:socketfd no open");
struct ethtool_drvinfo drvrinfo = {0};
drvrinfo.cmd = ETHTOOL_GDRVINFO;
int x = ioctl(socketfd, SIOCETHTOOL, &drvrinfo);`
我第一次使用,不太清楚具体的流程,请帮助
1条答案
按热度按时间qf9go6mv1#
这个信息的简单Linux转储。将enp0s5更改为您的接口名称。
输出示例:
Linux源代码:
这些信息并不存储在套接字中,但是拥有一个打开的套接字是从内核查询有关特定网络接口的信息的一种方便的方式。