sysupdate: Don't ignore callout binary failure
authorAdrian Vovk <adrianvovk@gmail.com>
Sat, 31 Aug 2024 03:58:19 +0000 (23:58 -0400)
committerAdrian Vovk <adrianvovk@gmail.com>
Mon, 2 Sep 2024 15:02:29 +0000 (11:02 -0400)
commit2e03c0befbcdea49d0228b1a24cb1dc38b473908
tree0ce2a10a01c872cbfdf3ca5dd88153c1d09fe9d6
parent1e2d1a7202400e08a00782f32804fdc503259806
sysupdate: Don't ignore callout binary failure

Previously, if the callout binary (i.e. sd-pull, sd-import) failed
gracefully, we'd return its exit status from the event loop and thus
from run_callout(). Of course, exit status is a positive number in the
event of failure. Which means that we completely ignore the callout
binary failing, and instead continue using whatever it managed to
download before failing.

This is bad for obvious reasons, not the least of which is installing
a half-downloaded OS. This also means that we would completely ignore
failed signature checks 😬️
src/sysupdate/sysupdate-transfer.c