Julius Werner has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/33986 )
Change subject: util/cbfstool: Use 64 bit integers in multiplications ......................................................................
Patch Set 1:
It is possible for the two u16 to overflow an s32, which will lead to a negative number (which is already UB), and then converting to a u64 will sign-extend it to an extremely large integer. Eg.
Right, sorry, wasn't thinking.
For the size_t issue I suppose 64 bits itself doesn't matter as long as it is at least a u32, which can always hold a u16 * u16. I think this should be true on all platforms we support. I'll clarify this in the commit message.
I still think a fixed-width type would be more appropriate there to clarify your intention, even though size_t should work in practice.