Več o ukazu Linux - ioctl

Ime

ioctl - nadzorna naprava

Povzetek

#ključite

int ioctl (int d , int zahteva , ...);

Opis

Funkcija ioctl manipulira osnovnim parametrom naprave posebnih datotek. Zlasti je mogoče z ioctl zahtevami nadzorovati veliko operativnih značilnosti specialnih datotek s posebnimi značilnostmi (npr. Terminali). Argument d mora biti deskriptor odprtega datoteke.

Drugi argument je koda zahteve, odvisna od naprave. Tretji argument je neprekinjen kazalec na pomnilnik. Tradicionalno je char * argp (od dneva pred neveljavnostjo * je veljal C), in bo tako imenovan za to razpravo.

Zahteva ioctl je v njej kodirana, ali je argument v parametru ali zunanjem parametru in velikost argumenta argp v bajtih. Makri in definicije, uporabljene pri določanju zahteve za ioctl, se nahajajo v datoteki .

Vrnjena vrednost

Ponavadi se na uspeh vrne nič. Nekaj ​​ioctlov uporabi povratno vrednost kot izhodni parameter in vrne ne-negativno vrednost na uspeh. Po napaki se vrne -1, errno pa je ustrezno nastavljen.

Napake

EBADF

d ni veljaven deskriptor.

EFAULT

argp sklicuje na nedostopno pomnilniško področje.

ENOTTY

d ni povezan z znakovno posebno napravo.

ENOTTY

Navedena zahteva se ne nanaša na vrsto predmeta, na katerega se sklicuje descriptor d .

EINVAL

Zahteva ali argp ni veljavna.

Skladno s

Ni enotnega standarda. Argumenti, vračila in semantika ioctl (2) se razlikujejo glede na zadevni gonilnik naprave (klic se uporablja kot ulov vseh za operacije, ki ne ustrezajo modelu Unix stream I / O). Oglejte si ioctl_list (2) za seznam številnih znanih ioctl klicev. Klic funkcije ioctl se je pojavil v različici 7 AT & T Unix.