interface.c
来自「是一个包装库」· C语言 代码 · 共 86 行
C
86 行
#include <stdlib.h>#include "interface.h"#include "unpifi.h"intget_min_mtu( void ){ struct ifi_info *info, *n; int min_mtu_set = 0; int min_mtu = 0; info = Get_ifi_info(AF_INET, 0); for(n = info; n; n = n->ifi_next) { if(!min_mtu_set) { min_mtu = n->ifi_mtu; min_mtu_set = 1; } else if( n->ifi_mtu < min_mtu ) { min_mtu = n->ifi_mtu; } } free_ifi_info(info); return min_mtu;}struct ifi_info *get_first_multicast_interface ( void ){ struct ifi_info *info, *n; info = Get_ifi_info(AF_INET, 0); for(n = info; n; n = n->ifi_next) { /* The interface must be UP, not loopback and multicast enabled */ if(! (n->ifi_flags & IFF_UP) ) { continue; } if( n->ifi_flags & IFF_LOOPBACK ) { continue; } if(! (n->ifi_flags & IFF_MULTICAST) ) { continue; } return n; } return NULL;}struct ifi_info *get_first_interface ( void ){ return Get_ifi_info(AF_INET, 0); }struct ifi_info *get_interface ( char *name ){ struct ifi_info *info, *n; info = Get_ifi_info(AF_INET, 0); for(n = info; n; n = n->ifi_next) { if(!strcmp( name, n->ifi_name)) { return n; } } return NULL;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?