スポンサーリンク

VOP_IOCTL(9) FreeBSD カーネル開発者マニュアル VOP_IOCTL(9)

名称

VOP_IOCTL − デバイス固有の制御

書式

#include <sys/param.h>
#include <sys/vnode.h>

int

VOP_IOCTL(struct vnode *vp, u_long command, caddr_t data, int fflag, struct ucred *cred, struct thread *td);

解説

デバイス依存の方法でのファイルを操作します。

引数は以下の通りです。

       vp

ファイル (通常はデバイスを表現する) の vnode。

command
実行すべきデバイス固有の操作。

cnp
指定された操作のための拡張データ。

fflag
幾つかのフラグ ???

cred
呼び出し側の証明。

td
呼び出したスレッド。

ほとんどのファイルシステムはこのエントリポイントを実装しません。

ロック

入る時、ファイルはロックされているべきではありません。

戻り値

成功時には 0 が返され、そうでない場合には適切なエラーが返されます。

ioctl が認識されないまたはハンドルされない場合には、 ENOTTY が返されるべ きです。

疑似コード

int
vop_ioctl(struct vnode *vp, int command, caddr_t data, int fflag,

struct ucred *cred, struct thread *td)

{

return ENOTTY;
}

関連項目

vnode(9)

作者

このマニュアルページは Doug Rabson が書きました。

FreeBSD 10.0 July 24, 1996 FreeBSD 10.0

スポンサーリンク