mqtt-v5-fork

Crates.iomqtt-v5-fork
lib.rsmqtt-v5-fork
version0.2.0
sourcesrc
created_at2023-03-13 09:56:35.161661
updated_at2023-03-13 09:56:35.161661
descriptionRust types, encode/decode functions, and a tokio codec for MQTT V5. Fork for MCloudTT
homepage
repositoryhttps://github.com/bschwind/mqtt-broker
max_upload_size
id808743
size159,680
(Nereuxofficial)

documentation

README

mqtt-v5

Rust types, encode/decode functions, and a tokio codec for MQTT V5.

Dependencies

  • cargo
  • rustc

Feature Flags

codec: Export an MqttCodec type under mqtt_v5_fork::codec::MqttCodec. Enabled by default.

Build

$ cargo build --release

Testing

$ cargo test

Code Format

The formatting options currently use nightly-only options.

$ cargo +nightly fmt

Code Linting

$ cargo clippy

Code Fuzzing

Fuzzing requires a nightly toolchain. Fuzzing for this project is currently confirmed to work with:

rustc 1.42.0-nightly (6d3f4e0aa 2020-01-25)

Running

Run this from the root project, not inside the mqtt-v5 directory.

cargo install cargo-fuzz
cargo +nightly fuzz run decoder_fuzzer_v311
cargo +nightly fuzz run decoder_fuzzer_v500
cargo +nightly fuzz run topic_filter_fuzzer
cargo +nightly fuzz run topic_fuzzer
Commit count: 169

cargo fmt