69,373
社区成员
发帖
与我相关
我的任务
分享
int skfd;
struct ifreq ifr;
struct ethtool_cmd edata;
memset(&edata,-1,sizeof(edata));
edata.cmd = ETHTOOL_SSET;
// edata.data = 0;
memset(&ifr, 0, sizeof(ifr));
edata.speed = 100;
strncpy(ifr.ifr_name, "eth0", sizeof(ifr.ifr_name) - 1);
ifr.ifr_data = (char *) &edata;
if (( skfd = socket( AF_INET, SOCK_DGRAM, 0 )) < 0)
{
printf("skfd error3\n");
return -1;
}
if(ioctl( skfd, SIOCETHTOOL, &ifr ) == -1)
{
close(skfd);
printf("ioctl error1\n");
return -1;
}
printf("edata.speed %d\n",edata.speed);
这是我用SSET设置网卡speed的方法