如何判断网络是否通
来源: 互联网 发布时间:2015-09-12
本文导语: 有没有代码实现检测网络通或者不通的,主要是我拔掉网线,要程序能很容易知道网络不通了。 请大侠们指点指点 | int Detect_Eth(int netfd, char *ifname) { struct ifreq ifr; struct ethtool_value edata;...
有没有代码实现检测网络通或者不通的,主要是我拔掉网线,要程序能很容易知道网络不通了。
请大侠们指点指点
请大侠们指点指点
|
int Detect_Eth(int netfd, char *ifname)
{
struct ifreq ifr;
struct ethtool_value edata;
memset(&ifr, 0, sizeof(ifr));
edata.cmd = ETHTOOL_GLINK;
strncpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name)-1);
ifr.ifr_data = (char *) &edata;
if(ioctl(netfd, SIOCETHTOOL, &ifr) == -1){
printf("ETHTOOL_GLINK failed: %sn", strerror(errno));
return 2;
}
return(edata.data ? 0 : 1);
}
{
struct ifreq ifr;
struct ethtool_value edata;
memset(&ifr, 0, sizeof(ifr));
edata.cmd = ETHTOOL_GLINK;
strncpy(ifr.ifr_name, ifname, sizeof(ifr.ifr_name)-1);
ifr.ifr_data = (char *) &edata;
if(ioctl(netfd, SIOCETHTOOL, &ifr) == -1){
printf("ETHTOOL_GLINK failed: %sn", strerror(errno));
return 2;
}
return(edata.data ? 0 : 1);
}
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。