thomwiggers / kemtls-experiment

Experimental implementation of KEMTLS in Rustls
https://wggrs.nl/p/kemtls/
Other
27 stars 14 forks source link

Regression: ops_rs fails to compile #15

Closed mouse07410 closed 4 months ago

mouse07410 commented 4 months ago

macOS Sonoma 14.5, Xcode-15.4.

Current master, trying to build rustls:

.  .  .
[  2%] Built target bike1_l1_cpa
  [  2%] Built target frodokem_avx2

  --- stderr
  gmake: warning: -j20 forced in submake: resetting jobserver mode.
  /Users/ur20980/.cargo/git/checkouts/liboqs-rust-1e16fdaacd85eaa0/7356ebc/oqs-sys/liboqs/src/kem/sike/kem_sike.c:41:42: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
  OQS_KEM *OQS_KEM_sike_p434_compressed_new() {
                                           ^
                                            void
  /Users/ur20980/.cargo/git/checkouts/liboqs-rust-1e16fdaacd85eaa0/7356ebc/oqs-sys/liboqs/src/kem/sike/kem_sike.c:71:31: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
  OQS_KEM *OQS_KEM_sike_p503_new() {
                                ^
                                 void
  /Users/ur20980/.cargo/git/checkouts/liboqs-rust-1e16fdaacd85eaa0/7356ebc/oqs-sys/liboqs/src/kem/sike/kem_sike.c:101:42: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
  OQS_KEM *OQS_KEM_sike_p503_compressed_new() {
                                           ^
                                            void
  /Users/ur20980/.cargo/git/checkouts/liboqs-rust-1e16fdaacd85eaa0/7356ebc/oqs-sys/liboqs/src/kem/sike/kem_sike.c:131:31: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
  OQS_KEM *OQS_KEM_sike_p610_new() {
                                ^
                                 void
  /Users/ur20980/.cargo/git/checkouts/liboqs-rust-1e16fdaacd85eaa0/7356ebc/oqs-sys/liboqs/src/kem/sike/kem_sike.c:161:42: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
  OQS_KEM *OQS_KEM_sike_p610_compressed_new() {
                                           ^
                                            void
  /Users/ur20980/.cargo/git/checkouts/liboqs-rust-1e16fdaacd85eaa0/7356ebc/oqs-sys/liboqs/src/kem/sike/kem_sike.c:191:31: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
  OQS_KEM *OQS_KEM_sike_p751_new() {
                                ^
                                 void
  /Users/ur20980/.cargo/git/checkouts/liboqs-rust-1e16fdaacd85eaa0/7356ebc/oqs-sys/liboqs/src/kem/sike/kem_sike.c:221:42: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
.  .  .
  /Users/ur20980/.cargo/git/checkouts/liboqs-rust-1e16fdaacd85eaa0/7356ebc/oqs-sys/liboqs/src/kem/frodokem/kem_frodokem1344aes.c:9:39: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
  OQS_KEM *OQS_KEM_frodokem_1344_aes_new() {
                                        ^
                                         void
  1 error generated.
  gmake[3]: *** [src/kem/frodokem/CMakeFiles/frodokem.dir/build.make:188: src/kem/frodokem/CMakeFiles/frodokem.dir/kem_frodokem1344aes.c.o] Error 1
  gmake[2]: *** [CMakeFiles/Makefile2:1122: src/kem/frodokem/CMakeFiles/frodokem.dir/all] Error 2
  gmake[1]: *** [CMakeFiles/Makefile2:895: src/CMakeFiles/oqs.dir/rule] Error 2
  gmake: *** [Makefile:169: oqs] Error 2
  thread 'main' panicked at /Users/ur20980/.cargo/registry/src/index.crates.io-6f17d22bba15001f/cmake-0.1.48/src/lib.rs:975:5:

  command did not execute successfully, got: exit status: 2

  build script failed, must exit now
  stack backtrace:
     0: _rust_begin_unwind
     1: core::panicking::panic_fmt
     2: cmake::fail
     3: cmake::run
     4: cmake::Config::build
     5: build_script_build::main
     6: core::ops::function::FnOnce::call_once
  note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
$

The old problem of using func() instead of func(void).

thomwiggers commented 4 months ago

The master branch was abandoned years ago; the latest post-quantum experiments (those in my thesis) were done using the thesis branch; the reference implementation of AuthKEM that uses DH can be found at https://github.com/kemtls/rustls-authkem

thomwiggers commented 4 months ago

Note that in both cases this repository is here mostly for archival purposes so you may need to use older compilers.

This code should still build in the provided Docker container.