ECC key generation bus error on amd64
Status: Beta
Brought to you by:
codon
On 64-bit platforms, the ecc() constructor dumps core:
0% python
Python 2.4.1 (#2, May 20 2005, 03:40:45)
[GCC 3.4.2 [FreeBSD] 20040728] on freebsd5
Type "help", "copyright", "credits" or "license" for
more information.
>>> from ecc.ecc import ecc
>>> e=ecc(1)
zsh: bus error (core dumped) python
138%
0% file python.core
python.core: ELF 64-bit LSB core file AMD x86-64,
version 1 (FreeBSD), FreeBSD-style, FreeBSD-style
0% uname -a
FreeBSD a64 5.4-STABLE FreeBSD 5.4-STABLE #2: Wed Aug
3 17:22:27 PDT 2005
root@a64:/usr/obj/usr/src/sys/COMPAQ amd64
The other modules work fine, however.
Logged In: YES
user_id=31953
Looks like a problem in onb.c, here's a backtrace:
#0 0x00002aaab33f4ae4 in opt_inv (a=<value optimized out>,
dest=0xffffffffffffffff) at src/onb.c:516
#1 0x00002aaab33f2e01 in edbl (p1=0xffff7fff, p3=0x42001ec0,
curv=0xffffffffffffffff) at src/eliptic.c:262
#2 0x00002aaab33f3144 in elptic_mul (k=<value optimized
out>, p=0xd09198,
r=0xc62a50, curv=0xd09150) at src/eliptic.c:388
#3 0x00002aaab33efd49 in _wrap_DH_gen (self=<value
optimized out>,
args=<value optimized out>) at src/ecc_wrap.c:1130
#4 0x00000000004779c1 in PyEval_EvalFrame ()
#5 0x000000000047830f in PyEval_EvalCodeEx ()
#6 0x00000000004768ab in PyEval_EvalFrame ()
#7 0x000000000047830f in PyEval_EvalCodeEx ()
#8 0x00000000004c013a in PyFunction_SetClosure ()
#9 0x0000000000414490 in PyObject_Call ()
#10 0x000000000041afe7 in PyMethod_New ()
#11 0x0000000000414490 in PyObject_Call ()
#12 0x0000000000470780 in PyEval_CallObjectWithKeywords ()
---Type <return> to continue, or q <return> to quit---
#13 0x000000000041d384 in PyInstance_New ()
#14 0x0000000000414490 in PyObject_Call ()
#15 0x0000000000475cf5 in PyEval_EvalFrame ()
#16 0x00000000004769c6 in PyEval_EvalFrame ()
#17 0x00000000004769c6 in PyEval_EvalFrame ()
#18 0x000000000047830f in PyEval_EvalCodeEx ()
#19 0x00000000004c013a in PyFunction_SetClosure ()
#20 0x0000000000414490 in PyObject_Call ()
#21 0x0000000000475732 in PyEval_EvalFrame ()
#22 0x000000000047830f in PyEval_EvalCodeEx ()
#23 0x00000000004c013a in PyFunction_SetClosure ()
#24 0x0000000000414490 in PyObject_Call ()
#25 0x0000000000470780 in PyEval_CallObjectWithKeywords ()
#26 0x00000000004a377d in _PyObject_GC_NewVar ()
#27 0x00002aaaaabc80fa in start_thread () from
/lib/libpthread.so.0
#28 0x00002aaaab128ce2 in clone () from /lib/libc.so.6
#29 0x0000000000000000 in ?? ()