Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
IOCTL(2)		   Linux Programmer's Manual		      IOCTL(2)

NAME
       ioctl - control device

SYNOPSIS
       #include	<sys/ioctl.h>

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

DESCRIPTION
       The ioctl function manipulates the underlying device parameters of spe-
       cial files.  In particular, many	operating characteristics of character
       special	files  (e.g. terminals)	may be controlled with ioctl requests.
       The argument d must be an open file descriptor.

       The second argument is a	device-dependent request code.	The third  ar-
       gument  is an untyped pointer to	memory.	 It's traditionally char *argp
       (from the days before void * was	valid C), and will  be	so  named  for
       this discussion.

       An ioctl	request	has encoded in it whether the argument is an in	param-
       eter or out parameter, and the size of  the  argument  argp  in	bytes.
       Macros  and  defines used in specifying an ioctl	request	are located in
       the file	_sys/ioctl.h_.

RETURN VALUE
       Usually,	on success zero	is returned.  A	 few  ioctls  use  the	return
       value as	an output parameter and	return a nonnegative value on success.
       On error, -1 is returned, and errno is set appropriately.

ERRORS
       EBADF  d	is not a valid descriptor.

       EFAULT argp references an inaccessible memory area.

       ENOTTY d	is not associated with a character special device.

       ENOTTY The specified request does not apply to the kind of object  that
	      the descriptor d references.

       EINVAL Request or argp is not valid.

CONFORMING TO
       No single standard.  Arguments, returns,	and semantics of ioctl(2) vary
       according to the	device driver in question  (the	 call  is  used	 as  a
       catch-all  for  operations  that	 don't cleanly fit the Unix stream I/O
       model). See ioctl_list(2) for a list of many of the known ioctl	calls.
       The ioctl function call appeared	in Version 7 AT&T Unix.

SEE ALSO
       execve(2), fcntl(2), ioctl_list(2), mt(4), sd(4), tty(4)

BSD Man	Page			  2000-09-21			      IOCTL(2)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | ERRORS | CONFORMING TO | SEE ALSO

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=ioctl&sektion=2&manpath=Red+Hat+9>

home | help