diff options
author | Limin Wang <lance.lmwang@gmail.com> | 2022-02-07 18:22:02 +0800 |
---|---|---|
committer | Limin Wang <lance.lmwang@gmail.com> | 2022-02-12 08:41:55 +0800 |
commit | 1de24ee5120b175f38fa42a6b1fbfeeb9f4a50d5 (patch) | |
tree | 9b7993a76fafe628470a624e127cfb76b89978bf /libavformat/udp.c | |
parent | 1ca19cf37121c1e162c86b22e0349a7e864faf52 (diff) | |
download | ffmpeg-1de24ee5120b175f38fa42a6b1fbfeeb9f4a50d5.tar.gz |
avformat/udp: properly check for valid ttl in url
Zhao Zhili added a ttl upper bound in commit 9daac85da8,
but the check for ttl in url is missing still.
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
Diffstat (limited to 'libavformat/udp.c')
-rw-r--r-- | libavformat/udp.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/libavformat/udp.c b/libavformat/udp.c index da56c8ee1d..401d9b6275 100644 --- a/libavformat/udp.c +++ b/libavformat/udp.c @@ -674,6 +674,11 @@ static int udp_open(URLContext *h, const char *uri, int flags) } if (av_find_info_tag(buf, sizeof(buf), "ttl", p)) { s->ttl = strtol(buf, NULL, 10); + if (s->ttl < 0 || s->ttl > 255) { + av_log(h, AV_LOG_ERROR, "ttl(%d) should be in range [0,255]\n", s->ttl); + ret = AVERROR(EINVAL); + goto fail; + } } if (av_find_info_tag(buf, sizeof(buf), "udplite_coverage", p)) { s->udplite_coverage = strtol(buf, NULL, 10); |