alpha
Login
or
Join now
gazagnaire.org
/
ocaml-virtio
Star
0
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
Virtio-serial port IO for guest VMs
Star
0
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
Overview
Issues
Pulls
Pipelines
ocaml-virtio
/
c
/
at
main
11 files
Thomas Gazagnaire
3d: regenerate the standalone C cross-build rules and headers
3w ago
d647dcc3
EverParse.h
3d: regenerate the standalone C cross-build rules and headers Pick up the wire.3d change that builds and installs the standalone c/ verified parser per target (wire pinned at f13082a3). Every packages c/dune.inc is regenerated: the archive now builds in all contexts through the context toolchain (%{ocaml-config:c_compiler}, the ocaml-config partial linker, -print-prog-name binutils) instead of host-only, and installs unconditionally -- no empty placeholder. Each c/EverParseEndianness.h gains a freestanding __BYTE_ORDER__/__builtin_bswap* branch so it compiles for an OS-less target (a unikernel defines neither __linux__ nor __APPLE__). Verified: dune build -x unikraft ocaml-clcw/c/libclcw.a produces an aarch64 archive exporting only ClcwCheckClcw (the safe wrapper), with ClcwValidateClcw localized.
3 weeks ago
EverParseEndianness.h
3d: regenerate the standalone C cross-build rules and headers Pick up the wire.3d change that builds and installs the standalone c/ verified parser per target (wire pinned at f13082a3). Every packages c/dune.inc is regenerated: the archive now builds in all contexts through the context toolchain (%{ocaml-config:c_compiler}, the ocaml-config partial linker, -print-prog-name binutils) instead of host-only, and installs unconditionally -- no empty placeholder. Each c/EverParseEndianness.h gains a freestanding __BYTE_ORDER__/__builtin_bswap* branch so it compiles for an OS-less target (a unikernel defines neither __linux__ nor __APPLE__). Verified: dune build -x unikraft ocaml-clcw/c/libclcw.a produces an aarch64 archive exporting only ClcwCheckClcw (the safe wrapper), with ClcwValidateClcw localized.
3 weeks ago
Virtio.3d
virtio: regenerate the net header validator for the 12-byte header
3 weeks ago
Virtio.c
virtio: regenerate the net header validator for the 12-byte header
3 weeks ago
Virtio.h
virtio: add net layout agreement tests
1 month ago
VirtioWrapper.c
wrappers: reject trailing bytes in the generated C validators The generated *Wrapper.c validators returned TRUE as soon as a prefix parsed, so an input with trailing bytes past the declared length was accepted. They now require the parse to consume exactly the declared length (result != len -> FALSE), rejecting trailing-garbage inputs.
1 month ago
VirtioWrapper.h
virtio: add net layout agreement tests
1 month ago
dune
ocaml-virtio: Regenerate wire bindings
1 month ago
dune.inc
virtio: follow the wire pin and regenerate the C validator rules The wire pin moves to f13082a3, whose 3d emitter guards the generated rules to the default context and drives the C toolchain from ocaml-config (cc, the native pack linker, and prog-name lookups for ar and objcopy) instead of bare host commands, so cross contexts neither run the codegen nor link with the wrong tools. dune.inc is the promoted regeneration; no local source changed.
3 weeks ago
gen.ml
root: bump wire pin and migrate to its new EverParse API Wire 0.9.0 at 19a5b45e consolidates the EverParse projection surface: mode:`Doc becomes mode:`Standalone, Everparse.doc becomes project ~mode:`Standalone, and struct_of_codec moves under Everparse.Raw. It also rejects a field subtraction or multiplication inside a constraint, which has no sound projection at the field's narrow width. The btree and tm header constraints are rewritten additively (an exact integer identity), so they project; their differential self-checks still agree with the OCaml codec on every input.
1 month ago
gen.mli
codec: commit the c/ codegen drivers' empty interfaces dune synthesizes an empty .mli for every executable's main module, and its write-file rule can race the cmi compile -- grpc hit that race and aborted the whole build on a missing gen.mli. Commit the interface dune would generate for every c/ codegen driver so the file exists before the compile, making the build order independent of dune's synthesis.
1 month ago