Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package libmd for openSUSE:Factory checked in at 2021-10-20 20:23:47 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libmd (Old) and /work/SRC/openSUSE:Factory/.libmd.new.1890 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libmd" Wed Oct 20 20:23:47 2021 rev:8 rq:925977 version:1.0.4 Changes: -------- --- /work/SRC/openSUSE:Factory/libmd/libmd.changes 2021-01-08 17:32:41.257141509 +0100 +++ /work/SRC/openSUSE:Factory/.libmd.new.1890/libmd.changes 2021-10-20 20:24:37.109390453 +0200 @@ -1,0 +2,11 @@ +Sat Oct 16 10:18:46 UTC 2021 - Dirk M??ller <dmuel...@suse.com> + +- update to 1.0.4: + * Place static keyword before const in function definitions + * Declare local functions as static + * Fix signedness type mismatch comparisons + * test: Fix pointer type sign mismatch in DEF_TEST_DIGEST() macro + * man: Document RIPEMD160 and SHA-1 security status + * build system improvements + +------------------------------------------------------------------- Old: ---- libmd-1.0.3.tar.xz libmd-1.0.3.tar.xz.asc New: ---- libmd-1.0.4.tar.xz libmd-1.0.4.tar.xz.asc ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libmd.spec ++++++ --- /var/tmp/diff_new_pack.HHYX4X/_old 2021-10-20 20:24:37.537390717 +0200 +++ /var/tmp/diff_new_pack.HHYX4X/_new 2021-10-20 20:24:37.537390717 +0200 @@ -18,7 +18,7 @@ %define sover 0 Name: libmd -Version: 1.0.3 +Version: 1.0.4 Release: 0 Summary: Message digest functions from BSD systems License: BSD-2-Clause OR BSD-3-Clause OR ISC OR SUSE-Public-Domain ++++++ libmd-1.0.3.tar.xz -> libmd-1.0.4.tar.xz ++++++ ++++ 13796 lines of diff (skipped) ++++ retrying with extended exclude list diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/.dist-version new/libmd-1.0.4/.dist-version --- old/libmd-1.0.3/.dist-version 2021-01-02 16:42:36.000000000 +0100 +++ new/libmd-1.0.4/.dist-version 2021-10-05 04:47:24.000000000 +0200 @@ -1 +1 @@ -1.0.3 +1.0.4 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/ChangeLog new/libmd-1.0.4/ChangeLog --- old/libmd-1.0.3/ChangeLog 2021-01-02 16:42:36.000000000 +0100 +++ new/libmd-1.0.4/ChangeLog 2021-10-05 04:47:24.000000000 +0200 @@ -1,3 +1,202 @@ +commit 9d3c9a739f86b65b238163b9f8af3623226a6419 +Author: Guillem Jover <guil...@hadrons.org> +Date: Tue Oct 5 04:44:25 2021 +0200 + + Release libmd 1.0.4 + + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 04781b0a5c767454e569694f5b96c8ae6e9127ea +Author: David Seifert <s...@gentoo.org> +Date: Tue Oct 5 04:34:48 2021 +0200 + + build: Avoid non-portable '$<' in non-inference rules + + OpenBSD's 'pmake' chokes on these. + + Signed-off-by: Guillem Jover <guil...@hadrons.org> + + man/Makefile.am | 6 +++--- + src/Makefile.am | 18 +++++++++--------- + 2 files changed, 12 insertions(+), 12 deletions(-) + +commit 8a62de57a12899d300872916d8f08ec04a071eeb +Author: Guillem Jover <guil...@hadrons.org> +Date: Tue Aug 17 02:24:09 2021 +0200 + + build: Fix out of tree builds + + The '$<' variable is not guarantee to work in ordinary make rules by + non GNU make implementations. In addition if it is supported it will + be replaced by the actual source pathname (in VPATH mode), which is not + the relative name we need on installation. + + Ref: https://www.gnu.org/software/autoconf/manual/autoconf.html#g_t_0024_003c-in-Ordinary-Make-Rules + Reported-by: David Seifert <s...@gentoo.org> + + man/Makefile.am | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +commit 85f7006c64fcf2f2dd72f7bdca11b88231a8ff0d +Author: David Seifert <s...@gentoo.org> +Date: Tue Oct 5 04:20:30 2021 +0200 + + build: Explicitly depend on sed + + Signed-off-by: Guillem Jover <guil...@hadrons.org> + + configure.ac | 1 + + man/Makefile.am | 6 +++--- + src/Makefile.am | 20 ++++++++++---------- + 3 files changed, 14 insertions(+), 13 deletions(-) + +commit dc32a5957bee09df3645cddb66c65f7803ea5a20 +Author: Guillem Jover <guil...@hadrons.org> +Date: Mon Aug 16 14:43:49 2021 +0200 + + build: Switch Docker image to Debian bullseye + + .gitlab-ci.yml | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit d9c4c7fe282bbf79fdf3af6aa4b870125e822a50 +Author: Guillem Jover <guil...@hadrons.org> +Date: Sat Feb 20 22:19:49 2021 +0100 + + build: Add support for sanitizer compiler flags + + .gitlab-ci.yml | 2 +- + configure.ac | 13 +++++++++++++ + 2 files changed, 14 insertions(+), 1 deletion(-) + +commit e35f6b877ab381ffcea9f391944be2097524c20c +Author: Guillem Jover <guil...@hadrons.org> +Date: Fri Feb 19 23:59:47 2021 +0100 + + build: Add compiler warnings support + + Detect as many warnings as possible during configure and enable them + if the user did not supply any, so that any such problem can be spotted + and fixed. + + configure.ac | 43 +++++++++++++++++++++++++++++++++++++++++++ + m4/libmd-compiler.m4 | 24 ++++++++++++++++++++++++ + 2 files changed, 67 insertions(+) + +commit 9cc6db0cf8ad97b33f1499df001f0609a3003a77 +Author: Guillem Jover <guil...@hadrons.org> +Date: Sun Feb 28 18:57:00 2021 +0100 + + build: Improve coverage report + + Exclude test suite files from the coverage which incorrectly increase + the coverage percent. Build with no-optimizations and debugging symbols. + + .gitlab-ci.yml | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +commit ef667150e80dcb4ca2dd87c30655f23442687969 +Author: Guillem Jover <guil...@hadrons.org> +Date: Sun Feb 28 18:56:27 2021 +0100 + + build: Indent packages in GitLab CI apt-get invocation + + .gitlab-ci.yml | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +commit 8308181a0018a15944df18303316c30b6d1dbf4a +Author: Guillem Jover <guil...@hadrons.org> +Date: Sat Feb 20 23:41:51 2021 +0100 + + build: Add GitLab CI support + + .gitlab-ci.yml | 19 +++++++++++++++++++ + 1 file changed, 19 insertions(+) + +commit ac5cd2d7fce430ab04376cc514da8f88156b9cef +Author: Guillem Jover <guil...@hadrons.org> +Date: Sun Feb 28 01:13:14 2021 +0100 + + build: Ignore code coverage files + + .gitignore | 2 ++ + 1 file changed, 2 insertions(+) + +commit 1a8d0b68a1f6a42c57261e76a8fccb9404fc305f +Author: Guillem Jover <guil...@hadrons.org> +Date: Sat Feb 20 23:40:29 2021 +0100 + + man: Document RIPEMD160 and SHA-1 security status + + man/rmd160.3 | 7 +++---- + man/sha1.3 | 6 ++++-- + 2 files changed, 7 insertions(+), 6 deletions(-) + +commit e50a6db8ec1425e8354ece5ce45ac6cb2d2dcb3b +Author: Guillem Jover <guil...@hadrons.org> +Date: Fri Feb 19 23:58:37 2021 +0100 + + test: Fix pointer type sign mismatch in DEF_TEST_DIGEST() macro + + Warned-by: gcc + + test/test.h | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +commit b7d06e0dc98a0b774db6e54272a38ed0583b3d4d +Author: Guillem Jover <guil...@hadrons.org> +Date: Fri Feb 19 23:56:07 2021 +0100 + + Fix signedness type mismatch comparisons + + Change the variable type or use a cast. + + Warned-by: gcc + + src/helper.c | 2 +- + test/test.h | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +commit 6cedc1594f34529a803a25cbcb773cbf5a6fc891 +Author: Guillem Jover <guil...@hadrons.org> +Date: Fri Feb 19 07:14:15 2021 +0100 + + Fix main() function prototype + + Warned-by: gcc + + test/md2.c | 2 +- + test/md4.c | 2 +- + test/md5.c | 2 +- + test/rmd160.c | 2 +- + test/sha1.c | 2 +- + test/sha2.c | 2 +- + 6 files changed, 6 insertions(+), 6 deletions(-) + +commit 52ee547648923398015add10e0e9490ce3226ec7 +Author: Guillem Jover <guil...@hadrons.org> +Date: Fri Feb 19 07:13:51 2021 +0100 + + Declare local functions as static + + Warned-by: gcc + + test/md5.c | 6 +++--- + test/test.h | 2 +- + 2 files changed, 4 insertions(+), 4 deletions(-) + +commit 281dab62f25eee47da5eb996db7ef440a22d2295 +Author: Guillem Jover <guil...@hadrons.org> +Date: Fri Feb 19 07:13:28 2021 +0100 + + Place static keyword before const in function definitions + + Warned-by: gcc + + src/sha2.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + commit 981a0a1dc91aae55930451564e506f927010622a Author: Guillem Jover <guil...@hadrons.org> Date: Sat Jan 2 16:30:03 2021 +0100 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/build-aux/ar-lib new/libmd-1.0.4/build-aux/ar-lib --- old/libmd-1.0.3/build-aux/ar-lib 2021-01-02 16:40:56.000000000 +0100 +++ new/libmd-1.0.4/build-aux/ar-lib 2021-10-05 04:47:20.000000000 +0200 @@ -4,7 +4,7 @@ me=ar-lib scriptversion=2019-07-04.01; # UTC -# Copyright (C) 2010-2020 Free Software Foundation, Inc. +# Copyright (C) 2010-2021 Free Software Foundation, Inc. # Written by Peter Rosin <p...@lysator.liu.se>. # # This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/build-aux/compile new/libmd-1.0.4/build-aux/compile --- old/libmd-1.0.3/build-aux/compile 2021-01-02 16:40:56.000000000 +0100 +++ new/libmd-1.0.4/build-aux/compile 2021-10-05 04:47:20.000000000 +0200 @@ -3,7 +3,7 @@ scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1999-2020 Free Software Foundation, Inc. +# Copyright (C) 1999-2021 Free Software Foundation, Inc. # Written by Tom Tromey <tro...@cygnus.com>. # # This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/build-aux/missing new/libmd-1.0.4/build-aux/missing --- old/libmd-1.0.3/build-aux/missing 2021-01-02 16:40:57.000000000 +0100 +++ new/libmd-1.0.4/build-aux/missing 2021-10-05 04:47:20.000000000 +0200 @@ -3,7 +3,7 @@ scriptversion=2018-03-07.03; # UTC -# Copyright (C) 1996-2020 Free Software Foundation, Inc. +# Copyright (C) 1996-2021 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard <pin...@iro.umontreal.ca>, 1996. # This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/build-aux/test-driver new/libmd-1.0.4/build-aux/test-driver --- old/libmd-1.0.3/build-aux/test-driver 2021-01-02 16:40:57.000000000 +0100 +++ new/libmd-1.0.4/build-aux/test-driver 2021-10-05 04:47:21.000000000 +0200 @@ -3,7 +3,7 @@ scriptversion=2018-03-07.03; # UTC -# Copyright (C) 2011-2020 Free Software Foundation, Inc. +# Copyright (C) 2011-2021 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -105,8 +105,11 @@ trap "st=141; $do_exit" 13 trap "st=143; $do_exit" 15 -# Test script is run here. -"$@" >$log_file 2>&1 +# Test script is run here. We create the file first, then append to it, +# to ameliorate tests themselves also writing to the log file. Our tests +# don't, but others can (automake bug#35762). +: >"$log_file" +"$@" >>"$log_file" 2>&1 estatus=$? if test $enable_hard_errors = no && test $estatus -eq 99; then @@ -128,7 +131,7 @@ # know whether the test passed or failed simply by looking at the '.log' # file, without the need of also peaking into the corresponding '.trs' # file (automake bug#11814). -echo "$res $test_name (exit status: $estatus)" >>$log_file +echo "$res $test_name (exit status: $estatus)" >>"$log_file" # Report outcome to console. echo "${col}${res}${std}: $test_name" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/config.h.in new/libmd-1.0.4/config.h.in --- old/libmd-1.0.3/config.h.in 2021-01-02 16:40:56.000000000 +0100 +++ new/libmd-1.0.4/config.h.in 2021-10-05 04:47:20.000000000 +0200 @@ -9,12 +9,15 @@ /* Define to 1 if you have the <inttypes.h> header file. */ #undef HAVE_INTTYPES_H -/* Define to 1 if you have the <memory.h> header file. */ -#undef HAVE_MEMORY_H +/* Define to 1 if you have the <minix/config.h> header file. */ +#undef HAVE_MINIX_CONFIG_H /* Define to 1 if you have the <stdint.h> header file. */ #undef HAVE_STDINT_H +/* Define to 1 if you have the <stdio.h> header file. */ +#undef HAVE_STDIO_H + /* Define to 1 if you have the <stdlib.h> header file. */ #undef HAVE_STDLIB_H @@ -33,6 +36,9 @@ /* Define to 1 if you have the <unistd.h> header file. */ #undef HAVE_UNISTD_H +/* Define to 1 if you have the <wchar.h> header file. */ +#undef HAVE_WCHAR_H + /* Define to the sub-directory where libtool stores uninstalled libraries. */ #undef LT_OBJDIR @@ -57,28 +63,96 @@ /* Define to the version of this package. */ #undef PACKAGE_VERSION -/* Define to 1 if you have the ANSI C header files. */ +/* Define to 1 if all of the C90 standard headers exist (not just the ones + required in a freestanding environment). This macro is provided for + backward compatibility; new code need not use it. */ #undef STDC_HEADERS /* Enable extensions on AIX 3, Interix. */ #ifndef _ALL_SOURCE # undef _ALL_SOURCE #endif +/* Enable general extensions on macOS. */ +#ifndef _DARWIN_C_SOURCE +# undef _DARWIN_C_SOURCE +#endif +/* Enable general extensions on Solaris. */ +#ifndef __EXTENSIONS__ +# undef __EXTENSIONS__ +#endif /* Enable GNU extensions on systems that have them. */ #ifndef _GNU_SOURCE # undef _GNU_SOURCE #endif -/* Enable threading extensions on Solaris. */ +/* Enable X/Open compliant socket functions that do not require linking + with -lxnet on HP-UX 11.11. */ +#ifndef _HPUX_ALT_XOPEN_SOCKET_API +# undef _HPUX_ALT_XOPEN_SOCKET_API +#endif +/* Identify the host operating system as Minix. + This macro does not affect the system headers' behavior. + A future release of Autoconf may stop defining this macro. */ +#ifndef _MINIX +# undef _MINIX +#endif +/* Enable general extensions on NetBSD. + Enable NetBSD compatibility extensions on Minix. */ +#ifndef _NETBSD_SOURCE +# undef _NETBSD_SOURCE +#endif +/* Enable OpenBSD compatibility extensions on NetBSD. + Oddly enough, this does nothing on OpenBSD. */ +#ifndef _OPENBSD_SOURCE +# undef _OPENBSD_SOURCE +#endif +/* Define to 1 if needed for POSIX-compatible behavior. */ +#ifndef _POSIX_SOURCE +# undef _POSIX_SOURCE +#endif +/* Define to 2 if needed for POSIX-compatible behavior. */ +#ifndef _POSIX_1_SOURCE +# undef _POSIX_1_SOURCE +#endif +/* Enable POSIX-compatible threading on Solaris. */ #ifndef _POSIX_PTHREAD_SEMANTICS # undef _POSIX_PTHREAD_SEMANTICS #endif +/* Enable extensions specified by ISO/IEC TS 18661-5:2014. */ +#ifndef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ +# undef __STDC_WANT_IEC_60559_ATTRIBS_EXT__ +#endif +/* Enable extensions specified by ISO/IEC TS 18661-1:2014. */ +#ifndef __STDC_WANT_IEC_60559_BFP_EXT__ +# undef __STDC_WANT_IEC_60559_BFP_EXT__ +#endif +/* Enable extensions specified by ISO/IEC TS 18661-2:2015. */ +#ifndef __STDC_WANT_IEC_60559_DFP_EXT__ +# undef __STDC_WANT_IEC_60559_DFP_EXT__ +#endif +/* Enable extensions specified by ISO/IEC TS 18661-4:2015. */ +#ifndef __STDC_WANT_IEC_60559_FUNCS_EXT__ +# undef __STDC_WANT_IEC_60559_FUNCS_EXT__ +#endif +/* Enable extensions specified by ISO/IEC TS 18661-3:2015. */ +#ifndef __STDC_WANT_IEC_60559_TYPES_EXT__ +# undef __STDC_WANT_IEC_60559_TYPES_EXT__ +#endif +/* Enable extensions specified by ISO/IEC TR 24731-2:2010. */ +#ifndef __STDC_WANT_LIB_EXT2__ +# undef __STDC_WANT_LIB_EXT2__ +#endif +/* Enable extensions specified by ISO/IEC 24747:2009. */ +#ifndef __STDC_WANT_MATH_SPEC_FUNCS__ +# undef __STDC_WANT_MATH_SPEC_FUNCS__ +#endif /* Enable extensions on HP NonStop. */ #ifndef _TANDEM_SOURCE # undef _TANDEM_SOURCE #endif -/* Enable general extensions on Solaris. */ -#ifndef __EXTENSIONS__ -# undef __EXTENSIONS__ +/* Enable X/Open extensions. Define to 500 only if necessary + to make mbstate_t available. */ +#ifndef _XOPEN_SOURCE +# undef _XOPEN_SOURCE #endif @@ -97,27 +171,12 @@ # endif #endif -/* Enable large inode numbers on Mac OS X 10.5. */ -#ifndef _DARWIN_USE_64_BIT_INODE -# define _DARWIN_USE_64_BIT_INODE 1 -#endif - /* Number of bits in a file offset, on hosts where this is settable. */ #undef _FILE_OFFSET_BITS /* Define for large files, on AIX-style hosts. */ #undef _LARGE_FILES -/* Define to 1 if on MINIX. */ -#undef _MINIX - -/* Define to 2 if the system does not provide POSIX.1 features except with - this defined. */ -#undef _POSIX_1_SOURCE - -/* Define to 1 if you need to in order for `stat' and other things to work. */ -#undef _POSIX_SOURCE - /* Define to `long int' if <sys/types.h> does not define. */ #undef off_t diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/configure.ac new/libmd-1.0.4/configure.ac --- old/libmd-1.0.3/configure.ac 2021-01-02 16:29:45.000000000 +0100 +++ new/libmd-1.0.4/configure.ac 2021-10-05 04:43:16.000000000 +0200 @@ -13,11 +13,14 @@ LIBMD_ABI_MAJOR=0 LIBMD_ABI_MINOR=0 -LIBMD_ABI_PATCH=4 +LIBMD_ABI_PATCH=5 LIBMD_ABI="$LIBMD_ABI_MAJOR:$LIBMD_ABI_MINOR:$LIBMD_ABI_PATCH" AC_SUBST([LIBMD_ABI]) +# Check and store if we got user supplied variables. +user_CFLAGS=${CFLAGS-unset} + # Checks for operating system services and capabilities. AC_USE_SYSTEM_EXTENSIONS AC_SYS_LARGEFILE @@ -27,8 +30,62 @@ LIBMD_LINKER_VERSION_SCRIPT # Checks for programs. +AC_PROG_SED AC_PROG_CC +# Checks for the build machinery. +AS_IF([test "$user_CFLAGS" = unset], [ + LIBMD_CHECK_COMPILER_FLAG([-Wall]) + LIBMD_CHECK_COMPILER_FLAG([-Wextra]) + + LIBMD_CHECK_COMPILER_FLAG([-Wbad-function-cast]) + LIBMD_CHECK_COMPILER_FLAG([-Wc99-c11-compat]) + LIBMD_CHECK_COMPILER_FLAG([-Wcast-align]) + LIBMD_CHECK_COMPILER_FLAG([-Wdeclaration-after-statement]) + LIBMD_CHECK_COMPILER_FLAG([-Wdocumentation]) + LIBMD_CHECK_COMPILER_FLAG([-Wduplicated-branches]) + LIBMD_CHECK_COMPILER_FLAG([-Wduplicated-cond]) + LIBMD_CHECK_COMPILER_FLAG([-Wformat -Wformat-security]) + LIBMD_CHECK_COMPILER_FLAG([-Wformat=2]) + LIBMD_CHECK_COMPILER_FLAG([-Winit-self]) + LIBMD_CHECK_COMPILER_FLAG([-Wlogical-not-parentheses]) + LIBMD_CHECK_COMPILER_FLAG([-Wlogical-op]) + LIBMD_CHECK_COMPILER_FLAG([-Wmissing-declarations]) + LIBMD_CHECK_COMPILER_FLAG([-Wmissing-format-attribute]) + LIBMD_CHECK_COMPILER_FLAG([-Wmissing-prototypes]) + LIBMD_CHECK_COMPILER_FLAG([-Wnested-externs]) + LIBMD_CHECK_COMPILER_FLAG([-Wno-tautological-constant-out-of-range-compare]) + LIBMD_CHECK_COMPILER_FLAG([-Wno-unused-parameter]) + LIBMD_CHECK_COMPILER_FLAG([-Wnull-dereference]) + LIBMD_CHECK_COMPILER_FLAG([-Wold-style-definition]) + LIBMD_CHECK_COMPILER_FLAG([-Wpointer-arith]) + LIBMD_CHECK_COMPILER_FLAG([-Wredundant-decls]) + LIBMD_CHECK_COMPILER_FLAG([-Wregister]) + LIBMD_CHECK_COMPILER_FLAG([-Wrestrict]) + LIBMD_CHECK_COMPILER_FLAG([-Wshadow]) + LIBMD_CHECK_COMPILER_FLAG([-Wshift-negative-value]) + LIBMD_CHECK_COMPILER_FLAG([-Wsizeof-array-argument]) + LIBMD_CHECK_COMPILER_FLAG([-Wstrict-prototypes]) + LIBMD_CHECK_COMPILER_FLAG([-Wswitch-bool]) + LIBMD_CHECK_COMPILER_FLAG([-Wvla]) + LIBMD_CHECK_COMPILER_FLAG([-Wwrite-strings]) + + CFLAGS="$LIBMD_COMPILER_FLAGS $CFLAGS" + + AC_ARG_ENABLE([sanitize], + [AS_HELP_STRING([--enable-sanitize], [enable compiler sanitizer support])], + [ + LIBMD_COMPILER_FLAGS='' + + LIBMD_CHECK_COMPILER_FLAG([-fsanitize=address]) + LIBMD_CHECK_COMPILER_FLAG([-fsanitize=leak]) + LIBMD_CHECK_COMPILER_FLAG([-fsanitize=undefined]) + + CFLAGS="$LIBMD_COMPILER_FLAGS $CFLAGS" + LDFLAGS="$LIBMD_COMPILER_FLAGS $LDFLAGS" + ]) +]) + # Checks for libraries. # Checks for header files. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/m4/libmd-compiler.m4 new/libmd-1.0.4/m4/libmd-compiler.m4 --- old/libmd-1.0.3/m4/libmd-compiler.m4 1970-01-01 01:00:00.000000000 +0100 +++ new/libmd-1.0.4/m4/libmd-compiler.m4 2021-09-17 04:11:39.000000000 +0200 @@ -0,0 +1,24 @@ +# Copyright ?? 2021 Guillem Jover <guil...@hadrons.org> + +# LIBMD_CHECK_COMPILER_FLAG +# ------------------------- +AC_DEFUN([LIBMD_CHECK_COMPILER_FLAG], [ + AS_VAR_PUSHDEF([libmd_varname_cache], [libmd_cv_cflags_$1]) + AC_CACHE_CHECK([whether $CC accepts $1], [libmd_varname_cache], [ + m4_define([libmd_check_flag], m4_bpatsubst([$1], [^-Wno-], [-W])) + AS_VAR_COPY([libmd_save_CFLAGS], [CFLAGS]) + AS_VAR_SET([CFLAGS], ["-Werror libmd_check_flag"]) + AC_COMPILE_IFELSE([ + AC_LANG_SOURCE([[]]) + ], [ + AS_VAR_SET([libmd_varname_cache], [yes]) + ], [ + AS_VAR_SET([libmd_varname_cache], [no]) + ]) + AS_VAR_COPY([CFLAGS], [libmd_save_CFLAGS]) + ]) + AS_VAR_IF([libmd_varname_cache], [yes], [ + AS_VAR_APPEND([LIBMD_COMPILER_FLAGS], [" $1"]) + ]) + AS_VAR_POPDEF([libmd_varname_cache]) +]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/m4/libtool.m4 new/libmd-1.0.4/m4/libtool.m4 --- old/libmd-1.0.3/m4/libtool.m4 2021-01-02 16:40:54.000000000 +0100 +++ new/libmd-1.0.4/m4/libtool.m4 2021-10-05 04:47:19.000000000 +0200 @@ -1071,11 +1071,11 @@ # to the OS version, if on x86, and 10.4, the deployment # target defaults to 10.4. Don't you love it? case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in - 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) + 10.0,*86*-darwin8*|10.0,*-darwin[[912]]*) _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; 10.[[012]][[,.]]*) _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; - 10.*) + 10.*|11.*) _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; esac ;; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/man/Makefile.am new/libmd-1.0.4/man/Makefile.am --- old/libmd-1.0.3/man/Makefile.am 2016-05-09 16:45:24.000000000 +0200 +++ new/libmd-1.0.4/man/Makefile.am 2021-10-05 04:34:35.000000000 +0200 @@ -12,13 +12,13 @@ SED_MD5_SUBST = -e 's/mdX/md5/g' -e 's/MDX/MD5/g' md2.3: $(srcdir)/mdX.3 - $(AM_V_GEN) sed $(SED_MD2_SUBST) $< >$@ + $(AM_V_GEN) $(SED) $(SED_MD2_SUBST) $(srcdir)/mdX.3 >$@ md4.3: $(srcdir)/mdX.3 - $(AM_V_GEN) sed $(SED_MD4_SUBST) $< >$@ + $(AM_V_GEN) $(SED) $(SED_MD4_SUBST) $(srcdir)/mdX.3 >$@ md5.3: $(srcdir)/mdX.3 - $(AM_V_GEN) sed $(SED_MD5_SUBST) $< >$@ + $(AM_V_GEN) $(SED) $(SED_MD5_SUBST) $(srcdir)/mdX.3 >$@ dist_man_MANS = \ md2.3 \ @@ -41,7 +41,7 @@ $(nil) $(md2_FUNCS): md2.3 - $(LN_S) -f $< $(DESTDIR)$(man3dir)/$@.3 + $(LN_S) -f md2.3 $(DESTDIR)$(man3dir)/$@.3 md4_FUNCS = \ MD4Transform \ @@ -56,7 +56,7 @@ $(nil) $(md4_FUNCS): md4.3 - $(LN_S) -f $< $(DESTDIR)$(man3dir)/$@.3 + $(LN_S) -f md4.3 $(DESTDIR)$(man3dir)/$@.3 md5_FUNCS = \ MD5Transform \ @@ -71,7 +71,7 @@ $(nil) $(md5_FUNCS): md5.3 - $(LN_S) -f $< $(DESTDIR)$(man3dir)/$@.3 + $(LN_S) -f md5.3 $(DESTDIR)$(man3dir)/$@.3 rmd160_FUNCS = \ RMD160Transform \ @@ -86,7 +86,7 @@ $(nil) $(rmd160_FUNCS): rmd160.3 - $(LN_S) -f $< $(DESTDIR)$(man3dir)/$@.3 + $(LN_S) -f rmd160.3 $(DESTDIR)$(man3dir)/$@.3 sha1_FUNCS = \ SHA1Transform \ @@ -101,7 +101,7 @@ $(nil) $(sha1_FUNCS): sha1.3 - $(LN_S) -f $< $(DESTDIR)$(man3dir)/$@.3 + $(LN_S) -f sha1.3 $(DESTDIR)$(man3dir)/$@.3 sha2_FUNCS = \ SHA256Init \ @@ -134,7 +134,7 @@ $(nil) $(sha2_FUNCS): sha2.3 - $(LN_S) -f $< $(DESTDIR)$(man3dir)/$@.3 + $(LN_S) -f sha2.3 $(DESTDIR)$(man3dir)/$@.3 digest_FUNCS = \ $(md2_FUNCS) \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/man/rmd160.3 new/libmd-1.0.4/man/rmd160.3 --- old/libmd-1.0.3/man/rmd160.3 2016-05-09 16:45:24.000000000 +0200 +++ new/libmd-1.0.4/man/rmd160.3 2021-03-01 03:30:05.000000000 +0100 @@ -64,12 +64,11 @@ suitable for use as a digital signature. .Pp The RMD160 functions are considered to be more secure than the -.Xr md4 3 -and +.Xr md4 3 , .Xr md5 3 -functions and at least as secure as the +and .Xr sha1 3 -function. +functions. All share a similar interface. .Pp The diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/man/sha1.3 new/libmd-1.0.4/man/sha1.3 --- old/libmd-1.0.3/man/sha1.3 2016-05-09 16:45:24.000000000 +0200 +++ new/libmd-1.0.4/man/sha1.3 2021-03-01 03:30:05.000000000 +0100 @@ -63,11 +63,13 @@ message less than 2^64 bits as input and produces a 160-bit digest suitable for use as a digital signature. .Pp -The SHA1 functions are considered to be more secure than the +While the SHA1 functions are considered to be more secure than the .Xr md4 3 and .Xr md5 3 -functions with which they share a similar interface. +functions with which they share a similar interface, they are considered +insecure as of 2005, and as of 2020 chosen-prefix attacks have become +practical, thus these must not be used in cryptographic contexts. .Pp The .Fn SHA1Init diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/src/Makefile.am new/libmd-1.0.4/src/Makefile.am --- old/libmd-1.0.3/src/Makefile.am 2020-12-22 18:45:56.000000000 +0100 +++ new/libmd-1.0.4/src/Makefile.am 2021-10-05 04:34:35.000000000 +0200 @@ -74,34 +74,34 @@ # Generate a simple libtool symbol export list to be used as a fallback if # there is no version script support. libmd.sym: libmd.map - $(AM_V_GEN) sed -ne 's/^[[:space:]]\{1,\}\([A-Za-z0-9]\{1,\}\);/\1/p' $< > $@ + $(AM_V_GEN) $(SED) -ne 's/^[[:space:]]\{1,\}\([A-Za-z0-9]\{1,\}\);/\1/p' libmd.map > $@ md2hl.c: helper.c - $(AM_V_GEN) sed -e 's/hashinc/md2.h/g' -e 's/HASH/MD2/g' $< > $@ + $(AM_V_GEN) $(SED) -e 's/hashinc/md2.h/g' -e 's/HASH/MD2/g' helper.c > $@ md4hl.c: helper.c - $(AM_V_GEN) sed -e 's/hashinc/md4.h/g' -e 's/HASH/MD4/g' $< > $@ + $(AM_V_GEN) $(SED) -e 's/hashinc/md4.h/g' -e 's/HASH/MD4/g' helper.c > $@ md5hl.c: helper.c - $(AM_V_GEN) sed -e 's/hashinc/md5.h/g' -e 's/HASH/MD5/g' $< > $@ + $(AM_V_GEN) $(SED) -e 's/hashinc/md5.h/g' -e 's/HASH/MD5/g' helper.c > $@ rmd160hl.c: helper.c - $(AM_V_GEN) sed -e 's/hashinc/rmd160.h/g' -e 's/HASH/RMD160/g' $< > $@ + $(AM_V_GEN) $(SED) -e 's/hashinc/rmd160.h/g' -e 's/HASH/RMD160/g' helper.c > $@ sha1hl.c: helper.c - $(AM_V_GEN) sed -e 's/hashinc/sha1.h/g' -e 's/HASH/SHA1/g' $< > $@ + $(AM_V_GEN) $(SED) -e 's/hashinc/sha1.h/g' -e 's/HASH/SHA1/g' helper.c > $@ sha256hl.c: helper.c - $(AM_V_GEN) sed -e 's/hashinc/sha2.h/g' -e 's/HASH/SHA256/g' \ - -e 's/SHA[0-9][0-9][0-9]_CTX/SHA2_CTX/g' $< > $@ + $(AM_V_GEN) $(SED) -e 's/hashinc/sha2.h/g' -e 's/HASH/SHA256/g' \ + -e 's/SHA[0-9][0-9][0-9]_CTX/SHA2_CTX/g' helper.c > $@ sha384hl.c: helper.c - $(AM_V_GEN) sed -e 's/hashinc/sha2.h/g' -e 's/HASH/SHA384/g' \ - -e 's/SHA[0-9][0-9][0-9]_CTX/SHA2_CTX/g' $< > $@ + $(AM_V_GEN) $(SED) -e 's/hashinc/sha2.h/g' -e 's/HASH/SHA384/g' \ + -e 's/SHA[0-9][0-9][0-9]_CTX/SHA2_CTX/g' helper.c > $@ sha512hl.c: helper.c - $(AM_V_GEN) sed -e 's/hashinc/sha2.h/g' -e 's/HASH/SHA512/g' \ - -e 's/SHA[0-9][0-9][0-9]_CTX/SHA2_CTX/g' $< > $@ + $(AM_V_GEN) $(SED) -e 's/hashinc/sha2.h/g' -e 's/HASH/SHA512/g' \ + -e 's/SHA[0-9][0-9][0-9]_CTX/SHA2_CTX/g' helper.c > $@ runtimelibdir = $(libdir) @@ -111,7 +111,7 @@ mv $(DESTDIR)$(libdir)/libmd*.so.* \ $(DESTDIR)$(runtimelibdir)/; \ soname=`readlink $(DESTDIR)$(libdir)/libmd.so`; \ - sorelprefix=`echo $(libdir) | sed -r -e 's:(^/)?[^/]+:..:g'`; \ + sorelprefix=`echo $(libdir) | $(SED) -r -e 's:(^/)?[^/]+:..:g'`; \ ln -sf $$sorelprefix$(runtimelibdir)/$$soname \ $(DESTDIR)$(libdir)/libmd.so; \ fi diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/src/helper.c new/libmd-1.0.4/src/helper.c --- old/libmd-1.0.3/src/helper.c 2021-01-02 16:15:40.000000000 +0100 +++ new/libmd-1.0.4/src/helper.c 2021-03-01 03:30:05.000000000 +0100 @@ -74,7 +74,7 @@ return (NULL); } - while ((nr = read(fd, buffer, MIN(sizeof(buffer), len))) > 0) { + while ((nr = read(fd, buffer, MIN((off_t)sizeof(buffer), len))) > 0) { HASHUpdate(&ctx, buffer, (size_t)nr); if (len > 0 && (len -= nr) == 0) break; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/src/md2hl.c new/libmd-1.0.4/src/md2hl.c --- old/libmd-1.0.3/src/md2hl.c 2021-01-02 16:42:35.000000000 +0100 +++ new/libmd-1.0.4/src/md2hl.c 2021-10-05 04:47:24.000000000 +0200 @@ -74,7 +74,7 @@ return (NULL); } - while ((nr = read(fd, buffer, MIN(sizeof(buffer), len))) > 0) { + while ((nr = read(fd, buffer, MIN((off_t)sizeof(buffer), len))) > 0) { MD2Update(&ctx, buffer, (size_t)nr); if (len > 0 && (len -= nr) == 0) break; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/src/md4hl.c new/libmd-1.0.4/src/md4hl.c --- old/libmd-1.0.3/src/md4hl.c 2021-01-02 16:42:35.000000000 +0100 +++ new/libmd-1.0.4/src/md4hl.c 2021-10-05 04:47:24.000000000 +0200 @@ -74,7 +74,7 @@ return (NULL); } - while ((nr = read(fd, buffer, MIN(sizeof(buffer), len))) > 0) { + while ((nr = read(fd, buffer, MIN((off_t)sizeof(buffer), len))) > 0) { MD4Update(&ctx, buffer, (size_t)nr); if (len > 0 && (len -= nr) == 0) break; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/src/md5hl.c new/libmd-1.0.4/src/md5hl.c --- old/libmd-1.0.3/src/md5hl.c 2021-01-02 16:42:35.000000000 +0100 +++ new/libmd-1.0.4/src/md5hl.c 2021-10-05 04:47:24.000000000 +0200 @@ -74,7 +74,7 @@ return (NULL); } - while ((nr = read(fd, buffer, MIN(sizeof(buffer), len))) > 0) { + while ((nr = read(fd, buffer, MIN((off_t)sizeof(buffer), len))) > 0) { MD5Update(&ctx, buffer, (size_t)nr); if (len > 0 && (len -= nr) == 0) break; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/src/rmd160hl.c new/libmd-1.0.4/src/rmd160hl.c --- old/libmd-1.0.3/src/rmd160hl.c 2021-01-02 16:42:35.000000000 +0100 +++ new/libmd-1.0.4/src/rmd160hl.c 2021-10-05 04:47:24.000000000 +0200 @@ -74,7 +74,7 @@ return (NULL); } - while ((nr = read(fd, buffer, MIN(sizeof(buffer), len))) > 0) { + while ((nr = read(fd, buffer, MIN((off_t)sizeof(buffer), len))) > 0) { RMD160Update(&ctx, buffer, (size_t)nr); if (len > 0 && (len -= nr) == 0) break; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/src/sha1hl.c new/libmd-1.0.4/src/sha1hl.c --- old/libmd-1.0.3/src/sha1hl.c 2021-01-02 16:42:35.000000000 +0100 +++ new/libmd-1.0.4/src/sha1hl.c 2021-10-05 04:47:24.000000000 +0200 @@ -74,7 +74,7 @@ return (NULL); } - while ((nr = read(fd, buffer, MIN(sizeof(buffer), len))) > 0) { + while ((nr = read(fd, buffer, MIN((off_t)sizeof(buffer), len))) > 0) { SHA1Update(&ctx, buffer, (size_t)nr); if (len > 0 && (len -= nr) == 0) break; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/src/sha2.c new/libmd-1.0.4/src/sha2.c --- old/libmd-1.0.3/src/sha2.c 2021-01-02 16:15:22.000000000 +0100 +++ new/libmd-1.0.4/src/sha2.c 2021-03-01 03:30:05.000000000 +0100 @@ -140,7 +140,7 @@ /*** SHA-XYZ INITIAL HASH VALUES AND CONSTANTS ************************/ /* Hash constant words K for SHA-256: */ -const static uint32_t K256[64] = { +static const uint32_t K256[64] = { 0x428a2f98UL, 0x71374491UL, 0xb5c0fbcfUL, 0xe9b5dba5UL, 0x3956c25bUL, 0x59f111f1UL, 0x923f82a4UL, 0xab1c5ed5UL, 0xd807aa98UL, 0x12835b01UL, 0x243185beUL, 0x550c7dc3UL, @@ -160,7 +160,7 @@ }; /* Initial hash value H for SHA-256: */ -const static uint32_t sha256_initial_hash_value[8] = { +static const uint32_t sha256_initial_hash_value[8] = { 0x6a09e667UL, 0xbb67ae85UL, 0x3c6ef372UL, @@ -173,7 +173,7 @@ #ifndef SHA256_ONLY /* Hash constant words K for SHA-384 and SHA-512: */ -const static uint64_t K512[80] = { +static const uint64_t K512[80] = { 0x428a2f98d728ae22ULL, 0x7137449123ef65cdULL, 0xb5c0fbcfec4d3b2fULL, 0xe9b5dba58189dbbcULL, 0x3956c25bf348b538ULL, 0x59f111f1b605d019ULL, @@ -217,7 +217,7 @@ }; /* Initial hash value H for SHA-384 */ -const static uint64_t sha384_initial_hash_value[8] = { +static const uint64_t sha384_initial_hash_value[8] = { 0xcbbb9d5dc1059ed8ULL, 0x629a292a367cd507ULL, 0x9159015a3070dd17ULL, @@ -229,7 +229,7 @@ }; /* Initial hash value H for SHA-512 */ -const static uint64_t sha512_initial_hash_value[8] = { +static const uint64_t sha512_initial_hash_value[8] = { 0x6a09e667f3bcc908ULL, 0xbb67ae8584caa73bULL, 0x3c6ef372fe94f82bULL, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/src/sha256hl.c new/libmd-1.0.4/src/sha256hl.c --- old/libmd-1.0.3/src/sha256hl.c 2021-01-02 16:42:35.000000000 +0100 +++ new/libmd-1.0.4/src/sha256hl.c 2021-10-05 04:47:24.000000000 +0200 @@ -74,7 +74,7 @@ return (NULL); } - while ((nr = read(fd, buffer, MIN(sizeof(buffer), len))) > 0) { + while ((nr = read(fd, buffer, MIN((off_t)sizeof(buffer), len))) > 0) { SHA256Update(&ctx, buffer, (size_t)nr); if (len > 0 && (len -= nr) == 0) break; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/src/sha384hl.c new/libmd-1.0.4/src/sha384hl.c --- old/libmd-1.0.3/src/sha384hl.c 2021-01-02 16:42:35.000000000 +0100 +++ new/libmd-1.0.4/src/sha384hl.c 2021-10-05 04:47:24.000000000 +0200 @@ -74,7 +74,7 @@ return (NULL); } - while ((nr = read(fd, buffer, MIN(sizeof(buffer), len))) > 0) { + while ((nr = read(fd, buffer, MIN((off_t)sizeof(buffer), len))) > 0) { SHA384Update(&ctx, buffer, (size_t)nr); if (len > 0 && (len -= nr) == 0) break; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/src/sha512hl.c new/libmd-1.0.4/src/sha512hl.c --- old/libmd-1.0.3/src/sha512hl.c 2021-01-02 16:42:35.000000000 +0100 +++ new/libmd-1.0.4/src/sha512hl.c 2021-10-05 04:47:24.000000000 +0200 @@ -74,7 +74,7 @@ return (NULL); } - while ((nr = read(fd, buffer, MIN(sizeof(buffer), len))) > 0) { + while ((nr = read(fd, buffer, MIN((off_t)sizeof(buffer), len))) > 0) { SHA512Update(&ctx, buffer, (size_t)nr); if (len > 0 && (len -= nr) == 0) break; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/test/md2.c new/libmd-1.0.4/test/md2.c --- old/libmd-1.0.3/test/md2.c 2018-11-06 20:36:28.000000000 +0100 +++ new/libmd-1.0.4/test/md2.c 2021-03-01 03:30:05.000000000 +0100 @@ -33,7 +33,7 @@ DEF_TEST_DIGEST(MD2, MD2) int -main() +main(int argc, char *argv[]) { test_MD2("8350e5a3e24c153df2275c9f80692773", ""); test_MD2("da853b0d3f88d99b30283a69e6ded6bb", "abc"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/test/md4.c new/libmd-1.0.4/test/md4.c --- old/libmd-1.0.3/test/md4.c 2018-11-06 20:36:28.000000000 +0100 +++ new/libmd-1.0.4/test/md4.c 2021-03-01 03:30:05.000000000 +0100 @@ -33,7 +33,7 @@ DEF_TEST_DIGEST(MD4, MD4) int -main() +main(int argc, char *argv[]) { test_MD4("31d6cfe0d16ae931b73c59d7e0c089c0", ""); test_MD4("a448017aaf21d8525fc10ae87aa6729d", "abc"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/test/md5.c new/libmd-1.0.4/test/md5.c --- old/libmd-1.0.3/test/md5.c 2018-11-06 20:36:28.000000000 +0100 +++ new/libmd-1.0.4/test/md5.c 2021-03-01 03:30:05.000000000 +0100 @@ -36,7 +36,7 @@ DEF_TEST_DIGEST(MD5, MD5) -void +static void test_MD5_aladdin(const char *hash_str_ref, const char *data) { uint8_t hash_bin_ref[MD5_DIGEST_LENGTH]; @@ -46,12 +46,12 @@ hex2bin(hash_bin_ref, hash_str_ref, MD5_DIGEST_LENGTH); md5_init(&pms); - md5_append(&pms, data, strlen(data)); + md5_append(&pms, (const uint8_t *)data, strlen(data)); md5_finish(&pms, hash_bin_got); assert(memcmp(hash_bin_ref, hash_bin_got, MD5_DIGEST_LENGTH) == 0); } -void +static void test_MD5_all(const char *hash_str_ref, const char *data) { test_MD5(hash_str_ref, data); @@ -59,7 +59,7 @@ } int -main() +main(int argc, char *argv[]) { test_MD5_all("d41d8cd98f00b204e9800998ecf8427e", ""); test_MD5_all("900150983cd24fb0d6963f7d28e17f72", "abc"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/test/rmd160.c new/libmd-1.0.4/test/rmd160.c --- old/libmd-1.0.3/test/rmd160.c 2018-11-06 20:36:28.000000000 +0100 +++ new/libmd-1.0.4/test/rmd160.c 2021-03-01 03:30:05.000000000 +0100 @@ -33,7 +33,7 @@ DEF_TEST_DIGEST(RMD160, RMD160) int -main() +main(int argc, char *argv[]) { test_RMD160("9c1185a5c5e9fc54612808977ee8f548b2258d31", ""); test_RMD160("8eb208f7e05d987a9b044a8e98c6b087f15a0bfc", "abc"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/test/sha1.c new/libmd-1.0.4/test/sha1.c --- old/libmd-1.0.3/test/sha1.c 2018-11-06 20:36:28.000000000 +0100 +++ new/libmd-1.0.4/test/sha1.c 2021-03-01 03:30:05.000000000 +0100 @@ -33,7 +33,7 @@ DEF_TEST_DIGEST(SHA1, SHA1) int -main() +main(int argc, char *argv[]) { test_SHA1("da39a3ee5e6b4b0d3255bfef95601890afd80709", ""); test_SHA1("a9993e364706816aba3e25717850c26c9cd0d89d", "abc"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/test/sha2.c new/libmd-1.0.4/test/sha2.c --- old/libmd-1.0.3/test/sha2.c 2018-11-06 20:36:28.000000000 +0100 +++ new/libmd-1.0.4/test/sha2.c 2021-03-01 03:30:05.000000000 +0100 @@ -35,7 +35,7 @@ DEF_TEST_DIGEST(SHA512, SHA2) int -main() +main(int argc, char *argv[]) { test_SHA256("e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", ""); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/libmd-1.0.3/test/test.h new/libmd-1.0.4/test/test.h --- old/libmd-1.0.3/test/test.h 2018-11-06 20:36:28.000000000 +0100 +++ new/libmd-1.0.4/test/test.h 2021-03-01 03:30:05.000000000 +0100 @@ -44,7 +44,7 @@ static void hex2bin(uint8_t *bin, const char *str, size_t bin_len) { - int i; + size_t i; for (i = 0; i < bin_len; i++) bin[i] = hexchar2bin(str[i * 2]) << 4 | @@ -52,7 +52,7 @@ } #define DEF_TEST_DIGEST(name, type) \ -void \ +static void \ test_##name(const char *hash_str_ref, const char *data) \ { \ uint8_t hash_bin_ref[name##_DIGEST_LENGTH]; \ @@ -62,16 +62,16 @@ \ hex2bin(hash_bin_ref, hash_str_ref, name##_DIGEST_LENGTH); \ \ - name##Data(data, strlen(data), hash_str_got); \ + name##Data((const uint8_t *)data, strlen(data), hash_str_got); \ assert(strcmp(hash_str_ref, hash_str_got) == 0); \ \ name##Init(&ctx); \ - name##Update(&ctx, data, strlen(data)); \ + name##Update(&ctx, (const uint8_t *)data, strlen(data)); \ name##End(&ctx, hash_str_got); \ assert(strcmp(hash_str_ref, hash_str_got) == 0); \ \ name##Init(&ctx); \ - name##Update(&ctx, data, strlen(data)); \ + name##Update(&ctx, (const uint8_t *)data, strlen(data)); \ name##Final(hash_bin_got, &ctx); \ assert(memcmp(hash_bin_ref, hash_bin_got, sizeof(hash_bin_ref)) == 0); \ }