Closed PropGit closed 7 years ago
dbetz: It looks to me as though [the loader is] just doing a checksum of what [PropLoader] sent [it] so even a bad image will create a good checksum. No one is comparing it with the checksum in the image header as far as I can tell. PropLoader computes the value it expects to receive from [the loader] but that computation is independent of the value in the .binary header.
PropGit: I think you're right, yes. I have a faint memory of saving space in the second stage loader by having it compute and report but not have special logic to test validity... it was designed to rely on the sender to verify that it's the correct checksum. That's partly because I built the original tool to verify the image before it even bothered transmitting it to the Propeller, thus it would have errored out before the second stage loader even got involved.
We'll have to enhance PropLoader to do a sanity check on the image.
Please enhance PropLoader to perform a sanity check on the firmware image and throw an error if something is wrong, or use the verified checksum as the value to check against for the second-stage loader's checksum verification response.
PropLoader v1.0-11 was updated to include some sanity checks and corresponding error messages. Some final issues exist, noted in Issue #22 , but this issue #18 is considered closed.
A very mangled image is allowed to download, and worse, indicates it downloads successfully. Something is very wrong here.
PropGit will explore this further.
This image is what was tested:
and PropLoader displays this: