NAME

POSIX::1003::Pathconf - POSIX access to pathconf()

SYNOPSIS

  use POSIX::1003::Pathconf;   # import all

  use POSIX::1003::Pathconf 'pathconf';
  my $max    = pathconf($filename, '_PC_PATH_MAX');

  use POSIX::1003::Pathconf '_PC_PATH_MAX';
  my $max    = _PC_PATH_MAX($filename);

  use POSIX::1003::Pathconf qw(pathconf %pathconf);
  my $key    = $pathconf{_PC_PATH_MAX};
  $pathconf{_PC_NEW_KEY} = $value
  foreach my $name (keys %pathconf) ...

  use POSIX::1003::Pathconf qw(fpathconf);
  use POSIX::1003::FdIO     qw(openfd);
  use Fcntl                 qw(O_RDONLY);
  my $fd     = openfd $fn, O_RDONLY;
  my $max    = fpathconf $fd, '_PC_PATH_MAX';
  my $max    = _PC_PATH_MAX($fd);

  foreach my $pc (pathconf_names) ...

DESCRIPTION

With pathconf() you query filesystem limits for a certain existing location.

METHODS

FUNCTIONS

Standard POSIX

fpathconf(FD, NAME)

Returns the numeric value related to the NAME or undef.

pathconf(FILENAME, NAME)

Returns the numeric value related to the NAME or undef.

Additional

pathconf_names()

Returns a list with all known names, unsorted.

CONSTANTS

%pathconf

This exported variable is a tied HASH which maps _PC_* names on unique numbers, to be used with the system's pathconf() and fpathconf() functions.

The following constants where detected on your system when the module got installed. The second column shows the value which where returned for a random file at the time.

  _PC_2_SYMLINKS          1       _PC_PIPE_BUF            4096
  _PC_ALLOC_SIZE_MIN      4096    _PC_PRIO_IO             undef
  _PC_ASYNC_IO            1       _PC_REC_INCR_XFER_SIZE  undef
  _PC_CHOWN_RESTRICTED    1       _PC_REC_MAX_XFER_SIZE   undef
  _PC_FILESIZEBITS        64      _PC_REC_MIN_XFER_SIZE   4096
  _PC_LINK_MAX            65000   _PC_REC_XFER_ALIGN      4096
  _PC_MAX_CANON           255     _PC_SOCK_MAXBUF         undef
  _PC_MAX_INPUT           255     _PC_SYMLINK_MAX         undef
  _PC_NAME_MAX            255     _PC_SYNC_IO             undef
  _PC_NO_TRUNC            1       _PC_VDISABLE            0
  _PC_PATH_MAX            4096    

SEE ALSO

This module is part of POSIX-1003 distribution version 0.94_1, built on May 16, 2013. Website: http://perl.overmeer.net. The code is based on POSIX, which is released with Perl itself. See also POSIX::Util for additional functionality.

COPYRIGHTS

Copyrights 2011-2013 on the perl code and the related documentation by [Mark Overmeer]. For other contributors see ChangeLog.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://www.perl.com/perl/misc/Artistic.html