From: Andreas Ă–man Date: Wed, 23 Jun 2010 21:56:04 +0000 (+0000) Subject: Switch SHA1 implementation X-Git-Tag: 2.12~127 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=07002e15da82cfe3d49d2dd921ea1afd3d8fcd62;p=thirdparty%2Ftvheadend.git Switch SHA1 implementation --- diff --git a/src/trap.c b/src/trap.c index 5c1d26548..8be0c9b18 100644 --- a/src/trap.c +++ b/src/trap.c @@ -34,10 +34,8 @@ char tvh_binshasum[20]; #include #include -#include - #include "tvhead.h" - +#include "sha1.h" static char traceline[4096]; static int tracepos = 0; @@ -87,7 +85,7 @@ traphandler(int sig, siginfo_t *si, void *UC) tvhlog_spawn(LOG_ALERT, "CRASH", "%s", traceline); } -static struct AVSHA1 *binsum; +static struct SHA1Context binsum; static int @@ -112,10 +110,10 @@ callback(struct dl_phdr_info *info, size_t size, void *data) if(info->dlpi_phdr[j].p_memsz < 65536) continue; - - av_sha1_update(binsum, - (void *)(info->dlpi_addr + info->dlpi_phdr[j].p_vaddr), - info->dlpi_phdr[j].p_memsz); + + SHA1Input(&binsum, + (void *)(info->dlpi_addr + info->dlpi_phdr[j].p_vaddr), + info->dlpi_phdr[j].p_memsz); } return 0; } @@ -148,12 +146,11 @@ trap_init(const char *ver) traceappend("OBJS: "); - binsum = malloc(av_sha1_size); - av_sha1_init(binsum); + SHA1Reset(&binsum); dl_iterate_phdr(callback, NULL); - av_sha1_final(binsum, digest); + SHA1Result(&binsum, digest); traceappend("SHA1: %02x%02x%02x%02x%02x%02x%02x%02x%02x%02x" "%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x ", @@ -179,8 +176,6 @@ trap_init(const char *ver) digest[19]); memcpy(tvh_binshasum, digest, 20); - - free(binsum); } #else