This module is just a translation of the C fnctl.h file.
Unlike the old mechanism of requiring a translated fnctl.ph
file, this uses the h2xs program (see the Perl source
distribution) and your native C compiler. This means that
it has a far more likely chance of getting the numbers
right.
NOTE
Only `#define' symbols get translated; you must still
correctly pack up your own arguments to pass as args for
locking functions, etc.
EXPORTED SYMBOLS
By default your system's F_* and O_* constants (eg, F_DUPFD
and O_CREAT) and the FD_CLOEXEC constant are exported into
your namespace.
You can request that the flock() constants (LOCK_SH,
LOCK_EX, LOCK_NB and LOCK_UN) be provided by using the tag
`:flock'. See the Exporter manpage.
You can request that the old constants (FAPPEND, FASYNC,
FCREAT, FDEFER, FEXCL, FNDELAY, FNONBLOCK, FSYNC, FTRUNC) be
provided for compatibility reasons by using the tag
`:Fcompat'. For new applications the newer versions of
these constants are suggested (O_APPEND, O_ASYNC, O_CREAT,
O_DEFER, O_EXCL, O_NDELAY, O_NONBLOCK, O_SYNC, O_TRUNC).
For ease of use also the SEEK_* constants (for seek() and
sysseek(), e.g. SEEK_END) and the S_I* constants (for
chmod() and stat()) are available for import. They can be
imported either separately or using the tags `:seek' and
`:mode'.
Please refer to your native fcntl(2), open(2), fseek(3),
lseek(2) (equal to Perl's seek() and sysseek(),
respectively), and chmod(2) documentation to see what
constants are implemented in your system.
See the perlopentut manpage to learn about the uses of the
O_* constants with sysopen().
See the seek entry in the perlfunc manpage and the sysseek
entry in the perlfunc manpage about the SEEK_* constants.
See the stat entry in the perlfunc manpage about the S_I*
constants.