.\" -*- nroff -*- .\" .\" Copyright (c) 1996 Doug Rabson .\" .\" All rights reserved. .\" .\" This program is free software. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. .\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT, .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" .\" %FreeBSD: src/share/man/man9/VOP_IOCTL.9,v 1.12 2003/05/31 14:07:25 hmp Exp % .\" .\" $FreeBSD$ .Dd July 24, 1996 .Os .Dt VOP_IOCTL 9 .Sh 名称 .Nm VOP_IOCTL .Nd デバイス固有の制御 .Sh 書式 .In sys/param.h .In sys/vnode.h .Ft int .Fn VOP_IOCTL "struct vnode *vp" "u_long command" "caddr_t data" "int fflag" "struct ucred *cred" "struct thread *td" .Sh 解説 デバイス依存の方法でのファイルを操作します。 .Pp 引数は以下の通りです。 .Bl -tag -width command .It Fa vp ファイル (通常はデバイスを表現する) の vnode。 .It Fa command 実行すべきデバイス固有の操作。 .It Fa cnp 指定された操作のための拡張データ。 .It Fa fflag 幾つかのフラグ ??? .It Fa cred 呼び出し側の証明。 .It Fa td 呼び出したスレッド。 .El .Pp ほとんどのファイルシステムはこのエントリポイントを実装しません。 .Sh ロック 入る時、ファイルはロックされているべきではありません。 .Sh 戻り値 成功時には 0 が返され、そうでない場合には適切なエラーが返されます。 .Pp ioctl が認識されないまたはハンドルされない場合には、 .Er ENOTTY が返されるべきです。 .Sh 疑似コード .Bd -literal int vop_ioctl(struct vnode *vp, int command, caddr_t data, int fflag, struct ucred *cred, struct thread *td) { return ENOTTY; } .Ed .Sh 関連項目 .Xr vnode 9 .Sh 作者 このマニュアルページは .An Doug Rabson が書きました。