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 8C01B40C10
	for <ffmpegdev@gitmailbox.com>; Sat,  5 Feb 2022 12:07:12 +0000 (UTC)
Received: from [127.0.1.1] (localhost [127.0.0.1])
	by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 99F5868B366;
	Sat,  5 Feb 2022 14:07:09 +0200 (EET)
Received: from mail-pg1-f169.google.com (mail-pg1-f169.google.com
 [209.85.215.169])
 by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 5709168B2FF
 for <ffmpeg-devel@ffmpeg.org>; Sat,  5 Feb 2022 14:07:03 +0200 (EET)
Received: by mail-pg1-f169.google.com with SMTP id g20so7290066pgn.10
 for <ffmpeg-devel@ffmpeg.org>; Sat, 05 Feb 2022 04:07:03 -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=vNqXXBGiJSv99fkyFqv+shZLKBSUfv96qe9h7IhrmoQ=;
 b=W1+RLTAl1lZsasfZGT4AZN2MkRsMRNPFS8JrHU2XAl6eCHx50zVvDvsGinrxWq1xsf
 Qg70eZwtWMppcGGRvkCYErXV2HGx+rv/ih7tyFXaUcV6XP0azABQsN0x6fkYunYbLCN2
 ACFqpnTwVLI0oV5HKbql+VQqS6iY8lx1EzwfoS3cK7RQK6eZNcL+ATqujVtt0njSPCDI
 mND4qJ6NoGbV0dFvBoFNUi2puHwE9TXAtwjWSqmrUgIjVwYNtSFbxLjs5R43Mvy8dHyq
 IbjY/jpgQAKM3tdzVMZJdki/cxprfDAywrmmF2hDLh0Qbn0krdjb+EZKrF6vwISj2yvS
 Ppjw==
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=vNqXXBGiJSv99fkyFqv+shZLKBSUfv96qe9h7IhrmoQ=;
 b=SpwhESPno13PifT1WrYOjgYEcPDUQmHLXbP8z3UGtrjG1ZH6c20varucC7GLQ1ChUD
 2a5wBq08od5atWKWlDebWO8WO8GmS/1ZbR+Y+rIVXnaxT6AkXA5YhOeBjZv1qRFJrx/a
 qOo0RoNmPISiwL+v/VyoNS+7VEDxbCY3N4kUwiim+zOGSUlatM/S4yIxe1xy11lwshoP
 dSARN4Pezm3qD0sembxgT3ZkJyNAPgHJsCsrnHFyZxJMXPfLT9OG3qXxo9UA4pfxEkkr
 06YQY+NgQiGMICxtlYbi5/3hy+Tw3vxzhko/AFhGiQDCdHIltcNawSjkvOiTTMNJD4p0
 xUnw==
X-Gm-Message-State: AOAM531q+Hl1jMUUP9nX1IKPfYVN+mwmZt6HiZ+jb1diMDBMhbvNB7H4
 n2d+3nt+JfGhaA29aaAiDHHbctqw5XQ=
X-Google-Smtp-Source: ABdhPJwK9vr5spG9J3nefLBNjbrwvkmEFuiF/Zx8nzyJIlSYxfcqDUjI+Ojfda6/eYft7+YqBB9Ukw==
X-Received: by 2002:a63:8649:: with SMTP id x70mr1476850pgd.361.1644062821063; 
 Sat, 05 Feb 2022 04:07:01 -0800 (PST)
Received: from gmail.com ([161.117.202.209])
 by smtp.gmail.com with ESMTPSA id d8sm6480628pfv.64.2022.02.05.04.06.59
 for <ffmpeg-devel@ffmpeg.org>
 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128);
 Sat, 05 Feb 2022 04:07:00 -0800 (PST)
Date: Sat, 5 Feb 2022 20:06:57 +0800
From: lance.lmwang@gmail.com
To: ffmpeg-devel@ffmpeg.org
Message-ID: <20220205120657.GA19456@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>
 <1644038899-15433-2-git-send-email-lance.lmwang@gmail.com>
 <f2ed244-1cb3-e933-c4c-b668dcc936c4@passwd.hu>
MIME-Version: 1.0
Content-Disposition: inline
In-Reply-To: <f2ed244-1cb3-e933-c4c-b668dcc936c4@passwd.hu>
Subject: Re: [FFmpeg-devel] [PATCH v2 2/3] avformat/udp: Fix
 IP_MULTICAST_TTL for BSD compatibility
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/20220205120657.GA19456@gmail.com/>
List-Archive: <https://master.gitmailbox.com/ffmpegdev/>
List-Post: <mailto:ffmpegdev@gitmailbox.com>

On Sat, Feb 05, 2022 at 10:59:55AM +0100, Marton Balint wrote:
> 
> 
> On Sat, 5 Feb 2022, lance.lmwang@gmail.com wrote:
> 
> > From: Limin Wang <lance.lmwang@gmail.com>
> > 
> > Suggested by zhilizhao, vlc project has solved the compatibility by
> > the same way, so I borrowed the comments from vlc project.
> > 
> > Fix #ticket9449
> > 
> > Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
> > ---
> > libavformat/udp.c | 15 +++++++++++++--
> > 1 file changed, 13 insertions(+), 2 deletions(-)
> > 
> > diff --git a/libavformat/udp.c b/libavformat/udp.c
> > index 3dc79eb..34488d6 100644
> > --- a/libavformat/udp.c
> > +++ b/libavformat/udp.c
> > @@ -164,6 +164,10 @@ static int udp_set_multicast_ttl(int sockfd, int mcastTTL,
> > {
> >     int protocol, cmd;
> > 
> > +    /* There is some confusion in the world whether IP_MULTICAST_TTL
> > +     * takes a byte or an int as an argument.
> > +     * BSD seems to indicate byte so we are going with that and use
> > +     * int as a fallback to be safe */
> 
> The code does the opposite. Tries int and falls back to byte. Either change
> code or change comment.

Yes, good catch, so vlc use wrong comments. I'll change comments like below.
+     * BSD seems to indicate byte so we are going with that and tries
+     * int and falls back to byte to be safe */

> 
> Regards,
> Marton
> 
> >     switch (addr->sa_family) {
> > #ifdef IP_MULTICAST_TTL
> >         case AF_INET:
> > @@ -183,8 +187,15 @@ static int udp_set_multicast_ttl(int sockfd, int mcastTTL,
> >     }
> > 
> >     if (setsockopt(sockfd, protocol, cmd, &mcastTTL, sizeof(mcastTTL)) < 0) {
> > -        ff_log_net_error(logctx, AV_LOG_ERROR, "setsockopt");
> > -        return ff_neterrno();
> > +        /* BSD compatibility */
> > +        unsigned char ttl;
> > +
> > +        ff_log_net_error(logctx, AV_LOG_DEBUG, "setsockopt");
> > +        ttl = (unsigned char)(( mcastTTL > 255 ) ? 255 : mcastTTL);
> > +        if (setsockopt(sockfd, protocol, cmd, &ttl, sizeof(ttl)) < 0) {
> > +            ff_log_net_error(logctx, AV_LOG_ERROR, "setsockopt");
> > +            return ff_neterrno();
> > +        }
> >     }
> > 
> >     return 0;
> > -- 
> > 1.8.3.1
> > 
> > _______________________________________________
> > 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".
> > 
> _______________________________________________
> 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".