From patchwork Fri Nov 17 21:38:42 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dale Curtis X-Patchwork-Id: 6144 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.2.161.94 with SMTP id m30csp1126132jah; Fri, 17 Nov 2017 13:39:13 -0800 (PST) X-Google-Smtp-Source: AGs4zMahYb4ZreXM3ZMg5Q4CSUgeS7DXNEIAVSgRXA8vjtdWcFPUh63xcaE3Yk9e+vFLh6FrpI9Y X-Received: by 10.223.138.138 with SMTP id y10mr5578530wry.167.1510954753636; Fri, 17 Nov 2017 13:39:13 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1510954753; cv=none; d=google.com; s=arc-20160816; b=tBGfBWBCKqSSh29d9xIyzZgyU9cUgcXxq6kDfLLDmc6KV0V5lVas392KAwA2fW+KWP 8OzRK6mw17i8GVHDkH9xU98PBqpk0GsrBmr2Evz43YAcLFTt7N5mG8gDGPSwiz/9WXbi ngtkGBRhWTOEAhBOuMvIxi8MxG26e7ytZKUtAeRxbvndrTePDZd6QrkR07XttOrEBnuh hVFZFQbcCwOOgIJZfjLiHoI+3edl98XxiDwYn2VCS1waqHZafmSjgTbuUcJEY8zeZ/AA WiBBoYK+ZFc0stSentUcnwqkhYqYQ+1YBHnkbAVZUQd+SPQVM3rljFwuLXi8SMhLCOTn afJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:reply-to:list-subscribe:list-help:list-post :list-archive:list-unsubscribe:list-id:precedence:subject:to :message-id:date:from:mime-version:dkim-signature:dkim-signature :delivered-to:arc-authentication-results; bh=1pCCyuBcEwYPvZUo924UvJV3ix2+rOCUf6CuJJ6d+Yk=; b=Ih6qOzYT9X6SzzUcR9cQ8TxK8I9GTpBnjccm87KwuXQAZPw8LLOXsc9alkMLwlBaaM bLlpx2kuRF2XFsoS/TL0vZq4N14fVPZq1C6PVc7IuIWwsASCsyc6MU23ZyuGxBZoCo4l BdTy6I7nByTWV6sDrkGDXmetqB8O8pWRR3omXPjM8VVUxMMZEoPro2/3wUH5tE3IV0DU GczUAL6lhLLfbR25iKt11+klutDmnZiHOQbz3gobrd0WM0dZxzxLfR6YuwOn1G+ivCu8 GKHXDiVfGCbnyvsK8m+JYRp7YCEVAyE95rREY5FxV4YgMuC31/shXDiZkmKlyJcBmYAJ EWtQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@google.com header.s=20161025 header.b=VUVpPHgG; dkim=neutral (body hash did not verify) header.i=@chromium.org header.s=google header.b=eEQA72Qo; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=chromium.org Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id b98si3588088wrd.541.2017.11.17.13.39.12; Fri, 17 Nov 2017 13:39:13 -0800 (PST) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@google.com header.s=20161025 header.b=VUVpPHgG; dkim=neutral (body hash did not verify) header.i=@chromium.org header.s=google header.b=eEQA72Qo; spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=chromium.org Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 87ADC689822; Fri, 17 Nov 2017 23:38:55 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wr0-f177.google.com (mail-wr0-f177.google.com [209.85.128.177]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id BAC586891E1 for ; Fri, 17 Nov 2017 23:38:48 +0200 (EET) Received: by mail-wr0-f177.google.com with SMTP id z75so1888367wrc.5 for ; Fri, 17 Nov 2017 13:39:05 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=mime-version:sender:from:date:message-id:subject:to; bh=tSqAilQMnEWlwkzmO7caCf+I3tIdMHYGqj+Gqv4c6Rk=; b=VUVpPHgGMsUWtq5ayv6n/eud/SfD4hrfbYTnU/8P1Eky7jhnERrktiyeBoPKPxBv1/ kmau8M34Jjy1b4+nn46uckuBd6fvkiyO6t0prb33/GJ4EcR/LEM0jKJEMAQ1dlV6GPd6 airfv0LRgacZSCunafNfQCZl9nzFNQQYKZvsW4ef5MIQClQmGozd0izIdGeufYzud3P4 pxQN5guKZk3+RwOcSgpCxMUAgILTIJohqk0f0ccFyJjqmgKxoGpyJNOdagleJb7AAjyn /WkVIIG5N6bncjggTeANo3dVJerM7YaaedYgf1+8c1tkX1XrH43Lkh4G3ELKUR0CIvXx fKPQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; h=mime-version:sender:from:date:message-id:subject:to; bh=tSqAilQMnEWlwkzmO7caCf+I3tIdMHYGqj+Gqv4c6Rk=; b=eEQA72QokO/WXo1TFQdtHzvPXKjPYK7DDKD65Jkv4nMa9v1aCmJYdnhP7uhjSZTsdS R1mmM4qPKw0FExI052GBp5kyTlYZ+lQbFle7W1ANv5c0OhxxRpSioPGhU2rh+3v1HCUw 4AUiF9B+dYdgBJFFEW5Qkgal4crAqTX3uSItk= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:from:date:message-id:subject :to; bh=tSqAilQMnEWlwkzmO7caCf+I3tIdMHYGqj+Gqv4c6Rk=; b=TcAmV6OwbOFE0KadHh3/8XO/b/DBpsYRyo7XEpGAGOSxXw+ztmD2xvlg6sC4W1p3r8 rhlETo8vcugln5RcD9Ub3S5ecX7ToTdsJCnIY0nHQe5KlphwGAUrZrZxIvmCtmGSUNvX 1q+7G73JAevzUw19q/nY4cqyA5CTXGcol9QUAEJXOQSJYg5d6k+suyEFkpGbPNEiI/7W FcPs/2Qkg2B3gxIZeguyo9ULv1mMX4k5J7aMyppFSV7ckckHo+pR372Bs99s6eXxDFwb lczILK+nkOyGbxtI9Qz9mxetvDIOaf4huM4ysCtTFLjVn377PBWSS8fj4uON8TtUIN5Q JzBw== X-Gm-Message-State: AJaThX5VnH733V1i3tNTKlyrzVUokBU5GmU6vIZ73DsTN5clG6mRPZc+ lkBio1N4O6cDwjvPdcn2nDObOoASPPiXvC+W8gSNk7k0UEg= X-Received: by 10.223.165.89 with SMTP id j25mr5739019wrb.206.1510954743606; Fri, 17 Nov 2017 13:39:03 -0800 (PST) MIME-Version: 1.0 Received: by 10.28.161.4 with HTTP; Fri, 17 Nov 2017 13:38:42 -0800 (PST) From: Dale Curtis Date: Fri, 17 Nov 2017 13:38:42 -0800 X-Google-Sender-Auth: uVICy4nw-miIZicsnzeC1RZH68U Message-ID: To: FFmpeg development discussions and patches X-Content-Filtered-By: Mailman/MimeDel 2.1.20 Subject: [FFmpeg-devel] [avformat] Prevent undefined shift with wrap_bits > 63. X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" 2 << (wrap_bits=64 - 1) does not fit in int64_t; apply the check used in other places that handle wrap bits to ensure the values are <= 63. Signed-off-by: Dale Curtis From c566067623760a24f729ac5197c20531b9e518ae Mon Sep 17 00:00:00 2001 From: Dale Curtis Date: Fri, 17 Nov 2017 13:35:56 -0800 Subject: [PATCH] [avformat] Prevent undefined shift with wrap_bits > 63. 2 << (wrap_bits=64 - 1) does not fit in int64_t; apply the check used in other places that handle wrap bits to ensure the values are <= 63. Signed-off-by: Dale Curtis --- libavformat/utils.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavformat/utils.c b/libavformat/utils.c index ff5e14df6c..50bc6ca62d 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -1738,8 +1738,8 @@ int av_read_frame(AVFormatContext *s, AVPacket *pkt) // current one had no dts, we will set this to AV_NOPTS_VALUE. int64_t last_dts = next_pkt->dts; while (pktl && next_pkt->pts == AV_NOPTS_VALUE) { - if (pktl->pkt.stream_index == next_pkt->stream_index && - (av_compare_mod(next_pkt->dts, pktl->pkt.dts, 2LL << (wrap_bits - 1)) < 0)) { + if (pktl->pkt.stream_index == next_pkt->stream_index && wrap_bits <= 63 && + av_compare_mod(next_pkt->dts, pktl->pkt.dts, 2LL << (wrap_bits - 1)) < 0) { if (av_compare_mod(pktl->pkt.pts, pktl->pkt.dts, 2LL << (wrap_bits - 1))) { // not B-frame next_pkt->pts = pktl->pkt.dts; -- 2.15.0.448.gf294e3d99a-goog