Commit Briefs


Thomas Adam

fix bad wording used in previous commit



Thomas Adam

properly initialize csum struct in write_packed_object()

fixes send.sh test fallout on arm64 and should also fix i386 ok op@


Thomas Adam

add some helper functions to compute hashes

This adds a set of functions to abstract over SHA1Init, SHA1Update, SHA1Final, their respective SHA256 variants and how to compare digests. Replace all the SHA1*() usage with the new APIs. It's a preparatory step for sha256 handling. ok stsp@


Thomas Adam

portable: compat: sha2

Add compatability support for sha2 for systems which don't natively have it. This has been stolen from OpenBSD. Thanks!




Thomas Adam

fix bad wording used in previous commit



Thomas Adam

properly initialize csum struct in write_packed_object()

fixes send.sh test fallout on arm64 and should also fix i386 ok op@


Thomas Adam

format message digest as hex string directly without snprintf()

ok op


Thomas Adam

add some helper functions to compute hashes

This adds a set of functions to abstract over SHA1Init, SHA1Update, SHA1Final, their respective SHA256 variants and how to compare digests. Replace all the SHA1*() usage with the new APIs. It's a preparatory step for sha256 handling. ok stsp@



Thomas Adam

portable: release 0.84.1 (tags/0.84.1)


Thomas Adam

portable: tweak SHA1 detection/libbsd

Don't rely on AC_RUN_IFELSE as this breaks cross-compilation (voidlinux). Although this is better replaced with AC_CHECK_DECL. In template/ include checking for libbsd.


Thomas Adam

portable: set next version


Thomas Adam

portable: release 0.84 (tags/0.84)


Thomas Adam

portable: remove endian.h

This is included portably.


Thomas Adam

portable: rework SHA detection

Simply the SHA detection by not predicating on libcrypto, but instead checking individual header files.


Thomas Adam

portable: remove sha1.h; found portably

Remove sha1.h as this is found portably across systems.


Thomas Adam

portable: update Makefiles

sha1.c -> hash.c


Thomas Adam

provide functions to parse/serialize different hashes

it abstracts over the hash type and ensures that object ids are zero'ed before their sha1 digest is written. Needed by the incoming sha256 support. ok stsp@


Thomas Adam

rename lib/sha1.c to lib/hash.c

It will soon grow functions to deal with sha256 too. stsp@ agrees.


Thomas Adam

include sha2.h too where sha1.h is included

In preparation for wide sha256 support; stsp@ agrees. Change done mechanically with find . -iname \*.[cy] -exec sam {} + X ,x/<sha1\.h>/i/\n#include <sha2.h>