MACOS上面C/C++获取网卡索引,索引获取网卡接口名

依赖函数:

if_nametoindex   IF名字 to IF索引

if_indextoname   IF索引 to IF名字

MACOS 10.7 版本支援(就是2011年发不OSX的第一个面向用的系统版本)

        int GetInterfaceIndex(const ppp::string& ifrName) noexcept
        {
            if (ifrName.empty())
            {
                return -1;
            }

            int interface_index = (int)if_nametoindex(ifrName.data());
            if (interface_index == 0 || interface_index == -1)
            {
                return -1;
            }

            return interface_index;
        }

        bool GetInterfaceName(int interface_index, ppp::string& ifrName) noexcept
        {
            ifrName.clear();
            if (interface_index == 0 || interface_index == -1)
            {
                return false;
            }

            char buf[255];
            if (if_indextoname((unsigned int)interface_index, buf))
            {
                char ch = *buf;
                if (ch == '\x0')
                {
                    return false;
                }

                ifrName = buf;
                return true;
            }
            else
            {
                return false;
            }
        }

相关推荐

  1. MACOS上面C/C++获取网卡索引索引获取网卡接口

    2024-02-20 07:56:05       50 阅读
  2. Qt获取当前系统网络接口信息

    2024-02-20 07:56:05       52 阅读
  3. C++(14):获取类型在tuple中的索引

    2024-02-20 07:56:05       50 阅读
  4. Flutter循环遍历数组获取索引

    2024-02-20 07:56:05       68 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-20 07:56:05       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-20 07:56:05       101 阅读
  3. 在Django里面运行非项目文件

    2024-02-20 07:56:05       82 阅读
  4. Python语言-面向对象

    2024-02-20 07:56:05       91 阅读

热门阅读

  1. zookeeper源码(08)请求处理及数据读写流程

    2024-02-20 07:56:05       41 阅读
  2. uniapp 面试题

    2024-02-20 07:56:05       48 阅读
  3. centos7编译c++碰到的坑

    2024-02-20 07:56:05       53 阅读
  4. MySQL学习记录——십삼 视图及用户、权限管理

    2024-02-20 07:56:05       49 阅读
  5. 【0259】inval.h/inval.c的理解

    2024-02-20 07:56:05       53 阅读
  6. HBase API

    2024-02-20 07:56:05       46 阅读
  7. 【React】使用lodash的debounce未生效

    2024-02-20 07:56:05       61 阅读
  8. ansible inventory 主机清单

    2024-02-20 07:56:05       53 阅读
  9. Docker Compose 配置环境变量

    2024-02-20 07:56:05       46 阅读
  10. git checkout 某个分支后如何回退到执行之前的分支

    2024-02-20 07:56:05       44 阅读
  11. 课时39:表达式_运算符_简单计算

    2024-02-20 07:56:05       38 阅读