From: Andy Green Date: Thu, 23 Mar 2017 11:30:12 +0000 (+0800) Subject: spa: reject junk after finalization X-Git-Tag: accepted/tizen/4.0/unified/20171012.191640~162 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=311e3a585da2b34ac592ecf7212444f1f1e683cc;p=platform%2Fupstream%2Flibwebsockets.git spa: reject junk after finalization --- diff --git a/lib/server.c b/lib/server.c index 606402e..0eaf964 100644 --- a/lib/server.c +++ b/lib/server.c @@ -2952,6 +2952,8 @@ struct lws_spa { char *storage; char *end; int max_storage; + + char finalized; }; static int @@ -3067,6 +3069,10 @@ lws_spa_process(struct lws_spa *ludspa, const char *in, int len) lwsl_err("%s: NULL spa\n", __func__); return -1; } + /* we reject any junk after the last part arrived and we finalized */ + if (ludspa->finalized) + return 0; + return lws_urldecode_s_process(ludspa->s, in, len); } @@ -3096,6 +3102,8 @@ lws_spa_finalize(struct lws_spa *spa) spa->s = NULL; } + spa->finalized = 1; + return 0; }