Module Name: src Committed By: christos Date: Tue Mar 6 22:13:14 UTC 2018
Modified Files: src/sys/arch/emips/stand/common: devopen.c Log Message: fix build, KNF, simplify. To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/sys/arch/emips/stand/common/devopen.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/emips/stand/common/devopen.c diff -u src/sys/arch/emips/stand/common/devopen.c:1.1 src/sys/arch/emips/stand/common/devopen.c:1.2 --- src/sys/arch/emips/stand/common/devopen.c:1.1 Tue Jan 25 20:18:54 2011 +++ src/sys/arch/emips/stand/common/devopen.c Tue Mar 6 17:13:14 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: devopen.c,v 1.1 2011/01/26 01:18:54 pooka Exp $ */ +/* $NetBSD: devopen.c,v 1.2 2018/03/06 22:13:14 christos Exp $ */ /*- * Copyright (c) 1992, 1993 @@ -59,54 +59,53 @@ devopen(struct open_file *f, cp = fname; ncp = device_name; - /* Require the form CTRL/DEVNAME(UNIT,PART)/FILENAME e.g. '0/ace(0,0)/netbsd' '0/tftp(0,0)/netbsd' - */ - - /* get controller number */ - if ((c = *cp) >= '0' && c <= '9') { - ctlr = c - '0'; - c = *++cp; - } else - return (ENXIO); - - if (c != '/') - return (ENXIO); - c = *++cp; - - /* get device name */ - while ((c = *cp) != '\0') { - if ((c == '(') || (c == '/')) { - cp++; - break; - } - if (ncp < device_name + sizeof(device_name) - 1) - *ncp++ = c; - cp++; - } - if (ncp == device_name) - return (ENXIO); - - /* get device number */ - if ((c = *cp) >= '0' && c <= '9') { - unit = c - '0'; - c = *++cp; - } else - return (ENXIO); - - if (c == ',') { - /* get partition number */ - if ((c = *++cp) >= '0' && c <= '9') { - part = c - '0'; - c = *++cp; - } else - return (ENXIO); - } else - return (ENXIO); - - if (c == ')') - cp++; - else - return (ENXIO); + /* + * Require the form CTRL/DEVNAME(UNIT,PART)/FILENAME + * e.g. '0/ace(0,0)/netbsd' '0/tftp(0,0)/netbsd' + */ + + /* get controller number */ + c = *cp++; + if (c < '0' || c > '9') + return ENXIO; + ctlr = c - '0'; + + c = *cp++; + if (c != '/') + return ENXIO; + + /* get device name */ + while ((c = *cp) != '\0') { + if ((c == '(') || (c == '/')) { + cp++; + break; + } + if (ncp < device_name + sizeof(device_name) - 1) + *ncp++ = c; + cp++; + } + if (ncp == device_name) + return ENXIO; + + /* get device number */ + c = *cp++; + if (c < '0' || c > '9') + return ENXIO; + unit = c - '0'; + + c = *cp++; + if (c != ',') + return (ENXIO); + + /* get partition number */ + c = *cp++; + if (c < '0' || c > '9') + return ENXIO; + part = c - '0'; + + c = *cp++; + if (c != ')') + return ENXIO; *ncp = '\0'; @@ -121,7 +120,7 @@ devopen(struct open_file *f, if (dp->dv_name) printf(" %s", dp->dv_name); printf("\n"); - return (ENXIO); + return ENXIO; fnd: #ifdef BOOTNET @@ -132,12 +131,12 @@ fnd: rc = (dp->dv_open)(f, ctlr, unit, part, cp); #endif /* !LIBSA_SINGLE_DEVICE */ if (rc) - return (rc); + return rc; #ifndef LIBSA_SINGLE_DEVICE f->f_dev = dp; #endif if (file && *cp != '\0') *file = (char *)cp; /* XXX */ - return (0); + return 0; }