From patchwork Mon Oct 2 09:15:38 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: mezhuevtp@ispras.ru X-Patchwork-Id: 44090 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:1204:b0:15d:8365:d4b8 with SMTP id v4csp1277120pzf; Mon, 2 Oct 2023 02:16:15 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGTiwpBf3kFFVIUj+j5lnSnIj58wIViOcJz4LekjLSfdp3ZzO3FHfMcN74RVqkXj4LDrJ1w X-Received: by 2002:a17:906:738a:b0:9ae:519f:8287 with SMTP id f10-20020a170906738a00b009ae519f8287mr8779281ejl.77.1696238175359; Mon, 02 Oct 2023 02:16:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1696238175; cv=none; d=google.com; s=arc-20160816; b=yaX5vPE5oGXtD+x6cahCVmhKjcIebDukCPKkO7cTJ3/oWu2Cr9JkJXDJ/WJHvxn26j e1EAJzRPXPIzcdQp4Wgok10YcvDK8NVXbkyVMcKtQgV+zJxsEA5M97dc+sr0iqHIF3bs rrm6dg6MPcI4g6GuRDJl9TeekdRKBVQ7PvrzrI5SSUhEjLtKwtrbRAHmQcActJ1Qivww i07cB+wkqpIs6jk0s2Lws6xk5GVfEcTFzhTcSN7tGNUOxo8MXACbQsWmii0rvp22xuCR ENrGNktGe7VL+o+c51YWfkTmf/myThfKiGnQYkvRS3QvtqgIb7JaMoobfatR3bu0k6Ws KZww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:message-id:date:to:from :dkim-signature:dkim-filter:delivered-to; bh=ZY4+DqW3ks36OHyKGvPa7l8GohHH7V5i3ajCTODHfJ4=; fh=N5ZEAcbS/qNmXhnh007L0O2hfBv3whDN0oICTLe1blQ=; b=eHAI4seJkTQ5plun93r3gcBclM1ZBuoto5x6vZ0ZjFJmoRhpia83MmM2Fx0w/DpE9u As+gmRZO2zzF8F453Usa2Mnn5bQPzSnabhJj4Nicue1voGVt4C5b0WfDKy5IYxFm0MKg RnnTelsrivXkPNbtnN/s7ixrbnBSalwScQgOTQOEqWqoFbXNjlH4Eu/PoUDO5Vd8YhKb PcDG/tmr2Z4JaK8W6l/XQK1pu+VwbfGrDuy3j4cMzPYBPKqaY5a3TgmdNQcVFF4CEjom oPyWr2AS1CeuwxCwYwUErA2gjkQEcvioej7iS5J6HYtNEBy3IQAoiSJeQtqrttCjBC7T Xxww== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@ispras.ru header.s=default header.b=pHEmp9jZ; 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=ispras.ru Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id z19-20020a1709063a1300b0099c05358e75si18214769eje.759.2023.10.02.02.16.14; Mon, 02 Oct 2023 02:16:15 -0700 (PDT) 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=@ispras.ru header.s=default header.b=pHEmp9jZ; 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=ispras.ru Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id C28B568CC60; Mon, 2 Oct 2023 12:16:11 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail.ispras.ru (mail.ispras.ru [83.149.199.84]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id F333768CBDA for ; Mon, 2 Oct 2023 12:16:05 +0300 (EEST) Received: from nick.intra.ispras.ru (unknown [10.10.34.56]) by mail.ispras.ru (Postfix) with ESMTPSA id 96369400FC5B; Mon, 2 Oct 2023 09:16:03 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.11.0 mail.ispras.ru 96369400FC5B DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ispras.ru; s=default; t=1696238163; bh=xSqiMIVhlbkDJHRkyIlOZM7JX2vCpObjnafJ5fIUobg=; h=From:To:Cc:Subject:Date:From; b=pHEmp9jZg1DXjg8bnl5haCVUFaDu/FSYLAoT10ktOZFsEg65OSIYBiZ72QuHVYq5a GQLFXGrtxXfGj1W3DooPlsTVbzoh8IMNdY2dh1WZKTfuPaYjpgPGQtQtirfhJUsdNm piR/HCJ7HY96pEHaBENpOpurEmWvbbj9j3EwOzII= From: mezhuevtp@ispras.ru To: ffmpeg-devel@ffmpeg.org Date: Mon, 2 Oct 2023 12:15:38 +0300 Message-Id: <20231002091538.4179516-1-mezhuevtp@ispras.ru> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] libavformat/svs.c: Numeric Truncation in svs.c:57. Added a checker for valid sample_rate value. X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 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 Cc: mezhuevtp@ispras.ru, headshog Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: mkmuIk+hyevT From: headshog --- libavformat/svs.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/libavformat/svs.c b/libavformat/svs.c index b91d29f5a6..bdfb856184 100644 --- a/libavformat/svs.c +++ b/libavformat/svs.c @@ -42,6 +42,7 @@ static int svs_read_header(AVFormatContext *s) { AVStream *st; uint32_t pitch; + int64_t rescale_val; st = avformat_new_stream(s, NULL); if (!st) @@ -51,10 +52,14 @@ static int svs_read_header(AVFormatContext *s) pitch = avio_rl32(s->pb); avio_skip(s->pb, 12); + rescale_val = av_rescale_rnd(pitch, 48000, 4096, AV_ROUND_INF); + if (rescale_val > INT_MAX) + return AVERROR(ERANGE); + st->codecpar->codec_type = AVMEDIA_TYPE_AUDIO; st->codecpar->codec_id = AV_CODEC_ID_ADPCM_PSX; st->codecpar->ch_layout = (AVChannelLayout)AV_CHANNEL_LAYOUT_STEREO; - st->codecpar->sample_rate = av_rescale_rnd(pitch, 48000, 4096, AV_ROUND_INF); + st->codecpar->sample_rate = rescale_val; st->codecpar->block_align = 32; st->start_time = 0; if (s->pb->seekable & AVIO_SEEKABLE_NORMAL)