diff options
Diffstat (limited to 'kernel/xpp/utils/test_parse.c')
-rw-r--r-- | kernel/xpp/utils/test_parse.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/kernel/xpp/utils/test_parse.c b/kernel/xpp/utils/test_parse.c new file mode 100644 index 0000000..8ac2023 --- /dev/null +++ b/kernel/xpp/utils/test_parse.c @@ -0,0 +1,35 @@ +#include <stdio.h> +#include <stdarg.h> +#include "hexfile.h" + +static void default_report_func(int level, const char *msg, ...) +{ + va_list ap; + + va_start(ap, msg); + vfprintf(stderr, msg, ap); + va_end(ap); +} + +int main(int argc, char *argv[]) +{ + struct hexdata *hd; + int i; + + if(argc < 2) { + fprintf(stderr, "Usage: program hexfile...\n"); + return 1; + } + parse_hexfile_set_reporting(default_report_func); + for(i = 1; i < argc; i++) { + hd = parse_hexfile(argv[i], 2000); + if(!hd) { + fprintf(stderr, "Parsing failed\n"); + return 1; + } + fprintf(stderr, "=== %s === (version: %s)\n", argv[i], hd->version_info); + dump_hexfile2(hd, "-", 60 ); + free_hexdata(hd); + } + return 0; +} |