スポンサーリンク

READLINK(2) FreeBSD システムコールマニュアル READLINK(2)

名称

readlink − シンボリックリンクの値を読み取る

ライブラリ

標準 C ライブラリ (libc, −lc)

書式

#include <unistd.h>

int

readlink(const char *path, char *buf, int bufsiz);

解説

readlink() システムコールは、 bufsiz サイズであるバッファ buf 内にシンボ リックリンク path の内容を配置します。 readlink() システムコールは buf の 末尾に NUL 文字を追加しません。

戻り値

呼び出しが正常に完了した場合、バッファ内に配置した文字数を返します。エ ラーが起きた場合は -1 を返し、エラーコードがグローバル変数 errno に設定さ れます。

エラー

readlink() システムコールは次の場合に失敗します:

       [ENOTDIR]

パスの構成要素中にディレクトリ以外のものが含まれていま す。

[ENAMETOOLONG]
パス名の構成要素が 255 文字を越えているか、またはパス 名全体が 1023 文字を越えています。

[ENOENT]
指定されたファイルが存在しません。

[EACCES]
指定されたパスには、検索が許可されていないディレクトリ が含まれています。

[ELOOP]
パス名を変換するときに検出されたシンボリックリンクが多 すぎます。

[EINVAL]
指定のファイルがシンボリックリンクではありません。

[EIO]
ファイルシステムから読み取る間に入出力エラーが発生しま した。

[EFAULT]
buf
引数が、プロセスに割り当てられたアドレス空間の範囲 外を指しています。

関連項目

lstat(2), stat(2), symlink(2), symlink(7)

歴史

readlink() システムコールは 4.2BSD で登場しました。

FreeBSD 10.0 June 4, 1993 FreeBSD 10.0

スポンサーリンク