// Dmsg2(000, "ser src=%s dest=%s\n", src, dest);
}
+/* skip some bytes without writing anything */
+
+void serial_skip(uint8_t * * const ptr, int len)
+{
+ *ptr += len;
+}
/* unserial_int16 -- Unserialise a signed 16 bit integer. */
extern void serial_btime(uint8_t * * const ptr, const btime_t v);
extern void serial_float64(uint8_t * * const ptr, const float64_t v);
extern void serial_string(uint8_t * * const ptr, const char * const str);
+extern void serial_skip(uint8_t * * const ptr, int len);
extern int16_t unserial_int16(uint8_t * * const ptr);
extern uint16_t unserial_uint16(uint8_t * * const ptr);
/* Binary byte stream len bytes not requiring serialisation */
#define ser_bytes(x, len) memcpy(ser_ptr, (x), (len)), ser_ptr += (len)
+/* initialize len bytes to x using memset() */
+#define ser_set(x, len) memset(ser_ptr, (x), (len)), ser_ptr += (len)
+
/* Binary byte stream not requiring serialisation (length obtained by sizeof) */
#define ser_buffer(x) ser_bytes((x), (sizeof (x)))
/* Binary string not requiring serialization */
#define ser_string(x) serial_string(&ser_ptr, (x))
+/* skip some bytes without writing anything */
+#define ser_skip(len) serial_skip(&ser_ptr, len)
+
/* Unserialisation */
/* 8 bit signed integer */