diff options
| author | Mike Frysinger <vapier@gentoo.org> | 2008-05-01 04:13:05 -0400 | 
|---|---|---|
| committer | Wolfgang Denk <wd@denx.de> | 2008-05-03 23:33:43 +0200 | 
| commit | fa956fde60b7ec4dd66bd62f9910fd341b5049a1 (patch) | |
| tree | cbd40a8c1d8fa8dd3c431c26e9ab4e0b9b840f2c /tools/mkimage.c | |
| parent | 8e90cd0447a0f0ccf529ef86f0e6b56187d3b82a (diff) | |
| download | olio-uboot-2014.01-fa956fde60b7ec4dd66bd62f9910fd341b5049a1.tar.xz olio-uboot-2014.01-fa956fde60b7ec4dd66bd62f9910fd341b5049a1.zip | |
mkimage: make mmap() checks consistent
The mmap() related code is full of inconsistent casts/constants when
it comes to error checking, and may break when building on some
systems (like ones that do not implicitly define the caddr_t type).
Let's just avoid the whole mess by writing the code nice and clean in
the first place.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'tools/mkimage.c')
| -rw-r--r-- | tools/mkimage.c | 22 | 
1 files changed, 9 insertions, 13 deletions
| diff --git a/tools/mkimage.c b/tools/mkimage.c index ea7a826f8..967fe9a77 100644 --- a/tools/mkimage.c +++ b/tools/mkimage.c @@ -28,7 +28,7 @@  extern int errno;  #ifndef MAP_FAILED -#define MAP_FAILED (-1) +#define MAP_FAILED (void *)(-1)  #endif  extern	unsigned long	crc32 (unsigned long crc, const char *buf, unsigned int len); @@ -218,9 +218,8 @@ NXTARG:		;  			exit (EXIT_FAILURE);  		} -		ptr = (unsigned char *)mmap(0, sbuf.st_size, -					    PROT_READ, MAP_SHARED, ifd, 0); -		if ((caddr_t)ptr == (caddr_t)-1) { +		ptr = mmap(0, sbuf.st_size, PROT_READ, MAP_SHARED, ifd, 0); +		if (ptr == MAP_FAILED) {  			fprintf (stderr, "%s: Can't read %s: %s\n",  				cmdname, imagefile, strerror(errno));  			exit (EXIT_FAILURE); @@ -330,9 +329,8 @@ NXTARG:		;  		exit (EXIT_FAILURE);  	} -	ptr = (unsigned char *)mmap(0, sbuf.st_size, -				    PROT_READ|PROT_WRITE, MAP_SHARED, ifd, 0); -	if (ptr == (unsigned char *)MAP_FAILED) { +	ptr = mmap(0, sbuf.st_size, PROT_READ|PROT_WRITE, MAP_SHARED, ifd, 0); +	if (ptr == MAP_FAILED) {  		fprintf (stderr, "%s: Can't map %s: %s\n",  			cmdname, imagefile, strerror(errno));  		exit (EXIT_FAILURE); @@ -410,9 +408,8 @@ copy_file (int ifd, const char *datafile, int pad)  		exit (EXIT_FAILURE);  	} -	ptr = (unsigned char *)mmap(0, sbuf.st_size, -				    PROT_READ, MAP_SHARED, dfd, 0); -	if (ptr == (unsigned char *)MAP_FAILED) { +	ptr = mmap(0, sbuf.st_size, PROT_READ, MAP_SHARED, dfd, 0); +	if (ptr == MAP_FAILED) {  		fprintf (stderr, "%s: Can't read %s: %s\n",  			cmdname, datafile, strerror(errno));  		exit (EXIT_FAILURE); @@ -594,9 +591,8 @@ static void fit_handle_file (void)  		exit (EXIT_FAILURE);  	} -	ptr = (unsigned char *)mmap (0, sbuf.st_size, -			PROT_READ|PROT_WRITE, MAP_SHARED, tfd, 0); -	if ((caddr_t)ptr == (caddr_t)-1) { +	ptr = mmap (0, sbuf.st_size, PROT_READ|PROT_WRITE, MAP_SHARED, tfd, 0); +	if (ptr == MAP_FAILED) {  		fprintf (stderr, "%s: Can't read %s: %s\n",  				cmdname, tmpfile, strerror(errno));  		unlink (tmpfile); |