FPATHCONF(3)

名前
fpathconf, pathconf - ファイルの設定値を取得する

書式
#include <unistd.h>

long fpathconf(int filedes, int name);
long pathconf(char *path, int name);

説明
fpathconf() はオープンされているファイルデスクリプター filedes に対して設定されているオプション name の値を取得する。

pathconf() はファイル path に対して設定されているオプション name の値を取得する。

対応するマクロのうち <unistd.h> で定義されているものは最小値である。アプリケーションによってはこれらの 値を変更してより有利な動作を行おうとするものがある。この場合でも fpathconf() または pathconf() は呼び出すことができる。この場合はより大きな値が返ることになろう。

name を以下の定数のどれかにすると、対応する設定オプションが返される。

_PC_LINK_MAX
    ファイルへのリンクの最大数を返す。 filedes または path がディレクトリの場合は、この値はディレクトリ全体に適用される。対応する マクロは _POSIX_LINK_MAX である。

_PC_MAX_CANON
    フォーマット付き入力行の最大長さを返す。このとき filedes または path は端末を参照していなければならない。 対応するマクロは _POSIX_MAX_CANON である。

_PC_MAX_INPUT
    入力行の最大長さを返す。このとき filedes または path は端末を参照していなければならない。 対応するマクロは _POSIX_MAX_INPUT である。

_PC_NAME_MAX
    ディレクトリ path または filedes 内に作成することができるファイル名の最大長さを返す。 対応するマクロは _POSIX_NAME_MAX である。

_PC_PATH_MAX
    path または filedes がカレントディレクトリの場合、相対パス名の最大長さを返す。 対応するマクロは _POSIX_PATH_MAX である。

_PC_PIPE_BUF
    パイプ (pipe) バッファのサイズを返す。このとき filedes はパイプか FIFO を参照していなければならず、 path は FIFO を参照していなければならない。 対応するマクロは _POSIX_PIPE_BUF である。

_PC_CHOWN_RESTRICTED
    このファイルに対する chown(2) の呼び出しが許されていない場合には 0 以外の値を返す。 filedes または path がディレクトリを参照している場合は、この制限はそのディレクトリのすべて のファイルに適用される。 対応するマクロは _POSIX_CHOWN_RESTRICTED である。

_PC_NO_TRUNC
    アクセス中のファイル名が _POSIX_NAME_MAX よりも長く、エラーとなる場合には 0 以外の値を返す。 対応するマクロは _POSIX_NAME_MAX である。

_PC_VDISABLE
    特殊文字 (special character) の処理が許されていない場合は 0 以外の値を 返す。このとき filedes または path は端末を参照していなければならない。

返り値
(存在していれば) 制限値が返される。要求されたリソースへのシステムの制 限が存在していなければ -1 が返され、 errno は変更されない。エラーが起こった場合には -1 が返され、 errno がエラーに対応した値に設定される。

準拠
POSIX.1

注意
name に _PC_NAME_MAX を入れて返された値よりも長いファイル名を持つファイルが、与えられたディ レクトリに存在するかもしれない。

返り値は非常に大きな値になることもある。メモリーの割り当て用の値には大 きすぎて適さないかも知れない。

関連項目
getconf(1), statfs(2), open(2), sysconf(3)