如何解决获取 mtu C++ 便携方式
有没有办法让 mtu C++ 可移植? 喜欢 Linux 和 Windows 吗?
我知道在 Linux 中这是代码:
sys_get_mtu(const char *ifname)
{
struct ifreq ifr;
size_t ifnamelen;
int s;
ifnamelen = strlen(ifname);
if (ifnamelen > sizeof(ifr.ifr_name) + 1)
return 0;
memcpy(ifr.ifr_name,ifname,ifnamelen);
ifr.ifr_name[ifnamelen] = '\0';
s = socket(PF_INET,SOCK_DGRAM,IPPROTO_IP);
if (s == -1)
return 0;
if (ioctl(s,SIocgIFMTU,&ifr) == -1) {
close(s);
return 0;
}
close(s);
return ifr.ifr_mtu;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。