Christoph M. Wintersteiger
Christoph M. Wintersteiger
CC @achamayou
Sorry for having missed this issue before. Your use of retraction is as expected; flushing is used to remove the _left_ side of the tree, e.g. in blockchain applications you...
Awesome, many thanks @Kachoc!
Thanks for the quick fix @kachoc! That particular leak is gone, but there are others, e.g. ``` 10: Direct leak of 32 byte(s) in 1 object(s) allocated from: 10: #0...
I'm pretty sure it's `hash_vec_r_free` in the Merkle trees, it should call `RV.free` instead of `V.free`.
@protz this is about the non-null annotation on the `memcpy` arguments, which clang reported some time ago. I thought you fixed this, but something about it doesn't seem to be...
That's great, thanks for the pointer! I don't have a lot of time, but I'll definitely look at the Merkle tree code.
No it doesn't. It performs some lower level checks, but it doesn't recompute the hashes. I'm planning to change the serialization so as not to save internal hashes at all...
I don't think there's anything cheaper because you have to check every single hash computation since you can't invert them. Maybe we could save some extra information during serialization that...
If I remember correctly, deseralization does set the `rhs_ok` flag to false, so that it triggers a recalculation, but that's only for the right-most hashes on every level of the...