void ixp_pu8(IxpMsg *msg, uint8_t *val);
void ixp_pu16(IxpMsg *msg, uint16_t *val);
void ixp_pu32(IxpMsg *msg, uint32_t *val);
void ixp_pu64(IxpMsg *msg, uint64_t *val);
These functions pack or unpack an unsigned integer of the specified size.
If msg->mode is MsgPack, the value pointed to by val is packed into the buffer at msg->pos. If msg->mode is MsgUnpack, the packed value at msg->pos is loaded into the location pointed to by val. In both cases, msg->pos is advanced by the number of bytes read or written. If the call would advance msg->pos beyond msg->end, msg->pos is advanced, but nothing is modified.