Skip to content

Commit c989a13

Browse files
committed
[CI] test automation on target
1 parent fd501b9 commit c989a13

4 files changed

Lines changed: 87 additions & 20 deletions

File tree

tools/ecc256/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ LD=gcc
55
CROSS_COMPILE=
66
WOLFBOOT_ROOT=../../
77
BOOTUTIL_ROOT=$(WOLFBOOT_ROOT)/lib/bootutil
8-
CFLAGS:=-lwolfssl -DHAVE_ECC -DHAVE_ASN -DWOLFCRYPT_ONLY -DTFM_TIMING_RESISTANT -DNO_RSA -DECC_TIMING_RESISTANT -DWOLFSSL_DER_TO_PEM -DWOLFSSL_VALIDATE_ECC_IMPORT -I$(WOLFBOOT_ROOT)/include
8+
CFLAGS:=-lwolfssl -DHAVE_ECC -DHAVE_ASN -DWOLFCRYPT_ONLY -DTFM_TIMING_RESISTANT -DNO_RSA -DECC_TIMING_RESISTANT -DWOLFSSL_DER_TO_PEM -DWOLFSSL_VALIDATE_ECC_IMPORT -DHAVE_ECC_KEY_EXPORT -I$(WOLFBOOT_ROOT)/include
99
LDFLAGS:=-lwolfssl
1010
LDFLAGS_EXTRA=
1111
EXTRA_LDFLAGS=

tools/ed25519/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
#
33
CROSS_COMPILE=
44
WOLFBOOT_ROOT=../../
5-
CFLAGS:=-lwolfssl -DHAVE_ED25519 -DHAVE_ASN -DWOLFCRYPT_ONLY -DTFM_TIMING_RESISTANT -DNO_RSA -DECC_TIMING_RESISTANT -DWOLFSSL_DER_TO_PEM -I$(WOLFBOOT_ROOT)/include -I$(WOLFBOOT_ROOT)/lib/wolfssl
5+
CFLAGS:=-lwolfssl -DHAVE_ECC_KEY_EXPORT -DHAVE_ED25519 -DHAVE_ASN -DWOLFCRYPT_ONLY -DTFM_TIMING_RESISTANT -DNO_RSA -DECC_TIMING_RESISTANT -DWOLFSSL_DER_TO_PEM -I$(WOLFBOOT_ROOT)/include -I$(WOLFBOOT_ROOT)/lib/wolfssl
66
LDFLAGS:=-lwolfssl
77
LDFLAGS_EXTRA=
88
EXTRA_LDFLAGS=

tools/ed25519/ed25519_sign.c

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,6 @@ int main(int argc, char *argv[])
172172
}
173173
wc_Sha256Final(&sha, shabuf);
174174
wc_ed25519_sign_msg(shabuf, 32, signature, &outlen, &key);
175-
wc_Sha256Free(&sha);
176175

177176

178177
*(ptr++) = HDR_SHA256;
@@ -186,7 +185,6 @@ int main(int argc, char *argv[])
186185
*(ptr++) = HDR_PUBKEY;
187186
*(ptr++) = SHA256_DIGEST_SIZE;
188187
memcpy(ptr, shabuf, SHA256_DIGEST_SIZE);
189-
wc_Sha256Free(&keyhash);
190188
ptr += SHA256_DIGEST_SIZE;
191189

192190
*(ptr++) = HDR_SIGNATURE;

tools/test.mk

Lines changed: 85 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -5,31 +5,100 @@ $(EXPVER):
55
make -C tools/test-expect-version
66

77
test-update: test-app/image.bin FORCE
8-
$(SIGN_TOOL) test-app/image.bin $(PRIVATE_KEY) $(TEST_UPDATE_VERSION) 131072
9-
dd if=test-app/image.bin.v$(TEST_UPDATE_VERSION).signed of=test-update.bin bs=1 count=131067
10-
printf "pBOOT" >> test-update.bin
11-
sudo st-term reset init || true
12-
sleep 2
13-
sudo st-flash --reset write test-update.bin 0x08040000
8+
@$(SIGN_TOOL) test-app/image.bin $(PRIVATE_KEY) $(TEST_UPDATE_VERSION) 131072 >/dev/null
9+
@dd if=test-app/image.bin.v$(TEST_UPDATE_VERSION).signed of=test-update.bin bs=1 count=131067
10+
@printf "pBOOT" >> test-update.bin
11+
@make test-reset
12+
@sleep 2
13+
@sudo st-flash --reset write test-update.bin 0x08040000 || \
14+
(make test-reset && sleep 1 && sudo st-flash --reset write test-update.bin 0x08040000) || \
15+
(make test-reset && sleep 1 && sudo st-flash --reset write test-update.bin 0x08040000)
16+
1417

1518
test-erase: FORCE
16-
sudo st-term reset init || true
17-
sleep 2
18-
sudo st-flash erase
19+
@echo Mass-erasing the internal flash:
20+
@make test-reset
21+
@sleep 2
22+
@sudo st-flash erase
1923

2024

2125
test-factory: factory.bin
22-
sudo st-term reset init || true
23-
sleep 2
24-
sudo st-flash --reset write factory.bin 0x08000000
26+
@make test-reset
27+
@sleep 2
28+
@sudo st-flash --reset write factory.bin 0x08000000 || \
29+
(make test-reset && sleep 1 && sudo st-flash --reset write factory.bin 0x08000000) || \
30+
(make test-reset && sleep 1 && sudo st-flash --reset write factory.bin 0x08000000)
2531

2632
test-reset: FORCE
27-
sudo st-info --reset || true
33+
@sudo st-info --reset
2834

2935

3036

3137
## Test cases:
3238

33-
test-00-forward-update: $(EXPVER) FORCE
34-
make test-factory
35-
$(EXPVER)
39+
test-01-forward-update-no-downgrade: $(EXPVER) FORCE
40+
@echo Creating and uploading factory image...
41+
@make test-factory
42+
@echo Expecting version '1'
43+
@$$(test `$(EXPVER)` -eq 1)
44+
@echo
45+
@echo Creating and uploading update image...
46+
@make test-update TEST_UPDATE_VERSION=4
47+
@echo Expecting version '4'
48+
@$$(test `$(EXPVER)` -eq 4)
49+
@echo
50+
@echo Creating and uploading update image...
51+
@make test-update TEST_UPDATE_VERSION=1
52+
@echo Expecting version '4'
53+
@$$(test `$(EXPVER)` -eq 4)
54+
@make clean
55+
@echo TEST PASSED
56+
57+
test-02-forward-update-allow-downgrade: $(EXPVER) FORCE
58+
@echo Creating and uploading factory image...
59+
@make test-factory ALLOW_DOWNGRADE=1
60+
@echo Expecting version '1'
61+
@$$(test `$(EXPVER)` -eq 1)
62+
@echo
63+
@echo Creating and uploading update image...
64+
@make test-update TEST_UPDATE_VERSION=4
65+
@echo Expecting version '4'
66+
@$$(test `$(EXPVER)` -eq 4)
67+
@echo
68+
@echo Creating and uploading update image...
69+
@make test-update TEST_UPDATE_VERSION=2
70+
@echo Expecting version '4'
71+
@$$(test `$(EXPVER)` -eq 2)
72+
@make clean
73+
@echo TEST PASSED
74+
75+
test-03-rollback: $(EXPVER) FORCE
76+
@echo Creating and uploading factory image...
77+
@make test-factory ALLOW_DOWNGRADE=1
78+
@echo Expecting version '1'
79+
@$$(test `$(EXPVER)` -eq 1)
80+
@echo
81+
@echo Creating and uploading update image...
82+
@make test-update TEST_UPDATE_VERSION=4
83+
@echo Expecting version '4'
84+
@$$(test `$(EXPVER)` -eq 4)
85+
@echo
86+
@echo Creating and uploading update image...
87+
@make test-update TEST_UPDATE_VERSION=5
88+
@echo Expecting version '5'
89+
@$$(test `$(EXPVER)` -eq 5)
90+
@echo
91+
@echo Resetting to trigger rollback...
92+
@make test-reset
93+
@$$(test `$(EXPVER)` -eq 4)
94+
@make clean
95+
@echo TEST PASSED
96+
97+
test-11-forward-update-no-downgrade-ECC: $(EXPVER) FORCE
98+
@make test-01-forward-update-no-downgrade SIGN=ECC256
99+
100+
test-13-rollback-ECC: $(EXPVER) FORCE
101+
@make test-03-rollback SIGN=ECC256
102+
103+
104+
test-all: clean test-01-forward-update-no-downgrade test-02-forward-update-allow-downgrade test-03-rollback test-11-forward-update-no-downgrade-ECC test-13-rollback-ECC

0 commit comments

Comments
 (0)