On Sat, Feb 05, 2022 at 08:31:46PM +0800, lance.lmw...@gmail.com wrote: > From: Limin Wang <lance.lmw...@gmail.com> > > Signed-off-by: Limin Wang <lance.lmw...@gmail.com> > --- > libavformat/udp.c | 32 ++++++++++++++++++++------------ > 1 file changed, 20 insertions(+), 12 deletions(-) > > diff --git a/libavformat/udp.c b/libavformat/udp.c > index 83c042d..8178d0e 100644 > --- a/libavformat/udp.c > +++ b/libavformat/udp.c > @@ -162,22 +162,30 @@ static int udp_set_multicast_ttl(int sockfd, int > mcastTTL, > struct sockaddr *addr, > void *logctx) > { > + int protocol, cmd; > + > + switch (addr->sa_family) { > #ifdef IP_MULTICAST_TTL > - if (addr->sa_family == AF_INET) { > - if (setsockopt(sockfd, IPPROTO_IP, IP_MULTICAST_TTL, &mcastTTL, > sizeof(mcastTTL)) < 0) { > - ff_log_net_error(logctx, AV_LOG_ERROR, > "setsockopt(IP_MULTICAST_TTL)"); > - return ff_neterrno(); > - } > - } > + case AF_INET: > + protocol = IPPROTO_IP; > + cmd = IP_MULTICAST_TTL; > + break; > #endif > #if defined(IPPROTO_IPV6) && defined(IPV6_MULTICAST_HOPS) > - if (addr->sa_family == AF_INET6) { > - if (setsockopt(sockfd, IPPROTO_IPV6, IPV6_MULTICAST_HOPS, &mcastTTL, > sizeof(mcastTTL)) < 0) { > - ff_log_net_error(logctx, AV_LOG_ERROR, > "setsockopt(IPV6_MULTICAST_HOPS)"); > - return ff_neterrno(); > - } > - } > + case AF_INET6: > + protocol = IPPROTO_IPV6; > + cmd = IPV6_MULTICAST_HOPS; > + break; > #endif > + default: > + return 0; > + } > + > + if (setsockopt(sockfd, protocol, cmd, &mcastTTL, sizeof(mcastTTL)) < 0) { > + ff_log_net_error(logctx, AV_LOG_ERROR, "setsockopt(IPV4/IPV6 > MULTICAST TTL)"); > + return ff_neterrno(); > + } > + > return 0; > } > > -- > 1.8.3.1 >
will apply tomorrow with one pending ttl range check patch if no further comments. -- Thanks, Limin Wang _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".