gd: apply patch for CVE-2016-3074 from upstream
Source:
2bb97f407c
.patch
The original patch contains binary data, however, which is not supported
by `patch`; we could use `git apply` here, of course, but it was simpler
to just copy-paste only the fix into a separate file and include it in
the repo.
This commit is contained in:
parent
f8bdd7969d
commit
220836d066
2 changed files with 18 additions and 1 deletions
13
pkgs/development/libraries/gd/CVE-2016-3074.patch
Normal file
13
pkgs/development/libraries/gd/CVE-2016-3074.patch
Normal file
|
@ -0,0 +1,13 @@
|
|||
diff --git a/src/gd_gd2.c b/src/gd_gd2.c
|
||||
index 6f28461..a50b33d 100644
|
||||
--- a/src/gd_gd2.c
|
||||
+++ b/src/gd_gd2.c
|
||||
@@ -165,6 +165,8 @@ _gd2GetHeader (gdIOCtxPtr in, int *sx, int *sy,
|
||||
if (gdGetInt (&cidx[i].size, in) != 1) {
|
||||
goto fail2;
|
||||
};
|
||||
+ if (cidx[i].offset < 0 || cidx[i].size < 0)
|
||||
+ goto fail2;
|
||||
};
|
||||
*chunkIdx = cidx;
|
||||
};
|
|
@ -12,12 +12,16 @@
|
|||
stdenv.mkDerivation rec {
|
||||
name = "gd-${version}";
|
||||
version = "2.1.1";
|
||||
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/libgd/libgd/releases/download/${name}/libgd-${version}.tar.xz";
|
||||
sha256 = "11djy9flzxczphigqgp7fbbblbq35gqwwhn9xfcckawlapa1xnls";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./CVE-2016-3074.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ zlib fontconfig freetype libjpeg libpng libtiff libXpm ];
|
||||
|
||||
|
|
Loading…
Reference in a new issue