From: Mike Frysinger <vapier@gentoo.org>

To: sdl@libsdl.org
Date: Sun, 11 Dec 2005 22:57:37 -0500
Subject: [SDL] exec stack in libsdl update

i posted back in September a patch to remove executable stacks:
http://www.devolution.com/pipermail/sdl/2005-September/070626.html

later in November, a similar patch was merged it seems:
http://www.libsdl.org/cgi/cvsweb.cgi/SDL12/src/hermes/mmx_main.asm

however, this lacks the additional output format checks that i posted in my
patch ... this isnt a problem if the hermes asm code is only ever used to
produce ELF objects, but if this is not true, then the additional checks in
my original patch will need to be merged
-mike

--HG--
extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%401202
This commit is contained in:
Ryan C. Gordon 2005-12-12 09:13:12 +00:00
parent 8ce4fc3c4d
commit ec5be28202
5 changed files with 17 additions and 13 deletions

View file

@ -12,8 +12,6 @@ BITS 32
GLOBAL _ConvertMMX GLOBAL _ConvertMMX
GLOBAL _mmxreturn GLOBAL _mmxreturn
SECTION .note.GNU-stack noalloc progbits noexec nowrite
SECTION .text SECTION .text
;; _ConvertMMX: ;; _ConvertMMX:
@ -71,5 +69,6 @@ endconvert:
ret ret
%ifidn __OUTPUT_FORMAT__,elf
section .note.GNU-stack noalloc noexec nowrite progbits
%endif

View file

@ -29,7 +29,6 @@ GLOBAL _ConvertMMXpII32_16BGR555
EXTERN _mmxreturn EXTERN _mmxreturn
SECTION .note.GNU-stack noalloc progbits noexec nowrite
SECTION .data SECTION .data
ALIGN 8 ALIGN 8
@ -383,5 +382,6 @@ _convert_bgr555_cheat:
.L4: .L4:
jmp _mmxreturn jmp _mmxreturn
%ifidn __OUTPUT_FORMAT__,elf
section .note.GNU-stack noalloc noexec nowrite progbits
%endif

View file

@ -16,7 +16,6 @@ GLOBAL _x86return
GLOBAL _Hermes_X86_CPU GLOBAL _Hermes_X86_CPU
SECTION .note.GNU-stack noalloc progbits noexec nowrite
SECTION .data SECTION .data
cpu_flags dd 0 cpu_flags dd 0
@ -123,3 +122,7 @@ _Hermes_X86_CPU:
.L1: .L1:
ret ret
%ifidn __OUTPUT_FORMAT__,elf
section .note.GNU-stack noalloc noexec nowrite progbits
%endif

View file

@ -27,11 +27,8 @@ GLOBAL _ConvertX86p16_8RGB332
EXTERN _ConvertX86 EXTERN _ConvertX86
EXTERN _x86return EXTERN _x86return
SECTION .note.GNU-stack noalloc progbits noexec nowrite
SECTION .text SECTION .text
_ConvertX86p16_16BGR565: _ConvertX86p16_16BGR565:
; check short ; check short
@ -494,3 +491,6 @@ _ConvertX86p16_8RGB332:
.L7 pop ebp .L7 pop ebp
jmp _x86return jmp _x86return
%ifidn __OUTPUT_FORMAT__,elf
section .note.GNU-stack noalloc noexec nowrite progbits
%endif

View file

@ -25,10 +25,8 @@ GLOBAL _ConvertX86p32_8RGB332
EXTERN _x86return EXTERN _x86return
SECTION .note.GNU-stack noalloc progbits noexec nowrite
SECTION .text SECTION .text
;; _Convert_* ;; _Convert_*
;; Paramters: ;; Paramters:
;; ESI = source ;; ESI = source
@ -1042,3 +1040,7 @@ _ConvertX86p32_8RGB332:
.L4: .L4:
jmp _x86return jmp _x86return
%ifidn __OUTPUT_FORMAT__,elf
section .note.GNU-stack noalloc noexec nowrite progbits
%endif