FPATHCONF(3)

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

書式
#include <unistd.h>

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

準拠
POSIX.1-2001.

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

いくつかの返り値はとても大きくなることがある。これらを使って メモリーの割り当てを行うのは適当ではない。

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

この文書について
この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。