#mqtt #codec #v5 #tokio-codec #function #default

mqtt-v5

Rust 类型,编解码函数,以及 MQTT V5 的 tokio 编解码器

2 个版本

0.1.1 2020年5月20日
0.1.0 2020年1月28日

#11 in #tokio-codec

MIT 许可证

150KB
3.5K SLoC

mqtt-v5

Rust 类型,编解码函数,以及 MQTT V5 的 tokio 编解码器。

依赖项

  • cargo
  • rustc

特性标志

codec: 在 mqtt_v5::codec::MqttCodec 下导出 MqttCodec 类型。默认启用。

构建

$ cargo build --release

测试

$ cargo test

代码格式

当前使用的格式化选项仅适用于夜间构建版本。

$ cargo +nightly fmt

代码审查

$ cargo clippy

模糊测试

模糊测试需要夜间构建工具链。目前确认本项目的模糊测试可以使用以下工具链进行:

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

运行

从项目根目录运行此命令,而不是在 mqtt-v5 目录内。

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

依赖项

~1.6–2.9MB
~59K SLoC