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)
goto nvmutil_exit;
if (readFromFile(&fd, gbe, FILENAME, flags, SIZE_8KB)
== SIZE_8KB)
{
if (readFromFile(&fd, gbe, FILENAME, flags, SIZE_8KB) != SIZE_8KB)
goto nvmutil_exit;
if (strMac != NULL)
setmac(strMac);
else
@@ -107,7 +107,6 @@ main(int argc, char *argv[])
if (gbeFileModified)
writeGbeFile(&fd, FILENAME);
}
nvmutil_exit:
if (errno == ENOTDIR)
@@ -126,7 +125,9 @@ writeGbeFile(int *fd, const char *filename)
if (pwrite((*fd), gbe, SIZE_8KB, 0) == SIZE_8KB)
close((*fd));
if (errno == 0) {
if (errno != 0)
return;
for (partnum = 0; partnum < 2; partnum++) {
if (nvmPartModified[partnum])
printf("Part %d modified\n", partnum);
@@ -136,7 +137,6 @@ writeGbeFile(int *fd, const char *filename)
}
printf("File `%s` successfully modified\n", filename);
}
}
ssize_t
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)
return;
else if (strnlen(strMac, 20) != 17)
if (strnlen(strMac, 20) != 17)
goto invalid_mac_address;
for (o = 0, random = 0; o < 16; o += 3) {
if (o != 15)
if (strMac[o + 2] != ':')
@@ -214,13 +216,13 @@ setmac(const char *strMac)
byteswap((uint8_t *) &mac[o]);
for (partnum = 0; partnum < 2; partnum++) {
if (validChecksum(partnum)) {
if (!validChecksum(partnum))
continue;
for (o = 0; o < 3; o++)
setWord(o, partnum, mac[o]);
part = partnum;
cmd("setchecksum");
}
}
return;
invalid_mac_address:
fprintf(stderr, "Bad MAC address\n");
@@ -306,13 +308,13 @@ validChecksum(int partnum)
for(w = 0; w <= 0x3F; w++)
total += word(w, partnum);
if (total != 0xBABA) {
if (total == 0xBABA)
return 1;
fprintf(stderr, "WARNING: BAD checksum in part %d\n", partnum);
errno = ECANCELED;
return 0;
}
return 1;
}
uint16_t
word(int pos16, int partnum)