име
ioctl - устройство за управление
резюме
#include
int ioctl (int d , int заявка , ...);
описание
Функцията ioctl манипулира основните параметри на устройството на специални файлове. По-специално, много оперативни характеристики на характерните специални файлове (например терминали) могат да бъдат контролирани с ioctl заявки. Аргументът d трябва да е отворен файлов дескриптор.
Вторият аргумент е кода на заявката, зависим от устройството. Третият аргумент е нетипичен показалец в паметта. Това е традиционно char * argp (от дните преди празното * е валидно C) и ще бъде наречено така за тази дискусия.
Заявката за ioctl е кодирана в него, дали аргументът е параметър или параметър за излизане , а размерът на argument argp в байтове. Макросите и дефинициите, използвани при задаването на заявка за ioctl, се намират във файла
Стойност на връщането
Обикновено при успех нулата се връща. Няколко ioctls използват връщащата стойност като изходен параметър и връщат неотрицателна стойност на успеха. При грешка се връща -1, а грешката се настройва по подходящ начин.
грешки
EBADF
d не е валиден дескриптор.
EFAULT
argp се отнася до недостъпна област на паметта.
ENOTTY
d не е свързано с характерно устройство.
ENOTTY
Посоченото искане не се отнася за вида обект, който се отнася към дескриптора d .
EINVAL
Заявката или арг е невалидна.
В съответствие с
Няма един стандарт. Аргументите, връщанията и семантиката на ioctl (2) се променят в зависимост от съответния драйвер на устройството (обаждането се използва като прихващане за операции, които не се вписват чисто в I / O модела на Unix поток). Вижте ioctl_list (2) за списък на много от известните повиквания ioctl . Извикването за функция ioctl се появи във Версия 7 AT & T Unix.