max_inbound_payload_size, max_outbound_payload_size and port are
assembled byte by byte using shifts. This works correctly in both
little and big endian and doing a subsequent byte swap is wrong.
To highlight this issue I dumped the values on a big endian machine:
And after this fix: