aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2013-10-09 00:30:46 +0200
committerMichael Niedermayer <michaelni@gmx.at>2013-10-09 00:55:38 +0200
commit2a7bdbf67efbb7061957f52ef81f49e6c06cfd54 (patch)
treeb50d59c2c272faf9135c78a190ab3b7f998fea26
parent653cdf42ee90d11b96c364c7fe627072e33abf32 (diff)
downloadffmpeg-2a7bdbf67efbb7061957f52ef81f49e6c06cfd54.tar.gz
ffserver: strip odd chars from html error messages before sending them back
Fixes Ticket3034 Signed-off-by: Michael Niedermayer <michaelni@gmx.at> (cherry picked from commit 885739f3b4ca3fb60abf417120845e3fcfb99b53) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--ffserver.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/ffserver.c b/ffserver.c
index f2cf67f694..9b2ce990d2 100644
--- a/ffserver.c
+++ b/ffserver.c
@@ -328,6 +328,14 @@ static AVLFG random_state;
static FILE *logfile = NULL;
+static void htmlstrip(char *s) {
+ while (s && *s) {
+ s += strspn(s, "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ,. ");
+ if (*s)
+ *s++ = '?';
+ }
+}
+
static int64_t ffm_read_write_index(int fd)
{
uint8_t buf[8];
@@ -1887,6 +1895,7 @@ static int http_parse_request(HTTPContext *c)
send_error:
c->http_error = 404;
q = c->buffer;
+ htmlstrip(msg);
snprintf(q, c->buffer_size,
"HTTP/1.0 404 Not Found\r\n"
"Content-type: text/html\r\n"