From patchwork Wed Nov 29 01:42:59 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Almer X-Patchwork-Id: 6433 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.2.161.94 with SMTP id m30csp3917889jah; Tue, 28 Nov 2017 17:43:44 -0800 (PST) X-Google-Smtp-Source: AGs4zMYjPh0c6HG2cVTM4/COkaPeUll7mtS9bAwI9WjD1BRtDT8eKY6RZI3lJfN2dX6uhPq4sFeP X-Received: by 10.223.134.76 with SMTP id 12mr876153wrw.137.1511919824026; Tue, 28 Nov 2017 17:43:44 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1511919823; cv=none; d=google.com; s=arc-20160816; b=zNMNranSclHK1xLOPobfn2LMIbreaOS4qE5zK2rnWHZMAFYTQIrC8pLoFjUQYrfvTC 0eFf/FgZ02x/IAIr9R/7w9CHSNJc0FGMHcakYEEUKQI+Ulbcw14bDNu+xAQu+AiDvJvT +ZPnMIVWK0R/AJphJ33LU6uVnB3/P5lRmubKaahu21OqyoDg/B2oFz9YTo46qDqijbyP pihMx7/rVwpBa1daLcYNsLx8PmsRc3DyW8Kwr+7zRugvlJfakrT5kTIeqaSo3G14b0FZ ABQpwpRlrElbNFspVIDPn+UEpHcyDzI1UJUeYkkV4+/SpqITgRmKetammPJ792aHVqfv j8ow== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:message-id:date:to:from:dkim-signature :delivered-to:arc-authentication-results; bh=mCYpf1E3xRgDbKljXTEuIoLnqlM1nNZn4FBRtg/h6QQ=; b=s8uvYdv/RgeUaO0ofS7lfThNWBpX/ulSvgIaIJj3Bc0Al53cV2tui1sjrmLLZVcJeX ZvkYU+3fwrUMBsEZo1UF/4sSnrS7JVHUzgzbnGIw9g07PFz7ob9wsqAfyAEz+1/dE+mA 7wXXyOsaes9QsAgKQ9vRAxSt6jRsBMXspmvc5rzyBu357z76e4Ss9jhcrOfzvnPoglKN HNXHFtMvO4IvFIAWbNHWSCNie22OKuxbKETpxVnWXJmOWmET0QlErb8hcauqt15ysx2f Nmy2YdmPTB8rNI5ZRS9v6lD6OJocFnYECu8sJKYmAIVkzUpLeqA9J6jROqifkYeTu8dL +drg== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@gmail.com header.s=20161025 header.b=PBlu7V1i; 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=gmail.com Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id a26si357238wrd.396.2017.11.28.17.43.42; Tue, 28 Nov 2017 17:43:43 -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=@gmail.com header.s=20161025 header.b=PBlu7V1i; 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=gmail.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 0B41868A198; Wed, 29 Nov 2017 03:43:39 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-qt0-f194.google.com (mail-qt0-f194.google.com [209.85.216.194]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1796768A101 for ; Wed, 29 Nov 2017 03:43:32 +0200 (EET) Received: by mail-qt0-f194.google.com with SMTP id w10so2456122qtb.10 for ; Tue, 28 Nov 2017 17:43:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:subject:date:message-id; bh=y7De9+okemcdIMUQiTWrbWh58a7tZuzJYH24ZMAO5A0=; b=PBlu7V1iamXj0CWxbO/WpvRHtF9FeHx6q55EfEaMbmAGZp4Y3Wi354lY8ZsqPUhoqB QiEP8bri0smvebhtrTYMMaSa8OEy4/p3g3oYAgfC7x9s8DN8pDoJpDviIOedGsK1Ul9t 3W6uDJN/xINvAwEWEIzg8wpsJ63209PUSFfqg2qdMXpIW2eb6f4MvT71oe3BihBSfjls Sru/G+a2YCdj5tJDOSvMYrh0pe/wOvpjU6TVDpgeL7QxY7d3I8P/fzzmNEupnU3h+DQk TeLXYB0a1yP1I9SdrhFEBnT/BgTcEJ5bMXvwaOpT+cc0Gc1Uf6yE0O09Bkx1HG/HVtGn KA5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id; bh=y7De9+okemcdIMUQiTWrbWh58a7tZuzJYH24ZMAO5A0=; b=GqdGxLJinyvCer9mRAHYGme01GKUalZedCxfKmFg+C/OOIJuuaHMb//BA4vu7gUoW2 oSoTDC4mbIHDYGOJx9fPMHwZcoHDX8A0L48wDSo7XVSZh2b+hSf7WphjOmWRD77TtM3v JmQfPudcaFkL3C0E5OQ+0F5CbZqiBeH+f916+PdFUd33Tkg0WKXKOZwb2W5xXyb1n9m8 IyxDt8IsJz9lIvnkFv1mDjCcm3Cgvjvh2kWZfc1crOav2AfJ4kpniGq2Vr/DA+bQFHtp Nsulpexa+EjyjfzcE0pJxN07PSkAoqaKziCNSP3UY/smoNb6RPEpnG5LZjXj5J6zpQtU x2fA== X-Gm-Message-State: AJaThX6jwWAqXaXlsu1h2r7Yf0xhUizGTjvCLERbHGM8Ml0Pd39+Fg95 YEpA/WqKwZnC6DWUjI40Ef/uxA== X-Received: by 10.200.41.120 with SMTP id z53mr2083168qtz.305.1511919813399; Tue, 28 Nov 2017 17:43:33 -0800 (PST) Received: from localhost.localdomain ([181.231.59.220]) by smtp.gmail.com with ESMTPSA id k7sm407365qkf.57.2017.11.28.17.43.32 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 28 Nov 2017 17:43:32 -0800 (PST) From: James Almer To: ffmpeg-devel@ffmpeg.org Date: Tue, 28 Nov 2017 22:42:59 -0300 Message-Id: <20171129014303.3716-1-jamrial@gmail.com> X-Mailer: git-send-email 2.15.0 Subject: [FFmpeg-devel] [PATCH 1/5] avformat/avc: return an error in ff_isom_write_avcc if the buffer lenght is too small 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 MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Signed-off-by: James Almer --- libavformat/avc.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libavformat/avc.c b/libavformat/avc.c index 094a95821f..7b32590778 100644 --- a/libavformat/avc.c +++ b/libavformat/avc.c @@ -105,7 +105,9 @@ int ff_avc_parse_nal_units_buf(const uint8_t *buf_in, uint8_t **buf, int *size) int ff_isom_write_avcc(AVIOContext *pb, const uint8_t *data, int len) { - if (len > 6) { + if (len < 6) + return AVERROR_INVALIDDATA; + /* check for H.264 start code */ if (AV_RB32(data) == 0x00000001 || AV_RB24(data) == 0x000001) { @@ -157,7 +159,6 @@ int ff_isom_write_avcc(AVIOContext *pb, const uint8_t *data, int len) } else { avio_write(pb, data, len); } - } return 0; }