pub fn read_u32<B: ByteSlice>(buf: B) -> Result<(u32, usize), Error>