1# @ajax/mesh-blobs-frame
23The blob frames on the peer links. Each is a type byte, a `u32` length, then a body that starts with
4the blob's sha256:
56| Frame | Body | Meaning |
7|---|---|---|
8| F_BLOB_PUT | hash, u64 job, u32 len, bytes | A push of the job's copy |
9| F_BLOB_ACK | hash, u32 ok, u64 job | The receiver's copy is durable (or was refused) |
10| F_BLOB_GET | hash, u64 job | A fetch: any job's copy serves |
11| F_BLOB | hash, u32 found, bytes | A fetch's answer |
1213## Ported from
1415[alpha-rust-mesh](https://github.com/rsafier/alpha-rust-mesh) (Richard Safier, MIT):
16`crates/mesh-host/src/blobd.rs`: the frames `ack`, `tick` (pushes and gets) and `frame` (answers and
17reading) write and read.
1819## Tests
2021`tests/frame.c`: each frame's bytes and lengths, read back, and short bodies refused.
2223## Licence
2425MIT. See the repository's LICENSE.