Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: Rashad Tatum <tatum.rashad@gmail.com>
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Subject: Re: [FFmpeg-devel] [PATCH v5 2/3] libavformat/rtsp: Free memory allocated for temporary variables while processing sdp info
Date: Wed, 26 Feb 2025 08:19:22 -0500
Message-ID: <CAAdWAtPmi2moPJOjSTrCV5XBp5xqfd-QnzksqDagq4y_MjWMMw@mail.gmail.com> (raw)
In-Reply-To: <CAAdWAtNk2J7TPkdKdL4s2gCgU2m1ThNH2HYmT266HvNzox1MxA@mail.gmail.com>

I'll submit a separate patch for this issue

On Wed, Feb 26, 2025, 8:18 AM Rashad Tatum <tatum.rashad@gmail.com> wrote:

> So, perhaps sdp_parse_line should not be void and should propagate an
> error code up that should be returned by ff_sdp_parse.
>
> On Wed, Feb 26, 2025, 8:16 AM Rashad Tatum <tatum.rashad@gmail.com> wrote:
>
>> In other parts of the ffmpeg code base where the return type is not void
>> for the function, NULL is returned and then the caller typically returns
>> AVERROR.
>>
>> Strangely, sdp_parse_line is void and it seems like ff_sdp_parse always
>> returns 0, despite the caller (sdp_read_header) attempting to handle any
>> potential returned error codes.
>>
>> On Wed, Feb 26, 2025, 7:52 AM Rashad Tatum <tatum.rashad@gmail.com>
>> wrote:
>>
>>> As a side note,  I think the failure of the rtsp_src memory allocation
>>> should also log an error so that the user is aware of why the rtsp stream
>>> failed to play. However, I think this change should be part of separate
>>> patch series.
>>>
>>> On Wed, Feb 26, 2025, 7:14 AM Rashad Tatum <tatum.rashad@gmail.com>
>>> wrote:
>>>
>>>> Ok. I'll move this and the third patch to one commit/patch and also
>>>> change the condition when rtsp_src can't be allocated to also free
>>>> dest_addr. Good catch.
>>>>
>>>>
>>>> On Wed, Feb 26, 2025, 3:53 AM Andreas Rheinhardt <
>>>> andreas.rheinhardt@outlook.com> wrote:
>>>>
>>>>> Rashad Tatum:
>>>>> > ---
>>>>> >  libavformat/rtsp.c | 2 ++
>>>>> >  1 file changed, 2 insertions(+)
>>>>> >
>>>>> > diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c
>>>>> > index 0c65f8d1a4..ac17717195 100644
>>>>> > --- a/libavformat/rtsp.c
>>>>> > +++ b/libavformat/rtsp.c
>>>>> > @@ -478,6 +478,7 @@ static void sdp_parse_line(AVFormatContext *s,
>>>>> SDPParseState *s1,
>>>>> >                                                sdp_ip_str);
>>>>> >
>>>>> >          }
>>>>> > +        av_freep(&sdp_ip_str);
>>>>> >          break;
>>>>> >      case 's':
>>>>> >          av_dict_set(&s->metadata, "title", p, 0);
>>>>> > @@ -702,6 +703,7 @@ static void sdp_parse_line(AVFormatContext *s,
>>>>> SDPParseState *s1,
>>>>> >                      }
>>>>> >                  }
>>>>> >              }
>>>>> > +            av_freep(&dest_addr);
>>>>> >          } else {
>>>>> >              if (rt->server_type == RTSP_SERVER_WMS)
>>>>> >                  ff_wms_parse_sdp_a_line(s, p);
>>>>>
>>>>> Your first patch introduces a memleak; the stuff you allocated there
>>>>> should be freed in the patch, not fixed up in a later patch.
>>>>> (Also note that there must not be a leak in any error path, which is
>>>>> not
>>>>> true when your patchset is applied: dest_addr leaks when rtsp_src can't
>>>>> be allocated.)
>>>>>
>>>>> - Andreas
>>>>>
>>>>> _______________________________________________
>>>>> 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".

  reply	other threads:[~2025-02-26 13:19 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-02-26  4:01 [FFmpeg-devel] [PATCH v5 1/3] libavformat/rtsp: Make source specific multicast work for rtsp streams Rashad Tatum
2025-02-26  4:01 ` [FFmpeg-devel] [PATCH v5 2/3] libavformat/rtsp: Free memory allocated for temporary variables while processing sdp info Rashad Tatum
2025-02-26  8:52   ` Andreas Rheinhardt
2025-02-26 12:14     ` Rashad Tatum
2025-02-26 12:52       ` Rashad Tatum
2025-02-26 13:16         ` Rashad Tatum
2025-02-26 13:18           ` Rashad Tatum
2025-02-26 13:19             ` Rashad Tatum [this message]
2025-02-26  4:01 ` [FFmpeg-devel] [PATCH v5 3/3] libavformat/rtsp: Fix playback of sdp files from http urls Rashad Tatum

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAAdWAtPmi2moPJOjSTrCV5XBp5xqfd-QnzksqDagq4y_MjWMMw@mail.gmail.com \
    --to=tatum.rashad@gmail.com \
    --cc=ffmpeg-devel@ffmpeg.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git