C++音视频

代码改变世界

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
在做Onvif设备发现时,UDP使用setsockopt加入多播组时失败,
ret_val = setsockopt(socket_fd, IPPROTO_IP, IP_ADD_MEMBERSHIP, (char *)&stru_merq, sizeof(stru_merq));

失败信息,errno=105,No buffer space available;

查看UDP组播的内核参数igmp_max_memberships,

/mnt # sysctl net.ipv4.igmp_max_memberships
net.ipv4.igmp_max_memberships = 0

可以使用命令sysctl -w net.ipv4.igmp_max_memberships=10暂时修改,经测试,加入组播正常。正常的程序要让内核或者系统的同学修改一下。

posted on 2021-03-10 16:25  shunxiang  阅读(551)  评论(1编辑  收藏  举报