Log

Author Commit Date CI Message
Guillem Jover 9934d941 2023-04-05T23:53:43 Sync SHA1 changes from OpenBSD Remove SH specific code, and remove conditional for the digest argument.
Guillem Jover 457e30ae 2023-04-09T00:14:30 Sync RMD160 changes from OpenBSD
Guillem Jover b2e54bcd 2023-04-09T00:10:07 Sync MD5 changes from OpenBSD
Guillem Jover ee56a52a 2023-04-09T00:05:02 Sync MD4 changes from OpenBSD Get all changes before this MD4 implementation got removed from OpenBSD.
Guillem Jover b9496acd 2023-04-05T23:53:24 Sync MD2 changes from NetBSD
Guillem Jover 09d58246 2023-04-08T20:53:37 Remove unused <assert.h>
Guillem Jover 08b2c5dd 2023-04-08T23:43:04 build: Rename libmd_alias() to libmd_strong_alias()
Guillem Jover ed695998 2023-03-31T23:47:38 On Darwin use assembler to support symbol aliases The alias attribute is not supported on Darwin, but we can alias using assembler directives instead. At the same time we switch the non-ELF fallback implementation for libmd_symver_default to use libmd_alias.
Guillem Jover b74b7772 2023-03-28T03:25:35 build: Do not use strong aliases on macOS These are not supported, and when trying to link the library we get the following error message: error: aliases are not supported on darwin
Guillem Jover 94838ec6 2023-03-14T01:49:53 build: Require automake 1.11 This is a rather old release (from 2009), that provides AM_SILENT_RULES.
Guillem Jover 39cbc7bb 2023-03-14T01:48:45 build: Fix configure.ac indentation Use the same style as the newly added code, which should make the code more readable.
Guillem Jover 4620a04a 2023-02-17T22:29:50 build: Switch to debian:latest Docker image This should always point to the latest Debian stable images.
Guillem Jover e4087860 2023-02-12T23:55:09 build: Fix version script linker support detection When the linker uses --no-undefined-version either specified by the user or as the default behavior (such as with newer clang >= 16 releases), a missing symbol definition will cause a linker error if that symbol is listed in the version script. Closes: #1
Guillem Jover 0ef1e4da 2022-10-05T01:38:35 doc: Move mailing list reference to the end
Guillem Jover a3f16719 2021-10-05T06:03:29 man: Add new libmd(7) man page
Guillem Jover 9d3c9a73 2021-10-05T04:44:25 Release libmd 1.0.4
David Seifert 04781b0a 2021-10-05T04:34:48 build: Avoid non-portable '$<' in non-inference rules OpenBSD's 'pmake' chokes on these. Signed-off-by: Guillem Jover <guillem@hadrons.org>
Guillem Jover 8a62de57 2021-08-17T02:24:09 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 <soap@gentoo.org>
David Seifert 85f7006c 2021-10-05T04:20:30 build: Explicitly depend on sed Signed-off-by: Guillem Jover <guillem@hadrons.org>
Guillem Jover dc32a595 2021-08-16T14:43:49 build: Switch Docker image to Debian bullseye
Guillem Jover d9c4c7fe 2021-02-20T22:19:49 build: Add support for sanitizer compiler flags
Guillem Jover e35f6b87 2021-02-19T23:59:47 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.
Guillem Jover 9cc6db0c 2021-02-28T18:57:00 build: Improve coverage report Exclude test suite files from the coverage which incorrectly increase the coverage percent. Build with no-optimizations and debugging symbols.
Guillem Jover ef667150 2021-02-28T18:56:27 build: Indent packages in GitLab CI apt-get invocation
Guillem Jover 8308181a 2021-02-20T23:41:51 build: Add GitLab CI support
Guillem Jover ac5cd2d7 2021-02-28T01:13:14 build: Ignore code coverage files
Guillem Jover 1a8d0b68 2021-02-20T23:40:29 man: Document RIPEMD160 and SHA-1 security status
Guillem Jover e50a6db8 2021-02-19T23:58:37 test: Fix pointer type sign mismatch in DEF_TEST_DIGEST() macro Warned-by: gcc
Guillem Jover b7d06e0d 2021-02-19T23:56:07 Fix signedness type mismatch comparisons Change the variable type or use a cast. Warned-by: gcc
Guillem Jover 6cedc159 2021-02-19T07:14:15 Fix main() function prototype Warned-by: gcc
Guillem Jover 52ee5476 2021-02-19T07:13:51 Declare local functions as static Warned-by: gcc
Guillem Jover 281dab62 2021-02-19T07:13:28 Place static keyword before const in function definitions Warned-by: gcc
Guillem Jover 981a0a1d 2021-01-02T16:30:03 Release libmd 1.0.3
Guillem Jover 6b3f9f75 2021-01-02T16:26:38 build: Provide wrapper functions instead of aliases in DLL built with MSVC On Windows we cannot use proper aliases, and using the /EXPORT linker flag is too cumbersome, as it does not work when static linking, and when dynamic linking it does not make the aliases visible within the DLL itself. Just use normal function wrapper in those cases, which are way more maintainable.
Michael Haubenwallner 0f573400 2020-12-22T18:47:47 build: Fix out of tree builds Adding local-link.h as private header file requires $(srcdir) on AM_CPPFLAGS to be found by generated sources when builddir != srcdir. Do not use libmd.sym from $(srcdir), as it is a generated file. [guillem@hadrons.org: - Remove unrelated line moves. ] Signed-off-by: Guillem Jover <guillem@hadrons.org>
Guillem Jover 547953ef 2020-12-22T18:40:55 build: Ignore release tarballs
Guillem Jover dd01b873 2020-12-22T17:49:23 Release libmd 1.0.2
Guillem Jover eb25da50 2020-11-28T20:00:01 Remove duplicate Files entries from COPYING
Guillem Jover 52cb9cbe 2020-09-17T03:19:51 build: Only depend on libmd.sym when using it
Guillem Jover 42d691a5 2020-12-21T20:19:54 build: Move local-link.h from libmd_la_helper_sources to libmd_la_SOURCES This is not a generated file, so it needs to be listed in the library SOURCES variable. Fixes: commit 9cc938450392d64440de5c7db27903dff9922728
Guillem Jover bd364c6d 2019-08-28T11:30:29 Switch SHA2 symbols from weak to strong aliases There is no good reason to have these as weak symbols at all. And it makes building on Windows (Cygwin, MinGW) harder as it does not support weak symbols. Based-on-patch-by: Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com> Signed-off-by: Guillem Jover <guillem@hadrons.org>
Guillem Jover 9cc93845 2019-08-28T11:19:37 Import local-link header from libbsd This provides several macros for versioned symbols and linking magic.
Michael Haubenwallner 09b3ad8c 2019-08-28T11:16:54 Remove unused weak symbol declarations for MD2 functions These are not currently used, as they are not part of the versioned symbols export map. Signed-off-by: Guillem Jover <guillem@hadrons.org>
Michael Haubenwallner 9a77023f 2019-08-22T16:55:44 build: Use <unistd.h> only if available Some target platforms do not have <unistd.h>, notably Windows when using vanilla MSVC toolchain. Note: The AC_CHECK_HEADERS([unistd.h]) is redundant with LT_INIT, but there is no guarantee for that. [guillem@hadrons.org: - Use AC_CHECK_HEADERS instead of AC_CHECK_HEADER. - Quote argument to AC_CHECK_HEADERS. ] Signed-off-by: Guillem Jover <guillem@hadrons.org>
Guillem Jover 9c330aa8 2018-10-22T12:43:15 Release libmd 1.0.1
Guillem Jover f23a2145 2018-10-06T03:46:51 Add compatibility with Aladdin Enterprises MD5 implementation This will be guarded by a LIBMD_MD5_ALADDIN macro check, to avoid polluting the namespace by unsuspecting code. The macro can always be defined unconditionally, and the guard could even potentially be removed in the future if required. Prompted-by: Yangfl <mmyangfl@gmail.com> Ref: https://bugs.debian.org/909116
Guillem Jover cf9ac150 2018-10-06T04:33:02 test: Refactor and extend message digest testing Generate the base test function with a maro, because all of them follow the same pattern. And extend it by covering more of the API.
Guillem Jover b6b3402e 2018-10-06T04:30:59 Fix compatibility macros for SHA512 These have swapped names in their macro values.
Guillem Jover ff52516c 2018-10-06T04:30:11 Add missing compatibility macros for SHA384
Rainer Müller bf04c411 2017-09-29T17:02:33 build: Invoke sed with portable regex The previous sed expression only worked with GNU sed, as the '\+' literal is an extension to basic regex. Use portable syntax instead that also works with other implementations of sed(1), for example on macOS. Signed-off-by: Guillem Jover <guillem@hadrons.org>
Guillem Jover c657abc1 2018-01-13T16:29:02 Release libmd 1.0.0
Guillem Jover 397964a1 2018-01-13T16:32:33 Remove unused NEWS file
Guillem Jover cc6881c6 2017-06-05T05:10:51 Remove unused __RCSID macro usage This is an obsolescent practice, just stop conditionally using this macro.
Guillem Jover 0def1829 2017-06-01T03:00:05 Stop using non-portable <sys/param.h> There are platforms without <sys/param.h>, so we better avoid the header altogether, and add the required MIN macro outselves. Based-on-patch-by: Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
Guillem Jover 04d92f90 2017-05-31T06:58:23 build: Do not override the default DEPENDENCIES for libmd Extend it instead via EXTRA_*_DEPENDENCIES, to make sure that we preserve the builtin library dependencies generated from LIBADD.
Guillem Jover 4c94d7fd 2017-05-31T06:55:35 build: Use an export symbols file if there is no version script support We generate the symbol list from the version script to avoid repeating ourselves and potentially getting the lists out-of-sync. Proposed-by: Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
Guillem Jover b6be272e 2017-05-31T06:45:25 build: Detect version script linker support at configure time This is not a widely supported feature, so only use if in case the linker does support it. Proposed-by: Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
Michael Haubenwallner 555d5074 2017-04-10T13:10:45 build: Switch to AC_C_BIGENDIAN defining WORD_BIGENDIAN We should use the autoconf macro instead of expecting the system to provide the endianness information, which many do not. [guillem@hadrons.org: - Use autoconf macro instead of gnulib one. - Slightly reword commit message. ] Signed-off-by: Guillem Jover <guillem@hadrons.org>
Guillem Jover c3c8d859 2017-06-01T02:43:22 build: Drop GCC specific compiler flag -include Instead, explicitly include <config.h> in library and test source files for increased portability. Based-on-patch-by: Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
Michael Haubenwallner 23637d72 2017-04-10T13:10:40 build: Stop checking for malloc() and memset() We do not provide alternatives for when memset() is missing, or when malloc() is not GNU-style malloc(), causing redirection to (undefined) rpl_malloc(). We do not rely on GNU-style malloc() at all, so there is no point in checking for it. [guillem@hadrons.org: - Slightly reword commit message. ] Signed-off-by: Guillem Jover <guillem@hadrons.org>
Michael Haubenwallner 765a605e 2017-04-10T13:10:39 build: Add -no-undefined libtool flag We have no need for undefined symbols, so we can let the shared library build even on systems without support for undefined symbols. [guillem@hadrons.org: - Place the option on its own line. - Slightly reword commit message. ] Signed-off-by: Guillem Jover <guillem@hadrons.org>
Michael Haubenwallner bb131b2e 2017-04-10T13:10:38 Stop using non-portable <sys/cdefs.h> For portability, we should not rely on the __BEGIN_DECLS, __END_DECLS and __P to be predefined somewhere. For __P, we just remove its usage as we do not support pre-ANSI-C compilers. [guillem@hadrons.org: - Separate extern declarations with newlines. - Slightly reword commit message. ] Signed-off-by: Guillem Jover <guillem@hadrons.org>
Guillem Jover ed7d023e 2016-02-10T00:16:06 Release libmd 0.0.0
Guillem Jover 4eaf4a12 2011-10-23T19:20:26 Add compatibility with other BSDs
Guillem Jover 581c239f 2011-05-29T04:46:28 Remove __bounded__ GCC attribute This is a BSD specific extension to GCC, and as such not widely available elsewhere.
Guillem Jover 18ebbe24 2012-05-29T05:44:54 Use stdint types instead of BSD u_int ones
Guillem Jover f1291e88 2011-05-29T04:46:46 build: Use <endian.h> when <sys/endian.h> is not available
Guillem Jover 7a85a557 2016-02-09T10:17:55 Remove hidden dependencies from public headers Include <sys/types.h> in all public headers as they need them, so that programs do not need to add such header to be able to build.
Guillem Jover 79b3a0b7 2011-05-29T04:48:16 build: Add build infrastructure
Guillem Jover 7a257475 2014-07-19T16:49:55 build: Add weak_alias definition
Guillem Jover c5179609 2015-06-29T17:32:14 build: Define a dummy _DIAGASSERT
Guillem Jover 649209d4 2014-07-19T16:11:42 build: Use stdint
Guillem Jover 1878b975 2014-07-19T16:11:25 man: Add LIBRARY section
Guillem Jover ee0b2299 2011-05-29T03:22:21 Initial import from OpenBSD and NetBSD