Lines Matching refs:end
57 #define __decode_and_drop_type(p, end, type, bad) \
59 if (*p + sizeof(type) > end) \
64 #define __decode_and_drop_set(p, end, type, bad) \
68 ceph_decode_32_safe(p, end, n, bad); \
70 ceph_decode_need(p, end, need, bad); \
74 #define __decode_and_drop_map(p, end, ktype, vtype, bad) \
78 ceph_decode_32_safe(p, end, n, bad); \
80 ceph_decode_need(p, end, need, bad); \
85 static int __decode_and_drop_compat_set(void **p, void* end)
91 ceph_decode_need(p, end, sizeof(u64) + sizeof(u32), bad);
98 ceph_decode_need(p, end, sizeof(u64) + sizeof(u32),
102 ceph_decode_need(p, end, len, bad);
117 struct ceph_mdsmap *ceph_mdsmap_decode(void **p, void *end, bool msgr2)
131 ceph_decode_need(p, end, 1 + 1, bad);
136 ceph_decode_32_safe(p, end, mdsmap_len, bad);
137 if (end < *p + mdsmap_len)
139 end = *p + mdsmap_len;
142 ceph_decode_need(p, end, 8*sizeof(u32) + sizeof(u64), bad);
187 ceph_decode_need(p, end, sizeof(u64) + 1, bad);
192 ceph_decode_need(p, end, 1 + sizeof(u32), bad);
196 if (info_end > end)
200 ceph_decode_need(p, end, sizeof(u64) + sizeof(u32), bad);
205 ceph_decode_32_safe(p, end, mds, bad);
206 ceph_decode_32_safe(p, end, inc, bad);
207 ceph_decode_32_safe(p, end, state, bad);
210 err = ceph_decode_entity_addrvec(p, end, msgr2, &addr);
212 err = ceph_decode_entity_addr(p, end, &addr);
216 ceph_decode_copy_safe(p, end, &laggy_since, sizeof(laggy_since),
220 ceph_decode_32_safe(p, end, namelen, bad);
223 ceph_decode_32_safe(p, end, num_export_targets, bad);
274 ceph_decode_32_safe(p, end, n, bad);
279 ceph_decode_need(p, end, sizeof(u64)*(n+1), bad);
287 ceph_decode_16_safe(p, end, mdsmap_ev, bad_ext);
290 if (__decode_and_drop_compat_set(p, end) < 0)
295 __decode_and_drop_type(p, end, u32, bad_ext);
297 __decode_and_drop_type(p, end, u64, bad_ext);
301 __decode_and_drop_type(p, end, struct ceph_timespec, bad_ext);
302 __decode_and_drop_type(p, end, struct ceph_timespec, bad_ext);
303 __decode_and_drop_type(p, end, u32, bad_ext);
308 ceph_decode_32_safe(p, end, n, bad_ext);
309 ceph_decode_need(p, end, sizeof(u32) * n, bad_ext);
332 __decode_and_drop_map(p, end, u32, u32, bad_ext);
334 __decode_and_drop_map(p, end, u32, u64, bad_ext);
336 __decode_and_drop_set(p, end, u32, bad_ext);
338 __decode_and_drop_set(p, end, u32, bad_ext);
342 __decode_and_drop_type(p, end, u32, bad_ext);
346 __decode_and_drop_type(p, end, u8, bad_ext);
348 __decode_and_drop_type(p, end, u8, bad_ext);
352 __decode_and_drop_type(p, end, u8, bad_ext);
356 ceph_decode_8_safe(p, end, m->m_enabled, bad_ext);
358 ceph_decode_skip_string(p, end, bad_ext);
363 ceph_decode_32_safe(p, end, n, bad_ext);
365 ceph_decode_need(p, end, need, bad_ext);
373 ceph_decode_skip_string(p, end, bad_ext);
375 ceph_decode_skip_32(p, end, bad_ext);
377 ceph_decode_skip_32(p, end, bad_ext);
379 ceph_decode_skip_8(p, end, bad_ext);
381 ceph_decode_skip_set(p, end, 64, bad_ext);
383 ceph_decode_skip_string(p, end, bad_ext);
386 ceph_decode_64_safe(p, end, m->m_max_xattr_size, bad_ext);
391 *p = end;
401 start, end - start, true);