Lines Matching refs:evbuf
97 int evtag_decode_int(ev_uint32_t *pnumber, struct evbuffer *evbuf);
99 int evtag_decode_int64(ev_uint64_t *pnumber, struct evbuffer *evbuf);
101 int evtag_encode_tag(struct evbuffer *evbuf, ev_uint32_t tag);
103 int evtag_decode_tag(ev_uint32_t *ptag, struct evbuffer *evbuf);
157 evtag_encode_int(struct evbuffer *evbuf, ev_uint32_t number) in evtag_encode_int() argument
161 evbuffer_add(evbuf, data, len); in evtag_encode_int()
165 evtag_encode_int64(struct evbuffer *evbuf, ev_uint64_t number) in evtag_encode_int64() argument
169 evbuffer_add(evbuf, data, len); in evtag_encode_int64()
178 evtag_encode_tag(struct evbuffer *evbuf, ev_uint32_t tag) in evtag_encode_tag() argument
194 if (evbuf != NULL) in evtag_encode_tag()
195 evbuffer_add(evbuf, data, bytes); in evtag_encode_tag()
201 decode_tag_internal(ev_uint32_t *ptag, struct evbuffer *evbuf, int dodrain) in decode_tag_internal() argument
204 size_t len = evbuffer_get_length(evbuf); in decode_tag_internal()
214 evbuf, len < sizeof(number) + 1 ? len : sizeof(number) + 1); in decode_tag_internal()
240 evbuffer_drain(evbuf, count); in decode_tag_internal()
249 evtag_decode_tag(ev_uint32_t *ptag, struct evbuffer *evbuf) in evtag_decode_tag() argument
251 return (decode_tag_internal(ptag, evbuf, 1 /* dodrain */)); in evtag_decode_tag()
261 evtag_marshal(struct evbuffer *evbuf, ev_uint32_t tag, in evtag_marshal() argument
264 evtag_encode_tag(evbuf, tag); in evtag_marshal()
265 evtag_encode_int(evbuf, len); in evtag_marshal()
266 evbuffer_add(evbuf, (void *)data, len); in evtag_marshal()
270 evtag_marshal_buffer(struct evbuffer *evbuf, ev_uint32_t tag, in evtag_marshal_buffer() argument
273 evtag_encode_tag(evbuf, tag); in evtag_marshal_buffer()
275 evtag_encode_int(evbuf, (ev_uint32_t)evbuffer_get_length(data)); in evtag_marshal_buffer()
276 evbuffer_add_buffer(evbuf, data); in evtag_marshal_buffer()
281 evtag_marshal_int(struct evbuffer *evbuf, ev_uint32_t tag, ev_uint32_t integer) in evtag_marshal_int() argument
286 evtag_encode_tag(evbuf, tag); in evtag_marshal_int()
287 evtag_encode_int(evbuf, len); in evtag_marshal_int()
288 evbuffer_add(evbuf, data, len); in evtag_marshal_int()
292 evtag_marshal_int64(struct evbuffer *evbuf, ev_uint32_t tag, in evtag_marshal_int64() argument
298 evtag_encode_tag(evbuf, tag); in evtag_marshal_int64()
299 evtag_encode_int(evbuf, len); in evtag_marshal_int64()
300 evbuffer_add(evbuf, data, len); in evtag_marshal_int64()
311 evtag_marshal_timeval(struct evbuffer *evbuf, ev_uint32_t tag, struct timeval *tv) in evtag_marshal_timeval() argument
316 evtag_marshal(evbuf, tag, data, len); in evtag_marshal_timeval()
319 #define DECODE_INT_INTERNAL(number, maxnibbles, pnumber, evbuf, offset) \ argument
322 ev_ssize_t len = evbuffer_get_length(evbuf) - offset; \
329 data = evbuffer_pullup(evbuf, offset + 1) + offset; \
338 data = evbuffer_pullup(evbuf, offset + len) + offset; \
366 decode_int_internal(ev_uint32_t *pnumber, struct evbuffer *evbuf, int offset) in decode_int_internal() argument
369 DECODE_INT_INTERNAL(number, 8, pnumber, evbuf, offset); in decode_int_internal()
373 decode_int64_internal(ev_uint64_t *pnumber, struct evbuffer *evbuf, int offset) in decode_int64_internal() argument
376 DECODE_INT_INTERNAL(number, 16, pnumber, evbuf, offset); in decode_int64_internal()
380 evtag_decode_int(ev_uint32_t *pnumber, struct evbuffer *evbuf) in evtag_decode_int() argument
382 int res = decode_int_internal(pnumber, evbuf, 0); in evtag_decode_int()
384 evbuffer_drain(evbuf, res); in evtag_decode_int()
390 evtag_decode_int64(ev_uint64_t *pnumber, struct evbuffer *evbuf) in evtag_decode_int64() argument
392 int res = decode_int64_internal(pnumber, evbuf, 0); in evtag_decode_int64()
394 evbuffer_drain(evbuf, res); in evtag_decode_int64()
400 evtag_peek(struct evbuffer *evbuf, ev_uint32_t *ptag) in evtag_peek() argument
402 return (decode_tag_internal(ptag, evbuf, 0 /* dodrain */)); in evtag_peek()
406 evtag_peek_length(struct evbuffer *evbuf, ev_uint32_t *plength) in evtag_peek_length() argument
410 len = decode_tag_internal(NULL, evbuf, 0 /* dodrain */); in evtag_peek_length()
414 res = decode_int_internal(plength, evbuf, len); in evtag_peek_length()
424 evtag_payload_length(struct evbuffer *evbuf, ev_uint32_t *plength) in evtag_payload_length() argument
428 len = decode_tag_internal(NULL, evbuf, 0 /* dodrain */); in evtag_payload_length()
432 res = decode_int_internal(plength, evbuf, len); in evtag_payload_length()
442 evtag_unmarshal_header(struct evbuffer *evbuf, ev_uint32_t *ptag) in evtag_unmarshal_header() argument
446 if (decode_tag_internal(ptag, evbuf, 1 /* dodrain */) == -1) in evtag_unmarshal_header()
448 if (evtag_decode_int(&len, evbuf) == -1) in evtag_unmarshal_header()
451 if (evbuffer_get_length(evbuf) < len) in evtag_unmarshal_header()
458 evtag_consume(struct evbuffer *evbuf) in evtag_consume() argument
461 if ((len = evtag_unmarshal_header(evbuf, NULL)) == -1) in evtag_consume()
463 evbuffer_drain(evbuf, len); in evtag_consume()
489 evtag_unmarshal_int(struct evbuffer *evbuf, ev_uint32_t need_tag, in evtag_unmarshal_int() argument
496 if (decode_tag_internal(&tag, evbuf, 1 /* dodrain */) == -1) in evtag_unmarshal_int()
500 if (evtag_decode_int(&len, evbuf) == -1) in evtag_unmarshal_int()
503 if (evbuffer_get_length(evbuf) < len) in evtag_unmarshal_int()
506 result = decode_int_internal(pinteger, evbuf, 0); in evtag_unmarshal_int()
507 evbuffer_drain(evbuf, len); in evtag_unmarshal_int()
515 evtag_unmarshal_int64(struct evbuffer *evbuf, ev_uint32_t need_tag, in evtag_unmarshal_int64() argument
522 if (decode_tag_internal(&tag, evbuf, 1 /* dodrain */) == -1) in evtag_unmarshal_int64()
526 if (evtag_decode_int(&len, evbuf) == -1) in evtag_unmarshal_int64()
529 if (evbuffer_get_length(evbuf) < len) in evtag_unmarshal_int64()
532 result = decode_int64_internal(pinteger, evbuf, 0); in evtag_unmarshal_int64()
533 evbuffer_drain(evbuf, len); in evtag_unmarshal_int64()
562 evtag_unmarshal_string(struct evbuffer *evbuf, ev_uint32_t need_tag, in evtag_unmarshal_string() argument
568 if ((tag_len = evtag_unmarshal_header(evbuf, &tag)) == -1 || in evtag_unmarshal_string()
577 evbuffer_remove(evbuf, *pstring, tag_len); in evtag_unmarshal_string()
584 evtag_unmarshal_timeval(struct evbuffer *evbuf, ev_uint32_t need_tag, in evtag_unmarshal_timeval() argument
592 if ((len = evtag_unmarshal_header(evbuf, &tag)) == -1) in evtag_unmarshal_timeval()
596 if ((offset = decode_int_internal(&integer, evbuf, 0)) == -1) in evtag_unmarshal_timeval()
599 if ((offset2 = decode_int_internal(&integer, evbuf, offset)) == -1) in evtag_unmarshal_timeval()
607 evbuffer_drain(evbuf, len); in evtag_unmarshal_timeval()