diff mbox series

[FFmpeg-devel] Extend the PATH buffer to 2048 for RTSP

Message ID 20240807070301.nxz6653ipwtspr3y@nanos8.pcteor1.mi.infn.it
State New
Headers show
Series [FFmpeg-devel] Extend the PATH buffer to 2048 for RTSP | expand

Checks

Context Check Description
yinshiyou/configure_loongarch64 warning Failed to apply patch

Commit Message

Stefano Mandelli Aug. 7, 2024, 7:03 a.m. UTC
Recently, I have been experiencing an increasing number
of user that use ffmpeg to retrive RTSP stream from
personal mediaproxies (e.g. MediaMtx) with
authorization based on JWT. The current length of PATH
does not permit to insert the token in the URL failing
the authorization with no possibilities to get the video.

VLC has just modified the RSTP max URL length, and it
permits to use token inside the URL.

For these reasons, I propose this patch to extend the
PATH buffer from 1024 to 2048 in order to use tokens
and the authorization process based on JWT.

Comments

Michael Niedermayer Aug. 8, 2024, 4:09 p.m. UTC | #1
On Wed, Aug 07, 2024 at 09:03:01AM +0200, Stefano Mandelli wrote:
> Recently, I have been experiencing an increasing number
> of user that use ffmpeg to retrive RTSP stream from
> personal mediaproxies (e.g. MediaMtx) with
> authorization based on JWT. The current length of PATH
> does not permit to insert the token in the URL failing
> the authorization with no possibilities to get the video.
> 
> VLC has just modified the RSTP max URL length, and it
> permits to use token inside the URL.
> 
> For these reasons, I propose this patch to extend the
> PATH buffer from 1024 to 2048 in order to use tokens
> and the authorization process based on JWT.
> 
> 
> diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c
> index 19b93df839..d8f45cf8d5 100644
> --- a/libavformat/rtsp.c
> +++ b/libavformat/rtsp.c
> @@ -1727,7 +1727,7 @@ void ff_rtsp_close_connections(AVFormatContext *s)
>  int ff_rtsp_connect(AVFormatContext *s)
>  {
>      RTSPState *rt = s->priv_data;
> -    char proto[128], host[1024], path[1024];
> +    char proto[128], host[1024], path[2048];
>      char tcpname[1024], cmd[MAX_URL_SIZE], auth[128];
>      const char *lower_rtsp_proto = "tcp";
> 	 int port, err, tcp_fd;

error: corrupt patch at line 13

[...]
Marton Balint Aug. 26, 2024, 9:24 p.m. UTC | #2
On Thu, 8 Aug 2024, Michael Niedermayer wrote:

> On Wed, Aug 07, 2024 at 09:03:01AM +0200, Stefano Mandelli wrote:
>> Recently, I have been experiencing an increasing number
>> of user that use ffmpeg to retrive RTSP stream from
>> personal mediaproxies (e.g. MediaMtx) with
>> authorization based on JWT. The current length of PATH
>> does not permit to insert the token in the URL failing
>> the authorization with no possibilities to get the video.
>>
>> VLC has just modified the RSTP max URL length, and it
>> permits to use token inside the URL.
>>
>> For these reasons, I propose this patch to extend the
>> PATH buffer from 1024 to 2048 in order to use tokens
>> and the authorization process based on JWT.
>>
>>
>> diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c
>> index 19b93df839..d8f45cf8d5 100644
>> --- a/libavformat/rtsp.c
>> +++ b/libavformat/rtsp.c
>> @@ -1727,7 +1727,7 @@ void ff_rtsp_close_connections(AVFormatContext *s)
>>  int ff_rtsp_connect(AVFormatContext *s)
>>  {
>>      RTSPState *rt = s->priv_data;
>> -    char proto[128], host[1024], path[1024];
>> +    char proto[128], host[1024], path[2048];
>>      char tcpname[1024], cmd[MAX_URL_SIZE], auth[128];
>>      const char *lower_rtsp_proto = "tcp";
>> 	 int port, err, tcp_fd;
>
> error: corrupt patch at line 13

Will apply with the whitespace corruption fixed.

Thanks,
Marton
diff mbox series

Patch

diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c
index 19b93df839..d8f45cf8d5 100644
--- a/libavformat/rtsp.c
+++ b/libavformat/rtsp.c
@@ -1727,7 +1727,7 @@  void ff_rtsp_close_connections(AVFormatContext *s)
 int ff_rtsp_connect(AVFormatContext *s)
 {
     RTSPState *rt = s->priv_data;
-    char proto[128], host[1024], path[1024];
+    char proto[128], host[1024], path[2048];
     char tcpname[1024], cmd[MAX_URL_SIZE], auth[128];
     const char *lower_rtsp_proto = "tcp";
	 int port, err, tcp_fd;