Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 2022.01 - RC2 #241

Closed
52 of 88 tasks
emmanuelsearch opened this issue Jan 27, 2022 · 9 comments
Closed
52 of 88 tasks

Release 2022.01 - RC2 #241

emmanuelsearch opened this issue Jan 27, 2022 · 9 comments
Assignees

Comments

@emmanuelsearch
Copy link
Member

emmanuelsearch commented Jan 27, 2022

This issue lists the status of all tests for the Release Candidate 2 of the 2022.01 release.

Specs tested:

@riot-ci
Copy link

riot-ci commented Jan 27, 2022

Test Report

Task Outcome
01. Task 02 - Unittests on native PASSED
01. Task 03 - Unittests on native separated [tests-analog_util] PASSED
01. Task 03 - Unittests on native separated [tests-base64] PASSED
01. Task 03 - Unittests on native separated [tests-bcd] PASSED
01. Task 03 - Unittests on native separated [tests-bitfield] PASSED
01. Task 03 - Unittests on native separated [tests-bloom] PASSED
01. Task 03 - Unittests on native separated [tests-bluetil] PASSED
01. Task 03 - Unittests on native separated [tests-checksum] PASSED
01. Task 03 - Unittests on native separated [tests-clif] PASSED
01. Task 03 - Unittests on native separated [tests-color] PASSED
01. Task 03 - Unittests on native separated [tests-core] PASSED
01. Task 03 - Unittests on native separated [tests-credman] PASSED
01. Task 03 - Unittests on native separated [tests-div] PASSED
01. Task 03 - Unittests on native separated [tests-ecc] PASSED
01. Task 03 - Unittests on native separated [tests-fib] PASSED
01. Task 03 - Unittests on native separated [tests-fib_sr] PASSED
01. Task 03 - Unittests on native separated [tests-fmt] PASSED
01. Task 03 - Unittests on native separated [tests-frac] PASSED
01. Task 03 - Unittests on native separated [tests-gcoap] PASSED
01. Task 03 - Unittests on native separated [tests-gnrc_ipv6] PASSED
01. Task 03 - Unittests on native separated [tests-gnrc_ipv6_hdr] PASSED
01. Task 03 - Unittests on native separated [tests-gnrc_ipv6_nib] PASSED
01. Task 03 - Unittests on native separated [tests-gnrc_mac_internal] PASSED
01. Task 03 - Unittests on native separated [tests-gnrc_netif_pktq] PASSED
01. Task 03 - Unittests on native separated [tests-gnrc_sixlowpan_frag_vrb] PASSED
01. Task 03 - Unittests on native separated [tests-gnrc_udp] PASSED
01. Task 03 - Unittests on native separated [tests-hashes] PASSED
01. Task 03 - Unittests on native separated [tests-ieee802154] PASSED
01. Task 03 - Unittests on native separated [tests-inet_csum] PASSED
01. Task 03 - Unittests on native separated [tests-ipv4_addr] PASSED
01. Task 03 - Unittests on native separated [tests-ipv6_addr] PASSED
01. Task 03 - Unittests on native separated [tests-ipv6_hdr] PASSED
01. Task 03 - Unittests on native separated [tests-kernel_defines] PASSED
01. Task 03 - Unittests on native separated [tests-luid] PASSED
01. Task 03 - Unittests on native separated [tests-matstat] PASSED
01. Task 03 - Unittests on native separated [tests-mtd] PASSED
01. Task 03 - Unittests on native separated [tests-nanocoap] PASSED
01. Task 03 - Unittests on native separated [tests-netopt] PASSED
01. Task 03 - Unittests on native separated [tests-netreg] PASSED
01. Task 03 - Unittests on native separated [tests-phydat] PASSED
01. Task 03 - Unittests on native separated [tests-pkt] PASSED
01. Task 03 - Unittests on native separated [tests-pktbuf] PASSED
01. Task 03 - Unittests on native separated [tests-pktqueue] PASSED
01. Task 03 - Unittests on native separated [tests-printf_float] PASSED
01. Task 03 - Unittests on native separated [tests-priority_pktqueue] PASSED
01. Task 03 - Unittests on native separated [tests-rtc] PASSED
01. Task 03 - Unittests on native separated [tests-rtt_rtc] PASSED
01. Task 03 - Unittests on native separated [tests-saul_reg] PASSED
01. Task 03 - Unittests on native separated [tests-scanf_float] PASSED
01. Task 03 - Unittests on native separated [tests-seq] PASSED
01. Task 03 - Unittests on native separated [tests-sht1x] PASSED
01. Task 03 - Unittests on native separated [tests-sixlowpan] PASSED
01. Task 03 - Unittests on native separated [tests-sixlowpan_ctx] PASSED
01. Task 03 - Unittests on native separated [tests-sixlowpan_sfr] PASSED
01. Task 03 - Unittests on native separated [tests-sock_util] PASSED
01. Task 03 - Unittests on native separated [tests-timex] PASSED
01. Task 03 - Unittests on native separated [tests-tsrb] PASSED
01. Task 03 - Unittests on native separated [tests-turo] PASSED
01. Task 03 - Unittests on native separated [tests-uri_parser] PASSED
01. Task 03 - Unittests on native separated [tests-ut_process] PASSED
01. Task 03 - Unittests on native separated [tests-uuid] PASSED
01. Task 03 - Unittests on native separated [tests-vfs] PASSED
01. Task 03 - Unittests on native separated [tests-zptr] PASSED
01. Task 03 - Unittests on native separated [tests-ztimer64] PASSED
01. Task 03 - Unittests on native separated [tests-ztimer] PASSED
01. Task 04 - Unittests on iotlab-m3 PASSED
03. Task 01 - ICMPv6 multicast echo on native PASSED
03. Task 02 - ICMPv6 link-local echo on native PASSED
03. Task 03 - ICMPv6 link-local echo on native (1 hour) PASSED
03. Task 04 - ICMPv6 stress test on native (1 hour) PASSED
03. Task 05 - ICMPv6 stress test on native (neighbor cache stress) PASSED
03. Task 06 - ICMPv6 link-local echo on native (IPv6 fragmentation) PASSED
04. Task 01 - ICMPv6 link-local echo with iotlab-m3 PASSED
04. Task 02 - ICMPv6 multicast echo with iotlab-m3/samr21-xpro FAILED
04. Task 03 - ICMPv6 echo with large payload PASSED
04. Task 04 - ICMPv6 echo with iotlab-m3/samr21-xpro 15 minutes PASSED
🟡 04. Task 05 (Experimental) - ICMPv6 multicast echo with samr21-xpro/cc2538 [lille] SKIPPED
🟡 04. Task 06 (Experimental)- ICMPv6 link-local echo with samr21-xpro/cc2538 [lille] SKIPPED
🟡 04. Task 07 (Experimental) - ICMPv6 multicast echo with samr21-xpro/zero + xbee SKIPPED
🟡 04. Task 08 (Experimental) - ICMPv6 echo with samr21-xpro/zero + xbee SKIPPED
04. Task 09 - ICMPv6 stress test on iotlab-m3 PASSED
04. Task 10 (Experimental) - ICMPv6 echo with large payload (IPv6 fragmentation) PASSED
🟡 04. Task 11 (Experimental) - ICMPv6 stress test on nrf802154 SKIPPED
🟡 04. Task 12 (Experimental) - ICMPv6 multicast echo with iotlab-m3/nrf802154 SKIPPED
🟡 04. Task 13 (Experimental) - ICMPv6 link-local echo with iotlab-m3/nrf802154 SKIPPED
05. Task 01 - ICMPv6 echo unicast addresess on native (default route) PASSED
05. Task 02 - ICMPv6 echo unicast addresess on iotlab-m3 (default route) PASSED
05. Task 03 - ICMPv6 echo unicast addresess on native (specific route) PASSED
05. Task 04 - ICMPv6 echo unicast addresess on iotlab-m3 (static route) PASSED
06. Task 01 - UDP on iotlab-m3 PASSED
06. Task 02 - UDP on iotlab-m3 (UDP port compression) PASSED
06. Task 03 - UDP on native (non-existent neighbor) PASSED
06. Task 04 - UDP on iotlab-m3 (non-existent neighbor) PASSED
06. Task 05 - Empty UDP on native PASSED
06. Task 06 - Empty UDP on iotlab-m3 PASSED
07. Task 01 - ICMPv6 echo on iotlab-m3 with three hops (static route) PASSED
07. Task 02 - UDP on iotlab-m3 with three hops (static route) PASSED
07. Task 03 - ICMPv6 echo on iotlab-m3 with three hops (RPL route) PASSED
07. Task 04 - UDP on iotlab-m3 with three hops (RPL route) PASSED
🟡 07. Task 05 (Experimental) - UDP with large payload on iotlab-m3 with three hops (RPL route) SKIPPED
08. Task 01 - ICMPv6 echo between native and Linux PASSED
08. Task 08 - UDP between GNRC and lwIP on iotlab-m3 PASSED
09. Task 01 - CORD Endpoint PASSED
09. Task 02 - Confirmable retries [False-0] PASSED
09. Task 02 - Confirmable retries [True-1] PASSED
09. Task 03 - Block1 PASSED
09. Task 04 - Block2 PASSED
09. Task 05 - Observe registration and notification PASSED
10. Task 01 - Destination unreachable - no route to destination PASSED
10. Task 02 - Destination unreachable - Beyond scope of source address PASSED
10. Task 03 - Destination unreachable - address unreachable (target node address) PASSED
10. Task 04 - Destination unreachable - address unreachable (neighbor cache miss) PASSED
10. Task 05 - Destination unreachable - port unreachable PASSED
10. Task 06 - Destination unreachable - port unreachable (large payload) PASSED
10. Task 07 - Packet too big PASSED
10. Task 08 - Time exceeded - hop limit exceeded in transit PASSED
10. Task 09 - Parameter problem - erroneous header field encountered PASSED
10. Task 10 - IPv6-in-IPv6 encapsulation PASSED
11. Task 01 - LoRaWAN example PASSED
11. Task 02 - OTAA join procedure PASSED
11. Task 03 - ABP join procedure PASSED
11. Task 04 - LoRaWAN device parameters persistence PASSED
11. Task 05 - GNRC LoRaWAN (Over The Air Activation) [otaa] FAILED
🟡 11. Task 06 - GNRC LoRaWAN (ABP) [abp] SKIPPED

@emmanuelsearch emmanuelsearch self-assigned this Jan 27, 2022
@fjmolinas
Copy link
Contributor

Something is off with task05 off spec11, its always failing on:

iface = lorawan_netif(node)

I can't think of a reason for this to fail here since it's at the beginning of the application and it works locally... I'm rather thinking that the off by one issue is back...

@fjmolinas
Copy link
Contributor

fjmolinas commented Jan 28, 2022

Test Report

Task Outcome
11. Task 05 - GNRC LoRaWAN (Over The Air Activation) [otaa] PASSED

@fjmolinas
Copy link
Contributor

Something is off with task05 off spec11, its always failing on:

iface = lorawan_netif(node)

I can't think of a reason for this to fail here since it's at the beginning of the application and it works locally... I'm rather thinking that the off by one issue is back...

As you can see when running locally it does not fail...

@fjmolinas
Copy link
Contributor

Something is off with task05 off spec11, its always failing on:

iface = lorawan_netif(node)

I can't think of a reason for this to fail here since it's at the beginning of the application and it works locally... I'm rather thinking that the off by one issue is back...

As you can see when running locally it does not fail...

Sadly I can't investigate at the moment, I subscribed to the action notifications, is the problem persist I will investigate later on

@emmanuelsearch
Copy link
Member Author

tested pkg_relic again for good measure (backport)

~/RIOT$ BOARD=native make -C tests/pkg_relic flash test PASSED
~/RIOT$ BOARD=native make -C tests/pkg_relic flash test
make: Entering directory '/home/emmanuel/RIOT/tests/pkg_relic'
Building application "tests_pkg_relic" for "native" with MCU "native".

"make" -C /home/emmanuel/RIOT/pkg/relic
/home/emmanuel/RIOT/dist/tools/cmake/generate-xcompile-toolchain.sh > /home/emmanuel/RIOT/build/pkg/relic/xcompile-toolchain.cmake
cmake -B/home/emmanuel/RIOT/tests/pkg_relic/bin/native/pkg-build/relic -H/home/emmanuel/RIOT/build/pkg/relic \
		-DCMAKE_TOOLCHAIN_FILE=/home/emmanuel/RIOT/build/pkg/relic/xcompile-toolchain.cmake \
		-DCHECK=off -DTESTS=0 -DBENCH=0 -DSHLIB=off -Wno-dev -DARCH=NONE -DOPSYS=NONE -DQUIET=off -DWSIZE=32 -DFP_PRIME=255 -DWITH="BN;MD;DV;FP;EP;CP;BC;EC" -DSEED=RIOTRND

-- Configuring RELIC 0.5.0...

-- Available switches (default = CHECK, VERBS, DOCUM):

   DEBUG=[off|on] Build with debugging support.
   PROFL=[off|on] Build with profiling support.
   CHECK=[off|on] Build with error-checking support.
   VERBS=[off|on] Build with detailed error messages.
   OVERH=[off|on] Build with overhead estimation.
   DOCUM=[off|on] Build documentation.
   STRIP=[off|on] Build only selected algorithms.
   QUIET=[off|on] Build with printing disabled.
   COLOR=[off|on] Build with colored output.
   BIGED=[off|on] Build with big-endian support.
   SHLIB=[off|on] Build shared library.
   STLIB=[off|on] Build static library.
   STBIN=[off|on] Build static binaries.
   AMALG=[off|on] Build amalgamation for better performance.
   AUSAN=[off|on] Build with ASan and UBSan (gcc/clang only).

-- Number of times each test or benchmark is ran (default = 50, 1000):

   TESTS=n        If n > 0, build automated tests and run them n times.
   BENCH=n        If n > 0, build automated benchmarks and run them n * n times.

-- Number of available processor cores (default = 1):

   CORES=n        If n > 1, enable multithreading support.

-- Available modules (default = ALL)

   WITH=BN       Multiple precision arithmetic.
   WITH=DV       Temporary double-precision digit vectors.
   WITH=FP       Prime field arithmetic.
   WITH=FPX      Prime extension field arithmetic.
   WITH=FB       Binary field arithmetic.
   WITH=EP       Elliptic curves over prime fields.
   WITH=EPX      Elliptic curves over quadratic extensions of prime fields.
   WITH=EB       Elliptic curves over binary fields.
   WITH=ED       Elliptic Edwards curves over prime fields.
   WTTH=EC       Elliptic curve cryptography.
   WITH=PB       Pairings over binary elliptic curves.
   WITH=PP       Pairings over prime elliptic curves.
   WTTH=PC       Pairing-based cryptography.
   WITH=BC       Block ciphers (symmetric encryption).
   WITH=MD       Message digests (hash functions).
   WITH=CP       Cryptographic protocols.
   WITH=MPC      Multi-party computation primitives.
   WITH=ALL      All of the above.
   Note: the programmer is responsible for not using unselected modules.

-- Available arithmetic backends (default = easy):

   ARITH=easy     Easy-to-understand and portable, but slow backend.
   ARITH=fiat     Backend based on code generated from Fiat-Crypto.
   ARITH=gmp      Backend based on GNU Multiple Precision library.

   ARITH=gmp-sec  Same as above, but using constant-time code.

-- Available memory-allocation policies (default = AUTO):

   ALLOC=AUTO     All memory is automatically allocated.
   ALLOC=DYNAMIC  All memory is allocated dynamically on demand.

-- Supported operating systems (default = LINUX):

   OPSYS=         Undefined/No specific operating system.
   OPSYS=LINUX    GNU/Linux operating system.
   OPSYS=FREEBSD  FreeBSD operating system.
   OPSYS=NETBSD   NetBSD operating system.
   OPSYS=MACOSX   Mac OS X operating system.
   OPSYS=WINDOWS  Windows operating system.
   OPSYS=DROID    Android operating system.
   OPSYS=DUINO    Arduino platform.

-- Supported multithreading APIs (default = UNDEF):

   MULTI=         No multithreading support.
   MULTI=OPENMP   Open Multi-Processing.
   MULTI=PTHREAD  POSIX threads.

-- Supported timers (default = HREAL):

   TIMER=         No timer.
   TIMER=HREAL    GNU/Linux realtime high-resolution timer.
   TIMER=HPROC    GNU/Linux per-process high-resolution timer.
   TIMER=HTHRD    GNU/Linux per-thread high-resolution timer.
   TIMER=ANSI     ANSI-compatible timer.
   TIMER=POSIX    POSIX-compatible timer.
   TIMER=CYCLE    Cycle-counting timer. (architecture-dependant)
   TIMER=PERF     GNU/Linux performance monitoring framework.

-- Prefix to identify this build of the library (default = ""):

   LABEL=relic

-- Available architectures (default = X64):

   ARCH=          No specific architecture (disable some features).
   ARCH=AVR       Atmel AVR ATMega128 8-bit architecture.
   ARCH=MSP       TI MSP430 16-bit architecture.
   ARCH=ARM       ARM 32-bit architecture.
   ARCH=X86       Intel x86-compatible 32-bit architecture.
   ARCH=X64       AMD x86_64-compatible 64-bit architecture.

-- Available word sizes (default = 64):

   WSIZE=8        Build a 8-bit library.
   WSIZE=16       Build a 16-bit library.
   WSIZE=32       Build a 32-bit library.
   WSIZE=64       Build a 64-bit library.

-- Byte boundary to align digit vectors (default = 1):

   ALIGN=1        Do not align digit vectors.
   ALIGN=2        Align digit vectors into 16-bit boundaries.
   ALIGN=8        Align digit vectors into 64-bit boundaries.
   ALIGN=16       Align digit vectors into 128-bit boundaries.

-- Multiple precision arithmetic configuration (BN module):

   ** Options for the multiple precision module (default = 1024,DOUBLE,0):

      BN_PRECI=n        The base precision in bits. Let w be n in words.
      BN_MAGNI=DOUBLE   A multiple precision integer can store 2w words.
      BN_MAGNI=CARRY    A multiple precision integer can store w+1 words.
      BN_MAGNI=SINGLE   A multiple precision integer can store w words.
      BN_KARAT=n        The number of Karatsuba steps.

   ** Available multiple precision arithmetic methods (default = COMBA;COMBA;MONTY;SLIDE;BASIC;BASIC):

      Integer multiplication:
      BN_METHD=BASIC    Schoolbook multiplication.
      BN_METHD=COMBA    Comba multiplication.

      Integer squaring:
      BN_METHD=BASIC    Schoolbook squaring.
      BN_METHD=COMBA    Comba squaring.
      BN_METHD=MULTP    Reuse multiplication for squaring.

      Modular reduction:
      BN_METHD=BASIC    Division-based modular reduction.
      BN_METHD=BARRT    Barrett modular reduction.
      BN_METHD=MONTY    Montgomery modular reduction.
      BN_METHD=RADIX    Diminished radix modular reduction.

      Modular exponentiation:
      BN_METHD=BASIC    Binary modular exponentiation.
      BN_METHD=MONTY    Montgomery powering ladder.
      BN_METHD=SLIDE    Sliding window modular exponentiation.

      Greatest Common Divisor:
      BN_METHD=BASIC    Euclid's standard GCD algorithm.
      BN_METHD=LEHME    Lehmer's fast GCD algorithm.
      BN_METHD=STEIN    Stein's binary GCD algorithm.

      Prime generation:
      BN_METHD=BASIC    Basic prime generation.
      BN_METHD=SAFEP    Safe prime generation.
      BN_METHD=STRON    Strong prime generation.

-- Prime field arithmetic configuration (FP module):

   ** Arithmetic precision of the prime field module (default = 256,0,off,off):

      FP_PRIME=n        The prime modulus size in bits.
      FP_KARAT=n        The number of Karatsuba levels.
      FP_PMERS=[off|on] Prefer Pseudo-Mersenne primes over random primes.
      FP_QNRES=[off|on] Use -1 as quadratic non-residue (make sure that p = 3 mod 8).
      FP_WIDTH=w        Width w in [2,6] of window processing for exponentiation methods.

   ** Available prime field arithmetic methods (default = BASIC;COMBA;COMBA;MONTY;MONTY;SLIDE):
      Field addition
      FP_METHD=BASIC    Schoolbook addition.
      FP_METHD=INTEG    Integrated modular addition.

      Field multiplication
      FP_METHD=BASIC    Schoolbook multiplication.
      FP_METHD=INTEG    Integrated modular multiplication.
      FP_METHD=COMBA    Comba multiplication.

      Field squaring
      FP_METHD=BASIC    Schoolbook squaring.
      FP_METHD=INTEG    Integrated modular squaring.
      FP_METHD=COMBA    Comba squaring.
      FP_METHD=MULTP    Reuse multiplication for squaring.

      Modular reduction
      FP_METHD=BASIC    Division-based reduction.
      FP_METHD=QUICK    Fast reduction modulo special form prime (2^t - c, c > 0).
      FP_METHD=MONTY    Montgomery modular reduction.

      Field inversion
      FP_METHD=BASIC    Inversion by Fermat's Little Theorem.
      FP_METHD=BINAR    Binary Inversion algorithm.
      FP_METHD=MONTY    Montgomery inversion.
      FP_METHD=EXGCD    Inversion by the Extended Euclidean algorithm.
      FP_METHD=DIVST    Constant-time inversion by division steps.
      FP_METHD=LOWER    Pass inversion to the lower level.

      Field exponentiation
      FP_METHD=BASIC    Binary exponentiation.
      FP_METHD=SLIDE    Sliding window exponentiation.
      FP_METHD=MONTY    Constant-time Montgomery powering ladder.

-- Prime extension field arithmetic configuration (FPX module):

   ** Available bilinear pairing methods (default = BASIC;BASIC;BASIC):
      Quadratic extension arithmetic:
      FPX_METHD=BASIC    Basic quadratic extension field arithmetic.
      FPX_METHD=INTEG    Quadratic extension field arithmetic with embedded modular reduction.

      Cubic extension arithmetic:
      FPX_METHD=BASIC    Basic cubic extension field arithmetic.
      FPX_METHD=INTEG    Cubic extension field arithmetic with embedded modular reduction.

      Extension field arithmetic:
      FPX_METHD=BASIC    Basic extension field arithmetic.
      FPX_METHD=LAZYR    Lazy-reduced extension field arithmetic.

-- Binary field arithmetic configuration (FB module):

   ** Options for the binary elliptic curve module (default = 283,0,on,on,on):

      FB_POLYN=n        The irreducible polynomial size in bits.
      FB_KARAT=n        The number of Karatsuba levels.
      FB_TRINO=[off|on] Prefer trinomials.
      FB_SQRTF=[off|on] Prefer square-root friendly polynomials.
      FB_PRECO=[off|on] Precompute multiplication table for sqrt(z).
      FB_WIDTH=w        Width w in [2,6] of window processing for exponentiation methods.

   ** Available binary field arithmetic methods (default = LODAH;QUICK;QUICK;BASIC;QUICK;QUICK;EXGCD;SLIDE;QUICK):

      Field multiplication:
      FB_METHD=BASIC    Right-to-left shift-and-add multiplication.
      FB_METHD=INTEG    Integrated modular multiplication.
      FB_METHD=LODAH    L�pez-Dahab comb multiplication with window of width 4.

      Field squaring:
      FB_METHD=BASIC    Bit manipulation squaring.
      FB_METHD=INTEG    Integrated modular squaring.
      FB_METHD=QUICK    Table-based squaring.

      Modular reduction:
      FB_METHD=BASIC    Shift-and-add modular reduction.
      FB_METHD=QUICK    Fast reduction modulo a trinomial or pentanomial.

      Field square root:
      FB_METHD=BASIC    Square root by repeated squaring.
      FB_METHD=QUICK    Fast square root extraction.

      Trace computation:
      FB_METHD=BASIC    Trace computation by repeated squaring.
      FB_METHD=QUICK    Fast trace computation.

      Quadratic equation solver:
      FB_METHD=BASIC    Solve a quadratic equation by half-trace computation.
      FB_METHD=QUICK    Fast solving with precomputed half-traces.

      Field inversion:
      FB_METHD=BASIC    Inversion by Fermat's Little Theorem.
      FB_METHD=BINAR    Binary Inversion algorithm.
      FB_METHD=ALMOS    Inversion by the Amost inverse algorithm.
      FB_METHD=EXGCD    Inversion by the Extended Euclidean algorithm.
      FB_METHD=ITOHT    Inversion by Itoh-Tsuji.
      FB_METHD=CTAIA    Constant-time almost inversion algorithm.
      FB_METHD=BRUCH    Hardware-friendly inversion by Brunner et al.
      FB_METHD=LOWER    Pass inversion to the lower level.

      Field exponentiation:
      FB_METHD=BASIC    Binary exponentiation.
      FB_METHD=SLIDE    Sliding window exponentiation.
      FB_METHD=MONTY    Constant-time Montgomery powering ladder.

      Iterated squaring/square-root:
      FB_METHD=BASIC    Iterated squaring/square-root by consecutive squaring/square-root.
      FB_METHD=QUICK    Iterated squaring/square-root by table-based method.

-- Prime elliptic curve arithmetic configuration (EP module):

   ** Options for the prime elliptic curve module (default = all on):

      EP_PLAIN=[off|on] Support for ordinary curves without endomorphisms.
      EP_SUPER=[off|on] Support for supersingular curves.
      EP_ENDOM=[off|on] Support for ordinary curves with endomorphisms.
      EP_MIXED=[off|on] Use mixed coordinates.
      EP_CTMAP=[off|on] Use contant-time SSWU and isogeny map for hashing.

      EP_PRECO=[off|on] Build precomputation table for generator.
      EP_DEPTH=w        Width w in [2,8] of precomputation table for fixed point methods.
      EP_WIDTH=w        Width w in [2,6] of window processing for unknown point methods.

   ** Available prime elliptic curve methods (default = PROJC;LWNAF;COMBS;INTER):

      Point representation:
      EP_METHD=BASIC    Affine coordinates.
      EP_METHD=PROJC    Homogeneous projective coordinates (complete formula).
      EP_METHD=JACOB    Jacobian projective coordinates.

      Variable-base scalar multiplication:
      EP_METHD=BASIC    Binary method.
      EP_METHD=LWNAF    Left-to-right window NAF method (GLV for Koblitz curves).

      Fixed-base scalar multiplication:
      EP_METHD=BASIC    Binary method for fixed point multiplication.
      EP_METHD=COMBS    Single-table Comb method for fixed point multiplication.
      EP_METHD=COMBD    Double-table Comb method for fixed point multiplication.
      EP_METHD=LWNAF    Left-to-right window NAF method (GLV for curves with endomorphisms).
      EP_METHD=LWREG    Left-to-right regular recoding method (GLV for curves with endomorphisms).

      Variable-base simultaneous scalar multiplication:
      EP_METHD=BASIC    Multiplication-and-addition simultaneous multiplication.
      EP_METHD=TRICK    Shamir's trick for simultaneous multiplication.
      EP_METHD=INTER    Interleaving of window NAFs (GLV for Koblitz curves).
      EP_METHD=JOINT    Joint sparse form.

-- Binary elliptic curve arithmetic configuration (EB module):

   ** Options for the binary elliptic curve module (default = on, w = 4):

      EB_PLAIN=[off|on] Support for ordinary curves without endomorphisms.
      EB_KBLTZ=[off|on] Support for Koblitz anomalous binary curves.
      EB_MIXED=[off|on] Use mixed coordinates.
      EB_PRECO=[off|on] Build precomputation table for generator.
      EB_DEPTH=w        Width w in [2,8] of precomputation table for fixed point methods.
      EB_WIDTH=w        Width w in [2,6] of window processing for unknown point methods.

   ** Available binary elliptic curve methods (default = PROJC;LWNAF;COMBS;INTER):

      Point representation:
      EB_METHD=BASIC    Affine coordinates.
      EB_METHD=PROJC    Projective coordinates (L�pez-Dahab for ordinary curves).

      Variable-base scalar multiplication:
      EB_METHD=BASIC    Binary double-and-add method.
      EB_METHD=LODAH    Lopez-Dahab constant-time point multiplication.
      EB_METHD=LWNAF    Left-to-right window (T)NAF method.
      EB_METHD=RWNAF    Right-to-left window (T)NAF method.
      EB_METHD=HALVE    Halving method.

      Fixed-base scalar multiplication:
      EB_METHD=BASIC    Binary method for fixed point multiplication.
      EB_METHD=COMBS    Single-table Comb method for fixed point multiplication.
      EB_METHD=COMBD    Double-table Comb method for fixed point multiplication.
      EB_METHD=LWNAF    Left-to-right window (T)NAF method.

      Variable-base simultaneous scalar multiplication:
      EB_METHD=BASIC    Multiplication-and-addition simultaneous multiplication.
      EB_METHD=TRICK    Shamir's trick for simultaneous multiplication.
      EB_METHD=INTER    Interleaving of window (T)NAFs.
      EB_METHD=JOINT    Joint sparse form.

-- Elliptic Edwards curve over prime fields arithmetic configuration (ED module):

   ** Options for the prime elliptic Edwards curve module (default = all on):
      ED_PRECO=[off|on] Build precomputation table for generator.
      ED_DEPTH=w        Width w in [2,6] of precomputation table for fixed point methods.
      ED_WIDTH=w        Width w in [2,6] of window processing for unknown point methods.

   ** Available prime elliptic Edwards curve methods (default = PROJC;LWNAF;COMBS;INTER):
      ED_METHD=BASIC    Affine coordinates.
      EP_METHD=PROJC  	 Simple projective twisted Edwards coordinates.
      EP_METHD=EXTND 	 Extended projective twisted Edwards coordinates.

      *** variable-base multiplication method ***
      ED_METHD=BASIC    Binary method.
      ED_METHD=SLIDE    Sliding window method.
      ED_METHD=MONTY    Montgomery ladder method.
      ED_METHD=LWNAF    Left-to-right window NAF method.
      EP_METHD=LWREG    Left-to-right regular recoding method (GLV for curves with endomorphisms).

      *** fixed-base multiplication method ***
      ED_METHD=BASIC    Binary method for fixed point multiplication.
      ED_METHD=COMBS    Single-table Comb method for fixed point multiplication.
      ED_METHD=COMBD    Double-table Comb method for fixed point multiplication.
      ED_METHD=LWNAF    Left-to-right window NAF method.

      *** variable-base simultaneous multiplication method ***
      ED_METHD=BASIC    Multiplication-and-addition simultaneous multiplication.
      ED_METHD=TRICK    Shamir's trick for simultaneous multiplication.
      ED_METHD=INTER    Interleaving of window NAFs (GLV for Koblitz curves).
      ED_METHD=JOINT    Joint sparse form.

      Note: these methods must be given in order. Ex: ED_METHD="EXTND;LWNAF;COMBD;TRICK"

-- Elliptic curve cryptography configuration (EC module):

   ** Options for the binary elliptic curve module (default = on):

      EC_ENDOM=[off|on] Prefer (prime or binary) curves with endomorphisms.

   ** Available elliptic curve methods (default = PRIME):

      EC_METHD=PRIME    Use prime curves.
      EC_METHD=CHAR2    Use binary curves.
      EC_METHD=EDDIE    Use prime Edwards curves.

-- Bilinear pairings arithmetic configuration (PP module):

   ** Available bilinear pairing methods (default = BASIC;OATEP):

      Extension field arithmetic:
      PP_METHD=BASIC    Basic extension field arithmetic.
      PP_METHD=LAZYR    Lazy reduced extension field arithmetic.

      Pairing computation:
      PP_METHD=TATEP    Tate pairing.
      PP_METHD=WEILP    Weil pairing.
      PP_METHD=OATEP    Optimal ate pairing.

-- Message digest configuration (MD module):

   ** Available hash functions (default = SH256):

      MD_METHD=SH224        SHA-224 hash function.
      MD_METHD=SH256        SHA-256 hash function.
      MD_METHD=SH384        SHA-384 hash function.
      MD_METHD=SH512        SHA-512 hash function.
      MD_METHD=B2S160       BLAKE2s-160 hash function.
      MD_METHD=B2S256       BLAKE2s-256 hash function.

-- Cryptographic protocols configuration (CP module):

   ** Options for the cryptographic protocols module (default = on, PKCS2):

      CP_CRT=[off|on] Support for faster CRT-based exponentiation in factoring-based cryptosystems.

      CP_RSAPD=BASIC    RSA with basic padding.
      CP_RSAPD=PKCS1    RSA with PKCS#1 v1.5 padding.
      CP_RSAPD=PKCS2    RSA with PKCS#1 v2.1 padding.

-- Available pseudo-random number generators (default = HASHD):

   RAND=HASHD     Use the HASH-DRBG generator. (recommended)
   RAND=RDRND     Use Intel RdRand instruction directly.
   RAND=UDEV      Use the operating system underlying generator.
   RAND=CALL      Override the generator with a callback.

-- Available random number generator seeders (default = UDEV):

   SEED=          Use a zero seed. (horribly insecure!)
   SEED=LIBC      Use rand()/random() functions. (insecure!)
   SEED=RDRND     Use Intel RdRand instruction directly.
   SEED=UDEV      Use non-blocking /dev/urandom. (recommended)
   SEED=WCGR      Use Windows' CryptGenRandom. (recommended)

   SEED=RIOTRND   Use RIOT's random module for seeding. (recommended on RIOT)
-- Configured operating system: NONE
-- Compiler flags:  -Wall   -DTHREAD_STACKSIZE_MAIN=\(6*THREAD_STACKSIZE_DEFAULT\) -DDEVELHELP -Werror -Wall -Wextra -pedantic -g3 -Og -U_FORTIFY_SOURCE -std=gnu11 -m32 -fstack-protector-all -ffunction-sections -fdata-sections -DDEBUG_ASSERT_VERBOSE -DRIOT_APPLICATION=\"tests_pkg_relic\" -DBOARD_NATIVE=\"native\" -DRIOT_BOARD=BOARD_NATIVE -DCPU_NATIVE=\"native\" -DRIOT_CPU=CPU_NATIVE -DMCU_NATIVE=\"native\" -DRIOT_MCU=MCU_NATIVE -fwrapv -Wstrict-overflow -fno-common -ffunction-sections -fdata-sections -Wall -Wextra -Wmissing-include-dirs -fno-delete-null-pointer-checks -Wstrict-prototypes -Wold-style-definition -gz -Wformat=2 -Wformat-overflow -Wformat-truncation -Wcast-align -include '/home/emmanuel/RIOT/tests/pkg_relic/bin/native/riotbuild/riotbuild.h' -Wno-unused-function -Wno-old-style-definition -Wno-unused-parameter -Wno-pedantic -Wno-array-parameter -Wno-unused-but-set-variable -Wno-stringop-overflow
-- Linker flags: -L/home/emmanuel/RIOT/build/pkg/relic/src/low/easy/ 
-- Configured /home/emmanuel/RIOT/build/pkg/relic/include/relic_conf.h.in
-- Configured /home/emmanuel/RIOT/build/pkg/relic/doc/relic.doxygen.in
-- Configuring done
-- Generating done
-- Build files have been written to: /home/emmanuel/RIOT/tests/pkg_relic/bin/native/pkg-build/relic
make -C /home/emmanuel/RIOT/tests/pkg_relic/bin/native/pkg-build/relic
[  0%] Built target arith_objs
[100%] Built target relic_s
"make" -C /home/emmanuel/RIOT/boards/native
"make" -C /home/emmanuel/RIOT/boards/native/drivers
"make" -C /home/emmanuel/RIOT/core
"make" -C /home/emmanuel/RIOT/cpu/native
"make" -C /home/emmanuel/RIOT/cpu/native/periph
"make" -C /home/emmanuel/RIOT/cpu/native/stdio_native
"make" -C /home/emmanuel/RIOT/drivers
"make" -C /home/emmanuel/RIOT/drivers/periph_common
"make" -C /home/emmanuel/RIOT/sys
"make" -C /home/emmanuel/RIOT/sys/auto_init
"make" -C /home/emmanuel/RIOT/sys/embunit
"make" -C /home/emmanuel/RIOT/sys/luid
"make" -C /home/emmanuel/RIOT/sys/random
"make" -C /home/emmanuel/RIOT/sys/test_utils/interactive_sync
   text	   data	    bss	    dec	    hex	filename
 121421	    692	  92796	 214909	  3477d	/home/emmanuel/RIOT/tests/pkg_relic/bin/native/tests_pkg_relic.elf
r
/home/emmanuel/RIOT/tests/pkg_relic/bin/native/tests_pkg_relic.elf /dev/ttyACM0 
RIOT native interrupts/signals initialized.
LED_RED_OFF
LED_GREEN_ON
RIOT native board initialized.
RIOT native hardware initialization complete.

Help: Press s to start test, r to print it is ready
READY
s
START
main(): This is RIOT! (Version: 2022.04-devel-177-g54620)
.
OK (1 tests)

make: Leaving directory '/home/emmanuel/RIOT/tests/pkg_relic'

@emmanuelsearch
Copy link
Member Author

emmanuelsearch commented Jan 28, 2022

and pkg_edhoc too, same reason.

~/RIOT$ BOARD=native make -C tests/pkg_edhoc_c flash test PASSED
~/RIOT$ BOARD=native make -C tests/pkg_edhoc_c/ flash test
make: Entering directory '/home/emmanuel/RIOT/tests/pkg_edhoc_c'
Building application "tests_pkg_edhoc_c" for "native" with MCU "native".

make[1]: Nothing to be done for 'prepare'.
"make" -C /home/emmanuel/RIOT/pkg/c25519
"make" -C /home/emmanuel/RIOT/build/pkg/c25519/src -f /home/emmanuel/RIOT/Makefile.base MODULE=c25519
"make" -C /home/emmanuel/RIOT/pkg/edhoc-c
"make" -C /home/emmanuel/RIOT/build/pkg/EDHOC-C/src/cbor -f /home/emmanuel/RIOT/Makefile.base MODULE=edhoc-c_cbor_nanocbor SRC=nanocbor.c
"make" -C /home/emmanuel/RIOT/build/pkg/EDHOC-C/src/crypto -f /home/emmanuel/RIOT/Makefile.base MODULE=edhoc-c_crypto_tinycrypt SRC=tinycrypt.c
"make" -C /home/emmanuel/RIOT/build/pkg/EDHOC-C/src -f /home/emmanuel/RIOT/Makefile.base MODULE=edhoc-c
"make" -C /home/emmanuel/RIOT/pkg/nanocbor
"make" -C /home/emmanuel/RIOT/build/pkg/nanocbor/src -f /home/emmanuel/RIOT/Makefile.base MODULE=nanocbor
"make" -C /home/emmanuel/RIOT/pkg/tinycrypt
"make" -C /home/emmanuel/RIOT/build/pkg/tinycrypt/lib/source/ -f /home/emmanuel/RIOT/pkg/tinycrypt/Makefile.tinycrypt -f /home/emmanuel/RIOT/Makefile.base MODULE=tinycrypt
"make" -C /home/emmanuel/RIOT/boards/native
"make" -C /home/emmanuel/RIOT/boards/native/drivers
"make" -C /home/emmanuel/RIOT/core
"make" -C /home/emmanuel/RIOT/cpu/native
"make" -C /home/emmanuel/RIOT/cpu/native/cli_eui_provider
"make" -C /home/emmanuel/RIOT/cpu/native/netdev_tap
"make" -C /home/emmanuel/RIOT/cpu/native/periph
"make" -C /home/emmanuel/RIOT/cpu/native/stdio_native
"make" -C /home/emmanuel/RIOT/drivers
"make" -C /home/emmanuel/RIOT/drivers/netdev
"make" -C /home/emmanuel/RIOT/drivers/periph_common
"make" -C /home/emmanuel/RIOT/sys
"make" -C /home/emmanuel/RIOT/sys/auto_init
"make" -C /home/emmanuel/RIOT/sys/div
"make" -C /home/emmanuel/RIOT/sys/evtimer
"make" -C /home/emmanuel/RIOT/sys/fmt
"make" -C /home/emmanuel/RIOT/sys/iolist
"make" -C /home/emmanuel/RIOT/sys/luid
"make" -C /home/emmanuel/RIOT/sys/net/application_layer/nanocoap
"make" -C /home/emmanuel/RIOT/sys/net/crosslayer/inet_csum
"make" -C /home/emmanuel/RIOT/sys/net/gnrc
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/netapi
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/netif
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/netif/ethernet
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/netif/hdr
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/netif/init_devs
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/netreg
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/network_layer/icmpv6
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/network_layer/icmpv6/echo
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/network_layer/ipv6
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/network_layer/ipv6/hdr
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/network_layer/ipv6/nib
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/network_layer/ndp
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/pkt
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/pktbuf
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/pktbuf_static
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/sock
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/sock/udp
"make" -C /home/emmanuel/RIOT/sys/net/gnrc/transport_layer/udp
"make" -C /home/emmanuel/RIOT/sys/net/link_layer/eui_provider
"make" -C /home/emmanuel/RIOT/sys/net/link_layer/l2util
"make" -C /home/emmanuel/RIOT/sys/net/netif
"make" -C /home/emmanuel/RIOT/sys/net/netutils
"make" -C /home/emmanuel/RIOT/sys/net/network_layer/icmpv6
"make" -C /home/emmanuel/RIOT/sys/net/network_layer/ipv6/addr
"make" -C /home/emmanuel/RIOT/sys/net/network_layer/ipv6/hdr
"make" -C /home/emmanuel/RIOT/sys/net/transport_layer/udp
"make" -C /home/emmanuel/RIOT/sys/ps
"make" -C /home/emmanuel/RIOT/sys/random
"make" -C /home/emmanuel/RIOT/sys/shell
"make" -C /home/emmanuel/RIOT/sys/shell/commands
"make" -C /home/emmanuel/RIOT/sys/test_utils/interactive_sync
"make" -C /home/emmanuel/RIOT/sys/xtimer
   text	   data	    bss	    dec	    hex	filename
 238857	  18729	 169732	 427318	  68536	/home/emmanuel/RIOT/tests/pkg_edhoc_c/bin/native/tests_pkg_edhoc_c.elf


/home/emmanuel/RIOT/tests/pkg_edhoc_c/bin/native/tests_pkg_edhoc_c.elf tap0 
RIOT native interrupts/signals initialized.
LED_RED_OFF
LED_GREEN_ON
RIOT native board initialized.
RIOT native hardware initialization complete.

NETOPT_RX_END_IRQ not implemented by driver
main(): This is RIOT! (Version: 2022.04-devel-177-g54620)
[initiator]: load ephemeral key: ONLY FOR TESTING
[initiator]: preset cid: ONLY FOR TESTING
[responder]: load ephemeral key: ONLY FOR TESTING
[responder]: preset cid: ONLY FOR TESTING
Starting the shell
> 
> 
> ifconfig
ifconfig
Iface  5  HWaddr: 1E:FA:DF:53:55:9B 
          L2-PDU:1500  MTU:1500  HL:64  RTR  
          RTR_ADV  
          Source address length: 6
          Link type: wired
          inet6 addr: fe80::1cfa:dfff:fe53:559b  scope: link  VAL
          inet6 group: ff02::2
          inet6 group: ff02::1
          inet6 group: ff02::1:ff53:559b
          
> init handshake fe80::1cfa:dfff:fe53:559b%5 5683
init handshake fe80::1cfa:dfff:fe53:559b%5 5683
[initiator]: sending msg1 (37 bytes):
0x0d 0x00 0x58 0x20 0x8d 0x3e 0xf5 0x6d 
0x1b 0x75 0x0a 0x43 0x51 0xd6 0x8a 0xc2 
0x50 0xa0 0xe8 0x83 0x79 0x0e 0xfc 0x80 
0xa5 0x38 0xa4 0x44 0xee 0x9e 0x2b 0x57 
0xe2 0x44 0x1a 0x7c 0x21 
[responder]: received an EDHOC message (len 37):
0x0d 0x00 0x58 0x20 0x8d 0x3e 0xf5 0x6d 
0x1b 0x75 0x0a 0x43 0x51 0xd6 0x8a 0xc2 
0x50 0xa0 0xe8 0x83 0x79 0x0e 0xfc 0x80 
0xa5 0x38 0xa4 0x44 0xee 0x9e 0x2b 0x57 
0xe2 0x44 0x1a 0x7c 0x21 
[responder]: sending msg2 (46 bytes):
0x58 0x20 0x52 0xfb 0xa0 0xbd 0xc8 0xd9 
0x53 0xdd 0x86 0xce 0x1a 0xb2 0xfd 0x7c 
0x05 0xa4 0x65 0x8c 0x7c 0x30 0xaf 0xdb 
0xfc 0x33 0x01 0x04 0x70 0x69 0x45 0x1b 
0xaf 0x35 0x37 0x4a 0xa3 0xf1 0xbd 0x5d 
0x02 0x8d 0x19 0xcf 0x3c 0x99 
[initiator]: received a message (46 bytes):
0x58 0x20 0x52 0xfb 0xa0 0xbd 0xc8 0xd9 
0x53 0xdd 0x86 0xce 0x1a 0xb2 0xfd 0x7c 
0x05 0xa4 0x65 0x8c 0x7c 0x30 0xaf 0xdb 
0xfc 0x33 0x01 0x04 0x70 0x69 0x45 0x1b 
0xaf 0x35 0x37 0x4a 0xa3 0xf1 0xbd 0x5d 
0x02 0x8d 0x19 0xcf 0x3c 0x99 
[initiator]: sending msg3 (20 bytes):
0x37 0x52 0xd5 0x53 0x5f 0x31 0x47 0xe8 
0x5f 0x1c 0xfa 0xcd 0x9e 0x78 0xab 0xf9 
0xe0 0xa8 0x1b 0xbf 
[responder]: received an EDHOC message (len 20):
0x37 0x52 0xd5 0x53 0x5f 0x31 0x47 0xe8 
0x5f 0x1c 0xfa 0xcd 0x9e 0x78 0xab 0xf9 
0xe0 0xa8 0x1b 0xbf 
[responder]: finalize exchange
[responder]: handshake successfully completed
[initiator]: handshake successfully completed
[initiator]: Transcript hash 4 (32 bytes):
0x7c 0xcf 0xde 0xdc 0x2c 0x10 0xca 0x03 
0x56 0xe9 0x57 0xb9 0xf6 0xa5 0x92 0xe0 
0xfa 0x74 0xdb 0x2a 0xb5 0x4f 0x59 0x24 
0x40 0x96 0xf9 0xa2 0xac 0x56 0xd2 0x07 

> init oscore
init oscore
OSCORE secret:
0x5b 0xb2 0xae 0xe2 0x5b 0x16 0x0e 0x7c 
0x6d 0x26 0x12 0xb0 0xa6 0x01 0x09 0x16 

OSCORE salt:
0x8e 0x44 0x92 0x10 0xe0 0x3b 0xc2 0x9d 

> resp oscore
resp oscore
OSCORE secret:
0x5b 0xb2 0xae 0xe2 0x5b 0x16 0x0e 0x7c 
0x6d 0x26 0x12 0xb0 0xa6 0x01 0x09 0x16 

OSCORE salt:
0x8e 0x44 0x92 0x10 0xe0 0x3b 0xc2 0x9d 

> 
make: Leaving directory '/home/emmanuel/RIOT/tests/pkg_edhoc_c'

@emmanuelsearch
Copy link
Member Author

Looks like we're good to go.

@fjmolinas
Copy link
Contributor

Should have be closed a while ago, release is already in

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants