2 unstable releases

Uses old Rust 2015

new 0.3.0 Nov 14, 2024
0.2.3 Jul 31, 2023
0.2.2 Jul 31, 2023
0.2.1 Jul 31, 2023
0.2.0 Jul 27, 2023

#165 in #decode

Download history 1138/week @ 2024-07-25 603/week @ 2024-08-01 783/week @ 2024-08-08 656/week @ 2024-08-15 653/week @ 2024-08-22 603/week @ 2024-08-29 920/week @ 2024-09-05 629/week @ 2024-09-12 774/week @ 2024-09-19 832/week @ 2024-09-26 947/week @ 2024-10-03 629/week @ 2024-10-10 630/week @ 2024-10-17 824/week @ 2024-10-24 615/week @ 2024-10-31 669/week @ 2024-11-07

2,848 downloads per month
Used in p9

BSD-3-Clause

12KB
255 lines

p9 - Server implementation of the 9p file system protocol

This directory contains the protocol definition and a server implementation of the 9p file system protocol.

  • wire_format_derive - A procedural macro that derives the serialization and de-serialization implementation for a struct into the 9p wire format.
  • src/protocol - Defines all the messages used in the 9p protocol. Also implements serialization and de-serialization for some base types (integers, strings, vectors) that form the foundation of all 9p messages. Wire format implementations for all other messages are derived using the wire_format_derive macro.
  • src/server.rs - Implements a full 9p server, carrying out file system requests on behalf of clients.

lib.rs:

Derives a 9P wire format encoding for a struct by recursively calling WireFormat::encode or WireFormat::decode on the fields of the struct. This is only intended to be used from within the p9 crate.

Dependencies

~1.5MB
~37K SLoC