OSDN Git Service

shared: Add put_be32()
authorClaudio Takahasi <claudio.takahasi@openbossa.org>
Thu, 20 Mar 2014 14:42:34 +0000 (11:42 -0300)
committerJohan Hedberg <johan.hedberg@intel.com>
Fri, 21 Mar 2014 08:36:15 +0000 (10:36 +0200)
Add helper to avoid possible unaligned memory access when handling
uint32 value using big-endian representation.

src/shared/util.h

index 0d0b45f..baeba91 100644 (file)
@@ -146,6 +146,11 @@ static inline void put_le32(uint32_t val, void *dst)
        put_unaligned(cpu_to_le32(val), (uint32_t *) dst);
 }
 
+static inline void put_be32(uint32_t val, const void *ptr)
+{
+       put_unaligned(cpu_to_be32(val), (uint32_t *) ptr);
+}
+
 static inline void put_le64(uint64_t val, const void *ptr)
 {
        put_unaligned(cpu_to_le64(val), (uint64_t *) ptr);