Enable devname(3)
There is no support for a device name database yet, so this call is expected to be fairly slow. Change-Id: I73aa5f267e2b6921b7d3bbdcc4beac463931132c
This commit is contained in:
@@ -12,7 +12,7 @@
|
||||
# closefrom.c confstr.c extattr.c getdevmajor.c \
|
||||
# pthread_atfork.c setdomainname.c sethostname.c setproctitle.c \
|
||||
# sysctl.c sysctlbyname.c sysctlgetmibinfo.c sysctlnametomib.c \
|
||||
# devname.c wait3.c
|
||||
# wait3.c
|
||||
|
||||
# To be ported
|
||||
# nlist.c nlist_aout.c nlist_coff.c nlist_ecoff.c nlist_elf32.c nlist_elf64.c
|
||||
@@ -26,7 +26,7 @@
|
||||
SRCS+= _errno.c alarm.c alphasort.c arc4random.c assert.c basename.c clock.c \
|
||||
closedir.c \
|
||||
ctermid.c ctype_.c daemon.c \
|
||||
dehumanize_number.c dirname.c err.c errx.c \
|
||||
dehumanize_number.c devname.c dirname.c err.c errx.c \
|
||||
errlist.c errno.c execl.c execle.c execlp.c execv.c execvp.c \
|
||||
fmtcheck.c fmtmsg.c fnmatch.c fstab.c ftok.c \
|
||||
fts.c ftw.c getbsize.c getcap.c getcwd.c \
|
||||
|
||||
@@ -49,6 +49,7 @@ __RCSID("$NetBSD: devname.c,v 1.22 2012/06/03 21:42:46 joerg Exp $");
|
||||
__weak_alias(devname_r,_devname_r)
|
||||
#endif
|
||||
|
||||
#ifndef __minix
|
||||
static once_t db_opened = ONCE_INITIALIZER;
|
||||
static struct cdbr *db;
|
||||
static devmajor_t pts;
|
||||
@@ -101,6 +102,7 @@ devname_ptslookup(dev_t dev, mode_t type, char *path, size_t len)
|
||||
return ERANGE;
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
static int
|
||||
devname_fts(dev_t dev, mode_t type, char *path, size_t len)
|
||||
@@ -140,6 +142,7 @@ devname_r(dev_t dev, mode_t type, char *path, size_t len)
|
||||
{
|
||||
int rv;
|
||||
|
||||
#ifndef __minix
|
||||
thr_once(&db_opened, devname_dbopen);
|
||||
|
||||
if (db != NULL) {
|
||||
@@ -154,6 +157,7 @@ devname_r(dev_t dev, mode_t type, char *path, size_t len)
|
||||
|
||||
if (db != NULL)
|
||||
return ENOENT;
|
||||
#endif
|
||||
rv = devname_fts(dev, type, path, len);
|
||||
return rv;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user