From owner-freebsd-bugs Sun Sep 17 10:20: 5 2000 Delivered-To: freebsd-bugs@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id DA62037B424 for ; Sun, 17 Sep 2000 10:20:00 -0700 (PDT) Received: (from gnats@localhost) by freefall.freebsd.org (8.9.3/8.9.2) id KAA20157; Sun, 17 Sep 2000 10:20:00 -0700 (PDT) (envelope-from gnats@FreeBSD.org) Received: from spock.org (cm-24-92-52-10.nycap.rr.com [24.92.52.10]) by hub.freebsd.org (Postfix) with ESMTP id 0358737B422 for ; Sun, 17 Sep 2000 10:17:32 -0700 (PDT) Received: (from jon@localhost) by spock.org serial EF600Q3T-B7F; Sun, 17 Sep 2000 13:17:31 -0400 (EDT) (envelope-from jon) Message-Id: <200009171717.e8HHHVa70853@spock.org> Date: Sun, 17 Sep 2000 13:17:31 -0400 (EDT) From: Jonathan Chen Reply-To: jon@spock.org To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.2 Subject: i386/21329: change to allow vm86 interrupt calls from userland Sender: owner-freebsd-bugs@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org >Number: 21329 >Category: i386 >Synopsis: change to allow vm86 interrupt calls from userland >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Sun Sep 17 10:20:00 PDT 2000 >Closed-Date: >Last-Modified: >Originator: Jonathan Chen >Release: FreeBSD 4.1-STABLE i386 >Organization: >Environment: >Description: VM86 intcalls was disabled at the initial commit -- this would be nice to have since the only way I know how to get my video card (Savage/IX) to do X properly is through VM86 VESA int 10 calls. >How-To-Repeat: >Fix: Index: vm86.c =================================================================== RCS file: /export/ncvs/src/sys/i386/i386/vm86.c,v retrieving revision 1.31 diff -u -r1.31 vm86.c --- vm86.c 1999/10/29 18:08:35 1.31 +++ vm86.c 2000/09/17 06:58:08 @@ -701,18 +701,18 @@ } break; -#if 0 case VM86_INTCALL: { struct vm86_intcall_args sa; - if (error = copyin(ua.sub_args, &sa, sizeof(sa))) + if (p->p_cred->pc_ucred->cr_uid != 0) return EPERM; + + if ((error = copyin(ua.sub_args, &sa, sizeof(sa)))) return (error); - if (error = vm86_intcall(sa.intnum, &sa.vmf)) + if ((error = vm86_intcall(sa.intnum, &sa.vmf))) return (error); error = copyout(&sa, ua.sub_args, sizeof(sa)); } break; -#endif default: error = EINVAL; >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-bugs" in the body of the message