With 'SecurityExchange' as an example, the unpack_fmt was
being computed as '<4c', and what should've been 'XCME' came
out as 'X'. It seems that python doesn't interpret the length
before the 'c'; so it's the same as '<c' (the endian is superfluous).
I put in a fix for type 'char' fields with length > 1 to have
a unpack_fmt of (e.g.) '4s' (no endian, either).
With 'SecurityExchange' as an example, the unpack_fmt was being computed as '<4c', and what should've been 'XCME' came out as 'X'. It seems that python doesn't interpret the length before the 'c'; so it's the same as '<c' (the endian is superfluous).
I put in a fix for type 'char' fields with length > 1 to have a unpack_fmt of (e.g.) '4s' (no endian, either).