libtiff: fix CVE-2023-26966 Buffer Overflow

Upstream-Status: Backport from b0e1c25dd1

(From OE-Core rev: 0619953c9d87ec2dd670dc50f15170e5c42f95c7)

Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
This commit is contained in:
Hitendra Prajapati
2023-08-30 17:51:14 +05:30
committed by Steve Sakoman
parent a56109b944
commit be24e22651
2 changed files with 36 additions and 0 deletions

View File

@@ -0,0 +1,35 @@
From b0e1c25dd1d065200c8d8f59ad0afe014861a1b9 Mon Sep 17 00:00:00 2001
From: Su_Laus <sulau@freenet.de>
Date: Thu, 16 Feb 2023 12:03:16 +0100
Subject: [PATCH] tif_luv: Check and correct for NaN data in uv_encode().
Closes #530
Upstream-Status: Backport [https://gitlab.com/libtiff/libtiff/-/commit/b0e1c25dd1d065200c8d8f59ad0afe014861a1b9]
CVE: CVE-2023-26966
Signed-off-by: Hitendra Prajapati <hprajapati@mvista.com>
---
libtiff/tif_luv.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/libtiff/tif_luv.c b/libtiff/tif_luv.c
index 13765ea..40b2719 100644
--- a/libtiff/tif_luv.c
+++ b/libtiff/tif_luv.c
@@ -908,6 +908,13 @@ uv_encode(double u, double v, int em) /* encode (u',v') coordinates */
{
register int vi, ui;
+ /* check for NaN */
+ if (u != u || v != v)
+ {
+ u = U_NEU;
+ v = V_NEU;
+ }
+
if (v < UV_VSTART)
return oog_encode(u, v);
vi = tiff_itrunc((v - UV_VSTART)*(1./UV_SQSIZ), em);
--
2.25.1

View File

@@ -42,6 +42,7 @@ SRC_URI = "http://download.osgeo.org/libtiff/tiff-${PV}.tar.gz \
file://CVE-2023-3316.patch \
file://CVE-2023-3618-1.patch \
file://CVE-2023-3618-2.patch \
file://CVE-2023-26966.patch \
"
SRC_URI[sha256sum] = "0e46e5acb087ce7d1ac53cf4f56a09b221537fc86dfc5daaad1c2e89e1b37ac8"