@ -27,7 +27,7 @@
extern unsigned long crc32 ( unsigned long crc , const char * buf , unsigned int len ) ;
static void copy_file ( int , const char * , int ) ;
static void usage ( void ) ;
static void image_verify_header ( char * , int ) ;
static int image_verify_header ( char * , int ) ;
static void fit_handle_file ( void ) ;
char * datafile ;
@ -59,6 +59,7 @@ main (int argc, char **argv)
struct stat sbuf ;
unsigned char * ptr ;
char * name = " " ;
int retval ;
cmdname = * argv ;
@ -218,24 +219,24 @@ NXTARG: ;
exit ( EXIT_FAILURE ) ;
}
if ( fdt_check_header ( ptr ) ) {
/* old-style image */
image_verify_header ( ( char * ) ptr , sbuf . st_size ) ;
image_print_contents ( ( image_header_t * ) ptr ) ;
} else {
if ( ! ( retval = fdt_check_header ( ptr ) ) ) {
/* FIT image */
fit_print_contents ( ptr ) ;
} else if ( ! ( retval = image_verify_header ( ( char * ) ptr ,
sbuf . st_size ) ) ) {
/* old-style image */
image_print_contents ( ( image_header_t * ) ptr ) ;
}
( void ) munmap ( ( void * ) ptr , sbuf . st_size ) ;
( void ) close ( ifd ) ;
exit ( EXIT_SUCCESS ) ;
exit ( retval ) ;
} else if ( fflag ) {
/* Flattened Image Tree (FIT) format handling */
debug ( " FIT format handling \n " ) ;
fit_handle_file ( ) ;
exit ( EXIT_SUCCESS ) ;
exit ( retval ) ;
}
/*
@ -479,7 +480,7 @@ usage ()
exit ( EXIT_FAILURE ) ;
}
static void
static int
image_verify_header ( char * ptr , int image_size )
{
int len ;
@ -499,7 +500,7 @@ image_verify_header (char *ptr, int image_size)
fprintf ( stderr ,
" %s: Bad Magic Number: \" %s \" is no valid image \n " ,
cmdname , imagefile ) ;
exit ( EXIT_FAILURE ) ;
return - FDT_ERR_BADMAGIC ;
}
data = ( char * ) hdr ;
@ -512,7 +513,7 @@ image_verify_header (char *ptr, int image_size)
fprintf ( stderr ,
" %s: ERROR: \" %s \" has bad header checksum! \n " ,
cmdname , imagefile ) ;
exit ( EXIT_FAILURE ) ;
return - FDT_ERR_BADSTATE ;
}
data = ptr + sizeof ( image_header_t ) ;
@ -522,8 +523,9 @@ image_verify_header (char *ptr, int image_size)
fprintf ( stderr ,
" %s: ERROR: \" %s \" has corrupted data! \n " ,
cmdname , imagefile ) ;
exit ( EXIT_FAILURE ) ;
return - FDT_ERR_BADSTRUCTURE ;
}
return 0 ;
}
/**