3 ms·
> because almost no-one (and in particular no devs) really run big-endian CPUs anymore It is a network protocol, just put a proxy between client and server tha
by josefx 4y ago
> because almost no-one (and in particular no devs) really run big-endian CPUs anymore
It is a network protocol, just put a proxy between client and server that byte swaps the affected fields and changes the endian flag. No need for hardware.
- lallysingh 4y ago.. so can byteswapped clients run through that?
- rbanffy 4y agoThey should. Such proxy would allow any mismatched client and server combinations. And, considering how X makes the detection, the matching could be automatic.
- josephg 4y agoBetter yet: Throw out the endian flag and define the network protocol as always being big/little endian. Network protocols which can swap endian order is a terrible idea. Let it die. Convert from bytes in (whatever) endian order to bytes in memory when data is read and written using a uint32_t parse_le_uint32(uint8_t[4]) method or something similar.