29 lines
805 B
Plaintext
29 lines
805 B
Plaintext
libndbuf: Network-oriented buffer operations library
|
|
----------------------------------------------------
|
|
|
|
1. What is it?
|
|
A small C library providing a simple API to read and write typed values
|
|
to/from buffers with correct endianness handling.
|
|
|
|
2. Purpose
|
|
Make parsing and building network packets easy and concise. The API is
|
|
intended to act like a binary printf/scanf for packet fields.
|
|
|
|
Example:
|
|
|
|
Packet layout:
|
|
<16-bit><8-bit><32-bit><raw data>
|
|
|
|
Reading with a single call:
|
|
ndbuf_escan(buf, "wbdR", &a16, &a8, &a32, &data_ptr)
|
|
|
|
The same style is used to build packets.
|
|
|
|
3. Future plans
|
|
* Improve the API ergonomics (better support for preallocated buffers).
|
|
* Add convenience helpers and safer bounds checks.
|
|
* Possibly extend format specifiers and documentation.
|
|
|
|
4. Contact
|
|
Email: alex@vapaa.xyz
|