diff options
| -rw-r--r-- | util/nvmutil/nvmutil.c | 28 | 
1 files changed, 9 insertions, 19 deletions
| diff --git a/util/nvmutil/nvmutil.c b/util/nvmutil/nvmutil.c index d68585a5..c8bd829f 100644 --- a/util/nvmutil/nvmutil.c +++ b/util/nvmutil/nvmutil.c @@ -62,7 +62,7 @@ size_t gbe[2];  uint8_t skipread[2] = {0, 0};  int part, gbeFileModified = 0; -uint8_t nvmPartModified[2]; +uint8_t nvmPartModified[2] = {0, 0};  uint16_t test;  uint8_t little_endian; @@ -70,11 +70,9 @@ uint8_t little_endian;  int  main(int argc, char *argv[])  { -	int fd;  	size_t nr = 128; -	int flags = O_RDWR; -	char *strMac = NULL; -	char *strRMac = "??:??:??:??:??:??"; +	int fd, flags = O_RDWR; +	char *strMac = NULL, *strRMac = "??:??:??:??:??:??";  	void (*cmd)(void) = NULL;  #ifdef HAVE_PLEDGE @@ -84,11 +82,7 @@ main(int argc, char *argv[])  	if ((buf = (uint8_t *) malloc(SIZE_8KB)) == NULL)  		err(errno, NULL); -	gbe[0] = gbe[1] = (size_t) buf; -	gbe[1] += SIZE_4KB; - -	nvmPartModified[0] = 0; -	nvmPartModified[1] = 0; +	gbe[1] = (gbe[0] = (size_t) buf) + SIZE_4KB;  	test = 1;  	little_endian = ((uint8_t *) &test)[0]; @@ -141,19 +135,17 @@ main(int argc, char *argv[])  		writeGbeFile(&fd, FILENAME);  nvmutil_exit: -	if (!((errno == ECANCELED) && (flags == O_RDONLY))) -		if (errno != 0) -			err(errno, NULL); - -	return errno; +	if ((errno != 0) && (cmd != &cmd_dump)) +		err(errno, NULL); +	else +		return errno;  }  void  readGbeFile(int *fd, const char *path, int flags, size_t nr)  {  	struct stat st; -	int r, tr = 0; -	int p; +	int p, r, tr = 0;  	if (opendir(path) != NULL)  		err(errno = EISDIR, path); @@ -463,8 +455,6 @@ writeGbeFile(int *fd, const char *filename)  	}  	if (close((*fd)))  		err(errno, "%s", filename); -	if (errno != 0) -		err(errno, "%s", filename);  	printf("%d bytes written to file: `%s`\n", tw, filename);  } | 
