Developer Guide and Reference

ID 767251
Date 10/31/2024
Public
Document Table of Contents

PXFPATHCONF

POSIX Subroutine: Gets the value for a configuration option of an opened file.

Module

USE IFPOSIX

CALL PXFPATHCONF (path,ilen,name,ival,ierror)

path

(Input) Character. The path to the opened file.

ilen

(Input) INTEGER(4). The length of path.

name

(Input) INTEGER(4). The configurable option.

ival

(Input) INTEGER(4). The value of the configurable option.

ierror

(Output) INTEGER(4). The error status.

If successful, ierror is set to zero; otherwise, an error code.

The PXFPATHCONF subroutine gets a value for the configuration option named for the opened file with path path.

The configuration option, defined in name, can be obtained by using PXFCONST or IPXFCONST with one of the following constant names:

Constant

Action

_PC_LINK_MAX

Returns the maximum number of links to the file. If path refers to a directory, then the value applies to the whole directory.

_PC_MAX_CANON1

Returns the maximum length of a formatted input line; the path must refer to a terminal.

_PC_MAX_INPUT1

Returns the maximum length of an input line; the path must refer to a terminal.

_PC_NAME_MAX

Returns the maximum length of a filename in path that the process is allowed to create.

_PC_PATH_MAX

Returns the maximum length of a relative pathname when path is the current working directory.

_PC_PIPE_BUF

Returns the size of the pipe buffer; the path must refer to a FIFO.

_PC_CHOWN_RESTRICTED1

Returns nonzero if PXFCHOWN may not be used on this file. If path refers to a directory, then this applies to all files in that directory.

_PC_NO_TRUNC1

Returns nonzero if accessing filenames longer than _POSIX_NAME_MAX will generate an error.

_PC_VDISABLE1

Returns nonzero if special character processing can be disabled; the path must refer to a terminal.

1Linux

On Linux* systems, the corresponding macros are defined in <unistd.h>. The values for name can be obtained by using PXFCONST or IPXFCONST when passing the string names of predefined macros in <unistd.h>. The following table shows the corresponding macro names for the above constants:

Constant

Corresponding Macro

_PC_LINK_MAX

_POSIX_LINK_MAX

_PC_MAX_CANON

_POSIX_MAX_CANON

_PC_MAX_INPUT

_POSIX_MAX_INPUT

_PC_NAME_MAX

_POSIX_NAME_MAX

_PC_PATH_MAX

_POSIX_PATH_MAX

_PC_PIPE_BUF

_POSIX_PIPE_BUF

_PC_CHOWN_RESTRICTED

_POSIX_CHOWN_RESTRICTED

_PC_NO_TRUNC

_POSIX_NO_TRUN C

_PC_VDISABLE

_POSIX_VDISABLE