Philippe said:
The call actually is an IOCtl: depending on the control code, the structure
has a different format.
Ah. In that case, I recommend to use the ioctl module; you won't need a
C wrapper, then.
Although the number of control codes/structures is finite, it would make the
wrapper function fairly large.
*Some* code to handle this will be very large, regardless of how you
write it.
You seem to think that building the structure from python would be a
mistake: why is that ?
It's very error-prone. You have to match the C structure layout of the
compiler precisely, and you even have to get the alignment right,
something that can't be done reliably in Python.
PS: the wrapper also has to work under multiple OSs
That makes it worse: now you not only have to match the C compiler's
expectation on a single processor, but on different ones.
Perhaps you should be using ctypes.
Regards,
Martin