Lines Matching refs:buffer
33 buffer_init(Buffer *buffer) in buffer_init() argument
37 buffer->alloc = 0; in buffer_init()
38 buffer->buf = xmalloc(len); in buffer_init()
39 buffer->alloc = len; in buffer_init()
40 buffer->offset = 0; in buffer_init()
41 buffer->end = 0; in buffer_init()
47 buffer_free(Buffer *buffer) in buffer_free() argument
49 if (buffer->alloc > 0) { in buffer_free()
50 memset(buffer->buf, 0, buffer->alloc); in buffer_free()
51 buffer->alloc = 0; in buffer_free()
52 xfree(buffer->buf); in buffer_free()
62 buffer_clear(Buffer *buffer) in buffer_clear() argument
64 buffer->offset = 0; in buffer_clear()
65 buffer->end = 0; in buffer_clear()
71 buffer_append(Buffer *buffer, const void *data, u_int len) in buffer_append() argument
74 p = buffer_append_space(buffer, len); in buffer_append()
79 buffer_compact(Buffer *buffer) in buffer_compact() argument
85 if (buffer->offset > MIN(buffer->alloc, BUFFER_MAX_CHUNK)) { in buffer_compact()
86 memmove(buffer->buf, buffer->buf + buffer->offset, in buffer_compact()
87 buffer->end - buffer->offset); in buffer_compact()
88 buffer->end -= buffer->offset; in buffer_compact()
89 buffer->offset = 0; in buffer_compact()
102 buffer_append_space(Buffer *buffer, u_int len) in buffer_append_space() argument
111 if (buffer->offset == buffer->end) { in buffer_append_space()
112 buffer->offset = 0; in buffer_append_space()
113 buffer->end = 0; in buffer_append_space()
117 if (buffer->end + len < buffer->alloc) { in buffer_append_space()
118 p = buffer->buf + buffer->end; in buffer_append_space()
119 buffer->end += len; in buffer_append_space()
124 if (buffer_compact(buffer)) in buffer_append_space()
128 newlen = roundup(buffer->alloc + len, BUFFER_ALLOCSZ); in buffer_append_space()
132 buffer->buf = xrealloc(buffer->buf, newlen); in buffer_append_space()
133 buffer->alloc = newlen; in buffer_append_space()
143 buffer_check_alloc(Buffer *buffer, u_int len) in buffer_check_alloc() argument
145 if (buffer->offset == buffer->end) { in buffer_check_alloc()
146 buffer->offset = 0; in buffer_check_alloc()
147 buffer->end = 0; in buffer_check_alloc()
150 if (buffer->end + len < buffer->alloc) in buffer_check_alloc()
152 if (buffer_compact(buffer)) in buffer_check_alloc()
154 if (roundup(buffer->alloc + len, BUFFER_ALLOCSZ) <= BUFFER_MAX_LEN) in buffer_check_alloc()
162 buffer_len(Buffer *buffer) in buffer_len() argument
164 return buffer->end - buffer->offset; in buffer_len()
170 buffer_get_ret(Buffer *buffer, void *buf, u_int len) in buffer_get_ret() argument
172 if (len > buffer->end - buffer->offset) { in buffer_get_ret()
174 len, buffer->end - buffer->offset); in buffer_get_ret()
177 memcpy(buf, buffer->buf + buffer->offset, len); in buffer_get_ret()
178 buffer->offset += len; in buffer_get_ret()
183 buffer_get(Buffer *buffer, void *buf, u_int len) in buffer_get() argument
185 if (buffer_get_ret(buffer, buf, len) == -1) in buffer_get()
192 buffer_consume_ret(Buffer *buffer, u_int bytes) in buffer_consume_ret() argument
194 if (bytes > buffer->end - buffer->offset) { in buffer_consume_ret()
198 buffer->offset += bytes; in buffer_consume_ret()
203 buffer_consume(Buffer *buffer, u_int bytes) in buffer_consume() argument
205 if (buffer_consume_ret(buffer, bytes) == -1) in buffer_consume()
212 buffer_consume_end_ret(Buffer *buffer, u_int bytes) in buffer_consume_end_ret() argument
214 if (bytes > buffer->end - buffer->offset) in buffer_consume_end_ret()
216 buffer->end -= bytes; in buffer_consume_end_ret()
221 buffer_consume_end(Buffer *buffer, u_int bytes) in buffer_consume_end() argument
223 if (buffer_consume_end_ret(buffer, bytes) == -1) in buffer_consume_end()
230 buffer_ptr(Buffer *buffer) in buffer_ptr() argument
232 return buffer->buf + buffer->offset; in buffer_ptr()
237 buffer_dump(Buffer *buffer) in buffer_dump() argument
240 u_char *ucp = buffer->buf; in buffer_dump()
242 for (i = buffer->offset; i < buffer->end; i++) { in buffer_dump()
244 if ((i-buffer->offset)%16==15) in buffer_dump()
246 else if ((i-buffer->offset)%2==1) in buffer_dump()
250 if (buffer->offset == buffer->end) { in buffer_dump()
255 if ((i - buffer->offset) % 16 != 0) in buffer_dump()