util/nvmutil: re-factor to reduce code indentation

This commit is contained in:
Leah Rowe
2022-11-26 11:26:07 +00:00
parent 0bbd4f1f26
commit 0ae00e881e
+14 -12
View File
@@ -97,9 +97,9 @@ main(int argc, char *argv[])
if (errno != 0) if (errno != 0)
goto nvmutil_exit; goto nvmutil_exit;
if (readFromFile(&fd, gbe, FILENAME, flags, SIZE_8KB) if (readFromFile(&fd, gbe, FILENAME, flags, SIZE_8KB) != SIZE_8KB)
== SIZE_8KB) goto nvmutil_exit;
{
if (strMac != NULL) if (strMac != NULL)
setmac(strMac); setmac(strMac);
else else
@@ -107,7 +107,6 @@ main(int argc, char *argv[])
if (gbeFileModified) if (gbeFileModified)
writeGbeFile(&fd, FILENAME); writeGbeFile(&fd, FILENAME);
}
nvmutil_exit: nvmutil_exit:
if (errno == ENOTDIR) if (errno == ENOTDIR)
@@ -126,7 +125,9 @@ writeGbeFile(int *fd, const char *filename)
if (pwrite((*fd), gbe, SIZE_8KB, 0) == SIZE_8KB) if (pwrite((*fd), gbe, SIZE_8KB, 0) == SIZE_8KB)
close((*fd)); close((*fd));
if (errno == 0) { if (errno != 0)
return;
for (partnum = 0; partnum < 2; partnum++) { for (partnum = 0; partnum < 2; partnum++) {
if (nvmPartModified[partnum]) if (nvmPartModified[partnum])
printf("Part %d modified\n", partnum); printf("Part %d modified\n", partnum);
@@ -136,7 +137,6 @@ writeGbeFile(int *fd, const char *filename)
} }
printf("File `%s` successfully modified\n", filename); printf("File `%s` successfully modified\n", filename);
} }
}
ssize_t ssize_t
readFromFile(int *fd, uint8_t *buf, const char *path, int flags, size_t size) readFromFile(int *fd, uint8_t *buf, const char *path, int flags, size_t size)
@@ -171,8 +171,10 @@ setmac(const char *strMac)
if (readFromFile(&macfd, rmac, "/dev/urandom", O_RDONLY, 12) != 12) if (readFromFile(&macfd, rmac, "/dev/urandom", O_RDONLY, 12) != 12)
return; return;
else if (strnlen(strMac, 20) != 17)
if (strnlen(strMac, 20) != 17)
goto invalid_mac_address; goto invalid_mac_address;
for (o = 0, random = 0; o < 16; o += 3) { for (o = 0, random = 0; o < 16; o += 3) {
if (o != 15) if (o != 15)
if (strMac[o + 2] != ':') if (strMac[o + 2] != ':')
@@ -214,13 +216,13 @@ setmac(const char *strMac)
byteswap((uint8_t *) &mac[o]); byteswap((uint8_t *) &mac[o]);
for (partnum = 0; partnum < 2; partnum++) { for (partnum = 0; partnum < 2; partnum++) {
if (validChecksum(partnum)) { if (!validChecksum(partnum))
continue;
for (o = 0; o < 3; o++) for (o = 0; o < 3; o++)
setWord(o, partnum, mac[o]); setWord(o, partnum, mac[o]);
part = partnum; part = partnum;
cmd("setchecksum"); cmd("setchecksum");
} }
}
return; return;
invalid_mac_address: invalid_mac_address:
fprintf(stderr, "Bad MAC address\n"); fprintf(stderr, "Bad MAC address\n");
@@ -306,13 +308,13 @@ validChecksum(int partnum)
for(w = 0; w <= 0x3F; w++) for(w = 0; w <= 0x3F; w++)
total += word(w, partnum); total += word(w, partnum);
if (total != 0xBABA) { if (total == 0xBABA)
return 1;
fprintf(stderr, "WARNING: BAD checksum in part %d\n", partnum); fprintf(stderr, "WARNING: BAD checksum in part %d\n", partnum);
errno = ECANCELED; errno = ECANCELED;
return 0; return 0;
} }
return 1;
}
uint16_t uint16_t
word(int pos16, int partnum) word(int pos16, int partnum)