Lines Matching full:pinned
283 /* Free all trailing chains in 'buf' that are neither pinned nor empty, prior
810 * read-pinned chains. The first pinned chain is saved in first, and the
811 * last in last. If src has no read-pinned chains, first and last are set
817 struct evbuffer_chain *chain, **pinned; in PRESERVE_PINNED() local
826 pinned = src->last_with_datap; in PRESERVE_PINNED()
827 if (!CHAIN_PINNED_R(*pinned)) in PRESERVE_PINNED()
828 pinned = &(*pinned)->next; in PRESERVE_PINNED()
829 EVUTIL_ASSERT(CHAIN_PINNED_R(*pinned)); in PRESERVE_PINNED()
830 chain = *first = *pinned; in PRESERVE_PINNED()
833 /* If there's data in the first pinned chain, we need to allocate in PRESERVE_PINNED()
838 EVUTIL_ASSERT(pinned == src->last_with_datap); in PRESERVE_PINNED()
851 *pinned = NULL; in PRESERVE_PINNED()
858 RESTORE_PINNED(struct evbuffer *src, struct evbuffer_chain *pinned, in RESTORE_PINNED() argument
863 if (!pinned) { in RESTORE_PINNED()
868 src->first = pinned; in RESTORE_PINNED()
968 struct evbuffer_chain *pinned, *last; in evbuffer_add_buffer() local
984 if (PRESERVE_PINNED(inbuf, &pinned, &last) < 0) { in evbuffer_add_buffer()
998 RESTORE_PINNED(inbuf, pinned, last); in evbuffer_add_buffer()
1057 struct evbuffer_chain *pinned, *last; in evbuffer_prepend_buffer() local
1074 if (PRESERVE_PINNED(inbuf, &pinned, &last) < 0) { in evbuffer_prepend_buffer()
1088 RESTORE_PINNED(inbuf, pinned, last); in evbuffer_prepend_buffer()
1377 /* Make sure that none of the chains we need to copy from is pinned. */ in evbuffer_pullup()