fpathconf (BPX1FPC, BPX4FPC) — Determine configurable path name variables using a descriptor
Function
The fpathconf callable service determines the current values of a configurable limit or option (variable) that is associated with a file or directory.
Requirements
Operation | Environment |
---|---|
Authorization: | Supervisor state or problem state, any PSW key |
Dispatchable unit mode: | Task |
Cross memory mode: | PASN = HASN |
AMODE (BPX1FPC): | 31-bit |
AMODE (BPX4FPC): | 64-bit |
ASC mode: | Primary address space control (ASC) mode |
Interrupt status: | Enabled for interrupts |
Locks: | Unlocked |
Control parameters: | All parameters must be addressable by the caller and in the primary address space. |
Format
CALL BPX1FPC,(File_descriptor,
Name,
Return_value,
Return_code,
Reason_code)
AMODE 64 callers use BPX4FPC with the same parameters.
Parameters
- File_descriptor
- Supplied parameter
- Type:
- Integer
- Length:
- Fullword
The name of a fullword that contains the file descriptor of the file.
- Name
- Supplied parameter
- Type:
- Integer
- Length:
- Fullword
The name of a fullword that contains a value that indicates which configurable limit or option (variable) is to be returned in the Return_value. Use the BPXYPFC macro (see BPXYPCF — Command values for pathconf and pathconf) to specify the path name variable you want returned. The following table shows the variables that can be returned:Variable returned Description PC_CHOWN_RESTRICTED The change ownership ( chown (BPX1CHO, BPX4CHO) — Change the owner or group of a file or directory) function is restricted to processes with appropriate privileges (see Authorization). The group ID (GID) of a file can be changed only to the effective group ID of the process, or to one of its supplementary group IDs. PC_LINK_MAX The maximum value of a file's link count. PC_MAX_CANON The maximum number of bytes in a terminal canonical input line. PC_MAX_INPUT The minimum number of bytes for which space will be available in a terminal input queue. This is the maximum number of bytes a portable application may require to be typed as input before it reads them. PC_NAME_MAX The maximum number of bytes in a file name (not a string length; the count excludes a terminating null). PC_NO_TRUNC Path name components longer than 255 bytes generate an error. PATH_MAX The maximum number of bytes in a path name (not a string length; the count excludes a terminating null). PIPE_BUF The maximum number of bytes that can be written atomically when writing to a pipe. _POSIX_VDISABLE Terminal special characters maintained by the system can be disabled using this character value. For information on querying and setting these special characters, see tcgetattr (BPX1TGA, BPX4TGA) — Get the attributes for a terminal or tcsetattr (BPX1TSA, BPX4TSA) — Set the attributes for a terminal. PC_ACL The security product supports access control lists. PC_ACL_ENTRIES_MAX The maximum number of entries that can be placed in an access control list for the specified file. - Return_value
- Returned parameter
- Type:
- Integer
- Length:
- Fullword
The name of a fullword in which the fpathconf service returns the current value of the Pathname variable that corresponds to the Name specified, or
-1
if the request is not successful.If the named Pathname variable does not have a limit for the specified file, Return_value is set to
-1
and the Return_code and Reason_code remain unchanged.If PC_CHOWN_RESTRICTED is specified for Name, and PC_CHOWN_RESTRICTED is active, Return_value is set to
1
.If PC_CHOWN_RESTRICTED is specified for Name, and PC_CHOWN_RESTRICTED is not active, Return_value is set to
0
.If PC_NO_TRUNC is specified for Name, and PC_NO_TRUNC is active, Return_value is set to
1
.If PC_NO_TRUNC is specified for Name, and PC_NO_TRUNC is not active, Return_value is set to
0
.If PC_ACL is specified for Name, and PC_ACL is supported, Return_value is set to
1
.If PC_ACL is specified for Name, and PC_ACL is not supported, Return_value is set to
0
. - Return_code
- Returned parameter
- Type:
- Integer
- Length:
- Fullword
The name of a fullword in which the fpathconf service stores the return code. The fpathconf service returns Return_code only if Return_value is
-1
. For a list of return code values, see Return codes (errnos) in z/OS UNIX System Services Messages and Codes.If the named Pathname variable does not have a limit for the specified file, Return_value is-1
and Return_code is unchanged. Otherwise, the fpathconf service can return one of the following values in the Return_code parameter:Return_code Explanation EBADF The File_descriptor argument is not a valid file descriptor. EINVAL Refer to the usage notes for situations in which this is returned. - Reason_code
- Returned parameter
- Type:
- Integer
- Length:
- Fullword
The name of a fullword where the fpathconf service stores the reason code. The fpathconf service returns Reason_code only if Return_value is
-1
. Reason_code further qualifies the Return_code value. For a list of reason codes, see Reason codes in z/OS UNIX System Services Messages and Codes.
Usage notes
- If Name refers to MAX_CANON, MAX_INPUT, or _POSIX_VDISABLE, the following
applies:
- If File_descriptor does not refer to a terminal file, the function
returns
-1
in Return_value and sets the Return_code to EINVAL.
- If File_descriptor does not refer to a terminal file, the function
returns
- If Name refers to NAME_MAX, PATH_MAX, or _POSIX_NO_TRUNC, the following
applies:
- If File_descriptor does not refer to a directory, the function still returns the requested information using the parent directory of the specified file.
- If Name refers to PC_PIPE_BUF, the following applies:
- If File_descriptor refers to a pipe or a FIFO, the value returned
applies to the referred-to object itself. If File_descriptor refers
to a directory, the value returned applies to any FIFOs that exist
or that can be created within the directory. If File_descriptor refers
to any other type of file, the function returns
-1
in Return_value and sets the Return_code to EINVAL.
- If File_descriptor refers to a pipe or a FIFO, the value returned
applies to the referred-to object itself. If File_descriptor refers
to a directory, the value returned applies to any FIFOs that exist
or that can be created within the directory. If File_descriptor refers
to any other type of file, the function returns
- If Name refers to PC_LINK_MAX, the following applies:
- If File_descriptor refers to a directory, the value returned applies to the directory.
Related services
Characteristics and restrictions
There are no restrictions on the use of the fpathconf service.