diff options
author | Guilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com> | 2013-12-01 12:43:11 -0700 |
---|---|---|
committer | Tom Rini <trini@ti.com> | 2013-12-13 09:15:32 -0500 |
commit | a804b5ce2d84dca6f9e145003e588876adf2c71f (patch) | |
tree | 60342a722b9322a3672e7edd8d4ee260cbf44cf6 /tools/dumpimage.h | |
parent | f86ed6a8d52c99bb2d17d3cac1647edca0c4399c (diff) | |
download | u-boot-imx-a804b5ce2d84dca6f9e145003e588876adf2c71f.zip u-boot-imx-a804b5ce2d84dca6f9e145003e588876adf2c71f.tar.gz u-boot-imx-a804b5ce2d84dca6f9e145003e588876adf2c71f.tar.bz2 |
Add dumpimage, a tool to extract data from U-Boot images
Given a multi-file image created through the mkimage's -d option:
$ mkimage -A x86 -O linux -T multi -n x86 -d vmlinuz:initrd.img:System.map \
multi.img
Image Name: x86
Created: Thu Jul 25 10:29:13 2013
Image Type: Intel x86 Linux Multi-File Image (gzip compressed)
Data Size: 13722956 Bytes = 13401.32 kB = 13.09 MB
Load Address: 00000000
Entry Point: 00000000
Contents:
Image 0: 4040128 Bytes = 3945.44 kB = 3.85 MB
Image 1: 7991719 Bytes = 7804.41 kB = 7.62 MB
Image 2: 1691092 Bytes = 1651.46 kB = 1.61 MB
It is possible to perform the innverse operation -- extracting any file from
the image -- by using the dumpimage's -i option:
$ dumpimage -i multi.img -p 2 System.map
Although it's feasible to retrieve "data files" from image through scripting,
the requirement to embed tools such 'dd', 'awk' and 'sed' for this sole purpose
is cumbersome and unreliable -- once you must keep track of file sizes inside
the image. Furthermore, extracting data files using "dumpimage" tool is faster
than through scripting.
Signed-off-by: Guilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'tools/dumpimage.h')
-rw-r--r-- | tools/dumpimage.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tools/dumpimage.h b/tools/dumpimage.h new file mode 100644 index 0000000..d78523d --- /dev/null +++ b/tools/dumpimage.h @@ -0,0 +1,33 @@ +/* + * Based on mkimage.c. + * + * Written by Guilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com> + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#ifndef _DUMPIMAGE_H_ +#define _DUMPIMAGE_H_ + +#include "os_support.h" +#include <errno.h> +#include <fcntl.h> +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <sys/stat.h> +#include <time.h> +#include <unistd.h> +#include <sha1.h> +#include "fdt_host.h" +#include "imagetool.h" + +#undef DUMPIMAGE_DEBUG + +#ifdef DUMPIMAGE_DEBUG +#define debug(fmt, args...) printf(fmt, ##args) +#else +#define debug(fmt, args...) +#endif /* DUMPIMAGE_DEBUG */ + +#endif /* _DUMPIMAGE_H_ */ |