From 53ab9ae05a579a19c626e8be0c1e2cf9244bf863 Mon Sep 17 00:00:00 2001 From: gramanas Date: Fri, 28 Jan 2022 13:45:30 +0200 Subject: sha1 sum and others --- src/eval.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'src/eval.c') diff --git a/src/eval.c b/src/eval.c index 8bc886a..57bfbb0 100644 --- a/src/eval.c +++ b/src/eval.c @@ -1,5 +1,25 @@ #include "eval.h" #include "util.h" +#include + +extern int +sha1digest(uint8_t *digest, char *hexdigest, const uint8_t *data, size_t databytes); + +void +create_hash(recipe * r) +{ + char data[65536] = "\0"; + + for (int i = 0; i < r->in; i++) { + strcat(data, r->i[i]->name); + strcat(data, r->i[i]->qty); + } + if (r->sn) { + for (int i = 0; i < r->sn; i++) + strcat(data, r->s[i]->inst); + } + sha1digest(NULL, r->sha1, (uint8_t *)data, strlen(data)); +} recipe * eval(recipe * r) @@ -10,7 +30,10 @@ eval(recipe * r) merge_items(_r, r); merge_steps(_r, r); copy_metadata(_r, r); + copy_subrecipes(_r, r); + create_hash(_r); + return _r; } -- cgit v1.2.3