From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <ffmpeg-devel-bounces@ffmpeg.org>
Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100])
	by master.gitmailbox.com (Postfix) with ESMTP id 5AFEB40C14
	for <ffmpegdev@gitmailbox.com>; Sat,  5 Feb 2022 12:10:15 +0000 (UTC)
Received: from [127.0.1.1] (localhost [127.0.0.1])
	by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0325D68B36E;
	Sat,  5 Feb 2022 14:10:13 +0200 (EET)
Received: from mail-pg1-f179.google.com (mail-pg1-f179.google.com
 [209.85.215.179])
 by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 6C07C68B360
 for <ffmpeg-devel@ffmpeg.org>; Sat,  5 Feb 2022 14:10:06 +0200 (EET)
Received: by mail-pg1-f179.google.com with SMTP id g20so7294737pgn.10
 for <ffmpeg-devel@ffmpeg.org>; Sat, 05 Feb 2022 04:10:06 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=date:from:to:subject:message-id:mail-followup-to:references
 :mime-version:content-disposition:in-reply-to;
 bh=/2qHmxl0BC4SLzyFXPyLbstsXL7TnJmd7fvnC3Qi2I8=;
 b=ZzV5YlpZKMjpFQs/Z2vKxBxE6FWzoZtFV4NqS/HhOxC3gyojxDjDQupWCNCEo2hG+q
 /H5g8aY1wLcLD0CU71RfcWeKW7Z7f66SqntfpAgiwXdmSakNrqp6RiYPr3NFqUn6SGUF
 z1O2Yw2vORrIJYRBh5GWJyARviFMNx1+oSB7krdOsyR4R0I+Amz7dto6fYlbenm5NJct
 GHQA1A8Mg9AmF4eP/xFtv3hBv/tnorylpMZ+YSFPtd17cKkOMdfuEoT6UvqHHDh2kUUW
 wYFOh7D8Z1jbp1VFLr0zi/cXK3khmuNxrOaq8TA/A/8r9FqwxD9e+FK9lwlr4l8IvkG4
 rrHw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:date:from:to:subject:message-id:mail-followup-to
 :references:mime-version:content-disposition:in-reply-to;
 bh=/2qHmxl0BC4SLzyFXPyLbstsXL7TnJmd7fvnC3Qi2I8=;
 b=Pfzfr4vqtbYn61rKBG8yETQbP5q0aeKyHNqsitldrOJ5w6AASVGyyMxS4k72JvDwcj
 nwk18BCVgzu5g5sDK911EvramiF+p10FS9VEhT47rlhnl1KTRcCcalQUjXLsRajb+O/9
 VMVwYAVEzvLKYXpcoGlCc9ZXfh+DJhw2EnEmV3xsdp18m+Hi7y/1P9aqC7sg474JGACj
 /xFBz0qJiewvtDXYALKOuP882h9yLwZQIIMeLfebmGAD3D/jGYv+c/vzFh9wVDRLbjvv
 zfq80t+0Kj0MmoPXFTkJcXjJCGDkHz2uPfGfTjjbqBJbSEBWN32gAnxUzsp1DnM3lspe
 6HFA==
X-Gm-Message-State: AOAM530B4YPo9yl6v48YIoiHTnnnH3WuABZEMUltDtETCn40FGmmLMtT
 Y+U5u0ThN4dZ3x8LkSMnnn0mMeP02XI=
X-Google-Smtp-Source: ABdhPJzseAZPleu1nLcQuXv5uv0nVMOyJLVQAGbCpuPWgePvMAq2T2Y+bVV08L2lDewNshBF+LKTWQ==
X-Received: by 2002:a05:6a00:80d:: with SMTP id
 m13mr7505295pfk.63.1644063004693; 
 Sat, 05 Feb 2022 04:10:04 -0800 (PST)
Received: from gmail.com ([161.117.202.209])
 by smtp.gmail.com with ESMTPSA id k21sm5903121pff.33.2022.02.05.04.10.03
 for <ffmpeg-devel@ffmpeg.org>
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Sat, 05 Feb 2022 04:10:04 -0800 (PST)
Date: Sat, 5 Feb 2022 20:10:01 +0800
From: lance.lmwang@gmail.com
To: ffmpeg-devel@ffmpeg.org
Message-ID: <20220205121001.GB19456@gmail.com>
Mail-Followup-To: ffmpeg-devel@ffmpeg.org
References: <1643260580-25792-1-git-send-email-lance.lmwang@gmail.com>
 <1644038899-15433-1-git-send-email-lance.lmwang@gmail.com>
 <2283a4d0-13ce-e7f6-7dce-9bef53a76280@passwd.hu>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <2283a4d0-13ce-e7f6-7dce-9bef53a76280@passwd.hu>
Subject: Re: [FFmpeg-devel] [PATCH v2 1/3] avformat/udp: use one setsockopt
 for ipv4/ipv6
X-BeenThere: ffmpeg-devel@ffmpeg.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: FFmpeg development discussions and patches <ffmpeg-devel.ffmpeg.org>
List-Unsubscribe: <https://ffmpeg.org/mailman/options/ffmpeg-devel>,
 <mailto:ffmpeg-devel-request@ffmpeg.org?subject=unsubscribe>
List-Archive: <https://ffmpeg.org/pipermail/ffmpeg-devel>
List-Post: <mailto:ffmpeg-devel@ffmpeg.org>
List-Help: <mailto:ffmpeg-devel-request@ffmpeg.org?subject=help>
List-Subscribe: <https://ffmpeg.org/mailman/listinfo/ffmpeg-devel>,
 <mailto:ffmpeg-devel-request@ffmpeg.org?subject=subscribe>
Reply-To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: ffmpeg-devel-bounces@ffmpeg.org
Sender: "ffmpeg-devel" <ffmpeg-devel-bounces@ffmpeg.org>
Archived-At: <https://master.gitmailbox.com/ffmpegdev/20220205121001.GB19456@gmail.com/>
List-Archive: <https://master.gitmailbox.com/ffmpegdev/>
List-Post: <mailto:ffmpegdev@gitmailbox.com>

On Sat, Feb 05, 2022 at 10:58:08AM +0100, Marton Balint wrote:
> 
> 
> On Sat, 5 Feb 2022, lance.lmwang@gmail.com wrote:
> 
> > From: Limin Wang <lance.lmwang@gmail.com>
> > 
> > Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
> > ---
> > libavformat/udp.c | 31 ++++++++++++++++++++-----------
> > 1 file changed, 20 insertions(+), 11 deletions(-)
> > 
> > diff --git a/libavformat/udp.c b/libavformat/udp.c
> > index 83c042d..3dc79eb 100644
> > --- a/libavformat/udp.c
> > +++ b/libavformat/udp.c
> > @@ -162,22 +162,31 @@ 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)");
> > +        case AF_INET6:
> > +            protocol = IPPROTO_IPV6;
> > +            cmd      = IPV6_MULTICAST_HOPS;
> > +            break;
> > +#endif
> > +        default:
> > +            errno = EAFNOSUPPORT;
> 
> This is not portable, ff_neterrno is different for winsock. Maybe you should
> simply remove the default case, to make it work like the old code, and not
> mix behaviour changes with factorization.

OK, will remove the default case to same with old code.

> 
> >             return ff_neterrno();
> > -        }
> >     }
> > -#endif
> > +
> > +    if (setsockopt(sockfd, protocol, cmd, &mcastTTL, sizeof(mcastTTL)) < 0) {
> > +        ff_log_net_error(logctx, AV_LOG_ERROR, "setsockopt");
> 
> "setsockopt(IPV4/IPV6 MULTICAST TTL)", so we know that the issue was with
> TTL setting?

Sure, it looks better. will update the patch.

> 
> Thanks,
> Marton
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 
> To unsubscribe, visit link above, or email
> ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

-- 
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-request@ffmpeg.org with subject "unsubscribe".