Re: test failure in 3.7

"Andreas Radke" <[email protected]> Mon, 05 May 2025 19:52:28 +0200
Newsgroups dev.linux.lists.iwd
Message-ID <[email protected]>
test-storage:

  CC       unit/test-storage.o
  CCLD     unit/test-storage
FAIL: unit/test-storage 1 - /storage/profile encryption
  CC       unit/test-client.o
  CCLD     unit/test-client
PASS: unit/test-client 1 - /Command/Find tokens
============================================================================
Testsuite summary for iwd 3.7
============================================================================
# TOTAL: 231
# PASS:  230
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0
============================================================================
See ./test-suite.log for debugging.
============================================================================
make[3]: *** [Makefile:3015: test-suite.log] Error 1
make[2]: *** [Makefile:3150: check-TESTS] Error 2
make[1]: *** [Makefile:3520: check-am] Error 2
make: *** [Makefile:3522: check] Error 2
==> ERROR: A failure occurred in check().

test-storage: unit/test-storage.c:41: test_short_encrypted_bytes: Assertion `__storage_decrypt(settings, "mySSID", &changed) < 0' failed.
TAP version 12
1..1
not ok 1 - /storage/profile encryption
FAIL: unit/test-storage 1 - /storage/profile encryption




test-wsc:

  CC       unit/test-wsc.o
  CCLD     unit/test-wsc
PASS: unit/test-wsc 1 - /wsc/iter/sanity-check
PASS: unit/test-wsc 2 - /wsc/parse/beacon 1
PASS: unit/test-wsc 3 - /wsc/parse/probe response 1
PASS: unit/test-wsc 4 - /wsc/parse/probe request 1
PASS: unit/test-wsc 5 - /wsc/build/probe request 1
PASS: unit/test-wsc 6 - /wsc/pin/valid pin
PASS: unit/test-wsc 7 - /wsc/pin/valid checksum
PASS: unit/test-wsc 8 - /wsc/pin/generate
PASS: unit/test-wsc 9 - /wsc/gen_uuid/1
PASS: unit/test-wsc 10 - /wsc/parse/m1 1
PASS: unit/test-wsc 11 - /wsc/parse/m1 2
PASS: unit/test-wsc 12 - /wsc/build/m1 1
PASS: unit/test-wsc 13 - /wsc/build/m1 2
FAIL: unit/test-wsc 14 - /wsc/parse/m2 1
FAIL: unit/test-wsc 15 - /wsc/parse/m2 2
PASS: unit/test-wsc 16 - /wsc/build/m2 1
PASS: unit/test-wsc 17 - /wsc/parse/m3 1
PASS: unit/test-wsc 18 - /wsc/build/m3 1
PASS: unit/test-wsc 19 - /wsc/parse/m4 1
PASS: unit/test-wsc 20 - /wsc/build/m4 1
PASS: unit/test-wsc 21 - /wsc/parse/m4 encrypted settings 1
PASS: unit/test-wsc 22 - /wsc/build/m4 encrypted settings 1
PASS: unit/test-wsc 23 - /wsc/parse/m5 1
PASS: unit/test-wsc 24 - /wsc/build/m5 1
PASS: unit/test-wsc 25 - /wsc/parse/m6 1
PASS: unit/test-wsc 26 - /wsc/build/m6 1
PASS: unit/test-wsc 27 - /wsc/parse/m6 encrypted settings 1
PASS: unit/test-wsc 28 - /wsc/build/m6 encrypted settings 1
PASS: unit/test-wsc 29 - /wsc/parse/m7 1
PASS: unit/test-wsc 30 - /wsc/build/m7 1
PASS: unit/test-wsc 31 - /wsc/parse/m8 1
PASS: unit/test-wsc 32 - /wsc/build/m8 1
PASS: unit/test-wsc 33 - /wsc/parse/m8 encrypted settings 1
PASS: unit/test-wsc 34 - /wsc/build/m8 encrypted settings 1
PASS: unit/test-wsc 35 - /wsc/parse/wsc_done 1
PASS: unit/test-wsc 36 - /wsc/build/wsc_done 1
FAIL: unit/test-wsc 37 - /wsc/diffie-hellman/generate pubkey 1
FAIL: unit/test-wsc 38 - /wsc/diffie-hellman/generate pubkey 2
FAIL: unit/test-wsc 39 - /wsc/handshake/PBC Handshake Test
FAIL: unit/test-wsc 40 - /wsc/retransmission/no fragmentation
FAIL: unit/test-wsc 41 - /wsc-r/handshake/PBC Handshake WPA2 passphrase test
FAIL: unit/test-wsc 42 - /wsc-r/handshake/PBC Handshake WPA2 PSK test
FAIL: unit/test-wsc 43 - /wsc-r/handshake/PBC Handshake Open test
...
See ./test-suite.log for debugging.
============================================================================
make[3]: *** [Makefile:3022: test-suite.log] Error 1
make[2]: *** [Makefile:3157: check-TESTS] Error 2
make[1]: *** [Makefile:3527: check-am] Error 2
make: *** [Makefile:3529: check] Error 2
==> ERROR: A failure occurred in check().

FAIL: unit/test-wsc
===================

test-wsc: unit/test-wsc.c:1124: wsc_test_parse_m2: Assertion `prime' failed.
test-wsc: unit/test-wsc.c:1124: wsc_test_parse_m2: Assertion `prime' failed.
test-wsc: unit/test-wsc.c:551: wsc_test_dh_generate_pubkey: Assertion `generator' failed.
test-wsc: unit/test-wsc.c:551: wsc_test_dh_generate_pubkey: Assertion `generator' failed.
Error initializing EAP for ifindex 1
test-wsc: unit/test-wsc.c:2062: wsc_test_pbc_handshake: Assertion `verify.response_sent' failed.
Error initializing EAP for ifindex 1
test-wsc: unit/test-wsc.c:2162: wsc_test_retransmission_no_fragmentation: Assertion `verify.response_sent' failed.
Error initializing EAP for ifindex 2
Error initializing EAP for ifindex 1
stale eapol state machines found
test-wsc: unit/test-wsc.c:2546: wsc_r_test_pbc_handshake: Assertion `wsc_data.sta_eap_failed && wsc_data.credentials_obtained' failed.
Error initializing EAP for ifindex 2
Error initializing EAP for ifindex 1
stale eapol state machines found
test-wsc: unit/test-wsc.c:2546: wsc_r_test_pbc_handshake: Assertion `wsc_data.sta_eap_failed && wsc_data.credentials_obtained' failed.
Error initializing EAP for ifindex 2
Error initializing EAP for ifindex 1
stale eapol state machines found
test-wsc: unit/test-wsc.c:2546: wsc_r_test_pbc_handshake: Assertion `wsc_data.sta_eap_failed && wsc_data.credentials_obtained' failed.
TAP version 12
1..43
ok 1 - /wsc/iter/sanity-check
PASS: unit/test-wsc 1 - /wsc/iter/sanity-check
ok 2 - /wsc/parse/beacon 1
PASS: unit/test-wsc 2 - /wsc/parse/beacon 1
ok 3 - /wsc/parse/probe response 1
PASS: unit/test-wsc 3 - /wsc/parse/probe response 1
ok 4 - /wsc/parse/probe request 1
PASS: unit/test-wsc 4 - /wsc/parse/probe request 1
ok 5 - /wsc/build/probe request 1
PASS: unit/test-wsc 5 - /wsc/build/probe request 1
ok 6 - /wsc/pin/valid pin
PASS: unit/test-wsc 6 - /wsc/pin/valid pin
ok 7 - /wsc/pin/valid checksum
PASS: unit/test-wsc 7 - /wsc/pin/valid checksum
ok 8 - /wsc/pin/generate
PASS: unit/test-wsc 8 - /wsc/pin/generate
ok 9 - /wsc/gen_uuid/1
PASS: unit/test-wsc 9 - /wsc/gen_uuid/1
ok 10 - /wsc/parse/m1 1
PASS: unit/test-wsc 10 - /wsc/parse/m1 1
ok 11 - /wsc/parse/m1 2
PASS: unit/test-wsc 11 - /wsc/parse/m1 2
ok 12 - /wsc/build/m1 1
PASS: unit/test-wsc 12 - /wsc/build/m1 1
ok 13 - /wsc/build/m1 2
PASS: unit/test-wsc 13 - /wsc/build/m1 2
not ok 14 - /wsc/parse/m2 1
FAIL: unit/test-wsc 14 - /wsc/parse/m2 1
not ok 15 - /wsc/parse/m2 2
FAIL: unit/test-wsc 15 - /wsc/parse/m2 2
ok 16 - /wsc/build/m2 1
PASS: unit/test-wsc 16 - /wsc/build/m2 1
ok 17 - /wsc/parse/m3 1
PASS: unit/test-wsc 17 - /wsc/parse/m3 1
ok 18 - /wsc/build/m3 1
PASS: unit/test-wsc 18 - /wsc/build/m3 1
ok 19 - /wsc/parse/m4 1
PASS: unit/test-wsc 19 - /wsc/parse/m4 1
ok 20 - /wsc/build/m4 1
PASS: unit/test-wsc 20 - /wsc/build/m4 1
ok 21 - /wsc/parse/m4 encrypted settings 1
PASS: unit/test-wsc 21 - /wsc/parse/m4 encrypted settings 1
ok 22 - /wsc/build/m4 encrypted settings 1
PASS: unit/test-wsc 22 - /wsc/build/m4 encrypted settings 1
ok 23 - /wsc/parse/m5 1
PASS: unit/test-wsc 23 - /wsc/parse/m5 1
ok 24 - /wsc/build/m5 1
PASS: unit/test-wsc 24 - /wsc/build/m5 1
ok 25 - /wsc/parse/m6 1
PASS: unit/test-wsc 25 - /wsc/parse/m6 1
ok 26 - /wsc/build/m6 1
PASS: unit/test-wsc 26 - /wsc/build/m6 1
ok 27 - /wsc/parse/m6 encrypted settings 1
PASS: unit/test-wsc 27 - /wsc/parse/m6 encrypted settings 1
ok 28 - /wsc/build/m6 encrypted settings 1
PASS: unit/test-wsc 28 - /wsc/build/m6 encrypted settings 1
ok 29 - /wsc/parse/m7 1
PASS: unit/test-wsc 29 - /wsc/parse/m7 1
ok 30 - /wsc/build/m7 1
PASS: unit/test-wsc 30 - /wsc/build/m7 1
ok 31 - /wsc/parse/m8 1
PASS: unit/test-wsc 31 - /wsc/parse/m8 1
ok 32 - /wsc/build/m8 1
PASS: unit/test-wsc 32 - /wsc/build/m8 1
ok 33 - /wsc/parse/m8 encrypted settings 1
PASS: unit/test-wsc 33 - /wsc/parse/m8 encrypted settings 1
ok 34 - /wsc/build/m8 encrypted settings 1
PASS: unit/test-wsc 34 - /wsc/build/m8 encrypted settings 1
ok 35 - /wsc/parse/wsc_done 1
PASS: unit/test-wsc 35 - /wsc/parse/wsc_done 1
ok 36 - /wsc/build/wsc_done 1
PASS: unit/test-wsc 36 - /wsc/build/wsc_done 1
not ok 37 - /wsc/diffie-hellman/generate pubkey 1
FAIL: unit/test-wsc 37 - /wsc/diffie-hellman/generate pubkey 1
not ok 38 - /wsc/diffie-hellman/generate pubkey 2
FAIL: unit/test-wsc 38 - /wsc/diffie-hellman/generate pubkey 2
not ok 39 - /wsc/handshake/PBC Handshake Test
FAIL: unit/test-wsc 39 - /wsc/handshake/PBC Handshake Test
not ok 40 - /wsc/retransmission/no fragmentation
FAIL: unit/test-wsc 40 - /wsc/retransmission/no fragmentation
not ok 41 - /wsc-r/handshake/PBC Handshake WPA2 passphrase test
FAIL: unit/test-wsc 41 - /wsc-r/handshake/PBC Handshake WPA2 passphrase test
not ok 42 - /wsc-r/handshake/PBC Handshake WPA2 PSK test
FAIL: unit/test-wsc 42 - /wsc-r/handshake/PBC Handshake WPA2 PSK test
not ok 43 - /wsc-r/handshake/PBC Handshake Open test
FAIL: unit/test-wsc 43 - /wsc-r/handshake/PBC Handshake Open test



Do you need anything else? What do you want me to show you from such chroot
builds?

-Andy
94657AB20F2A092B.asc (application/pgp-keys, 10.2 KB)
-----BEGIN PGP PUBLIC KEY BLOCK-----

mQENBE3OfyEBCAC7ZK3KaEXXs7GtiFLAp4RgcirXDdAKztcVAqkvBx/nxALf1MeH
vtlPHRf/d0yYMqI6r1b5Sev+9wrG/4FVRa72AdGkteFrALok39xv154XCIhrotZq
07Eo+xQaQhMS6RotX7aRU45cjJwsV1PXrD+8uxTAsufG3qdpPnUPpDAnV1+fVVCb
0iAW+6MDKGgbatXHC4K8N7neixiRx2cpJeJEQ8dleo9Fm7fDb6g8Oz4B8jCTnPbT
pyTaLGA7M4zaTzNHTzXMUMajLMEjHOdTuE7zZhWqNMuWwIE9BccDp8Siybev4n1F
t7vCSL8UZXSY5icDh3cFLTBWmGVWJZNQn9vVABEBAAG0JUFuZHJlYXMgUmFka2Ug
PGFuZHlydHJAYXJjaGxpbnV4Lm9yZz6JAZUEEwEIAIkFgmLK/YsECwkIBwkQlGV6
sg8qCStHFAAAAAAAHgAgc2FsdEBub3RhdGlvbnMuc2VxdW9pYS1wZ3Aub3JnkQej
hvKboOgVCqh/8uurlfTedxDmXg6L0one9QLjdZsDFQgKBBYCAwECF4ACGQECGwMC
HgEWIQStyKH8wV4B1FMQQZ6UZXqyDyoJKwAAz1kH/R+vYLWlaFVYcqZTyFIe0iQL
PW6Aeh99CHx+kLaYG2VSzQiKjkCIg9YCOIhZGxfYOGuSn1KjssXJywKLNSGgJCUS
UP5vShdQ6v2cltMwdYJEhjLyo4wT0y/OgaMs14weG0Y8aOkoMIUekeb5RukrNzrb
ANiobfZt666tcocqel3+OjRT8vyxYbqDHr7bLw6DFDJE8oxABjnWdVjigCb4ORK6
pkG0Ly8QfU2v/N8rDtW5ZwgRraF64gSJp+N3bAE3W9XDp7huje0hr0JB4MDqo4Td
UcbH+sgNcyvOrzT03fj8D10Oqk7yrgWd1UIqfPYeJTqi0QnzMaozfgrB4+t/n2y0
IEFuZHJlYXMgUmFka2UgPGEucmFka2VAYXJjb3IuZGU+iQE2BDABCAAgFiEErcih
/MFeAdRTEEGelGV6sg8qCSsFAlwY+hQCHSAACgkQlGV6sg8qCSu7KwgAkn4TWrFn
V+u4EVZuyeymwv+8FNAX9LDaTswSfYJ3+JclVlZS0pYR+7NHa2IwrlbgqhOsCZqG
GAVVz0cTYSlWiFNzJ2d7gw9LA1tLe6aU7pDvzP8/9AKTIj5cz36M0kzr/BGhK4vH
YT5zs9fVN/AB63414c/DUoTBXBOsr9xhfzG7ANOcqtqdsbrvJIkasqmHJMn5MLZQ
mUpcjQC2FkaKbAZoQCFanFjWecNFEHsBpoSPrfr707+s7x+yUetw7kZuZin72ctu
rsbgAjcHDB9Q3zbbRZJSrEMrw7T/e9UVIaVaMkv5Nqyds4b76fZ35OeVj1iebSjD
U+T3GE1/w4GYGrQgQW5kcmVhcyBSYWRrZSA8YW5keXJhZGtlQHdlYi5kZT6JATYE
MAEIACAWIQStyKH8wV4B1FMQQZ6UZXqyDyoJKwUCXBj6FAIdIAAKCRCUZXqyDyoJ
K2W4B/9n9bsa7SAgNaJjYegl70VDA0hEB/oPGBe0MVuOiaEsTx/kv1FVrVAn8YAL
WgbWyn/Quu51AJqDVRuRz4S2qkrghADt5u5u9jq2yCXMl8UhZVaUYRYv15E0mkqA
OtKMddlr8B7g+IyG6QblbQA5/SaYj0HgvkRkKgmcHeuEZkrP52B2JIl1vfnfuBNL
eCEJ9EqSRCKATarxFgrX288QKElt7YDed8XRifXFmn0tc35xK7TvK3XLOeFQu86M
ES9oDliDwDqug6rnBANp60yGNL13yH8tBXgLZjDQK2F96C0ZksAGnUR+9OJvT81h
yTuQrDuD+3LAXg6rbAaEjKGGZE04tCVBbmRyZWFzIFJhZGtlIDxhbmRyZWFzLnJh
ZGtlQG1haWwuZGU+iQE2BDABCAAgFiEErcih/MFeAdRTEEGelGV6sg8qCSsFAlwY
+hQCHSAACgkQlGV6sg8qCSsRxQf8C/ma65ySfo6FJkXHspC/RM6lKpYzt+6YJQ2O
EafelHxOwDqkDOBy5YzOs6Lb2dpOG3fbmx9wfslN6CsXr98Hpb+IxKjz4a6VQedQ
9J/ep9sdKTDKO0tLyhmnwsxFCWLfA+//z3EB08A0GVHgDDDny6UOxhCFlTXTbp2F
hc10R99PuFSSvDTpf6HtT5yP3i8uv0hUkZmsFQ0Jwvs/RbYMq/QZiNCE6ohxdk6J
JcZ0P4Oq9Elq+AkZK7iFvGu8RaQY5aa/WH2b2xEqsgPRMc6/GCTeCUjfMKp3m55n
5ANp3rfx9clRODUduUXuhZ8O8XqSh0qXg9nByTAgjYtO4aQ8arQoQW5kcmVhcyBS
YWRrZSA8YW5kcmVhcy5yYWRrZUBmcmVlbmV0LmRlPokBNgQwAQgAIBYhBK3IofzB
XgHUUxBBnpRlerIPKgkrBQJcGPoUAh0gAAoJEJRlerIPKgkrb1AH/idwmvQLnhlJ
IACUymnBuf8C2RoGX5zdGAH+ZV5xTnE/sN+tHBMCbbkBLM++aTejXJR1vqjfcfJU
w1ON83CxjVrKoUbM8M/yQPISF1wqN4wX9wnFZjYOhLsa3adDjLX91u15lhEJ5rYX
qbv6iNbPtYYMoavnY2VUxaPMJxE3P7VgSxm5qmkr9VscSXiRaQwaXn0/oIFnWCpf
u2udD73VHYFfH6SlsOq8tkZP0FAjUskhLOVX5bOGWdTWelUABqP0ta4yhdXLkrfT
N2KY/5RYVXkID3JFKuvQmKnHQ9MEw8g8WWTdsG3BJ9Xm2CR0sZ/tfo8kaFTzGe64
eOicvJ+atozRzfHN7wEQAAEBAAAAAAAAAAAAAAAA/9j/4AAQSkZJRgABAQAAAQAB
AAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0aHBwgJC4nICIs
IxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy
MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAAR
CACUAHkDASIAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL
/8QAtRAAAgEDAwIEAwUFBAQAAAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0Kx
wRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNk
ZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKztLW2t7i5
usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEAAwEB
AQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAEC
AxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygp
KjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImK
kpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk
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
=UEx3
-----END PGP PUBLIC KEY BLOCK-----
signature.asc (application/pgp-signature, 516 B)
-----BEGIN PGP SIGNATURE-----

iQFKBAABCgA0FiEErcih/MFeAdRTEEGelGV6sg8qCSsFAmgY+twWHGFuZHlydHJA
YXJjaGxpbnV4Lm9yZwAKCRCUZXqyDyoJK27VCACMqw05WJ3kWf+4p+usznOdmFIs
F6TaHpspgLGby3GFl1pvO44bd5yzJ0kZoZ6RxfaoKaURvJa6S0nVyXuQ8VFsJIuT
G76MuhY2idCxJAT9Aw/ni+zWAmpuD4uixeyvQOYQXDODA59yt7uhvtkNX8E4byhz
WUMg8GOw4AjEIP6eAAtpnbGwS0bDO0523CEU2J/e9Oo0yq+GebZ4ZiIGYpg8K6z2
XQ7UW4gcArfUwK76+t9V6UA1+j7P7HTML4Eu6qkcLxN5VpV7c5t7GRDPahNTSi8V
DtrUVmSA4llvORzTqUEePInp7dapbUcW09GHJgMbh+lAwKR3TnNRcgf8YctN
=0jPn
-----END PGP SIGNATURE-----