Я написал ioctl
инструмент именно для этой цели: https://github.com/jerome-pouiller/ioctl.
В настоящее время невозможно передать несколько аргументов в вызов ioctl. У вас есть пример, где это будет полезно?
Если вы хотите позвонить ioctl(open("/dev/console"), 30, 1);
, вы можете запустить:
ioctl /dev/console 30 -v 1
Однако для большинства ioctl вы хотите выделить буфер и передать указатель на этот буфер в качестве аргумента для вызова ioctl. В этом случае просто забудьте -v
. ioctl
будет считывать / записывать содержимое буфера с / на стандартный ввод / вывод. ioctl
попытаться угадать размер буфера и направление от числа ioctl.
Самое лучшее: ioctl
понимать многие (около 2200) символических имен ioctl. Таким образом вы можете позвонить:
ioctl /dev/video0 VIDIOC_QUERYCAP > video_caps