copy_file_range
---------------

Documentation:

  * Copying data between two files (libc),

  * man copy_file_range.

Gnulib module: copy-file-range

Portability problems fixed by Gnulib:

  * This function exists only on Linux and FreeBSD and is therefore missing on many non-glibc platforms: glibc 2.26, macOS 11.1, FreeBSD 12.0, NetBSD 9.0, OpenBSD 6.7, Minix 3.1.8, AIX 7.1, HP-UX 11.31, IRIX 6.5, Solaris 11.4, Cygwin 2.9, mingw, MSVC 14, Android 9.0. But the replacement function is only a stub: It always fails with error ENOSYS.

  * This function has many problems on Linux kernel versions before 5.3. On these kernel versions, the replacement function always fails with error ENOSYS.

Portability problems not fixed by Gnulib: