mcast_set_ttl.c
来自「用户认证及计费系统的网络驱动库」· C语言 代码 · 共 37 行
C
37 行
#include "unp.h"
int
mcast_set_ttl(int sockfd, int val)
{
switch (sockfd_to_family(sockfd)) {
case AF_INET: {
u_char ttl;
ttl = val;
return(setsockopt(sockfd, IPPROTO_IP, IP_MULTICAST_TTL,
&ttl, sizeof(ttl)));
}
#ifdef IPV6
case AF_INET6: {
int hop;
hop = val;
return(setsockopt(sockfd, IPPROTO_IPV6, IPV6_MULTICAST_HOPS,
&hop, sizeof(hop)));
}
#endif
default:
errno = EPROTONOSUPPORT;
return(-1);
}
}
void
Mcast_set_ttl(int sockfd, int val)
{
if (mcast_set_ttl(sockfd, val) < 0)
err_sys("mcast_set_ttl error");
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?