summaryrefslogtreecommitdiffstats
path: root/sys/kern/kern_conf.c
diff options
context:
space:
mode:
authorbde <bde@FreeBSD.org>1999-09-13 12:29:32 +0000
committerbde <bde@FreeBSD.org>1999-09-13 12:29:32 +0000
commit5fbd95466cc7159018fb8d55864a955373bffd97 (patch)
tree36f60d2dec419534015d1d1e9f893de74b993e6a /sys/kern/kern_conf.c
parentad7d5e0e01aad87115442a7aac072c1ff28f34bd (diff)
downloadFreeBSD-src-5fbd95466cc7159018fb8d55864a955373bffd97.zip
FreeBSD-src-5fbd95466cc7159018fb8d55864a955373bffd97.tar.gz
Const'ify devtoname() and d_name. This exposes some errors (2 non-benign).
Handle negative minor numbers properly in devtoname().
Diffstat (limited to 'sys/kern/kern_conf.c')
-rw-r--r--sys/kern/kern_conf.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/sys/kern/kern_conf.c b/sys/kern/kern_conf.c
index 325c7ef..43c026c 100644
--- a/sys/kern/kern_conf.c
+++ b/sys/kern/kern_conf.c
@@ -357,10 +357,11 @@ remove_dev(dev_t dev)
freedev(dev);
}
-char *
+const char *
devtoname(dev_t dev)
{
char *p;
+ int mynor;
if (dev->si_name[0] == '#' || dev->si_name[0] == '\0') {
p = dev->si_name;
@@ -369,8 +370,11 @@ devtoname(dev_t dev)
else
sprintf(p, "#%d/", major(dev));
p += strlen(p);
- sprintf(p, minor(dev) > 255 ? "0x%x" : "%d", minor(dev));
+ mynor = minor(dev);
+ if (mynor < 0 || mynor > 255)
+ sprintf(p, "%#x", (u_int)mynor);
+ else
+ sprintf(p, "%d", mynor);
}
return (dev->si_name);
}
-
OpenPOWER on IntegriCloud