Changeset View
Changeset View
Standalone View
Standalone View
sys/ufs/ffs/ffs_alloc.c
Show First 20 Lines • Show All 3,205 Lines • ▼ Show 20 Lines | sysctl_ffs_fsck(SYSCTL_HANDLER_ARGS) | ||||
struct pwd *pwd; | struct pwd *pwd; | ||||
ufs2_daddr_t blkno; | ufs2_daddr_t blkno; | ||||
long blkcnt, blksize; | long blkcnt, blksize; | ||||
u_long key; | u_long key; | ||||
struct file *fp; | struct file *fp; | ||||
cap_rights_t rights; | cap_rights_t rights; | ||||
int filetype, error; | int filetype, error; | ||||
if (req->newlen > sizeof cmd) | if (req->newptr == NULL || req->newlen > sizeof(cmd)) | ||||
return (EBADRPC); | return (EBADRPC); | ||||
if ((error = SYSCTL_IN(req, &cmd, sizeof cmd)) != 0) | if ((error = SYSCTL_IN(req, &cmd, sizeof(cmd))) != 0) | ||||
return (error); | return (error); | ||||
if (cmd.version != FFS_CMD_VERSION) | if (cmd.version != FFS_CMD_VERSION) | ||||
return (ERPCMISMATCH); | return (ERPCMISMATCH); | ||||
if ((error = getvnode(td, cmd.handle, | if ((error = getvnode(td, cmd.handle, | ||||
cap_rights_init_one(&rights, CAP_FSCK), &fp)) != 0) | cap_rights_init_one(&rights, CAP_FSCK), &fp)) != 0) | ||||
return (error); | return (error); | ||||
vp = fp->f_vnode; | vp = fp->f_vnode; | ||||
if (vp->v_type != VREG && vp->v_type != VDIR) { | if (vp->v_type != VREG && vp->v_type != VDIR) { | ||||
▲ Show 20 Lines • Show All 293 Lines • Show Last 20 Lines |