файловый контроль (file control)
Использование в приложениях (Application usage)
The arg values to F_GETFD, F_SETFD, F_GETFL, and F_SETFL all
represent flag values to allow for future growth. Applications
using these functions should do a read-modify-write operation on
them, rather than assuming that only the values defined by this
volume of POSIX.1‐2017 are valid. It is a common error to forget
this, particularly in the case of F_SETFD. Some implementations
set additional file status flags to advise the application of
default behavior, even though the application did not request
these flags.
On systems which do not perform permission checks at the time of
an fcntl() call with F_SETOWN, if the permission checks performed
at the time the signal is sent disallow sending the signal to any
process, the process that called fcntl() has no way of
discovering that this has happened. A call to kill() with signal
0 can be used as a prior check of permissions, although this is
no guarantee that permission will be granted at the time a signal
is sent, since the target process(es) could change user IDs or
privileges in the meantime.