Index: bsdlabel.c =================================================================== RCS file: /private/FreeBSD/src/sbin/bsdlabel/bsdlabel.c,v retrieving revision 1.109 diff -u -p -r1.109 bsdlabel.c --- bsdlabel.c 9 Sep 2004 07:46:53 -0000 1.109 +++ bsdlabel.c 5 Jan 2005 13:45:09 -0000 @@ -223,8 +223,9 @@ main(int argc, char *argv[]) dkname = argv[0]; asprintf(&specname, "%s%s", _PATH_DEV, argv[0]); } else { - dkname = strrchr(argv[0], '/'); - dkname++; + if (strlen(argv[0]) <= strlen(_PATH_DEV)) + errx(1, "invalid disk name"); + dkname = argv[0] + strlen(_PATH_DEV); specname = argv[0]; }