diff options
author | Luke T. Shumaker <lukeshu@lukeshu.com> | 2025-01-19 15:32:10 -0700 |
---|---|---|
committer | Luke T. Shumaker <lukeshu@lukeshu.com> | 2025-01-19 15:43:56 -0700 |
commit | 0ab9da9bc3c6cdaef00b7202ba03eff917b44c95 (patch) | |
tree | 9b5a167833b9caa4f8f829c9bc7a3711a1cd837a /lib9p/internal.h | |
parent | abc16ce9b5ba132769e14b4b3d649d79a92effc3 (diff) |
lib9p: Use <libmisc/endian.h>
Diffstat (limited to 'lib9p/internal.h')
-rw-r--r-- | lib9p/internal.h | 54 |
1 files changed, 1 insertions, 53 deletions
diff --git a/lib9p/internal.h b/lib9p/internal.h index 8ac5ebd..eb67992 100644 --- a/lib9p/internal.h +++ b/lib9p/internal.h @@ -13,6 +13,7 @@ #define SSIZE_MAX (SIZE_MAX >> 1) #endif +#include <libmisc/endian.h> #include <libmisc/macro.h> #include <lib9p/9p.h> @@ -98,33 +99,6 @@ bool _lib9p_stat_marshal(struct _marshal_ctx *ctx, struct lib9p_stat *val); /* unmarshal utilities ********************************************************/ -LM_ALWAYS_INLINE static uint8_t decode_u8le(uint8_t *in) { - return in[0]; -} -LM_ALWAYS_INLINE static uint16_t decode_u16le(uint8_t *in) { - return (((uint16_t)(in[0])) << 0) - | (((uint16_t)(in[1])) << 8) - ; -} -LM_ALWAYS_INLINE static uint32_t decode_u32le(uint8_t *in) { - return (((uint32_t)(in[0])) << 0) - | (((uint32_t)(in[1])) << 8) - | (((uint32_t)(in[2])) << 16) - | (((uint32_t)(in[3])) << 24) - ; -} -LM_ALWAYS_INLINE static uint64_t decode_u64le(uint8_t *in) { - return (((uint64_t)(in[0])) << 0) - | (((uint64_t)(in[1])) << 8) - | (((uint64_t)(in[2])) << 16) - | (((uint64_t)(in[3])) << 24) - | (((uint64_t)(in[4])) << 32) - | (((uint64_t)(in[5])) << 40) - | (((uint64_t)(in[6])) << 48) - | (((uint64_t)(in[7])) << 56) - ; -} - static inline bool _is_valid_utf8(uint8_t *str, size_t len, bool forbid_nul) { uint32_t ch; uint8_t chlen; @@ -149,30 +123,4 @@ static inline bool _is_valid_utf8(uint8_t *str, size_t len, bool forbid_nul) { #define is_valid_utf8(str, len) _is_valid_utf8(str, len, false) #define is_valid_utf8_without_nul(str, len) _is_valid_utf8(str, len, true) -/* marshal utilities **********************************************************/ - -LM_ALWAYS_INLINE static void encode_u8le(uint8_t in, uint8_t *out) { - out[0] = in; -} -LM_ALWAYS_INLINE static void encode_u16le(uint16_t in, uint8_t *out) { - out[0] = (uint8_t)((in >> 0) & 0xFF); - out[1] = (uint8_t)((in >> 8) & 0xFF); -} -LM_ALWAYS_INLINE static void encode_u32le(uint32_t in, uint8_t *out) { - out[0] = (uint8_t)((in >> 0) & 0xFF); - out[1] = (uint8_t)((in >> 8) & 0xFF); - out[2] = (uint8_t)((in >> 16) & 0xFF); - out[3] = (uint8_t)((in >> 24) & 0xFF); -} -LM_ALWAYS_INLINE static void encode_u64le(uint64_t in, uint8_t *out) { - out[0] = (uint8_t)((in >> 0) & 0xFF); - out[1] = (uint8_t)((in >> 8) & 0xFF); - out[2] = (uint8_t)((in >> 16) & 0xFF); - out[3] = (uint8_t)((in >> 24) & 0xFF); - out[4] = (uint8_t)((in >> 32) & 0xFF); - out[5] = (uint8_t)((in >> 40) & 0xFF); - out[6] = (uint8_t)((in >> 48) & 0xFF); - out[7] = (uint8_t)((in >> 56) & 0xFF); -} - #endif /* _LIB9P_INTERNAL_H_ */ |