dirfdのヘルプ・マニュアル
日本語 英語
dirfd --help
man dirfd
DIRFD(3) Linux Programmer’s Manual DIRFD(3)
名前
dirfd - ディレクトリ・ストリームのファイル・ディスクリプタを取得する
書式
#include
#include
int dirfd(DIR *dirp);
glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照):
dirfd(): _BSD_SOURCE || _SVID_SOURCE
説明
関数 dirfd() はディレクトリ・ストリーム dirp に関連づけられたファイル・
ディスクリプタを返す。
このディスクリプタはディレクトリ・ストリームが内部で使用するものであ る
。 よ っ て 、 フ ァ イルの位置に依存せず、かつその位置を変更しない関数
fstat(2) や fchdir(2) などでしか役に立たない。このディス ク リ プ タ は
closedir(3) が呼ばれたときに自動的にクローズされる。
返り値
成 功すると、負でない値のファイルディスクリプタが返される。エラーの場合
は -1 が返される。
エラー
POSIX.1-2008 では 2 つのエラーが規定されている。現在の実装ではどちら の
エラーも返されない。
EINVAL dirp が有効なディレクトリ・ストリームを参照していない。
ENOTSUP
この実装では、ファイルディスクリプタのディレクトリとの関連付けが
サポートされていない。
準拠
POSIX.1-2008. この関数は BSD 拡張であった。 4.3BSD-Reno には存在するが
、4.2BSD には存在しない。
注意
dirfd() の プ ロ ト タ イ プ が 使 用 可能なのは、 _BSD_SOURCE または
_SVID_SOURCE が定義されたときのみである。
関連項目
open(2), closedir(3), opendir(3), readdir(3), rewinddir(3), scandir(3),
seekdir(3), telldir(3)
Linux 2008-08-21 DIRFD(3)
DIRFD(3) Linux Programmer’s Manual DIRFD(3)
NAME
dirfd - get directory stream file descriptor
SYNOPSIS
#include
#include
int dirfd(DIR *dirp);
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
dirfd(): _BSD_SOURCE || _SVID_SOURCE
DESCRIPTION
The function dirfd() returns the file descriptor associated with the
directory stream dirp.
This descriptor is the one used internally by the directory stream. As
a result, it is only useful for functions which do not depend on or
alter the file position, such as fstat(2) and fchdir(2). It will be
automatically closed when closedir(3) is called.
RETURN VALUE
On success, a non-negative file descriptor is returned. On error, -1
is returned.
ERRORS
POSIX.1-2008 specifies two errors, neither of which is returned by the
current implementation.
EINVAL dirp does not refer to a valid directory stream.
ENOTSUP
The implementation does not support the association of a file
descriptor with a directory.
CONFORMING TO
POSIX.1-2008. This function was a BSD extension, present in 4.3BSD-
Reno, not in 4.2BSD.
NOTES
The prototype for dirfd() is only available if _BSD_SOURCE or
_SVID_SOURCE is defined.
SEE ALSO
open(2), closedir(3), opendir(3), readdir(3), rewinddir(3), scandir(3),
seekdir(3), telldir(3)
COLOPHON
This page is part of release 3.22 of the Linux man-pages project. A
description of the project, and information about reporting bugs, can
be found at http://www.kernel.org/doc/man-pages/.
Linux 2008-08-21 DIRFD(3)