fpathconf(3) ファイルの設定値を取得する

Other Alias

pathconf

書式

#include <unistd.h>


long fpathconf(int fd, int name);
long pathconf(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 を入れて返された値よりも長いファイル名を持つファイルが、与えられたディ レクトリに存在するかもしれない。

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

この文書について

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