diff options
author | phk <phk@FreeBSD.org> | 2003-06-20 09:48:11 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2003-06-20 09:48:11 +0000 |
commit | 4d61d2249d5799c859f3007fbbd4eca0b9d4a361 (patch) | |
tree | 11060261b900701ec16ce4d577305109688a3d04 | |
parent | 55a2bb04c3b7cad2f7476680c6548b3f97be3ce7 (diff) | |
download | FreeBSD-src-4d61d2249d5799c859f3007fbbd4eca0b9d4a361.zip FreeBSD-src-4d61d2249d5799c859f3007fbbd4eca0b9d4a361.tar.gz |
Remove dev_mkdb(8). The kernel answers these questions.
-rw-r--r-- | usr.sbin/Makefile | 1 | ||||
-rw-r--r-- | usr.sbin/dev_mkdb/Makefile | 9 | ||||
-rw-r--r-- | usr.sbin/dev_mkdb/dev_mkdb.8 | 91 | ||||
-rw-r--r-- | usr.sbin/dev_mkdb/dev_mkdb.c | 166 |
4 files changed, 0 insertions, 267 deletions
diff --git a/usr.sbin/Makefile b/usr.sbin/Makefile index f1e6943..b394af9 100644 --- a/usr.sbin/Makefile +++ b/usr.sbin/Makefile @@ -26,7 +26,6 @@ SUBDIR= IPXrouted \ crunch \ ctm \ daemon \ - dev_mkdb \ devinfo \ digictl \ diskinfo \ diff --git a/usr.sbin/dev_mkdb/Makefile b/usr.sbin/dev_mkdb/Makefile deleted file mode 100644 index b12cfa4..0000000 --- a/usr.sbin/dev_mkdb/Makefile +++ /dev/null @@ -1,9 +0,0 @@ -# @(#)Makefile 8.1 (Berkeley) 6/6/93 -# $FreeBSD$ - -PROG= dev_mkdb -MAN= dev_mkdb.8 - -WARNS?= 2 - -.include <bsd.prog.mk> diff --git a/usr.sbin/dev_mkdb/dev_mkdb.8 b/usr.sbin/dev_mkdb/dev_mkdb.8 deleted file mode 100644 index 291626d..0000000 --- a/usr.sbin/dev_mkdb/dev_mkdb.8 +++ /dev/null @@ -1,91 +0,0 @@ -.\" Copyright (c) 1990, 1993 -.\" The Regents of the University of California. 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. -.\" 3. All advertising materials mentioning features or use of this software -.\" must display the following acknowledgement: -.\" This product includes software developed by the University of -.\" California, Berkeley and its contributors. -.\" 4. Neither the name of the University 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 REGENTS 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. -.\" -.\" @(#)dev_mkdb.8 8.1 (Berkeley) 6/6/93 -.\" $FreeBSD$ -.\" -.Dd November 18, 2001 -.Os -.Dt DEV_MKDB 8 -.Sh NAME -.Nm dev_mkdb -.Nd create -.Pa /dev -database -.Sh SYNOPSIS -.Nm -.Op Fl f Ar file -.Op Ar directory -.Sh DESCRIPTION -The -.Nm -utility creates a -.Xr db 3 -hash access method database in -.Ar file -.Pa ( /var/run/dev.db -by default) -which contains the names of all of the character and block special -files in -.Ar directory -.Pa ( /dev -by default), using the file type and the -.Fa st_rdev -field as the key. -.Pp -Keys are a structure containing a -.Vt mode_t -followed by a -.Vt dev_t , -with any padding zero'd out. -The former is the type of the file -.Va ( st_mode Li & Dv S_IFMT ) , -the latter is the -.Va st_rdev -field. -.Sh FILES -.Bl -tag -width ".Pa /var/run/dev.db" -compact -.It Pa /dev -default device directory -.It Pa /var/run/dev.db -default database file -.El -.Sh SEE ALSO -.Xr ps 1 , -.Xr stat 2 , -.Xr db 3 , -.Xr devname 3 , -.Xr ttyname 3 -.Sh HISTORY -The -.Nm -utility appeared in -.Bx 4.4 . diff --git a/usr.sbin/dev_mkdb/dev_mkdb.c b/usr.sbin/dev_mkdb/dev_mkdb.c deleted file mode 100644 index f2474f6..0000000 --- a/usr.sbin/dev_mkdb/dev_mkdb.c +++ /dev/null @@ -1,166 +0,0 @@ -/*- - * Copyright (c) 1990, 1993 - * The Regents of the University of California. 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. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University 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 REGENTS 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. - */ - -#if 0 -#ifndef lint -static const char copyright[] = -"@(#) Copyright (c) 1990, 1993\n\ - The Regents of the University of California. All rights reserved.\n"; -#endif /* not lint */ - -#ifndef lint -static char sccsid[] = "@(#)dev_mkdb.c 8.1 (Berkeley) 6/6/93"; -#endif /* not lint */ -#endif -#include <sys/cdefs.h> -__FBSDID("$FreeBSD$"); - -#include <sys/param.h> -#include <sys/stat.h> - -#include <db.h> -#include <dirent.h> -#include <err.h> -#include <fcntl.h> -#include <kvm.h> -#include <nlist.h> -#include <paths.h> -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <unistd.h> - -static void usage(void); -int main(int argc, char *argv[]); - -int -main(int argc, char *argv[]) -{ - DIR *dirp; - struct dirent *dp; - struct stat sb; - struct { - mode_t type; - dev_t dev; - } bkey; - DB *db; - DBT data, key; - int ch, fflag; - u_char buf[MAXNAMLEN + 1]; - char dbtmp[MAXPATHLEN], dbname[MAXPATHLEN]; - const char *dirname; - - fflag = 0; - while ((ch = getopt(argc, argv, "f:")) != -1) - switch((char)ch) { - case 'f': - strlcpy(dbname, optarg, sizeof(dbname)); - fflag = 1; - break; - case '?': - default: - usage(); - } - argc -= optind; - argv += optind; - - if (argc > 1) - usage(); - if (argc == 1) - dirname = argv[0]; - else - dirname = _PATH_DEV; - - if (!fflag) { - (void)snprintf(dbname, sizeof(dbtmp), "%sdev.db", _PATH_VARRUN); - (void)snprintf(dbtmp, sizeof(dbtmp), "%sdev.tmp", _PATH_VARRUN); - } else - (void)snprintf(dbtmp, sizeof(dbtmp), "%s.tmp", dbname); - - if (chdir(dirname)) - err(1, "%s", dirname); - - dirp = opendir("."); - - db = dbopen(dbtmp, O_CREAT|O_EXLOCK|O_RDWR|O_TRUNC, - S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH, DB_HASH, NULL); - if (db == NULL) - err(1, "dbopen %s", dbtmp); - - /* - * Keys are a mode_t followed by a dev_t. The former is the type of - * the file (mode & S_IFMT), the latter is the st_rdev field. Note - * that the structure may contain padding, so we have to clear it - * out here. - */ - bzero(&bkey, sizeof(bkey)); - key.data = &bkey; - key.size = sizeof(bkey); - data.data = buf; - while ((dp = readdir(dirp))) { - if (lstat(dp->d_name, &sb)) { - warn("%s", dp->d_name); - continue; - } - - /* Create the key. */ - if (S_ISCHR(sb.st_mode)) - bkey.type = S_IFCHR; - else if (S_ISBLK(sb.st_mode)) - bkey.type = S_IFBLK; - else - continue; - bkey.dev = sb.st_rdev; - - /* - * Create the data; nul terminate the name so caller doesn't - * have to. - */ - bcopy(dp->d_name, buf, dp->d_namlen); - buf[dp->d_namlen] = '\0'; - data.size = dp->d_namlen + 1; - if ((db->put)(db, &key, &data, 0)) - err(1, "dbput %s", dbtmp); - } - (void)(db->close)(db); - if (rename(dbtmp, dbname)) - err(1, "rename %s to %s", dbtmp, dbname); - exit(0); -} - -static void -usage(void) -{ - (void)fprintf(stderr, "usage: dev_mkdb [-f file] [directory]\n"); - exit(1); -} |