Hojun-Cho
e9bd06a193
lib/crypto/sha256: restore faithful re-entrant sum() (#265 unblocked)
The port shipped sum() single-shot — mutating the live hash state —
because Hare's state snapshot `let copy = *h; let h = ©` (a
deref-rhs aggregate let-init of an array-containing struct) miscompiled
in cgen. #265 fold-1 (master 4d3f846) landed the full-size aggregate
copy for that axis, so restore the faithful form: pad+finalize the
snapshot, leave the live state untouched, close() the copy.
sum() is now non-destructive — summing twice yields the same digest and
writing after a sum() continues the stream. Pinned by a new reentrant()
@test (sum-twice identical + write-after-sum continuity). NIST vectors
unchanged.
2026-06-02 09:48:39 +09:00
..
2026-06-01 16:12:05 +09:00
2026-05-30 03:24:23 +09:00
2026-06-01 15:41:10 +09:00
2026-05-18 18:25:36 +09:00
2026-06-02 09:48:39 +09:00
2026-05-18 18:25:36 +09:00
2026-06-02 06:17:59 +09:00
2026-05-18 18:25:36 +09:00
2026-05-30 05:58:06 +09:00
2026-05-31 18:51:12 +09:00
2026-05-18 18:25:36 +09:00
2026-05-20 02:02:28 +09:00
2026-06-02 09:44:38 +09:00
2026-05-31 17:30:55 +09:00
2026-05-31 18:51:12 +09:00
2026-05-27 10:55:31 +09:00
2026-05-30 03:24:23 +09:00
2026-05-18 18:25:36 +09:00
2026-05-31 18:51:12 +09:00
2026-05-21 01:01:13 +09:00
2026-05-20 22:11:34 +09:00
2026-05-30 03:24:23 +09:00
2026-05-26 10:54:35 +09:00
2026-06-01 23:36:36 +09:00
2026-06-01 16:33:45 +09:00
2026-05-18 18:25:36 +09:00
2026-05-18 18:25:36 +09:00
2026-05-26 08:31:41 +09:00
2026-06-02 00:08:52 +09:00
2026-05-31 18:51:12 +09:00