91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C語言如何實現linux網卡檢測精簡版

發布時間:2021-05-28 12:30:21 來源:億速云 閱讀:150 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關C語言如何實現linux網卡檢測精簡版的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

萬能的網絡,通過getifaddrs可以大大減少編碼量,獲得 C語言實現linux網卡檢測-改進版 同樣的效果。

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
 
#include <sys/socket.h>
#include <sys/ioctl.h>
#include <linux/if.h>
#include <ifaddrs.h>
#include <arpa/inet.h> 
 
 
int c_ifaddrs_netlink_status(const char *if_name )
{
 struct ifaddrs *ifa = NULL, *ifList; 
 
 if (getifaddrs(&ifList) < 0)
 {
 return -1;
 }
 
 for (ifa = ifList; ifa != NULL; ifa = ifa->ifa_next) 
 {
 if(ifa->ifa_addr->sa_family == AF_INET) 
 {
  if(strcmp(ifa->ifa_name, if_name) ==0)
  {
  if(!(ifa->ifa_flags & IFF_UP))
  {
   printf("DEVICE_DOWN\r\n");
   freeifaddrs(ifList);
   return 1;
  }
 
  if(!(ifa->ifa_flags & IFF_RUNNING))
  {
   printf("DEVICE_UNPLUGGED\r\n");
   freeifaddrs(ifList);
   return 2;
  }
 
  printf("DEVICE_LINKED\r\n");
  freeifaddrs(ifList);
  return 3;
  }
 } 
 } 
 
 printf(stderr, "DEVICE_NONE\r\n");
 freeifaddrs(ifList);
 return 0;
}
 
int main(int argc, char* argv[])
{
 int i=0;
 if(argc != 2)
 {
 fprintf(stderr, "usage: %s <ethname>\r\n", argv[0]);
 return -1;
 }
 
 i = c_ifaddrs_netlink_status(argv[1]);
 
 fprintf(stderr,"c_ifaddrs_netlink_status if_status = %d\n", i );
 return 0;
}

感謝各位的閱讀!關于“C語言如何實現linux網卡檢測精簡版”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

乐安县| 明光市| 桦南县| 邮箱| 赣榆县| 磐安县| 玉山县| 高邑县| 凤山市| 资阳市| 阿城市| 台北市| 来宾市| 长治市| 阳朔县| 玉环县| 吴忠市| 林口县| 合山市| 奉节县| 石河子市| 汝阳县| 呈贡县| 策勒县| 徐州市| 青神县| 连云港市| 淮南市| 包头市| 梁山县| 宿州市| 赣州市| 张家口市| 永和县| 富宁县| 绥阳县| 黎川县| 晋州市| 张掖市| 松滋市| 阿拉善左旗|