pub enum TbfParseError {
NotEnoughFlash,
UnsupportedVersion(u16),
ChecksumMismatch(u32, u32),
BadTlvEntry(usize),
BadProcessName,
InternalError,
TooManyEntries(usize),
}
Expand description
Error when parsing an app’s TBF header.
Variants§
NotEnoughFlash
Not enough bytes in the buffer to parse the expected field.
UnsupportedVersion(u16)
Unknown version of the TBF header.
ChecksumMismatch(u32, u32)
Checksum calculation did not match what is stored in the TBF header. First value is the checksum provided, second value is the checksum we calculated.
BadTlvEntry(usize)
One of the TLV entries did not parse correctly. This could happen if the
TLV.length does not match the size of a fixed-length entry. The usize
is the value of the “tipe” field.
BadProcessName
The app name in the TBF header could not be successfully parsed as a UTF-8 string.
InternalError
Internal kernel error. This is a bug inside of this library. Likely this
means that for some reason a slice was not sized properly for parsing a
certain type, which is something completely controlled by this library.
If the slice passed in is not long enough, then a get()
call will
fail and that will trigger a different error.
TooManyEntries(usize)
The number of variable length entries (for example the number of
TbfHeaderDriverPermission
entries in TbfHeaderV2Permissions
) is
too long for Tock to parse.
This can be fixed by increasing the number in TbfHeaderV2
.