MCPcopy Create free account
hub / github.com/NodeDB-Lab/nodedb / encode_versioned_sync_frame

Function encode_versioned_sync_frame

nodedb-cluster/src/sync_frame_versioned.rs:25–30  ·  view source on GitHub ↗

Encode a [`SyncFrame`] and wrap its bytes in a v2 versioned envelope. The inner bytes are `SyncFrame::to_bytes()` output. The outer envelope lets the receiving peer detect and reject incompatible future versions rather than silently misinterpreting the frame.

(frame: &SyncFrame)

Source from the content-addressed store, hash-verified

23/// lets the receiving peer detect and reject incompatible future versions
24/// rather than silently misinterpreting the frame.
25pub fn encode_versioned_sync_frame(frame: &SyncFrame) -> Result<Vec<u8>> {
26 let raw = frame.to_bytes();
27 wrap_bytes_versioned(&raw).map_err(|e| ClusterError::Codec {
28 detail: format!("SyncFrame versioned encode: {e}"),
29 })
30}
31
32/// Decode a versioned-envelope-wrapped [`SyncFrame`].
33///

Callers 1

Calls 2

wrap_bytes_versionedFunction · 0.85
to_bytesMethod · 0.45

Tested by 1