diff options
author | Ray Lai <ray@cvs.openbsd.org> | 2006-11-02 18:07:57 +0000 |
---|---|---|
committer | Ray Lai <ray@cvs.openbsd.org> | 2006-11-02 18:07:57 +0000 |
commit | 138ead7438fe72153bca849c30d8f09c94e7e301 (patch) | |
tree | a4cdc5197f8bd0853f5e641605bcec55de2fb2a2 | |
parent | f39197de2293320b3149c5e030e37b9a7a3575c9 (diff) |
Check for newline before truncating.
OK moritz@.
-rw-r--r-- | sbin/raidctl/rf_configure.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/sbin/raidctl/rf_configure.c b/sbin/raidctl/rf_configure.c index a69507437f9..ca463dd1b75 100644 --- a/sbin/raidctl/rf_configure.c +++ b/sbin/raidctl/rf_configure.c @@ -1,4 +1,4 @@ -/* $OpenBSD: rf_configure.c,v 1.12 2004/07/17 02:14:33 deraadt Exp $ */ +/* $OpenBSD: rf_configure.c,v 1.13 2006/11/02 18:07:56 ray Exp $ */ /* $NetBSD: rf_configure.c,v 1.14 2001/02/04 21:05:42 christos Exp $ */ /* @@ -332,9 +332,9 @@ rf_MakeLayoutSpecificDeclustered(FILE *configfp, RF_Config_t *cfgPtr, void *arg) "Can't find block design file name in config file\n")) return(EINVAL); bdfile = rf_find_non_white(buf); - if (bdfile[strlen(bdfile)-1] == '\n') { + if ((p = strchr(bdfile, '\n')) != NULL) { /* strip newline char */ - bdfile[strlen(bdfile)-1] = '\0'; + *p = '\0'; } /* open bd file, check validity of configuration */ if ((fp = fopen(bdfile,"r"))==NULL) { @@ -359,9 +359,9 @@ rf_MakeLayoutSpecificDeclustered(FILE *configfp, RF_Config_t *cfgPtr, void *arg) "Can't find sparemap file name in config file\n")) return(EINVAL); smname = rf_find_non_white(smbuf); - if (smname[strlen(smname)-1] == '\n') { + if ((p = strchr(smname, '\n')) != NULL) { /* strip newline char */ - smname[strlen(smname)-1] = '\0'; + *p = '\0'; } } else { smbuf[0] = '\0'; @@ -493,7 +493,7 @@ rf_ReadSpareTable(RF_SparetWait_t *req, char *fname) { int i, j, numFound, linecount, tableNum, tupleNum, spareDisk, spareBlkOffset; - char buf[1024], targString[100], errString[100]; + char buf[1024], targString[100], errString[100], *p; RF_SpareTableEntry_t **table; FILE *fp; @@ -519,8 +519,8 @@ rf_ReadSpareTable(RF_SparetWait_t *req, char *fname) if (rf_get_next_nonblank_line(buf, 1024, fp, "Invalid sparemap file: can't find header line\n")) return(NULL); - if (buf[strlen(buf)-1] == '\n') - buf[strlen(buf)-1] = '\0'; + if ((p = strchr(buf, '\n')) != NULL) + *p = '\0'; snprintf(targString, sizeof targString, "fdisk %d\n", req->fcol); snprintf(errString, sizeof errString, |