summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmaury Pouly <pamaury@rockbox.org>2011-06-09 09:39:21 +0000
committerAmaury Pouly <pamaury@rockbox.org>2011-06-09 09:39:21 +0000
commit4cfb5da35b196251e0f55aa745b750a3569750bd (patch)
tree604b0fc1ba24f58f639c70bb76670a69296df43c
parent2d2246ed7d9da43948ec9282323189a7c25da8c7 (diff)
downloadrockbox-4cfb5da35b196251e0f55aa745b750a3569750bd.tar.gz
rockbox-4cfb5da35b196251e0f55aa745b750a3569750bd.zip
sbtools: always check the result of getenv against NULL, use strcasecmp instead of strcmp more greater flexibility
Thanks TheLemonMan for spotting that. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29989 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--utils/sbtools/elftosb.c9
-rw-r--r--utils/sbtools/sbtoelf.c12
2 files changed, 17 insertions, 4 deletions
diff --git a/utils/sbtools/elftosb.c b/utils/sbtools/elftosb.c
index 1b47cb58a0..3d53fb76d5 100644
--- a/utils/sbtools/elftosb.c
+++ b/utils/sbtools/elftosb.c
@@ -32,6 +32,7 @@
32#include <ctype.h> 32#include <ctype.h>
33#include <time.h> 33#include <time.h>
34#include <stdarg.h> 34#include <stdarg.h>
35#include <strings.h>
35 36
36#include "crypto.h" 37#include "crypto.h"
37#include "elf.h" 38#include "elf.h"
@@ -48,6 +49,12 @@ bool g_debug = false;
48 * Misc 49 * Misc
49 */ 50 */
50 51
52char *s_getenv(const char *name)
53{
54 char *s = getenv(name);
55 return s ? s : "";
56}
57
51void generate_random_data(void *buf, size_t sz) 58void generate_random_data(void *buf, size_t sz)
52{ 59{
53 static int rand_fd = -1; 60 static int rand_fd = -1;
@@ -968,7 +975,7 @@ int main(int argc, const char **argv)
968 return 1; 975 return 1;
969 } 976 }
970 977
971 if(getenv("SB_DEBUG") != NULL && strcmp(getenv("SB_DEBUG"), "YES") == 0) 978 if(strcasecmp(s_getenv("SB_DEBUG"), "YES") == 0)
972 g_debug = true; 979 g_debug = true;
973 980
974 g_key_array = read_keys(argv[2], &g_nr_keys); 981 g_key_array = read_keys(argv[2], &g_nr_keys);
diff --git a/utils/sbtools/sbtoelf.c b/utils/sbtools/sbtoelf.c
index 52d7179f2e..854af2851e 100644
--- a/utils/sbtools/sbtoelf.c
+++ b/utils/sbtools/sbtoelf.c
@@ -38,6 +38,7 @@
38#include <string.h> 38#include <string.h>
39#include <ctype.h> 39#include <ctype.h>
40#include <time.h> 40#include <time.h>
41#include <strings.h>
41 42
42#include "crypto.h" 43#include "crypto.h"
43#include "elf.h" 44#include "elf.h"
@@ -76,6 +77,12 @@ uint8_t *g_buf; /* file content */
76char out_prefix[PREFIX_SIZE]; 77char out_prefix[PREFIX_SIZE];
77const char *key_file; 78const char *key_file;
78 79
80char *s_getenv(const char *name)
81{
82 char *s = getenv(name);
83 return s ? s : "";
84}
85
79void *xmalloc(size_t s) /* malloc helper, used in elf.c */ 86void *xmalloc(size_t s) /* malloc helper, used in elf.c */
80{ 87{
81 void * r = malloc(s); 88 void * r = malloc(s);
@@ -338,7 +345,7 @@ static void extract(unsigned long filesize)
338 if(sb_header->header_size * BLOCK_SIZE != sizeof(struct sb_header_t)) 345 if(sb_header->header_size * BLOCK_SIZE != sizeof(struct sb_header_t))
339 bugp("Bad header size"); 346 bugp("Bad header size");
340 if((sb_header->major_ver != IMAGE_MAJOR_VERSION || 347 if((sb_header->major_ver != IMAGE_MAJOR_VERSION ||
341 sb_header->minor_ver != IMAGE_MINOR_VERSION) && strcmp(getenv("SB_IGNORE_VER"), "YES")) 348 sb_header->minor_ver != IMAGE_MINOR_VERSION) && strcasecmp(s_getenv("SB_IGNORE_VER"), "YES"))
342 bugp("Bad file format version"); 349 bugp("Bad file format version");
343 if(sb_header->sec_hdr_size * BLOCK_SIZE != sizeof(struct sb_section_header_t)) 350 if(sb_header->sec_hdr_size * BLOCK_SIZE != sizeof(struct sb_section_header_t))
344 bugp("Bad section header size"); 351 bugp("Bad section header size");
@@ -497,8 +504,7 @@ static void extract(unsigned long filesize)
497 } 504 }
498 505
499 /* sections */ 506 /* sections */
500 char *raw_cmd_env = getenv("SB_RAW_CMD"); 507 if(strcasecmp(s_getenv("SB_RAW_CMD"), "YES") != 0)
501 if(raw_cmd_env == NULL || strcmp(raw_cmd_env, "YES") != 0)
502 { 508 {
503 color(BLUE); 509 color(BLUE);
504 printf("Sections\n"); 510 printf("Sections\n");