From 5827937270bac874ae9e04679b3130fef9e306c4 Mon Sep 17 00:00:00 2001 From: Amaury Pouly Date: Sun, 6 Nov 2011 01:49:13 +0000 Subject: sbtools: rename to imxtools, move imx_hid_recovery to imxtools/sbloader, fix tools to correctly handle/free memory, properly return error codes git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30907 a1c6a512-1295-4272-9138-f99709370657 --- utils/imxtools/misc.h | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 utils/imxtools/misc.h (limited to 'utils/imxtools/misc.h') diff --git a/utils/imxtools/misc.h b/utils/imxtools/misc.h new file mode 100644 index 0000000000..b0b7dfeba6 --- /dev/null +++ b/utils/imxtools/misc.h @@ -0,0 +1,59 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * $Id$ + * + * Copyright (C) 2010 Amaury Pouly + * + * 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 2 + * of the License, or (at your option) any later version. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ +#ifndef __MISC_H__ +#define __MISC_H__ + +#include +#include "crypto.h" + +#define _STR(a) #a +#define STR(a) _STR(a) + +#define bug(...) do { fprintf(stderr,"["__FILE__":"STR(__LINE__)"]ERROR: "__VA_ARGS__); exit(1); } while(0) +#define bugp(...) do { fprintf(stderr, __VA_ARGS__); perror(" "); exit(1); } while(0) + +#define ROUND_UP(val, round) ((((val) + (round) - 1) / (round)) * (round)) + +extern bool g_debug; + +typedef struct crypto_key_t *key_array_t; +int g_nr_keys; +key_array_t g_key_array; + +void *memdup(void *p, size_t len); +void *augment_array(void *arr, size_t elem_sz, size_t cnt, void *aug, size_t aug_cnt); +void generate_random_data(void *buf, size_t sz); +void *xmalloc(size_t s); +int convxdigit(char digit, byte *val); +void print_hex(byte *data, int len, bool newline); +void add_keys(key_array_t ka, int kac); +bool parse_key(char **str, struct crypto_key_t *key); +void add_keys_from_file(const char *key_file); +void print_key(struct crypto_key_t *key, bool newline); +void clear_keys(); + +typedef char color_t[]; + +extern color_t OFF, GREY, RED, GREEN, YELLOW, BLUE; +void color(color_t c); +void enable_color(bool enable); + +#endif /* __MISC_H__ */ -- cgit v1.2.3