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

FreeBSD Manual Pages

  
 
  

home | help
ioctl(2)		      System Calls Manual		      ioctl(2)

NAME
       ioctl - control device

SYNOPSIS
   Remarks
       The  ANSI  C "" construct denotes a variable length argument list whose
       optional	[or required] members are given	in the associated comment

DESCRIPTION
       performs	a variety of functions on character special  files  (devices),
       or  regular  files and directories on VxFS file systems.	 The write-ups
       of various devices in Section (7) discuss how  applies  to  them.   The
       type  of	arg is dependent on the	specific call, as described in Section
       (7).

       request is made up of several fields which encode the size  and	direc-
       tion  of	 the argument (referenced by arg), as well as the desired com-
       mand.  An enumeration of	the request fields are:

	      Argument is read by the driver
				  (meaning that	the argument  is  copied  from
				  the application to the driver).

	      Argument is written by the driver
				  (meaning  that  the  argument	is copied from
				  the driver to	the application).  Ignored  if
				  an error occurs.

	      Number of	bytes in the passed argument.
				  A  nonzero  size  indicates  that  arg  is a
				  pointer to the passed	argument.  A zero size
				  indicates  that  arg	is the passed argument
				  (if the driver wants to use it), and is  not
				  treated as a pointer.

	      The request command itself.

       When  both  and are zero, it can	be assumed that	request	is not encoded
       for size	and direction, for compatibility purposes.  Requests  that  do
       not  require any	data to	be passed and requests that use	arg as a value
       (as opposed to a	pointer), have the bit set to one and the field	set to
       zero.

       The  following macros are used to create	the request argument.  x and y
       are concatenated	to form	and shifted into the proper location according
       to  is  the  type (e.g.	of the actual argument that the	request	refer-
       ences, and its size is taken and	shifted	into the appropriate place ac-
       cording to

	      Sets		  and  initializes  the	 values	at and accord-
				  ingly.

	      Sets		  and initializes the values  at  and  accord-
				  ingly.

	      Sets both		  and and initializes the values at and

       Note: any data structure	referenced by arg must contain any pointers.

RETURN VALUE
       If an error has occurred, a value of -1 is returned and is set to indi-
       cate the	error.

       fails if	one or more of the following are true: IOC_OUT is  ignored  if
       an error	occurs.

	      [EBADF]	     fildes is not a valid open	file descriptor.

	      [ENOTTY]	     The  request  is  not appropriate to the selected
			     device.

	      [EINVAL]	     request or	arg is not valid.

	      [EINTR]	     A signal was caught during	the system call.

	      [EPERM]	     Typically this error indicates that an ioctl  re-
			     quest was attempted that is forbidden in some way
			     to	the calling process.

WARNINGS
       Check all references to signal(5) for appropriateness on	 systems  that
       support	sigvector(2).	sigvector(2) can affect	the behavior described
       on this page.

AUTHOR
       was developed by	AT&T and HP.

SEE ALSO
       ioctl(5), arp(7P), socket(7), termio(7).

STANDARDS CONFORMANCE
								      ioctl(2)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | WARNINGS | AUTHOR | SEE ALSO | STANDARDS CONFORMANCE

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=ioctl&sektion=2&manpath=HP-UX+11.22>

home | help