Date: Sat, 28 Jul 2007 21:01:32 GMT From: Peter Wemm <peter@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 124283 for review Message-ID: <200707282101.l6SL1WWG093481@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=124283 Change 124283 by peter@peter_daintree on 2007/07/28 21:00:32 Hack. take explicit card:port rather than decode /dev device names. Affected files ... .. //depot/projects/hammer/usr.sbin/sicontrol/sicontrol.c#4 edit Differences ... ==== //depot/projects/hammer/usr.sbin/sicontrol/sicontrol.c#4 (text+ko) ==== @@ -150,22 +150,14 @@ alldev = 1; } else { sidev_t dev; - struct stat st; + int n; + int card, port; - if (strchr(Devname, '/') == NULL) { - char *acp = malloc(6 + strlen(Devname)); - strcpy(acp, _PATH_DEV); - strcat(acp, Devname); - Devname = acp; - } - if (stat(Devname, &st) < 0) - errx(1, "can't stat %s", Devname); -#if 0 - dev.sid_card = SI_CARD(minor(st.st_rdev)); - dev.sid_port = SI_PORT(minor(st.st_rdev)); -#else - errx(1, "Sorry, code missing to parse device name into card/port"); -#endif + n = sscanf(Devname, "%d:%d", &card, &port); + if (n != 2) + errx(1, "Devname must be in form card:port. eg: 0:7"); + dev.sid_card = card; + dev.sid_port = port; tc.tc_dev = dev; } ctlfd = opencontrol();
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200707282101.l6SL1WWG093481>
