/* dump.c */
/*
This file is part of the ARM-Crypto-Lib.
Copyright (C) 2006-2010 Daniel Otte (daniel.otte@rub.de)
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see .
*/
/**
* \file dump.c
* \email daniel.otte@rub.de
* \author Daniel Otte
* \date 2009-02-04
* \license GPLv3 or later
*
*/
#include
#include
#include
#include
#include "cli.h"
#include "string-extras.h"
#define DUMP_WIDTH 16
static
void dump_chars(uint8_t* buffer, uint8_t len){
uint8_t i;
cli_putc('|');
for(i=0; iDUMP_WIDTH)?DUMP_WIDTH:size;
memcpy(buffer, (void*)addr, readlen);
print_aligned(addr, 6);
cli_putstr(": ");
cli_hexdump2(buffer, readlen);
t=(DUMP_WIDTH-readlen)*3;
while(t--){
cli_putc(' ');
}
cli_putc('\t');
dump_chars(buffer,readlen);
addr+=readlen;
size-=readlen;
cli_putstr("\r\n");
}
}