Kernel testing
Concept
Raw Syscalls
Call any Linux syscall from Lua — pass integer arguments, send buffers, and receive output data.
ConceptIoctl
Issue ioctls on guest file descriptors — pass structs, receive output, and handle ioctls with embedded buffer pointers.
ConceptBinary Packing
Build and parse binary structs in Lua with provium.pack() and provium.unpack() — the foundation for syscall and ioctl arguments.
ConceptPointer Patching
Handle syscalls with nested structs that contain pointers to sub-buffers — Provium allocates guest memory and patches the addresses automatically.