zerodds-coap-bridge

Layer 5 — Bridges. CoAP (RFC 7252) — complete stack set.

zerodds-coap-bridge delivers not just the bare wire codec but the full CoAP stack: reliability with a retransmit tracker, block-wise transfer (RFC 7959), resource discovery via CoRE Link (RFC 6690), the observer pattern (RFC 7641), multicast (§8), caching/proxying (§5.6 + §5.7), a DTLS mode marker (§9), and a bidirectional CoAP↔︎DDS topic bridge. no_std + alloc, forbid(unsafe_code).

Spec anchors

  • RFC 7252 §3 + §3.1 + §4 + §5 + §5.10 + §6 + §8 + §9 + §12.1.
  • RFC 7641 Observing Resources.
  • RFC 7959 Block-Wise Transfer.
  • RFC 6690 CoRE Link Format.

Layer position

Layer 5 — Bridges. Substrate for DDS↔︎IoT endpoint mapping (constrained devices, multicast discovery, the observer pattern for DDS live updates).

Quickstart

use zerodds_coap_bridge::{decode, encode, CoapCode, CoapMessage, MessageType};

let msg = CoapMessage {
    version: 1,
    message_type: MessageType::Confirmable,
    token: Vec::new(),
    code: CoapCode::GET,
    message_id: 0xBEEF,
    options: Vec::new(),
    payload: Vec::new(),
};

let wire = encode(&msg).expect("encode");
let decoded = decode(&wire).expect("decode");
assert_eq!(decoded.code, CoapCode::GET);

Feature flags

Feature Default Purpose
std std::error::Error impls.
alloc ✅ (via std) Vec / String / BTreeMap.

no_std-capable: default-features = false, features = ["alloc"].

Stability

1.0.0-rc.3. Public API + wire format (RFC 7252 / 7641 / 7959 / 6690) + error discriminants are RC1-stable.

zerodds-coap-bridge

Layer 5 — Bridges. CoAP (RFC 7252) komplettes Stack-Set.

zerodds-coap-bridge liefert nicht nur den reinen Wire-Codec, sondern den vollen CoAP-Stack: Reliability mit Retransmit-Tracker, Block-Wise-Transfer (RFC 7959), Resource-Discovery via CoRE-Link (RFC 6690), Observer-Pattern (RFC 7641), Multicast (§8), Caching/Proxying (§5.6 + §5.7), DTLS-Mode-Marker (§9), und einen bidirectional CoAP↔︎DDS-Topic-Bridge. no_std + alloc, forbid(unsafe_code).

Spec-Anker

  • RFC 7252 §3 + §3.1 + §4 + §5 + §5.10 + §6 + §8 + §9 + §12.1.
  • RFC 7641 Observing Resources.
  • RFC 7959 Block-Wise Transfer.
  • RFC 6690 CoRE-Link-Format.

Schichten-Position

Layer 5 — Bridges. Substrat fuer DDS↔︎IoT-Endpoint-Mapping (constrained Devices, Multicast-Diskovery, Observer-Pattern fuer DDS-Live-Updates).

Quickstart

use zerodds_coap_bridge::{decode, encode, CoapCode, CoapMessage, MessageType};

let msg = CoapMessage {
    version: 1,
    message_type: MessageType::Confirmable,
    token: Vec::new(),
    code: CoapCode::GET,
    message_id: 0xBEEF,
    options: Vec::new(),
    payload: Vec::new(),
};

let wire = encode(&msg).expect("encode");
let decoded = decode(&wire).expect("decode");
assert_eq!(decoded.code, CoapCode::GET);

Feature-Flags

Feature Default Zweck
std std::error::Error-Impls.
alloc ✅ (via std) Vec / String / BTreeMap.

no_std-fahig: default-features = false, features = ["alloc"].

Stabilitaet

1.0.0-rc.3. Public-API + Wire-Format (RFC 7252 / 7641 / 7959 / 6690) + Fehler-Diskriminanten sind RC1-stabil.