Comments (6)
Sorry for not responding earlier, this slipped off my radar. It's a known issue that some algorithms in liboqs have large stack usage which cause failures in some scenarios; see the algorithms marked with daggers in the liboqs README. Can you try increasing Rust's stack size, e.g., using https://www.dsfcode.com/posts/increase-rust-stack-size-on-macos/
from liboqs-rust.
Idea is good. But
$ export RUSTFLAGS="-C link-args=-Wl,-stack_size,0x80000000 target-feature=+aes,+ssse3,+sse4.1,+sse4.2,+avx2,+pclmulqdq,+rdrand -L/opt/local/lib/liconv -liconv -L/opt/local/lib -lz -lssl -lcrypto -L/Users/ur20980/lib"
$ cargo test
error: failed to run `rustc` to learn about target-specific information
Caused by:
process didn't exit successfully: `rustc - --crate-name ___ --print=file-names -C link-args=-Wl,-stack_size,0x80000000 target-feature=+aes,+ssse3,+sse4.1,+sse4.2,+avx2,+pclmulqdq,+rdrand -L/opt/local/lib/liconv -liconv -L/opt/local/lib -lz -lssl -lcrypto -L/Users/ur20980/lib --crate-type bin --crate-type rlib --crate-type dylib --crate-type cdylib --crate-type staticlib --crate-type proc-macro --print=sysroot --print=cfg` (exit status: 1)
--- stderr
error: multiple input filenames provided (first two filenames are `-` and `target-feature=+aes,+ssse3,+sse4.1,+sse4.2,+avx2,+pclmulqdq,+rdrand`)
$ export RUSTFLAGS="-C 'link-args=-Wl,-stack_size,0x80000000' target-feature=+aes,+ssse3,+sse4.1,+sse4.2,+avx2,+pclmulqdq,+rdrand -L/opt/local/lib/liconv -liconv -L/opt/local/lib -lz -lssl -lcrypto -L/Users/ur20980/lib"
$ cargo test
error: failed to run `rustc` to learn about target-specific information
Caused by:
process didn't exit successfully: `rustc - --crate-name ___ --print=file-names -C ''\''link-args=-Wl,-stack_size,0x80000000'\''' target-feature=+aes,+ssse3,+sse4.1,+sse4.2,+avx2,+pclmulqdq,+rdrand -L/opt/local/lib/liconv -liconv -L/opt/local/lib -lz -lssl -lcrypto -L/Users/ur20980/lib --crate-type bin --crate-type rlib --crate-type dylib --crate-type cdylib --crate-type staticlib --crate-type proc-macro --print=sysroot --print=cfg` (exit status: 1)
--- stderr
error: unknown codegen option: `'link-args`
$
Update
$ export RUSTFLAGS="-C link-arg='-stack_size,0x80000000' -C target-feature=+aes,+ssse3,+sse4.1,+sse4.2,+avx2,+pclmulqdq,+rdrand"
$ cargo test
Compiling memchr v2.5.0
Compiling libc v0.2.126
. . . . .
= note: "cc" "-m64" "-arch" "x86_64" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.build_script_build.ff762e0f-cgu.0.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.build_script_build.ff762e0f-cgu.1.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.build_script_build.ff762e0f-cgu.10.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.build_script_build.ff762e0f-cgu.11.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.build_script_build.ff762e0f-cgu.12.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.build_script_build.ff762e0f-cgu.13.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.build_script_build.ff762e0f-cgu.14.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.build_script_build.ff762e0f-cgu.15.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.build_script_build.ff762e0f-cgu.2.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.build_script_build.ff762e0f-cgu.3.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.build_script_build.ff762e0f-cgu.4.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.build_script_build.ff762e0f-cgu.5.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.build_script_build.ff762e0f-cgu.6.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.build_script_build.ff762e0f-cgu.7.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.build_script_build.ff762e0f-cgu.8.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.build_script_build.ff762e0f-cgu.9.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593.4y5567yq1kcca85i.rcgu.o" "-L" "/Users/ur20980/src/liboqs-rust/target/debug/deps" "-L" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libstd-5ae51653233c3123.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libpanic_unwind-824f33e42152e8ad.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libobject-69ae51926f10bb57.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libmemchr-245445c928190b80.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libaddr2line-a0343ede66331927.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libgimli-d18052b3f2c44799.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/librustc_demangle-214396c7455eebbc.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libstd_detect-04fe1d4ba8284309.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libhashbrown-bb275db5534b8eac.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libminiz_oxide-eccddc93df08ba1a.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libadler-899dcd5e277779e4.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/librustc_std_workspace_alloc-f3953770a4f7c260.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libunwind-04937ee0dc84d4eb.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libcfg_if-3a8a8629c72cf068.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/liblibc-2c7b579ceb73107a.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/liballoc-efb34ae0db6de1f6.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/librustc_std_workspace_core-adb0cf783958c0b5.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libcore-b338f6e3114cd3ca.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libcompiler_builtins-f3b83820ab311320.rlib" "-lSystem" "-lresolv" "-lc" "-lm" "-liconv" "-L" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib" "-o" "/Users/ur20980/src/liboqs-rust/target/debug/build/memchr-80594bc7057d0593/build_script_build-80594bc7057d0593" "-Wl,-dead_strip" "-nodefaultlibs" "\'-stack_size,0x80000000\'"
= note: clang: error: no such file or directory: ''-stack_size,0x80000000''
error: could not compile `memchr` due to previous error
error: linking with `cc` failed: exit status: 1
$ $ export RUSTFLAGS="-C link-arg='-Wl,-stack_size,0x80000000' -C target-feature=+aes,+ssse3,+sse4.1,+sse4.2,+avx2,+pclmulqdq,+rdrand"
$ cargo test
Compiling memchr v2.5.0
Compiling libc v0.2.126
Compiling glob v0.3.0
. . .
= note: clang: error: no such file or directory: ''-Wl,-stack_size,0x80000000''
error: could not compile `bindgen` due to previous error
$ export RUSTFLAGS="-C link-args='-Wl,-stack_size,0x80000000' -C target-feature=+aes,+ssse3,+sse4.1,+sse4.2,+avx2,+pclmulqdq,+rdrand"
$ cargo test
Compiling memchr v2.5.0
Compiling libc v0.2.126
Compiling proc-macro2 v1.0.39
Compiling log v0.4.17
Compiling bindgen v0.60.1
Compiling oqs v0.7.1 (/Users/ur20980/src/liboqs-rust/oqs)
Compiling clang-sys v1.3.3
Compiling indexmap v1.8.2
error: linking with `cc` failed: exit status: 1
|
= note: "cc" "-m64" "-arch" "x86_64" "/Users/ur20980/src/liboqs-rust/target/debug/build/oqs-4a916d797bf19c4b/build_script_build-4a916d797bf19c4b.1dyakvq5rp6jacle.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/oqs-4a916d797bf19c4b/build_script_build-4a916d797bf19c4b.1xxx8623p6hwfxgc.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/oqs-4a916d797bf19c4b/build_script_build-4a916d797bf19c4b.31c9ktlg98bnc2yz.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/oqs-4a916d797bf19c4b/build_script_build-4a916d797bf19c4b.4rdgujz0slaf81zi.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/oqs-4a916d797bf19c4b/build_script_build-4a916d797bf19c4b.4zgj703p1rtbsbyv.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/oqs-4a916d797bf19c4b/build_script_build-4a916d797bf19c4b.5bn09wpweo3529w6.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/oqs-4a916d797bf19c4b/build_script_build-4a916d797bf19c4b.b9oj3xr2zcv6alg.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/oqs-4a916d797bf19c4b/build_script_build-4a916d797bf19c4b.hab0hgp82xdxf0c.rcgu.o" "/Users/ur20980/src/liboqs-rust/target/debug/build/oqs-4a916d797bf19c4b/build_script_build-4a916d797bf19c4b.4ub2lqcfqdzl5kgw.rcgu.o" "-L" "/Users/ur20980/src/liboqs-rust/target/debug/deps" "-L" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libstd-5ae51653233c3123.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libpanic_unwind-824f33e42152e8ad.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libobject-69ae51926f10bb57.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libmemchr-245445c928190b80.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libaddr2line-a0343ede66331927.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libgimli-d18052b3f2c44799.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/librustc_demangle-214396c7455eebbc.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libstd_detect-04fe1d4ba8284309.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libhashbrown-bb275db5534b8eac.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libminiz_oxide-eccddc93df08ba1a.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libadler-899dcd5e277779e4.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/librustc_std_workspace_alloc-f3953770a4f7c260.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libunwind-04937ee0dc84d4eb.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libcfg_if-3a8a8629c72cf068.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/liblibc-2c7b579ceb73107a.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/liballoc-efb34ae0db6de1f6.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/librustc_std_workspace_core-adb0cf783958c0b5.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libcore-b338f6e3114cd3ca.rlib" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib/libcompiler_builtins-f3b83820ab311320.rlib" "-lSystem" "-lresolv" "-lc" "-lm" "-liconv" "-L" "/opt/local/lib/rustlib/x86_64-apple-darwin/lib" "-o" "/Users/ur20980/src/liboqs-rust/target/debug/build/oqs-4a916d797bf19c4b/build_script_build-4a916d797bf19c4b" "-Wl,-dead_strip" "-nodefaultlibs" "\'-Wl,-stack_size,0x80000000\'"
= note: clang: error: no such file or directory: ''-Wl,-stack_size,0x80000000''
error: linking with `cc` failed: exit status: 1
from liboqs-rust.
Update 2
Now, after more struggling with how to pass these flags through Cargo, it compiles - but exhibits the same (?) stack overflow problem:
$ export RUSTFLAGS="-C link-args=-Wl,-stack_size,0x80000000 -C target-feature=+aes,+ssse3,+sse4.1,+sse4.2,+avx2,+pclmulqdq,+rdrand"
$ vi ~/.bash_profile
$ source !!:$
source ~/.bash_profile
$ cargo test
Compiling memchr v2.5.0
Compiling libc v0.2.126
Compiling glob v0.3.0
Compiling autocfg v1.1.0
Compiling cfg-if v1.0.0
Compiling log v0.4.17
. . . . .
Compiling oqs-sys v0.7.1 (/Users/ur20980/src/liboqs-rust/oqs-sys)
warning: You may need to specify OPENSSL_ROOT_DIR or disable the default `openssl` feature.
Finished test [unoptimized + debuginfo] target(s) in 53.18s
Running unittests src/lib.rs (target/debug/deps/oqs-efd60abe37588300)
running 614 tests
test kem::BikeL1::test_version ... ok
test kem::BikeL3::test_enabled ... ok
test kem::BikeL1::test_enabled ... ok
test kem::BikeL3::test_get_algorithm_back ... ok
test kem::BikeL1::test_get_algorithm_back ... ok
test kem::BikeL3::test_version ... ok
test kem::BikeL1::test_name ... ok
test kem::ClassicMcEliece348864::test_enabled ... ok
test kem::BikeL3::test_name ... ok
test kem::ClassicMcEliece348864::test_get_algorithm_back ... ok
test kem::ClassicMcEliece348864::test_name ... ok
test kem::ClassicMcEliece348864f::test_enabled ... ok
test kem::ClassicMcEliece348864::test_version ... ok
test kem::ClassicMcEliece348864f::test_get_algorithm_back ... ok
test kem::ClassicMcEliece348864f::test_name ... ok
test kem::ClassicMcEliece348864f::test_version ... ok
test kem::ClassicMcEliece460896::test_enabled ... ok
test kem::ClassicMcEliece460896::test_get_algorithm_back ... ok
test kem::ClassicMcEliece460896::test_name ... ok
test kem::ClassicMcEliece460896::test_version ... ok
test kem::ClassicMcEliece460896f::test_enabled ... ok
test kem::ClassicMcEliece460896f::test_get_algorithm_back ... ok
test kem::ClassicMcEliece460896f::test_name ... ok
test kem::ClassicMcEliece460896f::test_version ... ok
test kem::ClassicMcEliece6688128::test_enabled ... ok
test kem::ClassicMcEliece6688128::test_get_algorithm_back ... ok
test kem::ClassicMcEliece6688128::test_name ... ok
test kem::ClassicMcEliece6688128::test_version ... ok
test kem::ClassicMcEliece6688128f::test_enabled ... ok
test kem::ClassicMcEliece6688128f::test_get_algorithm_back ... ok
test kem::ClassicMcEliece6688128f::test_name ... ok
test kem::ClassicMcEliece6688128f::test_version ... ok
test kem::ClassicMcEliece6960119::test_enabled ... ok
test kem::ClassicMcEliece6960119::test_get_algorithm_back ... ok
test kem::ClassicMcEliece6960119::test_name ... ok
test kem::ClassicMcEliece6960119::test_version ... ok
test kem::ClassicMcEliece6960119f::test_enabled ... ok
test kem::ClassicMcEliece6960119f::test_get_algorithm_back ... ok
test kem::ClassicMcEliece6960119f::test_name ... ok
test kem::ClassicMcEliece6960119f::test_version ... ok
test kem::ClassicMcEliece8192128::test_enabled ... ok
test kem::ClassicMcEliece8192128::test_get_algorithm_back ... ok
test kem::ClassicMcEliece8192128::test_name ... ok
test kem::ClassicMcEliece8192128::test_version ... ok
test kem::ClassicMcEliece8192128f::test_enabled ... ok
test kem::ClassicMcEliece8192128f::test_get_algorithm_back ... ok
test kem::ClassicMcEliece8192128f::test_name ... ok
test kem::ClassicMcEliece8192128f::test_version ... ok
test kem::Firesaber::test_enabled ... ok
test kem::Firesaber::test_get_algorithm_back ... ok
test kem::Firesaber::test_name ... ok
test kem::Firesaber::test_version ... ok
test kem::FrodoKem1344Aes::test_enabled ... ok
test kem::FrodoKem1344Aes::test_get_algorithm_back ... ok
test kem::FrodoKem1344Aes::test_name ... ok
test kem::FrodoKem1344Aes::test_version ... ok
test kem::FrodoKem1344Shake::test_enabled ... ok
test kem::FrodoKem1344Shake::test_get_algorithm_back ... ok
test kem::FrodoKem1344Shake::test_name ... ok
test kem::FrodoKem1344Shake::test_version ... ok
test kem::FrodoKem640Aes::test_enabled ... ok
test kem::FrodoKem640Aes::test_get_algorithm_back ... ok
test kem::FrodoKem640Aes::test_name ... ok
test kem::FrodoKem640Aes::test_version ... ok
test kem::FrodoKem640Shake::test_enabled ... ok
test kem::FrodoKem640Shake::test_get_algorithm_back ... ok
test kem::FrodoKem640Shake::test_name ... ok
test kem::FrodoKem640Shake::test_version ... ok
test kem::FrodoKem976Aes::test_enabled ... ok
test kem::FrodoKem976Aes::test_get_algorithm_back ... ok
test kem::FrodoKem976Aes::test_name ... ok
test kem::FrodoKem976Aes::test_version ... ok
test kem::FrodoKem976Shake::test_enabled ... ok
test kem::FrodoKem976Shake::test_get_algorithm_back ... ok
test kem::FrodoKem976Shake::test_name ... ok
test kem::FrodoKem976Shake::test_version ... ok
test kem::Hqc128::test_enabled ... ok
test kem::Firesaber::test_encaps_decaps ... ok
test kem::Hqc128::test_get_algorithm_back ... ok
test kem::Hqc128::test_name ... ok
test kem::Hqc128::test_version ... ok
test kem::Hqc192::test_enabled ... ok
test kem::FrodoKem640Aes::test_encaps_decaps ... ok
test kem::BikeL1::test_encaps_decaps ... ok
test kem::Hqc128::test_encaps_decaps ... ok
test kem::Hqc192::test_get_algorithm_back ... ok
test kem::Hqc192::test_version ... ok
test kem::Hqc192::test_name ... ok
test kem::Hqc256::test_enabled ... ok
test kem::Hqc256::test_get_algorithm_back ... ok
test kem::Hqc256::test_name ... ok
test kem::Hqc256::test_version ... ok
test kem::Kyber1024::test_enabled ... ok
test kem::Kyber1024::test_encaps_decaps ... ok
test kem::Kyber1024::test_get_algorithm_back ... ok
test kem::FrodoKem640Shake::test_encaps_decaps ... ok
test kem::Kyber1024::test_name ... ok
test kem::Kyber1024::test_version ... ok
test kem::FrodoKem976Aes::test_encaps_decaps ... ok
test kem::Hqc192::test_encaps_decaps ... ok
test kem::Kyber1024_90s::test_enabled ... ok
test kem::Kyber1024_90s::test_get_algorithm_back ... ok
test kem::Kyber1024_90s::test_name ... ok
test kem::Kyber1024_90s::test_version ... ok
test kem::Kyber512::test_enabled ... ok
test kem::Kyber512::test_get_algorithm_back ... ok
test kem::Kyber1024_90s::test_encaps_decaps ... ok
test kem::Kyber512::test_version ... ok
test kem::Kyber512::test_name ... ok
test kem::Kyber512::test_encaps_decaps ... ok
test kem::Kyber512_90s::test_enabled ... ok
test kem::BikeL3::test_encaps_decaps ... ok
test kem::Kyber512_90s::test_get_algorithm_back ... ok
test kem::Kyber512_90s::test_name ... ok
test kem::Kyber512_90s::test_version ... ok
test kem::Kyber768::test_enabled ... ok
test kem::Kyber512_90s::test_encaps_decaps ... ok
test kem::Kyber768::test_get_algorithm_back ... ok
test kem::Kyber768::test_name ... ok
test kem::Kyber768::test_version ... ok
test kem::Kyber768_90s::test_enabled ... ok
test kem::Kyber768::test_encaps_decaps ... ok
test kem::Kyber768_90s::test_get_algorithm_back ... ok
test kem::Kyber768_90s::test_name ... ok
test kem::Kyber768_90s::test_version ... ok
test kem::Lightsaber::test_enabled ... ok
test kem::Kyber768_90s::test_encaps_decaps ... ok
test kem::Lightsaber::test_get_algorithm_back ... ok
test kem::Lightsaber::test_name ... ok
test kem::Lightsaber::test_version ... ok
test kem::NtruHps2048509::test_enabled ... ok
test kem::NtruHps2048509::test_get_algorithm_back ... ok
test kem::Lightsaber::test_encaps_decaps ... ok
test kem::NtruHps2048509::test_version ... ok
test kem::NtruHps2048509::test_name ... ok
test kem::NtruHps2048677::test_enabled ... ok
test kem::NtruHps2048677::test_get_algorithm_back ... ok
test kem::NtruHps2048677::test_name ... ok
test kem::NtruHps2048677::test_version ... ok
test kem::NtruHps40961229::test_enabled ... ok
test kem::NtruHps2048509::test_encaps_decaps ... ok
test kem::NtruHps40961229::test_get_algorithm_back ... ok
test kem::NtruHps40961229::test_name ... ok
test kem::NtruHps40961229::test_version ... ok
test kem::NtruHps4096821::test_enabled ... ok
test kem::NtruHps4096821::test_get_algorithm_back ... ok
test kem::NtruHps4096821::test_name ... ok
test kem::NtruHps2048677::test_encaps_decaps ... ok
test kem::NtruHps4096821::test_version ... ok
test kem::NtruHrss1373::test_enabled ... ok
test kem::NtruHrss1373::test_get_algorithm_back ... ok
test kem::NtruHrss1373::test_version ... ok
test kem::NtruHrss701::test_enabled ... ok
test kem::NtruHrss1373::test_name ... ok
test kem::FrodoKem1344Aes::test_encaps_decaps ... ok
test kem::NtruHrss701::test_get_algorithm_back ... ok
test kem::NtruHps4096821::test_encaps_decaps ... ok
test kem::NtruHrss701::test_name ... ok
test kem::NtruHrss701::test_version ... ok
test kem::NtruPrimeNtrulpr1277::test_enabled ... ok
test kem::NtruPrimeNtrulpr1277::test_get_algorithm_back ... ok
test kem::NtruPrimeNtrulpr1277::test_name ... ok
test kem::NtruPrimeNtrulpr1277::test_version ... ok
test kem::NtruPrimeNtrulpr653::test_enabled ... ok
test kem::NtruHrss701::test_encaps_decaps ... ok
test kem::NtruPrimeNtrulpr653::test_name ... ok
test kem::NtruPrimeNtrulpr653::test_get_algorithm_back ... ok
test kem::NtruPrimeNtrulpr653::test_version ... ok
test kem::NtruPrimeNtrulpr1277::test_encaps_decaps ... ok
test kem::NtruPrimeNtrulpr761::test_enabled ... ok
test kem::Hqc256::test_encaps_decaps ... ok
test kem::NtruPrimeNtrulpr653::test_encaps_decaps ... ok
test kem::NtruPrimeNtrulpr761::test_get_algorithm_back ... ok
test kem::NtruPrimeNtrulpr761::test_name ... ok
test kem::NtruPrimeNtrulpr761::test_version ... ok
test kem::NtruPrimeNtrulpr857::test_enabled ... ok
test kem::NtruPrimeNtrulpr857::test_get_algorithm_back ... ok
test kem::NtruPrimeNtrulpr761::test_encaps_decaps ... ok
test kem::NtruPrimeNtrulpr857::test_name ... ok
test kem::NtruPrimeNtrulpr857::test_version ... ok
test kem::NtruPrimeSntrup1277::test_enabled ... ok
test kem::NtruPrimeSntrup1277::test_get_algorithm_back ... ok
test kem::NtruPrimeSntrup1277::test_name ... ok
test kem::NtruPrimeNtrulpr857::test_encaps_decaps ... ok
test kem::NtruPrimeSntrup1277::test_version ... ok
test kem::NtruPrimeSntrup653::test_enabled ... ok
test kem::NtruPrimeSntrup653::test_get_algorithm_back ... ok
test kem::NtruPrimeSntrup653::test_version ... ok
test kem::NtruPrimeSntrup653::test_name ... ok
test kem::NtruPrimeSntrup761::test_enabled ... ok
test kem::NtruPrimeSntrup761::test_get_algorithm_back ... ok
test kem::FrodoKem976Shake::test_encaps_decaps ... ok
test kem::NtruPrimeSntrup761::test_name ... ok
test kem::NtruPrimeSntrup761::test_version ... ok
test kem::NtruPrimeSntrup857::test_enabled ... ok
test kem::NtruPrimeSntrup857::test_get_algorithm_back ... ok
test kem::NtruPrimeSntrup857::test_name ... ok
test kem::NtruPrimeSntrup857::test_version ... ok
test kem::NtruPrimeSntrup653::test_encaps_decaps ... ok
test kem::Saber::test_enabled ... ok
test kem::Saber::test_get_algorithm_back ... ok
test kem::Saber::test_name ... ok
test kem::Saber::test_version ... ok
test kem::NtruPrimeSntrup761::test_encaps_decaps ... ok
test kem::SidhP434::test_enabled ... ok
test kem::Saber::test_encaps_decaps ... ok
test kem::SidhP434::test_get_algorithm_back ... ok
test kem::SidhP434::test_name ... ok
test kem::SidhP434::test_version ... ok
test kem::SidhP434Compressed::test_enabled ... ok
test kem::NtruPrimeSntrup857::test_encaps_decaps ... ok
test kem::SidhP434Compressed::test_get_algorithm_back ... ok
test kem::SidhP434Compressed::test_version ... ok
test kem::SidhP434Compressed::test_name ... ok
test kem::SidhP503::test_enabled ... ok
test kem::NtruPrimeSntrup1277::test_encaps_decaps ... ok
test kem::SidhP503::test_get_algorithm_back ... ok
test kem::SidhP503::test_name ... ok
test kem::SidhP503::test_version ... ok
test kem::SidhP503Compressed::test_enabled ... ok
test kem::SidhP503Compressed::test_get_algorithm_back ... ok
test kem::SidhP503Compressed::test_name ... ok
test kem::SidhP503Compressed::test_version ... ok
test kem::SidhP610::test_enabled ... ok
test kem::SidhP610::test_get_algorithm_back ... ok
test kem::SidhP610::test_name ... ok
test kem::SidhP610::test_version ... ok
test kem::SidhP610Compressed::test_enabled ... ok
test kem::SidhP610Compressed::test_get_algorithm_back ... ok
test kem::FrodoKem1344Shake::test_encaps_decaps ... ok
test kem::SidhP610Compressed::test_name ... ok
test kem::SidhP610Compressed::test_version ... ok
test kem::SidhP751::test_enabled ... ok
test kem::SidhP751::test_get_algorithm_back ... ok
thread 'kem::ClassicMcEliece8192128::test_encaps_decaps' has overflowed its stack
fatal runtime error: stack overflow
error: test failed, to rerun pass '-p oqs --lib'
Caused by:
process didn't exit successfully: `/Users/ur20980/src/liboqs-rust/target/debug/deps/oqs-efd60abe37588300` (signal: 6, SIGABRT: process abort signal)
$
$ otool -lV target/debug/deps/oqs-efd60abe37588300 | grep stacksize
stacksize 2147483648
$
from liboqs-rust.
Hi, I was on vacation for the last four weeks so I couldn't get to this.
The Rust test runner spawns threads with a stack limit of 2 MB. The only way to override this is by specifying an environment variable as documented in the README and in the McEliece manual pages.
You should not need the linker flags.
from liboqs-rust.
@thomwiggers You are correct - setting env var RUST_MIN_STACK=800000000
resolved this issue.
from liboqs-rust.
(The number 80000... is just a random big enough number by the way, by no means the minimum)
from liboqs-rust.
Related Issues (20)
- Update NTRU
- ARMv8 compatibility: CI and cross-compiling? HOT 8
- WASM compatibility HOT 4
- Stack overflow when generating a key pair on Windows HOT 2
- Support RustCrypto KEM and Signature traits
- How to encrypt message with the symetric key of kem HOT 1
- Clean up clippy lints
- Cmake files are not included in package
- Permit unbundling the library HOT 7
- cargo vendor failure for this crate due to include(.CMake/compiler_opts.cmake) HOT 3
- Version numbering HOT 19
- Compiling fails when encountering new compiler warnings HOT 11
- expose `OQS_PERMIT_UNSUPPORTED_ARCHITECTURE`, for example as cargo feature HOT 3
- Updated liboqs-sys create on crates.io HOT 10
- Don't recompile oqs everytime cargo build is invoked HOT 2
- Please document how to build against the system copy of liboqs
- MacOS build fails (as linking against OpenSSL1 instead of 3) HOT 2
- Win 10, package compilation step fails to find OpenSSL HOT 6
- Invert no-std logic
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from liboqs-rust.