PATHCONF
Section: System Calls (2)
索引
jman
BSD mandoc
索引
名称
pathconf
fpathconf
- 構成可能なパス名変数を取得する
索引
ライブラリ
Lb libc
索引
書式
In unistd.h
Ft long
Fn pathconf const char *path int name
Ft long
Fn fpathconf int fd int name
索引
解説
Fn pathconf
システムコールと
Fn fpathconf
システムコールは、構成可能なシステム限界の現在値、またはパス名や
ファイル記述子に対応するオプション変数を
アプリケーションが判定する方法を提供します。
Fn pathconf
の場合、
Fa path
引数はファイルまたはディレクトリの名前です。
Fn fpathconf
の場合、
Fa fd
引数はオープンファイルの記述子です。
Fa name
引数は、照会するシステム変数を指定します。
それぞれの名前に関するシンボリック定数はインクルードファイル
<unistd.h>
にあります。
利用可能な値は次のとおりです:
- _PC_LINK_MAX
-
最大のファイルリンクカウント。
- _PC_MAX_CANON
-
端末の標準モード入力待ち行列の最大バイト数。
- _PC_MAX_INPUT
-
端末入力待ち行列内空間で利用できる最大バイト数の最小値。
- _PC_NAME_MAX
-
ファイル名の最大バイト数。
- _PC_PATH_MAX
-
パス名の最大バイト数。
- _PC_PIPE_BUF
-
パイプに不可分に書き込まれる最大バイト数。
- _PC_CHOWN_RESTRICTED
-
chown(2)
システムコールを実行するのに、適切な特権が必要な場合は 1 を返し、
そうでない場合は 0 を返します。
全ての場合において
St -p1003.1-2001
は適切な特権を要求しますが、この動作はこの規格の前の版ではオプションでした。
- _PC_NO_TRUNC
-
構成要素が
Br q Dv NAME_MAX
よりも長いパス名を使用しようとすると
Bq Er ENAMETOOLONG
エラーを引き起こす場合は、0 より大きい値を返します。
そうでない場合には、このような構成要素は
Br q Dv NAME_MAX
に切り詰められます。
全ての場合において
St -p1003.1-2001
は適切なエラーを要求しますが、この動作はこの規格の前の版ではオプションでした。
また、
POSIX
に縛られていないファイルシステムはこの動作をサポートしません。
- _PC_VDISABLE
-
端末制御文字を無効にするための値を返します。
- _PC_ASYNC_IO
-
非同期 I/O がサポートされている場合は 1 を返し、
そうでなければ 0 を返します。
- _PC_PRIO_IO
-
このファイルに対して優先 I/O がサポートされている場合は 1 を返し、
そうでなければ 0 を返します。
- _PC_SYNC_IO
-
このファイルに対して同期 I/O がサポートされている場合は 1 を返し、
そうでなければ 0 を返します。
- _PC_ALLOC_SIZE_MIN
-
ファイルの一部を格納するために確保される領域の最小バイト数。
- _PC_FILESIZEBITS
-
最大ファイルサイズを表現するのに必要なビット数。
- _PC_REC_INCR_XFER_SIZE
-
ファイル転送サイズの、
_PC_REC_MIN_XFER_SIZE
から
_PC_REC_MAX_XFER_SIZE
への推奨増加量。
- _PC_REC_MAX_XFER_SIZE
-
推奨ファイル転送サイズの最大値。
- _PC_REC_MIN_XFER_SIZE
-
推奨ファイル転送サイズの最小値。
- _PC_REC_XFER_ALIGN
-
ファイル転送バッファの推奨アラインメント。
- _PC_SYMLINK_MAX
-
シンボリックリンクに使われる最大バイト数。
- _PC_ACL_EXTENDED
-
指定されたファイルに対してアクセス制御リスト (ACL) が
設定できる場合は 1 を返し、そうでなければ 0 を返します。
- _PC_ACL_PATH_MAX
-
ACL エントリのファイル毎の最大数。
- _PC_CAP_PRESENT
-
指定されたファイルに対してケーパビリティ状態が
設定できる場合は 1 を返し、そうでなければ 0 を返します。
- _PC_INF_PRESENT
-
指定されたファイルに対して情報ラベルが
設定できる場合は 1 を返し、そうでなければ 0 を返します。
- _PC_MAC_PRESENT
-
指定されたファイルに対して強制アクセス制御 (MAC) ラベルが
設定できる場合は 1 を返し、そうでなければ 0 を返します。
索引
戻り値
Fn pathconf
または
Fn fpathconf
の呼び出しが正常に完了しない場合は -1 が返され、
errno
が適切な値に設定されます。
変数に結び付けられた機能がシステム内に限界を持たないとき、-1 が返され、
errno
は修正されません。
それ以外の場合、現在の変数値が返されます。
索引
エラー
次の条件のどれかが起きた場合、
Fn pathconf
システムコールと
Fn fpathconf
システムコールは -1 を返し、
errno
に対応する値を設定します。
- Bq Er EINVAL
-
Fa name
引数の値が無効です。
- Bq Er EINVAL
-
このファイルとこの変数との結び付きは、実装されていません。
Fn pathconf
システムコールは次の場合に失敗します:
- Bq Er ENOTDIR
-
パスの構成要素中にディレクトリ以外のものが含まれています。
- Bq Er ENAMETOOLONG
-
パス名の構成要素が
Br q Dv NAME_MAX
の文字数を越えているか (ただし上記の
_PC_NO_TRUNC
を参照)、またはパス名全体が
Br q Dv PATH_MAX
の文字数を越えています。
- Bq Er ENOENT
-
指定されたファイルが存在しません。
- Bq Er EACCES
-
指定されたパスには、検索が許可されていないディレクトリが含まれています。
- Bq Er ELOOP
-
パス名を変換するときに検出されたシンボリックリンクが多すぎます。
- Bq Er EIO
-
ファイルシステムに読み書きしている間に入出力エラーが発生しました。
Fn fpathconf
システムコールは次の場合に失敗します:
- Bq Er EBADF
-
Fa fd
引数が有効なオープンファイル記述子ではありません。
- Bq Er EIO
-
ファイルシステムに読み書きしている間に入出力エラーが発生しました。
索引
関連項目
sysctl(3)
索引
歴史
Fn pathconf
システムコールと
Fn fpathconf
システムコールは
BSD 4.4
ではじめて登場しました。
索引
Index
- 名称
-
- ライブラリ
-
- 書式
-
- 解説
-
- 戻り値
-
- エラー
-
- 関連項目
-
- 歴史
-
Time: 07:06:29 GMT, January 12, 2009