fcntl
=====

POSIX specification:
 https://pubs.opengroup.org/onlinepubs/9699919799/functions/fcntl.html

Gnulib module: fcntl

Portability problems fixed by Gnulib:

  * This function is missing on some platforms: mingw, MSVC 14.

  * This function does not support F_DUPFD_CLOEXEC on some platforms: glibc with Linux kernels before 2.6.24, Mac OS X 10.5, FreeBSD 6.0, NetBSD 5.0, OpenBSD 3.8, AIX 7.1, HP-UX 11, IRIX 6.5, Solaris 11 2010-11, Cygwin 1.7.1. Note that the gnulib replacement code is functional but not atomic.

  * The F_DUPFD_CLOEXEC action of this function sets the FD_CLOEXEC flag on the wrong file descriptor on some platforms: Haiku.

  * The F_DUPFD action of this function does not reject out-of-range targets properly on some platforms: AIX 7.1, Cygwin 1.5.x, Haiku.

  * The F_DUPFD action of this function mistakenly clears FD_CLOEXEC on the source descriptor on some platforms: Haiku.

Portability problems not fixed by Gnulib:

  * The replacement function does not support F_SETFD, F_GETFL, F_SETFL, F_GETOWN, F_SETOWN, F_GETLK, F_SETLK, and F_SETLKW on some platforms: mingw, MSVC 14.