All communication between the user space applications and the kernel module
is done with ioctl's. Since ioctl's are quite unportable and hardly provide
any type-safety, there are a number of wrapper-functions along with a couple
of convenience functions implemented in libopencbm.a
(Linux) or
opencbm.dll
(Windows). The prototypes can be found in the header file
opencbm.h
.