fpathconf - ライブラリコールの説明 - Linux コマンド集 一覧表
名前
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-2001.
注意
name に _PC_NAME_MAX を入れて返された値よりも長いファイル名を持つファイルが、与えられたディ レクトリに存在するかもしれない。
返り値は非常に大きな値になることもある。メモリーの割り当て用の値には大 きすぎて適さないかも知れない。
関連項目
getconf
(1),
open
(2),
statfs
(2),
sysconf
(3)