Lines Matching +full:nand +full:- +full:style

2  * Copyright (c) 2003-2007 Niels Provos <provos@citi.umich.edu>
3 * Copyright (c) 2007-2012 Niels Provos and Nick Mathewson
27 #include "util-internal.h"
34 #include "event2/event-config.h"
60 #include "defer-internal.h"
61 #include "evbuffer-internal.h"
62 #include "log-internal.h"
77 if (buf->first == NULL) { in evbuffer_validate_()
78 tt_assert(buf->last == NULL); in evbuffer_validate_()
79 tt_assert(buf->total_len == 0); in evbuffer_validate_()
82 chain = buf->first; in evbuffer_validate_()
84 tt_assert(buf->last_with_datap); in evbuffer_validate_()
85 if (buf->last_with_datap == &buf->first) in evbuffer_validate_()
89 if (&chain->next == buf->last_with_datap) in evbuffer_validate_()
91 sum += chain->off; in evbuffer_validate_()
92 if (chain->next == NULL) { in evbuffer_validate_()
93 tt_assert(buf->last == chain); in evbuffer_validate_()
95 tt_assert(chain->buffer_len >= chain->misalign + chain->off); in evbuffer_validate_()
96 chain = chain->next; in evbuffer_validate_()
99 if (buf->first) in evbuffer_validate_()
100 tt_assert(*buf->last_with_datap); in evbuffer_validate_()
102 if (*buf->last_with_datap) { in evbuffer_validate_()
103 chain = *buf->last_with_datap; in evbuffer_validate_()
104 if (chain->off == 0 || buf->total_len == 0) { in evbuffer_validate_()
105 tt_assert(chain->off == 0) in evbuffer_validate_()
106 tt_assert(chain == buf->first); in evbuffer_validate_()
107 tt_assert(buf->total_len == 0); in evbuffer_validate_()
109 chain = chain->next; in evbuffer_validate_()
111 tt_assert(chain->off == 0); in evbuffer_validate_()
112 chain = chain->next; in evbuffer_validate_()
115 tt_assert(buf->last_with_datap == &buf->first); in evbuffer_validate_()
119 tt_assert(sum == buf->total_len); in evbuffer_validate_()
133 chain = buf->first; in evbuffer_get_waste()
135 while (chain && chain->off==0) { in evbuffer_get_waste()
137 a += chain->buffer_len; in evbuffer_get_waste()
138 chain = chain->next; in evbuffer_get_waste()
143 a += chain->buffer_len; in evbuffer_get_waste()
144 u += chain->off; in evbuffer_get_waste()
145 if (chain->next && chain->next->off) in evbuffer_get_waste()
146 w += (size_t)(chain->buffer_len - (chain->misalign + chain->off)); in evbuffer_get_waste()
147 chain = chain->next; in evbuffer_get_waste()
150 while (chain && chain->off) { in evbuffer_get_waste()
152 a += chain->buffer_len; in evbuffer_get_waste()
153 w += (size_t)chain->misalign; in evbuffer_get_waste()
154 u += chain->off; in evbuffer_get_waste()
155 if (chain->next && chain->next->off) in evbuffer_get_waste()
156 w += (size_t) (chain->buffer_len - (chain->misalign + chain->off)); in evbuffer_get_waste()
157 chain = chain->next; in evbuffer_get_waste()
162 a += chain->buffer_len; in evbuffer_get_waste()
225 evbuffer_drain(evb, -1); in test_evbuffer()
227 evbuffer_drain(evb_two, -1); in test_evbuffer()
249 evb, -1), buffer, sizeof(buffer) / 2) != 0 || in test_evbuffer()
251 evb_two, -1), buffer, sizeof(buffer)) != 0) in test_evbuffer()
257 /* testing one-vector reserve and commit */ in test_evbuffer()
317 tt_mem_op(evbuffer_pullup(src, -1), ==, "AAAA", 4); in test_evbuffer_remove_buffer_with_empty()
318 tt_mem_op(evbuffer_pullup(dst, -1), ==, "AA", 2); in test_evbuffer_remove_buffer_with_empty()
326 tt_mem_op(evbuffer_pullup(src, -1), ==, "A", 1); in test_evbuffer_remove_buffer_with_empty()
327 tt_mem_op(evbuffer_pullup(dst, -1), ==, "AAAAA", 5); in test_evbuffer_remove_buffer_with_empty()
361 tt_mem_op(evbuffer_pullup(src, -1), ==, "foofoofoo", 9); in test_evbuffer_remove_buffer_with_empty2()
362 tt_mem_op(evbuffer_pullup(dst, -1), ==, "foofoofoo", 9); in test_evbuffer_remove_buffer_with_empty2()
372 tt_mem_op(evbuffer_pullup(src, -1), ==, "o", 1); in test_evbuffer_remove_buffer_with_empty2()
373 tt_mem_op(evbuffer_pullup(dst, -1), ==, "foofoofoofoofoofo", 17); in test_evbuffer_remove_buffer_with_empty2()
408 tt_mem_op(evbuffer_pullup(src, -1), ==, "foofoo", 6); in test_evbuffer_remove_buffer_with_empty3()
409 tt_mem_op(evbuffer_pullup(dst, -1), ==, "foofoo", 6); in test_evbuffer_remove_buffer_with_empty3()
419 tt_mem_op(evbuffer_pullup(src, -1), ==, "o", 1); in test_evbuffer_remove_buffer_with_empty3()
420 tt_mem_op(evbuffer_pullup(dst, -1), ==, "foofoofoofo", 11); in test_evbuffer_remove_buffer_with_empty3()
438 tt_mem_op(evbuffer_pullup(buf, -1), ==, "foo", 3); in test_evbuffer_pullup_with_empty()
444 tt_int_op(evbuffer_pullup(buf, -1), ==, NULL); in test_evbuffer_pullup_with_empty()
473 tt_mem_op(evbuffer_pullup(buf1, -1), ==, "oobar", 5); in test_evbuffer_remove_buffer_with_empty_front()
529 tt_mem_op(evbuffer_pullup(buf2, -1), ==, "aaaaaabdddc", 11); in test_evbuffer_remove_buffer_adjust_last_with_datap_with_empty()
604 /* Test the two-vector cases of reserve/commit. */ in test_evbuffer_reserve2()
619 remaining = v[0].iov_len - 512; in test_evbuffer_reserve2()
626 /* Ask for another same-chunk request, in an existing chunk. Use 8 in test_evbuffer_reserve2()
636 remaining -= 8; in test_evbuffer_reserve2()
652 remaining -= 1; in test_evbuffer_reserve2()
674 n = evbuffer_peek(buf, -1, NULL, v, 2); in test_evbuffer_reserve2()
700 /* This is a glass-box test to handle expanding a buffer with more in test_evbuffer_reserve_many()
783 tt_mem_op(evbuffer_pullup(buf, -1), ==, "abc", 2); in test_evbuffer_reserve_with_empty()
816 /* and an actual problem, that triggers an assert(chain == buf->first) in in test_evbuffer_reserve_invalid_last_with_datap()
846 tt_assert(buf->first); in test_evbuffer_expand()
847 tt_assert(buf->first == buf->last); in test_evbuffer_expand()
848 tt_assert(buf->first->off == 0); in test_evbuffer_expand()
849 tt_assert(buf->first->buffer_len >= 20000); in test_evbuffer_expand()
851 /* Make sure that expand() works as a no-op when there's enough in test_evbuffer_expand()
853 buffer = buf->first->buffer; in test_evbuffer_expand()
856 tt_assert(buf->first->buffer == buffer); in test_evbuffer_expand()
865 int n = (int)(buf->first->buffer_len - buf->first->off - 1); in test_evbuffer_expand()
869 tt_assert(buf->first == buf->last); in test_evbuffer_expand()
870 tt_assert(buf->first->off == buf->first->buffer_len - 1); in test_evbuffer_expand()
871 evbuffer_drain(buf, buf->first->off - 1); in test_evbuffer_expand()
873 tt_assert(buf->first->misalign > 0); in test_evbuffer_expand()
874 tt_assert(buf->first->off == 1); in test_evbuffer_expand()
875 buffer = buf->first->buffer; in test_evbuffer_expand()
877 tt_assert(buf->first == buf->last); in test_evbuffer_expand()
878 tt_assert(buf->first->off == 1); in test_evbuffer_expand()
879 tt_assert(buf->first->buffer == buffer); in test_evbuffer_expand()
880 tt_assert(buf->first->misalign == 0); in test_evbuffer_expand()
884 /* add, expand, pull-up: This used to crash libevent. */ in test_evbuffer_expand()
894 evbuffer_pullup(buf, -1); in test_evbuffer_expand()
935 str = (char *)evbuffer_pullup(buf, -1); in test_evbuffer_add1()
948 int data_len = MIN_BUFFER_SIZE-EVBUFFER_CHAIN_SIZE-10; in test_evbuffer_add2()
965 str = (char *)evbuffer_pullup(buf, -1); in test_evbuffer_add2()
966 tt_assert(str[len-3] == 'P'); in test_evbuffer_add2()
967 tt_assert(str[len-2] == '2'); in test_evbuffer_add2()
968 tt_assert(str[len-1] == '3'); in test_evbuffer_add2()
977 tt_str_op(data, ==, "this is what we add as read-only memory."); in reference_cb()
991 const char *data = "this is what we add as read-only memory."; in test_evbuffer_reference()
995 reference_cb, (void *)0xdeadaffe) != -1); in test_evbuffer_reference()
998 tt_assert(evbuffer_remove(src, v[0].iov_base, 10) != -1); in test_evbuffer_reference()
1009 strlen(data) - 10) != -1); in test_evbuffer_reference()
1033 int data_len = MIN_BUFFER_SIZE-EVBUFFER_CHAIN_SIZE-10; in test_evbuffer_reference2()
1050 str = (char *)evbuffer_pullup(buf, -1); in test_evbuffer_reference2()
1051 tt_assert(str[len-3] == 'P'); in test_evbuffer_reference2()
1052 tt_assert(str[len-2] == '2'); in test_evbuffer_reference2()
1053 tt_assert(str[len-1] == '3'); in test_evbuffer_reference2()
1118 const char *impl = testdata->setup_data; in test_evbuffer_add_file()
1125 int fd = -1; in test_evbuffer_add_file()
1126 int want_ismapping = -1, want_cansendfile = -1; in test_evbuffer_add_file()
1131 ev_off_t starting_offset = 0, mapping_len = -1; in test_evbuffer_add_file()
1132 ev_off_t segment_offset = 0, segment_len = -1; in test_evbuffer_add_file()
1134 struct event_base *base = testdata->base; in test_evbuffer_add_file()
1135 evutil_socket_t pair[2] = {-1, -1}; in test_evbuffer_add_file()
1164 /* If sendfile is set, we try to use a sendfile/splice style in test_evbuffer_add_file()
1171 * style backend. */ in test_evbuffer_add_file()
1176 /* If linear is set, we try to use a read-the-whole-thing in test_evbuffer_add_file()
1206 mapping_len = datalen / 2 - 1; in test_evbuffer_add_file()
1226 if (seg->is_mapping != (unsigned)want_ismapping) in test_evbuffer_add_file()
1230 if (seg->can_sendfile != (unsigned)want_cansendfile) in test_evbuffer_add_file()
1241 if (evutil_ersatz_socketpair_(AF_INET, SOCK_STREAM, 0, pair) == -1) in test_evbuffer_add_file()
1244 if (evutil_socketpair(AF_UNIX, SOCK_STREAM, 0, pair) == -1) in test_evbuffer_add_file()
1250 tt_assert(fd != -1); in test_evbuffer_add_file()
1254 segment_offset, segment_len)!=-1); in test_evbuffer_add_file()
1257 mapping_len) != -1); in test_evbuffer_add_file()
1330 int fd = -1; in test_evbuffer_file_segment_add_cleanup_cb()
1341 segptr = seg = evbuffer_file_segment_new(fd, 0, -1, 0); in test_evbuffer_file_segment_add_cleanup_cb()
1347 tt_assert(fd != -1); in test_evbuffer_file_segment_add_cleanup_cb()
1349 tt_assert(evbuffer_add_file_segment(evb, seg, 0, -1)!=-1); in test_evbuffer_file_segment_add_cleanup_cb()
1355 seg = NULL; /* Prevent double-free. */ in test_evbuffer_file_segment_add_cleanup_cb()
1359 evb = NULL; /* pevent double-free */ in test_evbuffer_file_segment_add_cleanup_cb()
1461 s = " and a bad crlf\nand a good one\r\n\r\nMore\r"; in test_evbuffer_readln()
1465 tt_line_eq("x and a bad crlf\nand a good one"); in test_evbuffer_readln()
1535 "The all-zeros character which may serve\0" in test_evbuffer_readln()
1538 evbuffer_add(evb, x, sizeof(x)-1); in test_evbuffer_readln()
1547 tt_line_eq("The all-zeros character which may serve"); in test_evbuffer_readln()
1554 evbuffer_drain(evb, -1); in test_evbuffer_readln()
1556 /* Test CRLF_STRICT - across boundaries*/ in test_evbuffer_readln()
1557 s = " and a bad crlf\nand a good one\r"; in test_evbuffer_readln()
1574 tt_line_eq(" and a bad crlf\nand a good one"); in test_evbuffer_readln()
1638 eol_len = -1; in test_evbuffer_search_eol()
1643 eol_len = -1; in test_evbuffer_search_eol()
1649 eol_len = -1; in test_evbuffer_search_eol()
1654 eol_len = -1; in test_evbuffer_search_eol()
1659 eol_len = -1; in test_evbuffer_search_eol()
1664 eol_len = -1; in test_evbuffer_search_eol()
1670 eol_len = -1; in test_evbuffer_search_eol()
1676 eol_len = -1; in test_evbuffer_search_eol()
1678 tt_int_op(ptr2.pos, ==, -1); in test_evbuffer_search_eol()
1760 test3[EVBUFFER_INITIAL_LENGTH - 1] = 'x'; in test_evbuffer_find()
1789 tt_assert(evbuffer_ptr_set(buf, &pos, 1, EVBUFFER_PTR_ADD) == -1); in test_evbuffer_ptr_set()
1790 tt_assert(pos.pos == -1); in test_evbuffer_ptr_set()
1791 tt_assert(evbuffer_ptr_set(buf, &pos, 1, EVBUFFER_PTR_SET) == -1); in test_evbuffer_ptr_set()
1792 tt_assert(pos.pos == -1); in test_evbuffer_ptr_set()
1814 tt_assert(evbuffer_ptr_set(buf, &pos, 13000, EVBUFFER_PTR_SET) == -1); in test_evbuffer_ptr_set()
1815 tt_assert(pos.pos == -1); in test_evbuffer_ptr_set()
1818 tt_assert(evbuffer_ptr_set(buf, &pos, 13000, EVBUFFER_PTR_ADD) == -1); in test_evbuffer_ptr_set()
1828 tt_assert(evbuffer_ptr_set(buf, &pos, 1000, EVBUFFER_PTR_ADD) == -1); in test_evbuffer_ptr_set()
1829 tt_assert(pos.pos == -1); in test_evbuffer_ptr_set()
1847 tt_int_op(pos.pos, ==, -1); in test_evbuffer_search()
1850 tt_int_op(pos.pos, ==, -1); in test_evbuffer_search()
1853 tt_int_op(pos.pos, ==, -1); in test_evbuffer_search()
1856 tt_int_op(pos.pos, ==, -1); in test_evbuffer_search()
1871 tt_int_op(pos.pos, ==, -1); in test_evbuffer_search()
1879 tt_int_op(pos.pos, ==, -1); in test_evbuffer_search()
1897 tt_int_op(pos.pos, ==, -1); in test_evbuffer_search()
1899 tt_int_op(pos.pos, ==, -1); in test_evbuffer_search()
1911 tt_int_op(pos.pos, ==, -1); in test_evbuffer_search()
1914 tt_int_op(pos.pos, ==, -1); in test_evbuffer_search()
1929 size_t old_len = cbinfo->orig_size; in log_change_callback()
1930 size_t new_len = old_len + cbinfo->n_added - cbinfo->n_deleted; in log_change_callback()
1932 evbuffer_add_printf(out, "%lu->%lu; ", (unsigned long)old_len, in log_change_callback()
1961 /* size: 0-> 36. */ in test_evbuffer_callbacks()
1965 evbuffer_drain(buf, 10); /*36->26*/ in test_evbuffer_callbacks()
1967 evbuffer_prepend(buf, "Hello", 5);/*26->31*/ in test_evbuffer_callbacks()
1969 evbuffer_add_reference(buf, "Goodbye", 7, NULL, NULL); /*31->38*/ in test_evbuffer_callbacks()
1972 evbuffer_drain(buf, evbuffer_get_length(buf)); /*38->0*/; in test_evbuffer_callbacks()
1973 tt_assert(-1 == evbuffer_remove_cb(buf, log_change_callback, NULL)); in test_evbuffer_callbacks()
1974 evbuffer_add(buf, "X", 1); /* 0->1 */ in test_evbuffer_callbacks()
1978 tt_str_op((const char *) evbuffer_pullup(buf_out1, -1), ==, in test_evbuffer_callbacks()
1979 "0->36; 36->26; 26->31; 31->38; "); in test_evbuffer_callbacks()
1980 tt_str_op((const char *) evbuffer_pullup(buf_out2, -1), ==, in test_evbuffer_callbacks()
1981 "0->36; 31->38; 38->0; 0->1; "); in test_evbuffer_callbacks()
1996 tt_str_op((const char *) evbuffer_pullup(buf, -1), ==, "This will not."); in test_evbuffer_callbacks()
2005 evbuffer_prepend(buf,"Hello world",11); /*0->11*/ in test_evbuffer_callbacks()
2008 evbuffer_add(buf,"more",4); /* 11->15 */ in test_evbuffer_callbacks()
2010 evbuffer_drain(buf, 4); /* 15->11 */ in test_evbuffer_callbacks()
2012 evbuffer_drain(buf, evbuffer_get_length(buf)); /* 11->0 */ in test_evbuffer_callbacks()
2014 tt_str_op(evbuffer_pullup(buf_out1, -1), ==, in test_evbuffer_callbacks()
2015 "0->11; 11->11; 11->0; "); in test_evbuffer_callbacks()
2016 tt_str_op(evbuffer_pullup(buf_out2, -1), ==, in test_evbuffer_callbacks()
2017 "0->15; 15->11; 11->0; "); in test_evbuffer_callbacks()
2023 tt_int_op(evbuffer_setcb(buf, self_draining_callback, NULL), ==, -1); in test_evbuffer_callbacks()
2054 /* -- Knuth's "Notes on the Exercises" from TAOCP */ in test_evbuffer_add_reference()
2081 evbuffer_drain(buf1, len1-11-1); /* remove all but one byte of chunk1 */ in test_evbuffer_add_reference()
2130 /* -- Knuth's "Notes on the Exercises" from TAOCP */ in test_evbuffer_multicast()
2149 tt_int_op(evbuffer_add_buffer_reference(buf2, buf2), ==, -1); in test_evbuffer_multicast()
2150 tt_int_op(evbuffer_add_buffer_reference(buf1, buf2), ==, -1); in test_evbuffer_multicast()
2199 /* -- Knuth's "Notes on the Exercises" from TAOCP */ in test_evbuffer_multicast_drain()
2235 tt_int_op(cbinfo->orig_size, ==, 3); in check_prepend()
2236 tt_int_op(cbinfo->n_added, ==, 8096); in check_prepend()
2237 tt_int_op(cbinfo->n_deleted, ==, 0); in check_prepend()
2264 tt_assert(!memcmp(buf1->first->buffer+buf1->first->misalign, in test_evbuffer_prepend()
2270 n = evbuffer_remove(buf1, tmp, sizeof(tmp)-1); in test_evbuffer_prepend()
2289 n = evbuffer_remove(buf2, tmp, sizeof(tmp)-1); in test_evbuffer_prepend()
2332 tt_assert(!strncmp((char *)evbuffer_pullup(buf, -1), "foo", 3)); in test_evbuffer_empty_reference_prepend()
2357 tt_assert(!strncmp((char *)evbuffer_pullup(buf2, -1), "foo", 3)); in test_evbuffer_empty_reference_prepend_buffer()
2360 tt_assert(evbuffer_pullup(buf1, -1) == NULL); in test_evbuffer_empty_reference_prepend_buffer()
2387 tt_int_op(evbuffer_peek(buf, -1, &ptr, NULL, 0), ==, 2); in test_evbuffer_peek_first_gt()
2389 tt_int_op(evbuffer_peek(buf, -1, &ptr, v, 2), ==, 2); in test_evbuffer_peek_first_gt()
2392 tt_int_op(evbuffer_peek(buf, -1, &ptr, NULL, 0), ==, 2); in test_evbuffer_peek_first_gt()
2393 tt_int_op(evbuffer_peek(buf, -1, &ptr, v, 2), ==, 2); in test_evbuffer_peek_first_gt()
2415 tt_int_op((v)->iov_len, ==, strlen(s)); \ in test_evbuffer_peek()
2416 tt_assert(!memcmp((v)->iov_base, (s), strlen(s))) in test_evbuffer_peek()
2427 i = evbuffer_peek(buf, -1, NULL, NULL, 0); in test_evbuffer_peek()
2431 i = evbuffer_peek(buf, -1, NULL, v, 20); in test_evbuffer_peek()
2440 i = evbuffer_peek(buf, -1, NULL, v, 1); in test_evbuffer_peek()
2478 i = evbuffer_peek(tmp_buf, -1, NULL, v, 20); in test_evbuffer_peek()
2528 evutil_socket_t *pair = testdata->pair; in test_evbuffer_freeze()
2535 const int start = !strcmp(testdata->setup_data, "start"); in test_evbuffer_freeze()
2540 int fd = -1; in test_evbuffer_freeze()
2546 tt_str_op(testdata->setup_data, ==, "end"); in test_evbuffer_freeze()
2573 FREEZE_EQ(r, 0, -1); in test_evbuffer_freeze()
2575 FREEZE_EQ(r, 1, -1); in test_evbuffer_freeze()
2581 FREEZE_EQ(r, 0, -1); in test_evbuffer_freeze()
2583 FREEZE_EQ(r, 0, -1); in test_evbuffer_freeze()
2585 FREEZE_EQ(r, 11, -1); in test_evbuffer_freeze()
2588 FREEZE_EQ(r, 0, -1); in test_evbuffer_freeze()
2592 FREEZE_EQ(r, 0, -1); in test_evbuffer_freeze()
2600 r = evbuffer_read(buf, pair[1], -1); in test_evbuffer_freeze()
2601 FREEZE_EQ(r, len, -1); in test_evbuffer_freeze()
2610 FREEZE_EQ(r, -1, 1); in test_evbuffer_freeze()
2612 FREEZE_EQ(r, -1, 0); in test_evbuffer_freeze()
2614 FREEZE_EQ(r, -1, 0); in test_evbuffer_freeze()
2623 FREEZE_EQ(r, -1, 3); in test_evbuffer_freeze()
2625 FREEZE_EQ(r, -1, 0); in test_evbuffer_freeze()
2627 FREEZE_EQ(r, -1, 0); in test_evbuffer_freeze()
2631 evbuffer_read(tmp_buf, pair[1], -1); in test_evbuffer_freeze()
2632 FREEZE_EQ(r, -1, len); in test_evbuffer_freeze()
2634 r = evbuffer_write_atmost(buf_two, pair[0], -1); in test_evbuffer_freeze()
2635 evbuffer_read(tmp_buf, pair[1], -1); in test_evbuffer_freeze()
2636 FREEZE_EQ(r, -1, len); in test_evbuffer_freeze()
2666 "Guilt is always a self-imposed burden, but it is not always rightly imposed." in test_evbuffer_add_iovec()
2667 /* -- R.A. Salvatore, _Sojurn_ */ in test_evbuffer_add_iovec()
2711 /* -- Kipling, "In The Neolithic Age" */ in test_evbuffer_copyout()
2726 evbuffer_add(buf, string+160, strlen(string)-160); in test_evbuffer_copyout()
2773 tt_int_op(206-15, ==, evbuffer_copyout_from(buf, &ptr, tmp, 999)); in test_evbuffer_copyout()
2774 tt_int_op(0, ==, memcmp(tmp, string+15, 206-15)); in test_evbuffer_copyout()
2787 return testcase->setup_data; in setup_passthrough()