Non-executable stack in asm.
This commit is contained in:
parent
f472ec8c2f
commit
0e3ef596e5
3
CHANGES
3
CHANGES
@ -4,6 +4,9 @@
|
|||||||
|
|
||||||
Changes between 1.0.0 and 1.1.0 [xx XXX xxxx]
|
Changes between 1.0.0 and 1.1.0 [xx XXX xxxx]
|
||||||
|
|
||||||
|
*) Make generated asm have non-executable stack.
|
||||||
|
[Contributed by Google <agl@google.com>]
|
||||||
|
|
||||||
*) New function OPENSSL_gmtime_diff to find the difference in days
|
*) New function OPENSSL_gmtime_diff to find the difference in days
|
||||||
and seconds between two tm structures. This will be used to provide
|
and seconds between two tm structures. This will be used to provide
|
||||||
additional functionality for ASN1_TIME.
|
additional functionality for ASN1_TIME.
|
||||||
|
@ -42,7 +42,8 @@ $verticalspin=1; # unlike 32-bit version $verticalspin performs
|
|||||||
# ~15% better on both AMD and Intel cores
|
# ~15% better on both AMD and Intel cores
|
||||||
$speed_limit=512; # see aes-586.pl for details
|
$speed_limit=512; # see aes-586.pl for details
|
||||||
|
|
||||||
$code=".text\n";
|
$code=".section .note.GNU-stack,\"\",\@progbits\n";
|
||||||
|
$code.=".text\n";
|
||||||
|
|
||||||
$s0="%eax";
|
$s0="%eax";
|
||||||
$s1="%ebx";
|
$s1="%ebx";
|
||||||
|
@ -45,6 +45,7 @@ $m0="%rbx";
|
|||||||
$m1="%rbp";
|
$m1="%rbp";
|
||||||
|
|
||||||
$code=<<___;
|
$code=<<___;
|
||||||
|
.section .note.GNU-stack,"",\@progbits
|
||||||
.text
|
.text
|
||||||
|
|
||||||
.globl bn_mul_mont
|
.globl bn_mul_mont
|
||||||
|
@ -123,6 +123,7 @@ no warnings qw(uninitialized);
|
|||||||
open STDOUT,"| $^X $xlate $flavour $output";
|
open STDOUT,"| $^X $xlate $flavour $output";
|
||||||
|
|
||||||
$code .= <<EOF;
|
$code .= <<EOF;
|
||||||
|
.section .note.GNU-stack,"",\@progbits
|
||||||
.text
|
.text
|
||||||
.align 16
|
.align 16
|
||||||
|
|
||||||
|
@ -82,6 +82,7 @@ $YY="%r12";
|
|||||||
$TY="%r13";
|
$TY="%r13";
|
||||||
|
|
||||||
$code=<<___;
|
$code=<<___;
|
||||||
|
.section .note.GNU-stack,"",\@progbits
|
||||||
.text
|
.text
|
||||||
|
|
||||||
.globl RC4
|
.globl RC4
|
||||||
|
@ -178,6 +178,7 @@ unshift(@xi,pop(@xi));
|
|||||||
}
|
}
|
||||||
|
|
||||||
$code.=<<___;
|
$code.=<<___;
|
||||||
|
.section .note.GNU-stack,"",\@progbits
|
||||||
.text
|
.text
|
||||||
|
|
||||||
.globl sha1_block_data_order
|
.globl sha1_block_data_order
|
||||||
|
@ -178,6 +178,8 @@ ___
|
|||||||
}
|
}
|
||||||
|
|
||||||
$code=<<___;
|
$code=<<___;
|
||||||
|
.section .note.GNU-stack,"",\@progbits
|
||||||
|
|
||||||
.text
|
.text
|
||||||
|
|
||||||
.globl $func
|
.globl $func
|
||||||
|
@ -16,6 +16,13 @@ print<<___;
|
|||||||
.section .init
|
.section .init
|
||||||
call OPENSSL_cpuid_setup
|
call OPENSSL_cpuid_setup
|
||||||
|
|
||||||
|
___
|
||||||
|
|
||||||
|
if ($flavour =~ /elf/) {
|
||||||
|
print ".section .note.GNU-stack,\"\",\@progbits\n"
|
||||||
|
}
|
||||||
|
|
||||||
|
print<<___;
|
||||||
.text
|
.text
|
||||||
|
|
||||||
.globl OPENSSL_atomic_add
|
.globl OPENSSL_atomic_add
|
||||||
|
Loading…
x
Reference in New Issue
Block a user