gimp/plug-ins/file-dds
Alx Sa 6ad54ca3a3 plug-ins: Fix DDS vulnerability (ZDI-CAN-22093)
Resolves #10069

Currently, the DDS header information for the width, height, and bytes per scan line
are read in and assumed to be correct. As these values are used for memory allocation
and reading, it would be good to verify they do not exceed the file size.

This patch adds a condition after the header is read in to verify those values. If they exceed
the file size (mins an offset), the file is not read in and an error message is shown.
2023-10-01 17:06:25 +00:00
..
COPYING file-dds: add original source code of the DDS plug-in 2019-01-02 18:33:46 +01:00
LICENSE file-dds: add original source code of the DDS plug-in 2019-01-02 18:33:46 +01:00
LICENSE.nvtt file-dds: add original source code of the DDS plug-in 2019-01-02 18:33:46 +01:00
README file-dds: add original source code of the DDS plug-in 2019-01-02 18:33:46 +01:00
README.dxt Fix various typos 2019-09-21 17:10:46 +00:00
TODO file-dds: add original source code of the DDS plug-in 2019-01-02 18:33:46 +01:00
color.c plug-ins: big formatting and indentation cleanup in file-dds 2019-05-23 14:34:00 +02:00
color.h plug-ins: fix #6755 DDS RGB10A2 has Red and Blue swapped. 2021-04-23 14:31:50 -04:00
dds.c plug-ins: Port DDS load dialog widgets to use... 2023-04-01 02:03:55 +00:00
dds.h Issue #4492: Add "Flip image", save visible layers feature to DDS 2022-05-16 18:56:16 +00:00
ddsread.c plug-ins: Fix DDS vulnerability (ZDI-CAN-22093) 2023-10-01 17:06:25 +00:00
ddsread.h plug-ins: file-dds (read) cleaned up a bit for better error handling. 2020-07-26 13:32:18 +02:00
ddswrite.c Remove GimpUint8Array in favor of GBytes 2023-05-23 23:37:50 +02:00
ddswrite.h Issue #4492: Add "Flip image", save visible layers feature to DDS 2022-05-16 18:56:16 +00:00
dxt.c plug-ins: set blue channel of BC5 dds images to 0 instead of 255. 2021-01-05 17:58:20 -05:00
dxt.h plug-ins: big formatting and indentation cleanup in file-dds 2019-05-23 14:34:00 +02:00
dxt_tables.h plug-ins: big formatting and indentation cleanup in file-dds 2019-05-23 14:34:00 +02:00
endian_rw.h plug-ins: big formatting and indentation cleanup in file-dds 2019-05-23 14:34:00 +02:00
imath.h plug-ins: big formatting and indentation cleanup in file-dds 2019-05-23 14:34:00 +02:00
meson.build build: Add support for OpenMP dependency 2023-01-09 16:41:06 +00:00
mipmap.c plug-ins: big formatting and indentation cleanup in file-dds 2019-05-23 14:34:00 +02:00
mipmap.h plug-ins: big formatting and indentation cleanup in file-dds 2019-05-23 14:34:00 +02:00
misc.c plug-ins: port file-dds to GimpPlugIn and libgimp objects 2019-08-27 14:43:38 +02:00
misc.h plug-ins: port file-dds to GimpPlugIn and libgimp objects 2019-08-27 14:43:38 +02:00
vec.h plug-ins: big formatting and indentation cleanup in file-dds 2019-05-23 14:34:00 +02:00

README

DDS plugin for The GIMP
(C) 2004-2012 Shawn Kirst <skirst@gmail.com>,
with parts (C) 2003 Arne Reuter <homepage@arnereuter.de> where specified.
==========================================

This is a plugin for GIMP version 2.4.x. It allows you to load and save
images in Direct Draw Surface (DDS) format.

Features
==========================================
* Load/Save DDS files using DXT texture compression
* Automatic mipmap generation on save
* Load mipmaps into separate layers
* Load cube map faces and volume map slices into separate layers
* Cube and volume map saving
* Pixel conversion selection for custom formats (RGBA4, R5G6B5, RGB10A2, etc.)
* Load/save DDS files, optionally using DirectX texture compression (DXT)
* Optional automatic mipmap generation when saving
* Load mipmaps into separate layers
* Load cube map faces and volume map slices into separate layers
* Save cube maps and volume maps with automatic mipmap generation support
* Save image with a custom pixel format
* Non-power-of-two image loading and saving support with automatic mipmap generation support
* Compliant with DirectX 10 compressed formats
    

Installation
==========================================
See the file INSTALL for installation instructions