#include uint32_t le32read(uint8_t buf[static 4]) { return ((uint32_t)buf[0] | (uint32_t)buf[1] << 8 | (uint32_t)buf[2] << 16 | (uint32_t)buf[3] << 24); } uint32_t be32read(uint8_t buf[static 4]) { return ((uint32_t)buf[0] << 24 | (uint32_t)buf[1] << 16 | (uint32_t)buf[2] << 8 | (uint32_t)buf[3]); } uint32_t leread32(uint32_t x) { return (le32read((uint8_t*)&x)); } uint32_t beread32(uint32_t x) { return (be32read((uint8_t*)&x)); }