> This was reported in Fedora bugzilla by Pekka Pietikainen :
> 
> The other variants seem fine, but
> 
> (gdb) set args speed camellia-192-cbc
> (gdb) run
> Starting program: /usr/bin/openssl speed camellia-192-cbc
> [Thread debugging using libthread_db enabled]
> Doing camellia-192 cbc for 3s on 16 size blocks: 
> Program received signal SIGSEGV, Segmentation fault.
> _x86_64_Camellia_encrypt () at cmll-x86_64.s:232
> 232  movl 64(%r14),%ebx
> Current language:  auto
> The current source language is "auto; currently asm".
> (gdb) bt
> #0  _x86_64_Camellia_encrypt () at cmll-x86_64.s:232
> #1  0x00000036cfe814b4 in Camellia_cbc_encrypt () at cmll-x86_64.s:1686

Could you complement back-trace with 'info reg' output?

> which looks a bit worrying, considering the nature of openssl

Verify that following fixes the problem:

--- crypto/camellia/asm/cmll-x86_64.pl  6 Apr 2009 15:13:16 -0000
+++ crypto/camellia/asm/cmll-x86_64.pl  12 Sep 2009 15:20:49 -0000
@@ -656,7 +656,7 @@
        mov     %rsi,$out               # out argument
        mov     %r8,%rbx                # ivp argument
        mov     %rcx,$key               # key argument
-       mov     272(%rcx),$keyend       # grandRounds
+       mov     272(%rcx),${keyend}d    # grandRounds

        mov     %r8,$_ivp
        mov     %rbp,$_rsp

Alternatively see if declaring 'size_t grand_rounds' in camellia.h does
the job. A.


______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       openssl-dev@openssl.org
Automated List Manager                           majord...@openssl.org

Reply via email to