Compare commits

..

No commits in common. "c10s" and "c8s" have entirely different histories.
c10s ... c8s

14 changed files with 125 additions and 461 deletions

View File

@ -1 +0,0 @@
1

7
.gitignore vendored
View File

@ -1,7 +1,2 @@
giflib-4.1.6.tar.bz2
SOURCES/giflib-5.1.4.tar.bz2
/giflib-5.1.4.tar.bz2
/giflib-5.1.6.tar.gz
/giflib-5.1.7.tar.gz
/giflib-5.1.8.tar.gz
/giflib-5.1.9.tar.gz
/giflib-5.2.1.tar.gz

View File

@ -1,141 +0,0 @@
cmake_minimum_required(VERSION 2.6.0)
project(giflib C)
SET(BUILD_STATIC_LIBS OFF CACHE BOOL "Whether to also build static libs")
execute_process(COMMAND ./getversion
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE VERSION
OUTPUT_STRIP_TRAILING_WHITESPACE
)
set(LIBMAJOR 7)
set(LIBMINOR 1)
set(LIBPOINT 0)
set(LIBVER "${LIBMAJOR}.${LIBMINOR}.${LIBPOINT}")
set(giflib_SRC
dgif_lib.c
egif_lib.c
getarg.c
gifalloc.c
gif_err.c
gif_font.c
gif_hash.c
openbsd-reallocarray.c
qprintf.c
quantize.c
)
# Some utilities are installed
set(giflib_INSTALLABLE
gif2rgb
gifbuild
giffix
giftext
giftool
gifclrmp
)
# Some utilities are only used internally for testing.
# There is a parallel list in doc/Makefile.
# These are all candidates for removal in future releases.
set(giflib_UTILS
${giflib_INSTALLABLE}
gifbg
gifcolor
gifecho
giffilter
gifhisto
gifinto
gifwedge
)
file(GLOB giflib_MAN doc/*.1)
### Build library / tools
add_library(gif SHARED ${giflib_SRC})
target_link_libraries(gif m)
set_target_properties(gif PROPERTIES VERSION ${LIBVER} SOVERSION ${LIBMAJOR})
if(WIN32)
set_target_properties(gif PROPERTIES SUFFIX "-${LIBMAJOR}${CMAKE_SHARED_LIBRARY_SUFFIX}")
endif(WIN32)
if(${BUILD_STATIC_LIBS})
add_library(gif_static STATIC ${giflib_SRC})
set_target_properties(gif_static PROPERTIES OUTPUT_NAME gif)
endif(${BUILD_STATIC_LIBS})
foreach(UTILITY ${giflib_UTILS})
add_executable(${UTILITY} ${UTILITY}.c)
target_link_libraries(${UTILITY} gif)
endforeach()
### Installation
install(TARGETS gif
RUNTIME DESTINATION bin
ARCHIVE DESTINATION lib${LIB_SUFFIX}
LIBRARY DESTINATION lib${LIB_SUFFIX}
)
if(${BUILD_STATIC_LIBS})
install(TARGETS gif_static ARCHIVE DESTINATION lib${LIB_SUFFIX})
endif(${BUILD_STATIC_LIBS})
foreach(UTILITY ${giflib_UTILS})
install(TARGETS ${UTILITY} DESTINATION bin)
endforeach()
install(FILES gif_lib.h DESTINATION include)
install(FILES ${giflib_MAN} DESTINATION ${CMAKE_INSTALL_PREFIX}/share/man/man1)
### Distribution tarball
set(giflib_DIST
*.c
*.h
README
NEWS
TODO
COPYING
getversion
ChangeLog
CMakeLists.txt
build.adoc
history.adoc
control
doc/whatsinagif
doc/*.1
doc/*.xml
doc/*.txt
doc/index.html.in
doc/00README
doc/Makefile
tests
pic
)
# We include all of the XML, and also generated manual pages
# so people working from the distribution tarball won't need xmlto.
add_custom_target(dist-gz
COMMAND tar --transform='s:^:giflib-${VERSION}/:' -czf giflib-${VERSION}.tar.gz ${giflib_DIST}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
)
add_custom_target(dist-bz2
COMMAND tar --transform='s:^:giflib-${VERSION}/:' -cjf giflib-${VERSION}.tar.bz2 ${giflib_DIST}
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
)
add_custom_target(dist DEPENDS dist-gz DEPENDS dist-bz2)
### Auditing tools
# cppcheck should run clean
add_custom_target(cppcheck
COMMAND cppcheck --inline-suppr --template gcc --enable=all --suppress=unusedFunction --force *.[ch]
)

View File

@ -1,15 +0,0 @@
diff -rupN giflib-5.2.1/gif2rgb.c giflib-5.2.1-new/gif2rgb.c
--- giflib-5.2.1/gif2rgb.c 2019-06-24 09:24:27.000000000 +0200
+++ giflib-5.2.1-new/gif2rgb.c 2022-07-21 09:58:28.256036156 +0200
@@ -294,6 +294,11 @@ static void DumpScreen2RGB(char *FileNam
GifRow = ScreenBuffer[i];
GifQprintf("\b\b\b\b%-4d", ScreenHeight - i);
for (j = 0, BufferP = Buffer; j < ScreenWidth; j++) {
+ /* Check if color is within color palete */
+ if (GifRow[j] >= ColorMap->ColorCount)
+ {
+ GIF_EXIT(GifErrorString(D_GIF_ERR_IMAGE_DEFECT));
+ }
ColorMapEntry = &ColorMap->Colors[GifRow[j]];
*BufferP++ = ColorMapEntry->Red;
*BufferP++ = ColorMapEntry->Green;

View File

@ -1,24 +0,0 @@
Description: Fix segmentation faults due to non correct checking for args
Author: David Suárez <david.sephirot@gmail.com>
Origin: vendor
Bug: https://sourceforge.net/p/giflib/bugs/153/
Bug-Debian: https://bugs.debian.org/715963
Bug-Debian: https://bugs.debian.org/715964
Bug-Debian: https://bugs.debian.org/715967
Last-Update: 2020-12-20
--- a/getarg.c
+++ b/getarg.c
@@ -305,6 +305,12 @@
int i = 0, ScanRes;
while (!(ISSPACE(CtrlStrCopy[i]))) {
+
+ if ((*argv) == argv_end) {
+ GAErrorToken = Option;
+ return CMD_ERR_NumRead;
+ }
+
switch (CtrlStrCopy[i + 1]) {
case 'd': /* Get signed integers. */
ScanRes = sscanf(*((*argv)++), "%d",

View File

@ -1,6 +0,0 @@
--- !Policy
product_versions:
- rhel-10
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: osci.brew-build.rpmdeplint.functional}

View File

@ -0,0 +1,82 @@
diff --git a/util/gif2rgb.c b/util/gif2rgb.c
index e39f37b..92bf82f 100644
--- a/util/gif2rgb.c
+++ b/util/gif2rgb.c
@@ -171,6 +171,8 @@ static void SaveGif(GifByteType *OutputBuffer,
/* Open stdout for the output file: */
if ((GifFile = EGifOpenFileHandle(1, &Error)) == NULL) {
PrintGifError(Error);
+ free(OutputBuffer);
+ GifFreeMapObject(OutputColorMap);
exit(EXIT_FAILURE);
}
@@ -179,25 +181,34 @@ static void SaveGif(GifByteType *OutputBuffer,
OutputColorMap) == GIF_ERROR ||
EGifPutImageDesc(GifFile,
0, 0, Width, Height, false, NULL) ==
- GIF_ERROR)
+ GIF_ERROR) {
PrintGifError(Error);
+ free(OutputBuffer);
+ GifFreeMapObject(OutputColorMap);
exit(EXIT_FAILURE);
+ }
GifQprintf("\n%s: Image 1 at (%d, %d) [%dx%d]: ",
PROGRAM_NAME, GifFile->Image.Left, GifFile->Image.Top,
GifFile->Image.Width, GifFile->Image.Height);
for (i = 0; i < Height; i++) {
- if (EGifPutLine(GifFile, Ptr, Width) == GIF_ERROR)
+ if (EGifPutLine(GifFile, Ptr, Width) == GIF_ERROR) {
+ free(OutputBuffer);
+ GifFreeMapObject(OutputColorMap);
exit(EXIT_FAILURE);
+ }
GifQprintf("\b\b\b\b%-4d", Height - i - 1);
Ptr += Width;
}
- if (EGifCloseFile(GifFile, &Error) == GIF_ERROR)
+ if (EGifCloseFile(GifFile, &Error) == GIF_ERROR) {
PrintGifError(Error);
+ free(OutputBuffer);
+ GifFreeMapObject(OutputColorMap);
exit(EXIT_FAILURE);
+ }
}
/******************************************************************************
diff --git a/util/gifsponge.c b/util/gifsponge.c
index 6e248d8..12bce36 100644
--- a/util/gifsponge.c
+++ b/util/gifsponge.c
@@ -73,8 +73,7 @@ int main(int argc, char **argv)
* data; it's *your* responsibility to keep your changes consistent.
* Caveat hacker!
*/
- if (EGifSpew(GifFileOut) == GIF_ERROR)
- PrintGifError(GifFileOut->Error);
+ EGifSpew(GifFileOut);
if (DGifCloseFile(GifFileIn, &ErrorCode) == GIF_ERROR)
PrintGifError(ErrorCode);
diff --git a/util/giftool.c b/util/giftool.c
index e61281c..fe6325c 100644
--- a/util/giftool.c
+++ b/util/giftool.c
@@ -565,9 +565,9 @@ int main(int argc, char **argv)
for (i = 0; i < GifFileIn->ImageCount; i++)
(void) GifMakeSavedImage(GifFileOut, &GifFileIn->SavedImages[i]);
- if (EGifSpew(GifFileOut) == GIF_ERROR)
- PrintGifError(GifFileOut->Error);
- else if (DGifCloseFile(GifFileIn, &ErrorCode) == GIF_ERROR)
+ EGifSpew(GifFileOut);
+
+ if (DGifCloseFile(GifFileIn, &ErrorCode) == GIF_ERROR)
PrintGifError(ErrorCode);
return 0;

View File

@ -0,0 +1,13 @@
diff --git a/doc/Makefile.am b/doc/Makefile.am
index b9696ea..698104b 100644
--- a/doc/Makefile.am
+++ b/doc/Makefile.am
@@ -1,7 +1,7 @@
SUFFIXES = .xml .html .txt .asc .1
.xml.html:
- xmlto xhtml-nochunks $<
+ xmlto --stringparam generate.consistent.ids=1 xhtml-nochunks $<
.xml.1:
xmlto man $<

View File

@ -1,37 +1,20 @@
Name: giflib
Summary: A library and utilities for processing GIFs
Version: 5.2.1
Release: 21%{?dist}
Version: 5.1.4
Release: 3%{?dist}
License: MIT
URL: http://www.sourceforge.net/projects/%{name}/
Source: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
# Downstream cmake support
Source1: CMakeLists.txt
# Move quantize.c back into libgif.so (#1750122)
Patch0: giflib_quantize.patch
# Fix several defects found by Coverity scan
Patch1: giflib_coverity.patch
# Generate HTML docs with consistent section IDs to avoid multilib difference
Patch2: giflib_html-docs-consistent-ids.patch
# Backport fix for CVE-2022-28506
# See https://sourceforge.net/u/mmuzila/giflib/ci/5b74cdd9c1285514eaa4675347ba3eea81d32c65/
Patch3: CVE-2022-28506.patch
# Fix segmentation faults when invoking tools with incorrect arguments (CVE-2023-39742)
# Taken from Debian package
Patch4: fix-get-args-segment-violation.patch
Source: http://downloads.sourceforge.net/%{name}/%{name}-%{version}.tar.bz2
Patch0: giflib-5.1.4-coverity.patch
Patch1: giflib-5.1.4-html-docs-consistent-ids.patch
BuildRequires: cmake
BuildRequires: autoconf automake libtool
BuildRequires: gcc
BuildRequires: make
BuildRequires: xmlto
BuildRequires: mingw32-filesystem >= 95
BuildRequires: mingw32-gcc
BuildRequires: mingw64-filesystem >= 95
BuildRequires: mingw64-gcc
%description
giflib is a library for reading and writing gif images.
@ -54,72 +37,34 @@ Requires: %{name}%{?_isa} = %{version}-%{release}
The giflib-utils package contains various programs for manipulating GIF
format image files.
%package -n mingw32-%{name}
Summary: MinGW Windows %{name} library
Obsoletes: mingw32-%{name}-static
BuildArch: noarch
%description -n mingw32-%{name}
%{summary}.
%package -n mingw32-%{name}-tools
Summary: Tools for the MinGW Windows %{name} library
Requires: mingw32-%{name} = %{version}-%{release}
BuildArch: noarch
%description -n mingw32-%{name}-tools
%{summary}.
%package -n mingw64-%{name}
Summary: MinGW Windows %{name} library
Obsoletes: mingw64-%{name}-static
BuildArch: noarch
%description -n mingw64-%{name}
%{summary}.
%package -n mingw64-%{name}-tools
Summary: Tools for the MinGW Windows %{name} library
Requires: mingw64-%{name} = %{version}-%{release}
BuildArch: noarch
%description -n mingw64-%{name}-tools
%{summary}.
%{?mingw_debug_package}
%prep
%autosetup -p1
cp -a %{SOURCE1} .
%build
# Native build
%cmake
%cmake_build
# MinGW build
%mingw_cmake
%mingw_make_build
autoreconf -vif
%configure
sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
%make_build
%install
%cmake_install
%mingw_make_install
rm -rf %{buildroot}%{mingw32_mandir}
rm -rf %{buildroot}%{mingw64_mandir}
%make_install
# Don't install any static .a and libtool .la files
rm -f %{buildroot}%{_libdir}/*.{a,la}
# Remove makefile relics from documentation
rm -f doc/Makefile*
%mingw_debug_install_post
%ldconfig_scriptlets
%files
%doc ChangeLog NEWS README
%files
%doc AUTHORS ChangeLog NEWS README
%license COPYING
%{_libdir}/libgif.so.7*
@ -130,113 +75,17 @@ rm -rf %{buildroot}%{mingw64_mandir}
%files utils
%{_bindir}/gif*
%{_mandir}/man1/*.1*
%files -n mingw32-%{name}
%license COPYING
%{mingw32_bindir}/libgif-7.dll
%{mingw32_includedir}/gif_lib.h
%{mingw32_libdir}/libgif.dll.a
%files -n mingw32-%{name}-tools
%{mingw32_bindir}/*.exe
%files -n mingw64-%{name}
%license COPYING
%{mingw64_bindir}/libgif-7.dll
%{mingw64_includedir}/gif_lib.h
%{mingw64_libdir}/libgif.dll.a
%files -n mingw64-%{name}-tools
%{mingw64_bindir}/*.exe
%{_mandir}/man1/gif*.1*
%changelog
* Tue Oct 29 2024 Troy Dawson <tdawson@redhat.com> - 5.2.1-21
- Bump release for October 2024 mass rebuild:
Resolves: RHEL-64018
* Mon Jun 24 2024 Troy Dawson <tdawson@redhat.com> - 5.2.1-20
- Bump release for June 2024 mass rebuild
* Wed Jan 24 2024 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.1-19
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Fri Jan 19 2024 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.1-18
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Thu Sep 14 2023 Sandro Mani <manisandro@gmail.com> - 5.2.1-17
- Add patch for CVE-2023-39742
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.1-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.1-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Thu Jul 21 2022 Sandro Mani <manisandro@gmail.com> - 5.2.1-14
- Backport fix for CVE-2022-28506
* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.1-13
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Fri Mar 25 2022 Sandro Mani <manisandro@gmail.com> - 5.2.1-12
- Rebuild with mingw-gcc-12
* Thu Feb 24 2022 Sandro Mani <manisandro@gmail.com> - 5.2.1-11
- Make mingw subpackages noarch
* Sat Feb 19 2022 Sandro Mani <manisandro@gmail.com> - 5.2.1-10
- Add mingw subpackage
* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.1-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.1-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Mon Feb 17 2020 Sandro Mani <manisandro@gmail.com> - 5.2.1-5
- Fix several defects found by Coverity scan
* Thu Nov 08 2018 Nikola Forró <nforro@redhat.com> - 5.1.4-3
- Generate HTML docs with consistent section IDs to avoid multilib difference
related: #1602513
* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Tue Oct 01 2019 Sandro Mani <manisandro@gmail.com> - 5.2.1-3
- Move quantize.c back into libgif.so (#1750122)
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 5.2.1-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Fri Jun 28 2019 Sandro Mani <manisandro@gmail.com> - 5.2.1-1
- Update to 5.2.1
* Mon Apr 01 2019 Sandro Mani <manisandro@gmail.com> - 5.1.9-1
- Update to 5.1.9
* Wed Mar 20 2019 Sandro Mani <manisandro@gmail.com> - 5.1.8-1
- Update to 5.1.8
* Mon Mar 11 2019 Sandro Mani <manisandro@gmail.com> - 5.1.7-1
- Update to 5.1.7
* Sat Feb 23 2019 Sandro Mani <manisandro@gmail.com> - 5.1.6-2
- Fix broken soname
* Mon Feb 18 2019 Sandro Mani <manisandro@gmail.com> - 5.1.6-1
- Update to 5.1.6
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 5.1.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 5.1.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Mon Oct 29 2018 Nikola Forró <nforro@redhat.com> - 5.1.4-2
- Fix important Covscan defects
resolves: #1602513
* Sun Feb 11 2018 Sandro Mani <manisandro@gmail.com> - 5.1.4-1
- Update to 5.1.4

View File

@ -1,43 +0,0 @@
diff -rupN --no-dereference giflib-5.2.1/gif2rgb.c giflib-5.2.1-new/gif2rgb.c
--- giflib-5.2.1/gif2rgb.c 2019-06-24 09:24:27.000000000 +0200
+++ giflib-5.2.1-new/gif2rgb.c 2020-02-17 16:51:04.468397502 +0100
@@ -170,6 +170,8 @@ static void SaveGif(GifByteType *OutputB
/* Open stdout for the output file: */
if ((GifFile = EGifOpenFileHandle(1, &Error)) == NULL) {
PrintGifError(Error);
+ free(OutputBuffer);
+ GifFreeMapObject(OutputColorMap);
exit(EXIT_FAILURE);
}
@@ -179,6 +181,8 @@ static void SaveGif(GifByteType *OutputB
EGifPutImageDesc(GifFile,
0, 0, Width, Height, false, NULL) == GIF_ERROR) {
PrintGifError(Error);
+ free(OutputBuffer);
+ GifFreeMapObject(OutputColorMap);
exit(EXIT_FAILURE);
}
@@ -187,8 +191,11 @@ static void SaveGif(GifByteType *OutputB
GifFile->Image.Width, GifFile->Image.Height);
for (i = 0; i < Height; i++) {
- if (EGifPutLine(GifFile, Ptr, Width) == GIF_ERROR)
+ if (EGifPutLine(GifFile, Ptr, Width) == GIF_ERROR) {
+ free(OutputBuffer);
+ GifFreeMapObject(OutputColorMap);
exit(EXIT_FAILURE);
+ }
GifQprintf("\b\b\b\b%-4d", Height - i - 1);
Ptr += Width;
@@ -196,6 +203,8 @@ static void SaveGif(GifByteType *OutputB
if (EGifCloseFile(GifFile, &Error) == GIF_ERROR) {
PrintGifError(Error);
+ free(OutputBuffer);
+ GifFreeMapObject(OutputColorMap);
exit(EXIT_FAILURE);
}
}

View File

@ -1,12 +0,0 @@
diff -rupN --no-dereference giflib-5.2.1/doc/Makefile giflib-5.2.1-new/doc/Makefile
--- giflib-5.2.1/doc/Makefile 2019-03-28 18:05:25.000000000 +0100
+++ giflib-5.2.1-new/doc/Makefile 2020-02-17 16:51:04.489397582 +0100
@@ -1,7 +1,7 @@
.SUFFIXES: .xml .html .txt .adoc .1
.xml.html:
- xmlto xhtml-nochunks $<
+ xmlto --stringparam generate.consistent.ids=1 xhtml-nochunks $<
.xml.1:
xmlto man $<

View File

@ -1,17 +0,0 @@
diff -rupN --no-dereference giflib-5.2.1/Makefile giflib-5.2.1-new/Makefile
--- giflib-5.2.1/Makefile 2019-06-24 18:08:57.000000000 +0200
+++ giflib-5.2.1-new/Makefile 2020-02-17 16:51:04.450397434 +0100
@@ -29,11 +29,11 @@ LIBPOINT=0
LIBVER=$(LIBMAJOR).$(LIBMINOR).$(LIBPOINT)
SOURCES = dgif_lib.c egif_lib.c gifalloc.c gif_err.c gif_font.c \
- gif_hash.c openbsd-reallocarray.c
+ gif_hash.c openbsd-reallocarray.c quantize.c
HEADERS = gif_hash.h gif_lib.h gif_lib_private.h
OBJECTS = $(SOURCES:.c=.o)
-USOURCES = qprintf.c quantize.c getarg.c
+USOURCES = qprintf.c getarg.c
UHEADERS = getarg.h
UOBJECTS = $(USOURCES:.c=.o)

View File

@ -1,16 +0,0 @@
---
summary: Tier1 plan for giflib
discover:
how: fmf
url: https://pkgs.devel.redhat.com/git/tests/giflib
ref: master
filter: tier:1
execute:
how: tmt
adjust:
enabled: false
when: distro == centos-stream or distro == fedora

View File

@ -1 +1 @@
SHA512 (giflib-5.2.1.tar.gz) = 4550e53c21cb1191a4581e363fc9d0610da53f7898ca8320f0d3ef6711e76bdda2609c2df15dc94c45e28bff8de441f1227ec2da7ea827cb3c0405af4faa4736
SHA512 (giflib-5.1.4.tar.bz2) = 32b5e342056c210e6478e9cb3b6ceec9594dcfaf34feea1eb4dad633a081ed4465bceee578c19165907cb47cb83912ac359ceea666a8e07dbbb5420f9928f96d