We currently read and write M4 messages in little endian byte order.
In the spec, we're told to use big endian byte order: For VOTES_ONE_BYTE we MUST interpret A as an array of 8 bit unsigned integers, for VOTES_TWO_BYTE we MUST interpret A as an array of 16 bit unsigned integers encoded in big endian byte order.
Either the spec or the code should change. As far as I understand, there is no difference in doing big/little endian byte order. IMO we could therefore just change the spec, considering we already have code deployed on signet.
We currently read and write M4 messages in little endian byte order.
In the spec, we're told to use big endian byte order:
For VOTES_ONE_BYTE we MUST interpret A as an array of 8 bit unsigned integers, for VOTES_TWO_BYTE we MUST interpret A as an array of 16 bit unsigned integers encoded in big endian byte order.Either the spec or the code should change. As far as I understand, there is no difference in doing big/little endian byte order. IMO we could therefore just change the spec, considering we already have code deployed on signet.