CONFSTR(3) FreeBSD ライブラリ関数マニュアル CONFSTR(3)
名称
confstr − 文字列値の設定可能変数を得る |
ライブラリ
標準 C ライブラリ (libc, −lc) |
書式
#include <unistd.h> size_t |
confstr(int name, char *buf, size_t len); |
解説 |
このインタフェースは、 sysctl(3) によって旧式になっています。 confstr() 関数は、システム構成により定義されている文字列値を、アプリケー ションが取得するための方式を提供します。 name 引数は、照会されるシステム変数を指定します。各名前の値となるシンボ リック定数は、インクルードファイル 〈unistd.h〉 の中にあります。 len 引数 は、引数 buf が参照するバッファのサイズを指定します。 len が 0 でない場 合、 buf は NULL ではないポインタで、 name は値を持っており、その値のうち 最高 len − 1 バイトがバッファ buf にコピーされます。コピーされた値の末尾 は必ずヌル文字です。 利用可能な値は次のとおりです。 |
_CS_PATH
全標準ユーティリティを検出する PATH 環境変数の値を返します。 戻り値 |
confstr() の呼び出しが正常に完了しない場合、−1 が返され、該当する errno が設定されます。また変数に、システム構成により定義されている値がない場合 0 が返され、 errno は変更されません。それ以外の場合は、設定定義された値全 体を入れるのに必要なバッファサイズが返されます。このサイズが引数 len より 大きい場合、 buf 内の文字列は切り捨てられています。 |
エラー
confstr() 関数がエラーになると、ライブラリ関数 malloc(3) と sysctl(3) で 規定されているエラーを errno に設定することがあります。 さらに、次のエラーがレポートされることがあります。 |
[EINVAL]
name 引数の値は無効です。 関連項目 |
歴史
confstr() 関数は 4.4BSD ではじめて登場しました。 FreeBSD 10.0 June 4, 1993 FreeBSD 10.0 |