diff options
author | H.J. Lu <hongjiu.lu@intel.com> | 2020-01-31 04:17:26 -0800 |
---|---|---|
committer | Richard Levitte <levitte@openssl.org> | 2020-02-15 22:15:03 +0100 |
commit | 98ad3fe82bd3e7e7f929dd1fa4ef3915426002c0 (patch) | |
tree | 90305d8bdb22f19188d925136cdd25b2d13f9b03 /crypto/camellia | |
parent | 07980622e28746245a83ad9d011b6a4a32a1c2e0 (diff) |
x86_64: Add endbranch at function entries for Intel CET
To support Intel CET, all indirect branch targets must start with
endbranch. Here is a patch to add endbranch to function entries
in x86_64 assembly codes which are indirect branch targets as
discovered by running openssl testsuite on Intel CET machine and
visual inspection.
Verified with
$ CC="gcc -Wl,-z,cet-report=error" ./Configure shared linux-x86_64 -fcf-protection
$ make
$ make test
and
$ CC="gcc -mx32 -Wl,-z,cet-report=error" ./Configure shared linux-x32 -fcf-protection
$ make
$ make test # <<< passed with https://github.com/openssl/openssl/pull/10988
Reviewed-by: Tomas Mraz <tmraz@fedoraproject.org>
Reviewed-by: Richard Levitte <levitte@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/10982)
Diffstat (limited to 'crypto/camellia')
-rw-r--r-- | crypto/camellia/asm/cmll-x86_64.pl | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/crypto/camellia/asm/cmll-x86_64.pl b/crypto/camellia/asm/cmll-x86_64.pl index 6865e73a7b..547fdf9176 100644 --- a/crypto/camellia/asm/cmll-x86_64.pl +++ b/crypto/camellia/asm/cmll-x86_64.pl @@ -687,6 +687,7 @@ $code.=<<___; .align 16 Camellia_cbc_encrypt: .cfi_startproc + endbranch cmp \$0,%rdx je .Lcbc_abort push %rbx |