diff options
author | chris <chris@FreeBSD.org> | 1999-09-25 20:12:01 +0000 |
---|---|---|
committer | chris <chris@FreeBSD.org> | 1999-09-25 20:12:01 +0000 |
commit | 6dfa6014e029cb771a9a10281553fcdaba60ae49 (patch) | |
tree | 59f3ec1aa89638d88bce3f2eecc8d7e1ee63b1ec /share/man/man9/make_dev.9 | |
parent | c5be7b58c4ec03fd09950d95c31258c6327ceaf1 (diff) | |
download | FreeBSD-src-6dfa6014e029cb771a9a10281553fcdaba60ae49.zip FreeBSD-src-6dfa6014e029cb771a9a10281553fcdaba60ae49.tar.gz |
Document the make_dev(9) and remove_dev(9) facilities.
remove_dev(9) is created as a link to the existing make_dev(9) page.
Reviewed by: phk
Diffstat (limited to 'share/man/man9/make_dev.9')
-rw-r--r-- | share/man/man9/make_dev.9 | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/share/man/man9/make_dev.9 b/share/man/man9/make_dev.9 new file mode 100644 index 0000000..e400d5c --- /dev/null +++ b/share/man/man9/make_dev.9 @@ -0,0 +1,95 @@ +.\" Copyright (c) 1999 Chris Costello +.\" All rights reserved. +.\" +.\" 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. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. +.\" +.\" $FreeBSD$ +.\" +.Dd September 25, 1999 +.Os +.Dt MAKE_DEV 9 +.Sh NAME +.Nm make_dev , +.Nm remove_dev +.Nd "Create or remove dev_t and devfs registration for a new device" +.Sh SYNOPSIS +.Fd #include <sys/types.h> +.Fd #include <sys/conf.h> +.Ft dev_t +.Fn make_dev "struct cdevsw *devsw" "int minor" "uid_t uid" "gid_t gid" "int perms" "char *fmt" ... +.Ft void +.Fn remove_dev "dev_t dev" +.Sh DESCRIPTION +The +.Fn make_dev +function creates a +.Fa dev_t +structure for a new device. If DEVFS is available, it is also notified of +the presence of the new device. The device will be owned by +.Va uid , +with the group ownership as +.Va gid , +and with the name as specified in +.Va name . +The permissions of the file specified in +.Va perms +are defined in +.Aq Pa sys/stat.h : +.Pp +.Bd -literal -offset indent -compact +#define S_IRWXU 0000700 /* RWX mask for owner */ +#define S_IRUSR 0000400 /* R for owner */ +#define S_IWUSR 0000200 /* W for owner */ +#define S_IXUSR 0000100 /* X for owner */ + +#define S_IRWXG 0000070 /* RWX mask for group */ +#define S_IRGRP 0000040 /* R for group */ +#define S_IWGRP 0000020 /* W for group */ +#define S_IXGRP 0000010 /* X for group */ + +#define S_IRWXO 0000007 /* RWX mask for other */ +#define S_IROTH 0000004 /* R for other */ +#define S_IWOTH 0000002 /* W for other */ +#define S_IXOTH 0000001 /* X for other */ + +#define S_ISUID 0004000 /* set user id on execution */ +#define S_ISGID 0002000 /* set group id on execution */ +#define S_ISVTX 0001000 /* sticky bit */ +#ifndef _POSIX_SOURCE +#define S_ISTXT 0001000 +#endif +.Ed +.Pp +The +.Fn remove_dev +function takes the returned +.Fa dev_t +from +.Fn make_dev +and removes the registration for that device. +.Sh HISTORY +The +.Fn make_dev +and +.Fn remove_dev +functions first appeared in +.Fx 4.0 . |