VOP_IOCTL9
Device specific control
Usage
#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);
Overview
Manipulate a file in device dependent ways.
Its arguments are:
- vp
-
The vnode of the file (normally representing a device).
- command
-
The device specific operation to perform.
- data
-
Extra data for the specified operation.
- fflag
-
Some flags ???
- cred
-
The caller's credentials.
- td
-
The calling thread.
Most file systems do not implement this entry point.
Locks
The file should not be locked on entry.
Return values
If successful, zero is returned, otherwise an appropriate error code.
If the ioctl is not recognized or not handled, ENOTTY should be returned.
Pseudocode
int
vop_ioctl(struct vnode *vp, int command, caddr_t data, int fflag,
struct ucred *cred, struct thread *td)
{
return ENOTTY;
}