macro_rules! ioctl_readwrite { ($(#[$attr:meta])* $name:ident, $ioty:expr, $nr:expr, $ty:ty) => { ... }; }
Expand description
Generates a wrapper function for an ioctl that reads and writes data to the kernel.
The arguments to this macro are:
- The function name
- The ioctl identifier
- The ioctl sequence number
- The data type passed by this ioctl
The generated function has the following signature:
ⓘ
pub unsafe fn FUNCTION_NAME(fd: libc::c_int, data: *mut DATA_TYPE) -> Result<libc::c_int>
For a more in-depth explanation of ioctls, see ::sys::ioctl
.
§Example
ioctl_readwrite!(enum_audio, b'V', 65, v4l2_audio);