From 2ad2338ef90bf661c19305afaf2fb648997b0c92 Mon Sep 17 00:00:00 2001 From: Jim Posen Date: Tue, 12 Mar 2019 00:20:40 -0700 Subject: [PATCH] serialize: Serialization support for big-endian 32-bit ints. --- src/serialize.h | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/serialize.h b/src/serialize.h index 2d0cfbbbf..b001ee132 100644 --- a/src/serialize.h +++ b/src/serialize.h @@ -89,6 +89,11 @@ template inline void ser_writedata32(Stream &s, uint32_t obj) obj = htole32(obj); s.write((char*)&obj, 4); } +template inline void ser_writedata32be(Stream &s, uint32_t obj) +{ + obj = htobe32(obj); + s.write((char*)&obj, 4); +} template inline void ser_writedata64(Stream &s, uint64_t obj) { obj = htole64(obj); @@ -118,6 +123,12 @@ template inline uint32_t ser_readdata32(Stream &s) s.read((char*)&obj, 4); return le32toh(obj); } +template inline uint32_t ser_readdata32be(Stream &s) +{ + uint32_t obj; + s.read((char*)&obj, 4); + return be32toh(obj); +} template inline uint64_t ser_readdata64(Stream &s) { uint64_t obj;