Linux下检测网线是否连接

来源:互联网 发布:中国对印尼的报复 知乎 编辑:程序博客网 时间:2024/06/02 11:23

#include <net/if.h> 

//如果网卡已插上网线,返回0,否则返回-1.
int check_nic(char *nic)
{
   
struct ifreq ifr;
   
int skfd = socket(AF_INET, SOCK_DGRAM, 0);

    strcpy(ifr.ifr_name, nic_name);
   
if (ioctl(skfd, SIOCGIFFLAGS, &ifr) < 0)
    {
       
return -1;
    }
   
if(ifr.ifr_flags & IFF_RUNNING)
       
return 0// 网卡已插上网线
    else return -1;
}

原创粉丝点击