fpathconf()
QNX SDP8.0C Library ReferenceAPIDeveloper
Return the value of a configurable limit associated with a file
Synopsis:
#include <unistd.h>
long fpathconf( int filedes, 
                int name );
Arguments:
- filedes
 - A file descriptor for the file whose limit you want to check.
 - name
 - The name of the configurable limit; see below.
 
Library:
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
Description:
The fpathconf() function returns a value of a configurable limit indicated by name that's associated with the file indicated by filedes.
Configurable limits are defined in <confname.h>, and include at least the following values:
- _PC_ASYNC_IO
 - Defined (not -1) if asynchronous I/O is supported for the file.
 - _PC_CASE_PRESERVING
 - 1 if the filesystem preserves the case in file names, or 0 if it doesn't. If this variable isn't defined, you shouldn't make any assumptions about the filesystem's behavior.
 - _PC_CASE_SENSITIVE
 - 1 if the filesystem is sensitive to the case in file names, or 0 if it isn't. If this variable isn't defined, you shouldn't make any assumptions about the filesystem's behavior.
 - _PC_CHOWN_RESTRICTED
 - If defined (not -1), indicates that the use of the chown() function is restricted to a process with appropriate privileges, and to changing the group ID of a file to the effective group ID of the process or to one of its supplementary group IDs.
 - _PC_LINK_DIR
 - Defined (not -1) if the filesystem permits the unlinking of a directory.
 - _PC_LINK_MAX
 - Maximum value of a file's link count.
 - _PC_MAX_CANON
 - Maximum number of bytes in a terminal's canonical input buffer (edit buffer).
 - _PC_MAX_INPUT
 - Maximum number of bytes in a terminal's raw input buffer.
 - _PC_NAME_MAX
 - Maximum number of bytes in a file name (not including the terminating null).
 - _PC_NO_TRUNC
 - If defined (not -1), indicates that the use of pathname components longer than the value given by _PC_NAME_MAX generates an error.
 - _PC_PATH_MAX
 - Maximum number of bytes in a pathname (including the terminating null).
 - _PC_PIPE_BUF
 - Maximum number of bytes that can be written atomically when writing to a pipe.
 - _PC_PRIO_IO
 - Defined (not -1) if prioritized I/O is supported for the file.
 - _PC_SYNC_IO
 - Defined (not -1) if synchronous I/O is supported for the file.
 - _PC_VDISABLE
 - If defined (not -1), this is the character value that can be used to individually disable special control characters in the termios control structure.
 
Returns:
The requested configurable limit, or -1 if an error occurred (errno is set).
Errors:
- EINVAL
 - The name argument is invalid, or the indicated limit isn't supported for this filedes.
 - EBADF
 - The argument filedes is invalid.
 
Examples:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
int main()
  {
    long value;
    value = fpathconf( 0, _PC_MAX_INPUT );
    printf( "Input buffer size is %ld bytes\n",
        value );
    return EXIT_SUCCESS;
  }
Classification:
| Safety: | |
|---|---|
| Cancellation point | No | 
| Signal handler | Yes | 
| Thread | Yes | 
Page updated: 
