Re: [問題] 請問怎得知連線狀態變化
※ 引述《panda22 (panda)》之銘言:
: 請問在user level中有沒有辦法 得知乙太網路
: 網路線是否有插上網路卡
: 當然前提是假設驅動程式有提供這樣資訊給核心
: 感謝
static int get_link_status(char *interface)
{
struct ethtool_value edata;
int skfd;
struct ifreq ifr;
if (( skfd = socket( AF_INET, SOCK_DGRAM, 0 ) ) < 0 ) {
perror("get_link_status error:\n");
return -1;
}
edata.cmd = ETHTOOL_GLINK;
strncpy(ifr.ifr_name, interface, sizeof(ifr.ifr_name)-1);
ifr.ifr_data = (char *) &edata;
if (ioctl(skfd, SIOCETHTOOL, &ifr) == -1) {
debug("ETHTOOL_GLINK failed: %s\n", strerror(errno));
close(skfd);
return -1;
}
close(skfd);
return edata.data;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.112.237.154
推
08/24 16:52, , 1F
08/24 16:52, 1F
討論串 (同標題文章)
LinuxDev 近期熱門文章
PTT數位生活區 即時熱門文章