From d176f9038711e497b32f1431e60e4e3da94179d1 Mon Sep 17 00:00:00 2001
From: "Ronald S. Bultje" <rsbultje@gmail.com>
Date: Tue, 3 Mar 2009 13:26:17 +0000
Subject: [PATCH] Reduce allocated length of the HTTP authentication request
 field buffer, as noticed by Stefano and Luca in the "[PATCH]RTSP Basic
 Authentication" mailinglist thread.

av_base64_encode() was recently changed. The previous implementation required
12 extra bytes (ceil(len(src)/3.)*4+12), whereas the new one is guaranteed to
fit in an exact buffer (ceil(len(src)/3.)*4), plus one extra byte for the
trailing zero. This change fixes no bug, it just slightly decreases the
amount of allocated memory.

Originally committed as revision 17761 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 libavformat/http.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavformat/http.c b/libavformat/http.c
index 2e6a1db20ae..039ef7bbc56 100644
--- a/libavformat/http.c
+++ b/libavformat/http.c
@@ -212,7 +212,7 @@ static int http_connect(URLContext *h, const char *path, const char *hoststr,
     int post, err, ch;
     char line[1024], *q;
     char *auth_b64;
-    int auth_b64_len = strlen(auth)* 4 / 3 + 12;
+    int auth_b64_len = (strlen(auth) + 2) / 3 * 4 + 1;
     int64_t off = s->off;
 
 
-- 
GitLab