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_ARM_V4A_LINUX_ELF_FOLD_SIZE 2824
#define STUB_ARM_V4A_LINUX_ELF_FOLD_ADLER32 0x68c18fd3
#define STUB_ARM_V4A_LINUX_ELF_FOLD_CRC32 0xfd352a4c
#define STUB_ARM_V4A_LINUX_ELF_FOLD_ADLER32 0xe4f78fec
#define STUB_ARM_V4A_LINUX_ELF_FOLD_CRC32 0xded7c3f2
unsigned char stub_arm_v4a_linux_elf_fold[2824] = {
/* 0x0000 */ 127, 69, 76, 70, 1, 1, 1, 97, 0, 0, 0, 0, 0, 0, 0, 0,
@@ -124,9 +124,9 @@ unsigned char stub_arm_v4a_linux_elf_fold[2824] = {
/* 0x0550 */ 5, 0,160,225, 4, 16,148,229,155,255,255,235, 4, 48,157,229,
/* 0x0560 */ 6, 0,148,232, 3, 32,130,224, 1, 16, 99,224, 6, 0,132,232,
/* 0x0570 */ 0, 48,148,229, 0, 0, 83,227,178,255,255, 26, 20,208,141,226,
/* 0x0580 */ 240,128,189,232, 85, 80, 88, 33,240, 79, 45,233, 1,144,160,225,
/* 0x0590 */ 176,193,217,225, 28, 16,145,229,188,226,217,225, 52,208, 77,226,
/* 0x05a0 */ 2, 0, 92,227, 1, 96,137,224, 20, 0,141,229, 16, 80,160, 3,
/* 0x0580 */ 240,128,189,232, 85, 80, 88, 33,240, 79, 45,233, 1,160,160,225,
/* 0x0590 */ 176,193,218,225, 28, 16,145,229,188,226,218,225, 52,208, 77,226,
/* 0x05a0 */ 2, 0, 92,227, 1, 96,138,224, 20, 0,141,229, 16, 80,160, 3,
/* 0x05b0 */ 0, 80,160, 19, 1,224, 78,226, 6, 16,160,225, 0, 0,224,227,
/* 0x05c0 */ 0,192,160,227, 16, 32,141,229, 12, 48,141,229, 13, 0, 0,234,
/* 0x05d0 */ 0, 48,145,229, 1, 0, 83,227, 8, 0, 0, 26, 20, 48,145,229,
@@ -149,15 +149,15 @@ unsigned char stub_arm_v4a_linux_elf_fold[2824] = {
/* 0x06e0 */ 50, 67,160,225, 24,192,157,229, 24, 48, 21,229, 16, 16,157,229,
/* 0x06f0 */ 3,176,140,224, 11, 42,160,225, 16, 48, 21,229, 34, 42,160,225,
/* 0x0700 */ 0, 0, 81,227, 44, 48,141,229, 48,176,141,229, 2,128,131,224,
/* 0x0710 */ 7,160, 4,226, 11, 96, 98,224, 15, 0, 0, 10, 6, 0,160,225,
/* 0x0720 */ 8, 16,160,225, 2, 32,138,227, 16, 48,160,227,255,254,255,235,
/* 0x0710 */ 7,144, 4,226, 11, 96, 98,224, 15, 0, 0, 10, 6, 0,160,225,
/* 0x0720 */ 8, 16,160,225, 3, 32,160,227, 16, 48,160,227,255,254,255,235,
/* 0x0730 */ 0, 0, 86,225, 6, 0,160, 19, 20, 0, 0, 26, 92, 32,157,229,
/* 0x0740 */ 4, 48, 20,226, 2, 48,160, 17, 16, 0,157,229, 44, 16,141,226,
/* 0x0750 */ 20, 32,157,229, 52,255,255,235, 13, 0, 0,234, 28,192, 21,229,
/* 0x0760 */ 12,192, 98,224, 4,192,141,229, 20,192,157,229, 6, 0,160,225,
/* 0x0770 */ 8, 16,160,225, 10, 32,160,225, 18, 48,160,227, 0,192,141,229,
/* 0x0770 */ 8, 16,160,225, 9, 32,160,225, 18, 48,160,227, 0,192,141,229,
/* 0x0780 */ 223,254,255,235, 0, 0, 86,225, 1, 0, 0, 10, 8, 0,160,227,
/* 0x0790 */ 11,255,255,235, 0, 48,104,226, 3,122,160,225, 2, 0, 26,227,
/* 0x0790 */ 11,255,255,235, 0, 48,104,226, 3,122,160,225, 2, 0, 25,227,
/* 0x07a0 */ 39,122,160,225, 7, 0, 0, 10, 0, 0, 87,227, 5, 0, 0, 10,
/* 0x07b0 */ 8, 16,134,224, 7, 32,160,225, 0, 48,160,227, 1, 32, 82,226,
/* 0x07c0 */ 1, 48,193,228,251,255,255, 26, 16, 16,157,229, 0, 0, 81,227,
@@ -169,18 +169,18 @@ unsigned char stub_arm_v4a_linux_elf_fold[2824] = {
/* 0x0820 */ 35, 58,160,225, 7, 0, 83,227, 56, 0, 0,154,252, 48,159,229,
/* 0x0830 */ 0, 0,132,229, 8, 16,132,226, 4, 0,160,225, 4, 48,132,229,
/* 0x0840 */ 172,254,255,235, 12, 0,157,229, 4, 32,160,225, 0, 16,160,227,
/* 0x0850 */ 211,254,255,235, 6, 0,160,225, 8, 16,160,225, 10, 32,160,225,
/* 0x0850 */ 211,254,255,235, 6, 0,160,225, 8, 16,160,225, 9, 32,160,225,
/* 0x0860 */ 162,254,255,235, 0, 0, 80,227, 10, 0,160, 19,199,255,255, 26,
/* 0x0870 */ 8,192,157,229, 7, 48,136,224, 12, 16,139,224, 3, 64,134,224,
/* 0x0880 */ 1, 0, 84,225, 7, 0, 0, 42, 1, 16,100,224, 10, 32,160,225,
/* 0x0880 */ 1, 0, 84,225, 7, 0, 0, 42, 1, 16,100,224, 9, 32,160,225,
/* 0x0890 */ 4, 0,160,225, 16, 48,160,227,164,254,255,235, 0, 0, 84,225,
/* 0x08a0 */ 9, 0,160, 19,185,255,255, 26, 28, 16,157,229, 1, 16,129,226,
/* 0x08b0 */ 28, 16,141,229, 32, 80,133,226,188, 50,217,225, 28, 32,157,229,
/* 0x08b0 */ 28, 16,141,229, 32, 80,133,226,188, 50,218,225, 28, 32,157,229,
/* 0x08c0 */ 3, 0, 82,225,109,255,255,186, 16, 48,157,229, 0, 0, 83,227,
/* 0x08d0 */ 5, 0, 0, 10,176, 49,217,225, 3, 0, 83,227, 32,192,157, 21,
/* 0x08d0 */ 5, 0, 0, 10,176, 49,218,225, 3, 0, 83,227, 32,192,157, 21,
/* 0x08e0 */ 40, 16,157, 21, 1, 0,140, 16,122,254,255, 27, 88, 32,157,229,
/* 0x08f0 */ 0, 0, 82,227, 24, 48,157, 21, 0, 48,130, 21, 24, 16,157,229,
/* 0x0900 */ 24, 0,153,229, 0, 0,129,224, 52,208,141,226,240,143,189,232,
/* 0x0900 */ 24, 0,154,229, 0, 0,129,224, 52,208,141,226,240,143,189,232,
/* 0x0910 */ 28, 48, 21,229, 0, 0, 83,227, 36,192,157, 5, 12, 48,129, 0,
/* 0x0920 */ 8, 64,131, 2,192,255,255, 10,201,255,255,234, 64, 98, 81,115,
/* 0x0930 */ 14,240,160,225,240, 69, 45,233, 12,208, 77,226, 44, 96,157,229,