i386: Separate PROT_EXEC and PROT_WRITE

Also affects some arm and mips (via sharing i386-linux.elf-main.c)
	modified:   i386-linux.elf-entry.S
	modified:   i386-linux.elf-main.c

	also .h, .map, .dump
This commit is contained in:
John Reiser
2017-06-16 08:17:44 -07:00
parent a4c9b64224
commit d67bf16a08
11 changed files with 2178 additions and 2155 deletions
+14 -14
View File
@@ -32,8 +32,8 @@
#define STUB_ARMEB_V4A_LINUX_ELF_FOLD_SIZE 2824
#define STUB_ARMEB_V4A_LINUX_ELF_FOLD_ADLER32 0x31d08fd5
#define STUB_ARMEB_V4A_LINUX_ELF_FOLD_CRC32 0x7af4ab60
#define STUB_ARMEB_V4A_LINUX_ELF_FOLD_ADLER32 0xae278fee
#define STUB_ARMEB_V4A_LINUX_ELF_FOLD_CRC32 0xdbda4341
unsigned char stub_armeb_v4a_linux_elf_fold[2824] = {
/* 0x0000 */ 127, 69, 76, 70, 1, 2, 1, 97, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -124,9 +124,9 @@ unsigned char stub_armeb_v4a_linux_elf_fold[2824] = {
/* 0x0550 */ 225,160, 0, 5,229,148, 16, 4,235,255,255,155,229,157, 48, 4,
/* 0x0560 */ 232,148, 0, 6,224,130, 32, 3,224, 99, 16, 1,232,132, 0, 6,
/* 0x0570 */ 229,148, 48, 0,227, 83, 0, 0, 26,255,255,178,226,141,208, 20,
/* 0x0580 */ 232,189,128,240, 33, 88, 80, 85,233, 45, 79,240,225,160,144, 1,
/* 0x0590 */ 225,217,193,176,229,145, 16, 28,225,217,226,188,226, 77,208, 52,
/* 0x05a0 */ 227, 92, 0, 2,224,137, 96, 1,229,141, 0, 20, 3,160, 80, 16,
/* 0x0580 */ 232,189,128,240, 33, 88, 80, 85,233, 45, 79,240,225,160,160, 1,
/* 0x0590 */ 225,218,193,176,229,145, 16, 28,225,218,226,188,226, 77,208, 52,
/* 0x05a0 */ 227, 92, 0, 2,224,138, 96, 1,229,141, 0, 20, 3,160, 80, 16,
/* 0x05b0 */ 19,160, 80, 0,226, 78,224, 1,225,160, 16, 6,227,224, 0, 0,
/* 0x05c0 */ 227,160,192, 0,229,141, 32, 16,229,141, 48, 12,234, 0, 0, 13,
/* 0x05d0 */ 229,145, 48, 0,227, 83, 0, 1, 26, 0, 0, 8,229,145, 48, 20,
@@ -149,15 +149,15 @@ unsigned char stub_armeb_v4a_linux_elf_fold[2824] = {
/* 0x06e0 */ 225,160, 67, 50,229,157,192, 24,229, 21, 48, 24,229,157, 16, 16,
/* 0x06f0 */ 224,140,176, 3,225,160, 42, 11,229, 21, 48, 16,225,160, 42, 34,
/* 0x0700 */ 227, 81, 0, 0,229,141, 48, 44,229,141,176, 48,224,131,128, 2,
/* 0x0710 */ 226, 4,160, 7,224, 98, 96, 11, 10, 0, 0, 15,225,160, 0, 6,
/* 0x0720 */ 225,160, 16, 8,227,138, 32, 2,227,160, 48, 16,235,255,254,255,
/* 0x0710 */ 226, 4,144, 7,224, 98, 96, 11, 10, 0, 0, 15,225,160, 0, 6,
/* 0x0720 */ 225,160, 16, 8,227,160, 32, 3,227,160, 48, 16,235,255,254,255,
/* 0x0730 */ 225, 86, 0, 0, 19,160, 0, 6, 26, 0, 0, 20,229,157, 32, 92,
/* 0x0740 */ 226, 20, 48, 4, 17,160, 48, 2,229,157, 0, 16,226,141, 16, 44,
/* 0x0750 */ 229,157, 32, 20,235,255,255, 52,234, 0, 0, 13,229, 21,192, 28,
/* 0x0760 */ 224, 98,192, 12,229,141,192, 4,229,157,192, 20,225,160, 0, 6,
/* 0x0770 */ 225,160, 16, 8,225,160, 32, 10,227,160, 48, 18,229,141,192, 0,
/* 0x0770 */ 225,160, 16, 8,225,160, 32, 9,227,160, 48, 18,229,141,192, 0,
/* 0x0780 */ 235,255,254,223,225, 86, 0, 0, 10, 0, 0, 1,227,160, 0, 8,
/* 0x0790 */ 235,255,255, 11,226,104, 48, 0,225,160,122, 3,227, 26, 0, 2,
/* 0x0790 */ 235,255,255, 11,226,104, 48, 0,225,160,122, 3,227, 25, 0, 2,
/* 0x07a0 */ 225,160,122, 39, 10, 0, 0, 7,227, 87, 0, 0, 10, 0, 0, 5,
/* 0x07b0 */ 224,134, 16, 8,225,160, 32, 7,227,160, 48, 0,226, 82, 32, 1,
/* 0x07c0 */ 228,193, 48, 1, 26,255,255,251,229,157, 16, 16,227, 81, 0, 0,
@@ -169,18 +169,18 @@ unsigned char stub_armeb_v4a_linux_elf_fold[2824] = {
/* 0x0820 */ 225,160, 58, 35,227, 83, 0, 7,154, 0, 0, 56,229,159, 48,252,
/* 0x0830 */ 229,132, 0, 0,226,132, 16, 8,225,160, 0, 4,229,132, 48, 4,
/* 0x0840 */ 235,255,254,172,229,157, 0, 12,225,160, 32, 4,227,160, 16, 0,
/* 0x0850 */ 235,255,254,211,225,160, 0, 6,225,160, 16, 8,225,160, 32, 10,
/* 0x0850 */ 235,255,254,211,225,160, 0, 6,225,160, 16, 8,225,160, 32, 9,
/* 0x0860 */ 235,255,254,162,227, 80, 0, 0, 19,160, 0, 10, 26,255,255,199,
/* 0x0870 */ 229,157,192, 8,224,136, 48, 7,224,139, 16, 12,224,134, 64, 3,
/* 0x0880 */ 225, 84, 0, 1, 42, 0, 0, 7,224,100, 16, 1,225,160, 32, 10,
/* 0x0880 */ 225, 84, 0, 1, 42, 0, 0, 7,224,100, 16, 1,225,160, 32, 9,
/* 0x0890 */ 225,160, 0, 4,227,160, 48, 16,235,255,254,164,225, 84, 0, 0,
/* 0x08a0 */ 19,160, 0, 9, 26,255,255,185,229,157, 16, 28,226,129, 16, 1,
/* 0x08b0 */ 229,141, 16, 28,226,133, 80, 32,225,217, 50,188,229,157, 32, 28,
/* 0x08b0 */ 229,141, 16, 28,226,133, 80, 32,225,218, 50,188,229,157, 32, 28,
/* 0x08c0 */ 225, 82, 0, 3,186,255,255,109,229,157, 48, 16,227, 83, 0, 0,
/* 0x08d0 */ 10, 0, 0, 5,225,217, 49,176,227, 83, 0, 3, 21,157,192, 32,
/* 0x08d0 */ 10, 0, 0, 5,225,218, 49,176,227, 83, 0, 3, 21,157,192, 32,
/* 0x08e0 */ 21,157, 16, 40, 16,140, 0, 1, 27,255,254,122,229,157, 32, 88,
/* 0x08f0 */ 227, 82, 0, 0, 21,157, 48, 24, 21,130, 48, 0,229,157, 16, 24,
/* 0x0900 */ 229,153, 0, 24,224,129, 0, 0,226,141,208, 52,232,189,143,240,
/* 0x0900 */ 229,154, 0, 24,224,129, 0, 0,226,141,208, 52,232,189,143,240,
/* 0x0910 */ 229, 21, 48, 28,227, 83, 0, 0, 5,157,192, 36, 0,129, 48, 12,
/* 0x0920 */ 2,131, 64, 8, 10,255,255,192,234,255,255,201,115, 81, 98, 64,
/* 0x0930 */ 225,160,240, 14,233, 45, 69,240,226, 77,208, 12,229,157, 96, 44,