From b8cac29a60a4d28cdfd19ec785239b314dff4aa1 Mon Sep 17 00:00:00 2001 From: mpp Date: Sat, 22 Mar 1997 22:06:07 +0000 Subject: Add kernacc(9) that documents the kernacc() and useracc() kernel functions. Obtained from: NetBSD (renamed from access.9) --- share/man/man9/Makefile | 5 +-- share/man/man9/kernacc.9 | 81 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 84 insertions(+), 2 deletions(-) create mode 100644 share/man/man9/kernacc.9 (limited to 'share/man') diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile index 1508aad..6caf746 100644 --- a/share/man/man9/Makefile +++ b/share/man/man9/Makefile @@ -1,8 +1,8 @@ -# $Id: Makefile,v 1.25 1997/03/22 20:59:15 mpp Exp $ +# $Id: Makefile,v 1.26 1997/03/22 21:31:26 mpp Exp $ MAN9= MD5.9 at_shutdown.9 at_fork.9 at_exit.9 boot.9 cd.9 copy.9 \ devfs_add_devswf.9 \ - devfs_link.9 fetch.9 ifnet.9 intro.9 inittodr.9 mi_switch.9 \ + devfs_link.9 fetch.9 ifnet.9 intro.9 inittodr.9 kernacc.9 mi_switch.9 \ panic.9 physio.9 psignal.9 \ resettodr.9 rtalloc.9 rtentry.9 scsiconf.9 sd.9 sleep.9 spl.9 st.9 \ store.9 style.9 time.9 timeout.9 uio.9 \ @@ -25,6 +25,7 @@ MLINKS+= at_shutdown.9 rm_at_shutdown.9 MLINKS+= at_exit.9 rm_at_exit.9 MLINKS+= at_fork.9 rm_at_fork.9 MLINKS+= ifnet.9 ifaddr.9 ifnet.9 ifqueue.9 ifnet.9 if_data.9 +MLINKS+= kernacc.9 useracc.9 MLINKS+= mi_switch.9 cpu_switch.9 MLINKS+= psignal.9 pgsignal.9 psignal.9 gsignal.9 MLINKS+= rtalloc.9 rtalloc_ign.9 rtalloc.9 rtalloc1.9 diff --git a/share/man/man9/kernacc.9 b/share/man/man9/kernacc.9 new file mode 100644 index 0000000..9ac96d4 --- /dev/null +++ b/share/man/man9/kernacc.9 @@ -0,0 +1,81 @@ +.\" $NetBSD: access.9,v 1.1 1996/06/16 10:38:35 pk Exp $ +.\" +.\" Copyright (c) 1996 The NetBSD Foundation, Inc. +.\" All rights reserved. +.\" +.\" This code is derived from software contributed to The NetBSD Foundation +.\" by Paul Kranenburg. +.\" +.\" 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. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by the NetBSD +.\" Foundation, Inc. and its contributors. +.\" 4. Neither the name of The NetBSD Foundation nor the names of its +.\" contributors may be used to endorse or promote products derived +.\" from this software without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +.\" ``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 REGENTS OR CONTRIBUTORS 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. +.\" +.Dd June 16, 1996 +.Dt ACCESS 9 +.Os FreeBSD +.Sh NAME +.Nm kernacc , +.Nm useracc +.Nd check memory regions for accessibility +.Sh SYNOPSIS +.Ft int +.Fn kernacc "caddr_t addr" "int len" "int rw" +.Ft int +.Fn useracc "caddr_t addr" "int len" "int rw" +.Sh DESCRIPTION +The +.Fn kernacc +and +.Fn useracc +functions check whether operations of the type specified in +.Fa rw +are permitted in the range of virtual addresses given by +.Fa addr +and +.Fa len . +The possible values of +.Fa rw +are +.Dv B_READ +and +.Dv B_WRITE . +.Fn kernacc +checks addresses in the kernel address space, while +.Fn useracc +considers +.Fa addr +to represent an user space address. The process context to use for this +operation is taken from the global variable +.Va curproc . +.Pp +.Sh RETURN VALUES +Both functions return 1 if the type of access specified by +.Fa rw +is permitted. Otherwise 0 is returned. +.Pp +.Sh BUGS +The process pointer should be passed in as an argument. -- cgit v1.1