Non-POSIX compliant portions of FreeBSD

Thomas Mueller tmueller at sysgo.com
Fri Apr 23 06:53:18 UTC 2010


On Thu, 22 Apr 2010 18:23:42 -0700, Garrett Cooper wrote:
>     Continuing on the fun... ioctl (by manpage alone) isn't even close
> to being POSIX standard. Here are the differences I spotted at least
> [in the ERRORS section]:

In an older version of the standard (ISO/IEC 9945-1: 1996, IEEE Std
1003.1, 1996 Edition) ioctl() wasn't mentioned in the 'System
Interfaces' section at all. The 'Rationale' section mentioned ioctl()
only in combination with the terminal interface and the introduction of
the tc*() functions.

SUSv2 added ioctl(), but strictly as function pertaining to the STREAMS
option.
  NAME
  ioctl —control a STREAMS device
  DESCRIPTION
  The ioctl () function performs a variety of control functions on
  STREAMS devices [...]
SUSv4 marks all STREAMS related parts as [OB] (obsolescent), including
ioctl().

Looks like POSIX never adopted ioctl() until somebody pushed STREAMS
into the standard.

-- 
Thomas Mueller


More information about the freebsd-standards mailing list