Manpages

名 前

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/ に 書 か れ て い る 。