mirror of https://github.com/wolfSSL/wolfBoot.git
173 lines
6.7 KiB
Makefile
173 lines
6.7 KiB
Makefile
test-delta-update:SIGN_ARGS?=--ecc256
|
|
test-delta-update:USBTTY?=/dev/ttyACM0
|
|
test-delta-update:EXPVER=tools/test-expect-version/test-expect-version /dev/ttyACM0
|
|
|
|
test-delta-update-ext:SIGN_ARGS?=--ecc256
|
|
test-delta-update-ext:USBTTY?=/dev/ttyACM0
|
|
test-delta-update-ext:TIMEOUT?=50
|
|
test-delta-update-ext:EXPVER=tools/test-expect-version/test-expect-version /dev/ttyACM0
|
|
|
|
test-delta-enc-update-ext:SIGN_ARGS=--ecc256 --sha256
|
|
test-delta-enc-update-ext:USBTTY?=/dev/ttyACM0
|
|
test-delta-enc-update-ext:TIMEOUT?=70
|
|
test-delta-enc-update-ext:EXPVER=tools/test-expect-version/test-expect-version /dev/ttyACM0
|
|
test-delta-enc-update-ext:PART_SIZE=131023
|
|
test-delta-enc-update-ext:APP=test-app/image_v7_signed_diff_encrypted.bin
|
|
|
|
test-delta-update: distclean factory.bin test-app/image.bin tools/uart-flash-server/ufserver tools/delta/bmdiff tools/test-expect-version/test-expect-version
|
|
@killall ufserver || true
|
|
@st-flash reset
|
|
@sleep 2
|
|
@dd if=/dev/zero of=zero.bin bs=4096 count=1
|
|
@st-flash write zero.bin 0x0800B000
|
|
@st-flash reset
|
|
@st-flash write zero.bin 0x0802B000
|
|
@st-flash reset
|
|
@st-flash erase || st-flash erase
|
|
@rm -f zero.bin
|
|
@diff .config config/examples/stm32wb-delta.config || (echo "\n\n*** Error: please copy config/examples/stm32wb-delta.config to .config to run this test\n\n" && exit 1)
|
|
$(SIGN_TOOL) $(SIGN_ARGS) --delta test-app/image_v1_signed.bin test-app/image.bin \
|
|
$(PRIVATE_KEY) 7
|
|
$(SIGN_TOOL) $(SIGN_ARGS) --delta test-app/image_v1_signed.bin test-app/image.bin \
|
|
$(PRIVATE_KEY) 2
|
|
@st-flash write factory.bin 0x08000000
|
|
@echo Expecting version '1'
|
|
@(test `$(EXPVER)` -eq 1) || (st-flash reset && test `$(EXPVER)` -eq 1)
|
|
@echo
|
|
@sleep 2
|
|
@st-flash write test-app/image_v7_signed_diff.bin 0x0802C000
|
|
@sleep 2
|
|
@st-flash reset
|
|
@echo Expecting version '7'
|
|
@(test `$(EXPVER)` -eq 7) || (st-flash reset && test `$(EXPVER)` -eq 7)
|
|
@sleep 2
|
|
@st-flash reset
|
|
@echo Expecting version '1'
|
|
@(test `$(EXPVER)` -eq 1)
|
|
@sleep 2
|
|
@st-flash erase || st-flash erase
|
|
@st-flash write factory.bin 0x08000000
|
|
@sleep 2
|
|
@st-flash reset
|
|
@echo Expecting version '1'
|
|
@test `$(EXPVER)` -eq 1
|
|
@sleep 2
|
|
@st-flash reset
|
|
@sleep 2
|
|
@st-flash write test-app/image_v2_signed_diff.bin 0x0802C000
|
|
@st-flash reset
|
|
@echo Expecting version '2'
|
|
@(test `$(EXPVER)` -eq 2) || (st-flash reset && test `$(EXPVER)` -eq 2)
|
|
@sleep 2
|
|
@st-flash reset
|
|
@echo Expecting version '2'
|
|
@(test `$(EXPVER)` -eq 2)
|
|
@sleep 2
|
|
@st-flash reset
|
|
@echo Expecting version '2'
|
|
@(test `$(EXPVER)` -eq 2)
|
|
@echo "TEST SUCCESSFUL"
|
|
|
|
test-delta-update-ext: distclean factory.bin test-app/image.bin tools/uart-flash-server/ufserver tools/delta/bmdiff tools/test-expect-version/test-expect-version
|
|
@killall ufserver || true
|
|
@st-flash reset
|
|
@dd if=/dev/zero of=zero.bin bs=4096 count=1
|
|
@st-flash write zero.bin 0x0800B000
|
|
@st-flash reset
|
|
@st-flash write zero.bin 0x0802B000
|
|
@st-flash reset
|
|
@st-flash erase || st-flash erase
|
|
@rm -f zero.bin
|
|
@diff .config config/examples/stm32wb-delta-ext.config || (echo "\n\n*** Error: please copy config/examples/stm32wb-delta-ext.config to .config to run this test\n\n" && exit 1)
|
|
$(SIGN_TOOL) $(SIGN_ARGS) --delta test-app/image_v1_signed.bin test-app/image.bin \
|
|
$(PRIVATE_KEY) 7
|
|
@(tools/uart-flash-server/ufserver test-app/image_v7_signed_diff.bin $(USBTTY))&
|
|
@st-flash reset
|
|
@st-flash write factory.bin 0x08000000
|
|
@st-flash reset
|
|
@sync
|
|
@echo Waiting $(TIMEOUT) seconds...
|
|
@sleep $(TIMEOUT)
|
|
@killall ufserver
|
|
@st-flash read boot_full.bin 0x0800C000 0x8000
|
|
@SIZE=`wc -c test-app/image_v7_signed.bin | awk '{$$1=$$1};1' | cut -d" " -f 1`; \
|
|
dd if=boot_full.bin of=boot.bin bs=1 count=$$SIZE
|
|
@diff boot.bin test-app/image_v7_signed.bin || (echo "TEST FAILED" && exit 1)
|
|
@rm boot.bin boot_full.bin
|
|
@echo "TEST SUCCESSFUL"
|
|
@echo
|
|
@echo
|
|
@echo TEST INVERSE
|
|
@(tools/uart-flash-server/ufserver test-app/image_v7_signed_diff.bin $(USBTTY))&
|
|
@st-flash reset
|
|
@sleep $(TIMEOUT)
|
|
@killall ufserver
|
|
@st-flash reset
|
|
@st-flash read boot_full.bin 0x0800C000 0x8000
|
|
@SIZE=`wc -c test-app/image_v1_signed.bin | awk '{$$1=$$1};1' | cut -d" " -f 1`; \
|
|
dd if=boot_full.bin of=boot.bin bs=1 count=$$SIZE
|
|
@diff boot.bin test-app/image_v1_signed.bin || (echo "TEST INVERSE FAILED" && exit 1)
|
|
@rm boot.bin boot_full.bin
|
|
@echo "TEST SUCCESSFUL"
|
|
|
|
test-delta-enc-update-ext: distclean factory.bin test-app/image.bin tools/uart-flash-server/ufserver tools/delta/bmdiff tools/test-expect-version/test-expect-version
|
|
@killall ufserver || true
|
|
@st-flash reset
|
|
@dd if=/dev/zero of=zero.bin bs=4096 count=1
|
|
@st-flash write zero.bin 0x0800B000
|
|
@st-flash reset
|
|
@st-flash write zero.bin 0x0802B000
|
|
@st-flash reset
|
|
@st-flash erase || st-flash erase
|
|
@rm -f zero.bin
|
|
@diff .config config/examples/stm32wb-delta-enc-ext.config || (echo "\n\n*** Error: please copy config/examples/stm32wb-delta-enc-ext.config to .config to run this test\n\n" && exit 1)
|
|
$(SIGN_TOOL) $(SIGN_ARGS) --delta test-app/image_v1_signed.bin \
|
|
$(ENCRYPT_STRING) --encrypt /tmp/enc_key.der \
|
|
test-app/image.bin \
|
|
$(PRIVATE_KEY) 7
|
|
@(tools/uart-flash-server/ufserver test-app/image_v7_signed_diff_encrypted.bin $(USBTTY))&
|
|
@st-flash write factory.bin 0x08000000
|
|
@sync
|
|
@sleep 4
|
|
@st-flash reset
|
|
@sleep 2
|
|
@echo Waiting $(TIMEOUT) seconds...
|
|
@st-flash reset
|
|
@sleep $(TIMEOUT)
|
|
@st-flash reset
|
|
@st-flash read boot_full.bin 0x0800C000 0x8000
|
|
@SIZE=`wc -c test-app/image_v7_signed.bin | awk '{$$1=$$1};1' | cut -d" " -f 1`; \
|
|
dd if=boot_full.bin of=boot.bin bs=1 count=$$SIZE
|
|
@diff boot.bin test-app/image_v7_signed.bin || (echo "TEST FAILED" && exit 1)
|
|
@rm boot.bin boot_full.bin
|
|
@echo "TEST SUCCESSFUL"
|
|
@sleep 1
|
|
@echo
|
|
@echo
|
|
@echo TEST INVERSE
|
|
@killall ufserver
|
|
@(tools/uart-flash-server/ufserver test-app/image_v7_signed_diff_encrypted.bin $(USBTTY))&
|
|
@st-flash reset
|
|
@sleep $(TIMEOUT)
|
|
@st-flash reset
|
|
@killall ufserver
|
|
@st-flash reset
|
|
@st-flash read boot_full.bin 0x0800C000 0x8000
|
|
@SIZE=`wc -c test-app/image_v1_signed.bin | awk '{$$1=$$1};1' | cut -d" " -f 1`; \
|
|
dd if=boot_full.bin of=boot.bin bs=1 count=$$SIZE
|
|
@diff boot.bin test-app/image_v1_signed.bin || (echo "TEST INVERSE FAILED" && exit 1)
|
|
@rm boot.bin boot_full.bin
|
|
@echo "TEST SUCCESSFUL"
|
|
|
|
test-delta-chacha-update-ext:
|
|
@printf "0123456789abcdef0123456789abcdef0123456789ab" > /tmp/enc_key.der
|
|
@make test-delta-enc-update-ext ENCRYPT_WITH_CHACHA=1
|
|
|
|
test-delta-aes128-update-ext:
|
|
@printf "0123456789abcdef0123456789abcdef" > /tmp/enc_key.der
|
|
@make test-delta-enc-update-ext ENCRYPT_WITH_AES128=1 ENCRYPT_STRING=--aes128
|
|
|
|
test-delta-aes256-update-ext:
|
|
@printf "0123456789abcdef0123456789abcdef0123456789abcdef" > /tmp/enc_key.der
|
|
@make test-delta-enc-update-ext ENCRYPT_WITH_AES256=1 ENCRYPT_STRING=--aes256
|