From 2569b09dbe60fa39feb0f9b94e1c2b728a0666c0 Mon Sep 17 00:00:00 2001 From: "Markus F.X.J. Oberhumer" Date: Tue, 21 Nov 2006 18:17:51 +0100 Subject: [PATCH] Added debugging option --disable-random-id. --- src/main.cpp | 7 +++++++ src/options.h | 1 + src/packer.cpp | 2 ++ 3 files changed, 10 insertions(+) diff --git a/src/main.cpp b/src/main.cpp index 99c77ed1..d54e4de2 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -603,6 +603,9 @@ static int do_option(int optc, const char *arg) e_optarg(arg); opt->debug.dump_stub_loader = mfx_optarg; break; + case 545: + opt->debug.disable_random_id = true; + break; // misc case 512: @@ -888,6 +891,7 @@ static const struct mfx_option longopts[] = {"dump-stub-loader" ,0x31, 0, 544}, // for internal debugging {"fake-stub-version",0x31, 0, 542}, // for internal debugging {"fake-stub-year" ,0x31, 0, 543}, // for internal debugging + {"disable-random-id",0x10, 0, 545}, // for internal debugging // backup options {"backup", 0x10, 0, 'k'}, @@ -1032,6 +1036,9 @@ static const struct mfx_option longopts[] = {"silent", 0, 0, 'q'}, // quiet mode {"verbose", 0, 0, 'v'}, // verbose mode + // debug options + {"disable-random-id",0x10, 0, 545}, // for internal debugging + // backup options {"backup", 0x10, 0, 'k'}, {"keep", 0x10, 0, 'k'}, diff --git a/src/options.h b/src/options.h index bbf37363..d4038ce2 100644 --- a/src/options.h +++ b/src/options.h @@ -71,6 +71,7 @@ struct options_t { // debug options struct { int debug_level; + bool disable_random_id; // for Packer::getRandomId() const char *dump_stub_loader; char fake_stub_version[4+1]; // for internal debugging char fake_stub_year[4+1]; // for internal debugging diff --git a/src/packer.cpp b/src/packer.cpp index eee80337..1e6d8407 100644 --- a/src/packer.cpp +++ b/src/packer.cpp @@ -575,6 +575,8 @@ void Packer::copyOverlay(OutputFile *fo, unsigned overlay, // Create a pseudo-unique program id. unsigned Packer::getRandomId() const { + if (opt->debug.disable_random_id) + return 0x01020304; unsigned id = 0; #if 0 && defined(__unix__) // Don't consume precious bytes from /dev/urandom.