diff options
-rw-r--r-- | futility/cmd_update.c | 2 | ||||
-rwxr-xr-x | tests/futility/test_update.sh | 9 |
2 files changed, 10 insertions, 1 deletions
diff --git a/futility/cmd_update.c b/futility/cmd_update.c index 7e57b97d..47a734aa 100644 --- a/futility/cmd_update.c +++ b/futility/cmd_update.c @@ -1894,7 +1894,7 @@ static int do_update(int argc, char *argv[]) } else if (strcmp(optarg, "factory") == 0 || strcmp(optarg, "factory_install") == 0) { cfg.try_update = 0; - if (!is_write_protection_enabled(&cfg)) { + if (is_write_protection_enabled(&cfg)) { errorcnt++; Error("Mode %s needs WP disabled.\n", optarg); diff --git a/tests/futility/test_update.sh b/tests/futility/test_update.sh index 44530abb..119974f1 100755 --- a/tests/futility/test_update.sh +++ b/tests/futility/test_update.sh @@ -220,6 +220,15 @@ test_update "RW update (vboot1, B->B)" \ "${FROM_IMAGE}" "${TMP}.expected.b" \ -i "${TO_IMAGE}" -t --wp=1 --sys_props 1,0 --sys_props 0,0x10001,0 +# Test 'factory mode' +test_update "Factory mode update (WP=0)" \ + "${FROM_IMAGE}" "${TMP}.expected.full" \ + -i "${TO_IMAGE}" --wp=0 --sys_props 0,0x10001,1 + +test_update "Factory mode update (WP=1)" \ + "${FROM_IMAGE}" "!needs WP disabled" \ + -i "${TO_IMAGE}" --wp=1 --sys_props 0,0x10001,1 + # Test legacy update test_update "Legacy update" \ "${FROM_IMAGE}" "${TMP}.expected.legacy" \ |