ibcs2_ioctl.c (89306) | ibcs2_ioctl.c (89319) |
---|---|
1/* $NetBSD: ibcs2_ioctl.c,v 1.6 1995/03/14 15:12:28 scottb Exp $ */ 2 3/* 4 * Copyright (c) 1994, 1995 Scott Bartram 5 * All rights reserved. 6 * 7 * based on compat/sunos/sun_ioctl.c 8 * --- 11 unchanged lines hidden (view full) --- 20 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 22 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 * | 1/* $NetBSD: ibcs2_ioctl.c,v 1.6 1995/03/14 15:12:28 scottb Exp $ */ 2 3/* 4 * Copyright (c) 1994, 1995 Scott Bartram 5 * All rights reserved. 6 * 7 * based on compat/sunos/sun_ioctl.c 8 * --- 11 unchanged lines hidden (view full) --- 20 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 21 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 22 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 * |
28 * $FreeBSD: head/sys/i386/ibcs2/ibcs2_ioctl.c 89306 2002-01-13 11:58:06Z alfred $ | 28 * $FreeBSD: head/sys/i386/ibcs2/ibcs2_ioctl.c 89319 2002-01-14 00:13:45Z alfred $ |
29 */ 30 31#include <sys/param.h> 32#include <sys/systm.h> 33#include <sys/consio.h> 34#include <sys/fcntl.h> 35#include <sys/file.h> 36#include <sys/filedesc.h> --- 304 unchanged lines hidden (view full) --- 341ibcs2_ioctl(td, uap) 342 struct thread *td; 343 struct ibcs2_ioctl_args *uap; 344{ 345 struct proc *p = td->td_proc; 346 struct file *fp; 347 int error; 348 | 29 */ 30 31#include <sys/param.h> 32#include <sys/systm.h> 33#include <sys/consio.h> 34#include <sys/fcntl.h> 35#include <sys/file.h> 36#include <sys/filedesc.h> --- 304 unchanged lines hidden (view full) --- 341ibcs2_ioctl(td, uap) 342 struct thread *td; 343 struct ibcs2_ioctl_args *uap; 344{ 345 struct proc *p = td->td_proc; 346 struct file *fp; 347 int error; 348 |
349 fp = ffind_hold(td, uap->fd); 350 if (fp == NULL) { | 349 if ((error = fget(td, uap->fd, &fp)) != 0) { |
351 DPRINTF(("ibcs2_ioctl(%d): bad fd %d ", p->p_pid, 352 SCARG(uap, fd))); 353 return EBADF; 354 } 355 356 if ((fp->f_flag & (FREAD|FWRITE)) == 0) { 357 fdrop(fp, td); 358 DPRINTF(("ibcs2_ioctl(%d): bad fp flag ", p->p_pid)); --- 335 unchanged lines hidden --- | 350 DPRINTF(("ibcs2_ioctl(%d): bad fd %d ", p->p_pid, 351 SCARG(uap, fd))); 352 return EBADF; 353 } 354 355 if ((fp->f_flag & (FREAD|FWRITE)) == 0) { 356 fdrop(fp, td); 357 DPRINTF(("ibcs2_ioctl(%d): bad fp flag ", p->p_pid)); --- 335 unchanged lines hidden --- |