Lines Matching refs:chunk

284 static void php_cli_server_buffer_append(php_cli_server_buffer *buffer, php_cli_server_chunk *chunk
843 static size_t php_cli_server_chunk_size(const php_cli_server_chunk *chunk) /* {{{ */ in php_cli_server_chunk_size() argument
845 switch (chunk->type) { in php_cli_server_chunk_size()
847 return chunk->data.heap.len; in php_cli_server_chunk_size()
849 return chunk->data.immortal.len; in php_cli_server_chunk_size()
854 static void php_cli_server_chunk_dtor(php_cli_server_chunk *chunk) /* {{{ */ in php_cli_server_chunk_dtor() argument
856 switch (chunk->type) { in php_cli_server_chunk_dtor()
858 if (chunk->data.heap.block != chunk) { in php_cli_server_chunk_dtor()
859 pefree(chunk->data.heap.block, 1); in php_cli_server_chunk_dtor()
869 php_cli_server_chunk *chunk, *next; in php_cli_server_buffer_dtor() local
870 for (chunk = buffer->first; chunk; chunk = next) { in php_cli_server_buffer_dtor()
871 next = chunk->next; in php_cli_server_buffer_dtor()
872 php_cli_server_chunk_dtor(chunk); in php_cli_server_buffer_dtor()
873 pefree(chunk, 1); in php_cli_server_buffer_dtor()
883 static void php_cli_server_buffer_append(php_cli_server_buffer *buffer, php_cli_server_chunk *chunk in php_cli_server_buffer_append() argument
886 for (last = chunk; last->next; last = last->next); in php_cli_server_buffer_append()
888 buffer->first = chunk; in php_cli_server_buffer_append()
890 buffer->last->next = chunk; in php_cli_server_buffer_append()
895 …php_cli_server_buffer_prepend(php_cli_server_buffer *buffer, php_cli_server_chunk *chunk) /* {{{ */ in php_cli_server_buffer_prepend() argument
898 for (last = chunk; last->next; last = last->next); in php_cli_server_buffer_prepend()
903 buffer->first = chunk; in php_cli_server_buffer_prepend()
908 php_cli_server_chunk *chunk; in php_cli_server_buffer_size() local
910 for (chunk = buffer->first; chunk; chunk = chunk->next) { in php_cli_server_buffer_size()
911 retval += php_cli_server_chunk_size(chunk); in php_cli_server_buffer_size()
918 php_cli_server_chunk *chunk = pemalloc(sizeof(php_cli_server_chunk), 1); in php_cli_server_chunk_immortal_new() local
919 if (!chunk) { in php_cli_server_chunk_immortal_new()
923 chunk->type = PHP_CLI_SERVER_CHUNK_IMMORTAL; in php_cli_server_chunk_immortal_new()
924 chunk->next = NULL; in php_cli_server_chunk_immortal_new()
925 chunk->data.immortal.p = buf; in php_cli_server_chunk_immortal_new()
926 chunk->data.immortal.len = len; in php_cli_server_chunk_immortal_new()
927 return chunk; in php_cli_server_chunk_immortal_new()
932 php_cli_server_chunk *chunk = pemalloc(sizeof(php_cli_server_chunk), 1); in php_cli_server_chunk_heap_new() local
933 if (!chunk) { in php_cli_server_chunk_heap_new()
937 chunk->type = PHP_CLI_SERVER_CHUNK_HEAP; in php_cli_server_chunk_heap_new()
938 chunk->next = NULL; in php_cli_server_chunk_heap_new()
939 chunk->data.heap.block = block; in php_cli_server_chunk_heap_new()
940 chunk->data.heap.p = buf; in php_cli_server_chunk_heap_new()
941 chunk->data.heap.len = len; in php_cli_server_chunk_heap_new()
942 return chunk; in php_cli_server_chunk_heap_new()
947 php_cli_server_chunk *chunk = pemalloc(sizeof(php_cli_server_chunk) + len, 1); in php_cli_server_chunk_heap_new_self_contained() local
948 if (!chunk) { in php_cli_server_chunk_heap_new_self_contained()
952 chunk->type = PHP_CLI_SERVER_CHUNK_HEAP; in php_cli_server_chunk_heap_new_self_contained()
953 chunk->next = NULL; in php_cli_server_chunk_heap_new_self_contained()
954 chunk->data.heap.block = chunk; in php_cli_server_chunk_heap_new_self_contained()
955 chunk->data.heap.p = (char *)(chunk + 1); in php_cli_server_chunk_heap_new_self_contained()
956 chunk->data.heap.len = len; in php_cli_server_chunk_heap_new_self_contained()
957 return chunk; in php_cli_server_chunk_heap_new_self_contained()
972 php_cli_server_chunk *chunk, *next; in php_cli_server_content_sender_send() local
975 for (chunk = sender->buffer.first; chunk; chunk = next) { in php_cli_server_content_sender_send()
977 next = chunk->next; in php_cli_server_content_sender_send()
979 switch (chunk->type) { in php_cli_server_content_sender_send()
981 nbytes_sent = send(fd, chunk->data.heap.p, chunk->data.heap.len, 0); in php_cli_server_content_sender_send()
985 } else if (nbytes_sent == chunk->data.heap.len) { in php_cli_server_content_sender_send()
986 php_cli_server_chunk_dtor(chunk); in php_cli_server_content_sender_send()
987 pefree(chunk, 1); in php_cli_server_content_sender_send()
993 chunk->data.heap.p += nbytes_sent; in php_cli_server_content_sender_send()
994 chunk->data.heap.len -= nbytes_sent; in php_cli_server_content_sender_send()
1000 nbytes_sent = send(fd, chunk->data.immortal.p, chunk->data.immortal.len, 0); in php_cli_server_content_sender_send()
1004 } else if (nbytes_sent == chunk->data.immortal.len) { in php_cli_server_content_sender_send()
1005 php_cli_server_chunk_dtor(chunk); in php_cli_server_content_sender_send()
1006 pefree(chunk, 1); in php_cli_server_content_sender_send()
1012 chunk->data.immortal.p += nbytes_sent; in php_cli_server_content_sender_send()
1013 chunk->data.immortal.len -= nbytes_sent; in php_cli_server_content_sender_send()
1026 php_cli_server_chunk *chunk = php_cli_server_chunk_heap_new_self_contained(131072); in php_cli_server_content_sender_pull() local
1028 _nbytes_read = read(fd, chunk->data.heap.p, chunk->data.heap.len); in php_cli_server_content_sender_pull()
1034 php_cli_server_chunk_dtor(chunk); in php_cli_server_content_sender_pull()
1035 pefree(chunk, 1); in php_cli_server_content_sender_pull()
1038 chunk->data.heap.len = _nbytes_read; in php_cli_server_content_sender_pull()
1039 php_cli_server_buffer_append(&sender->buffer, chunk); in php_cli_server_content_sender_pull()
1796 …php_cli_server_chunk *chunk = php_cli_server_chunk_heap_new_self_contained(strlen(prologue_templat… in php_cli_server_send_error_page() local
1797 if (!chunk) { in php_cli_server_send_error_page()
1800 …snprintf(chunk->data.heap.p, chunk->data.heap.len, prologue_template, status, status_string, escap… in php_cli_server_send_error_page()
1801 chunk->data.heap.len = strlen(chunk->data.heap.p); in php_cli_server_send_error_page()
1802 php_cli_server_buffer_append(&client->content_sender.buffer, chunk); in php_cli_server_send_error_page()
1805 …php_cli_server_chunk *chunk = php_cli_server_chunk_immortal_new(php_cli_server_css, sizeof(php_cli… in php_cli_server_send_error_page() local
1806 if (!chunk) { in php_cli_server_send_error_page()
1809 php_cli_server_buffer_append(&client->content_sender.buffer, chunk); in php_cli_server_send_error_page()
1813 php_cli_server_chunk *chunk = php_cli_server_chunk_immortal_new(template, sizeof(template) - 1); in php_cli_server_send_error_page() local
1814 if (!chunk) { in php_cli_server_send_error_page()
1817 php_cli_server_buffer_append(&client->content_sender.buffer, chunk); in php_cli_server_send_error_page()
1820 …php_cli_server_chunk *chunk = php_cli_server_chunk_heap_new_self_contained(strlen(content_template… in php_cli_server_send_error_page() local
1821 if (!chunk) { in php_cli_server_send_error_page()
1824 …snprintf(chunk->data.heap.p, chunk->data.heap.len, content_template, status_string, escaped_reques… in php_cli_server_send_error_page()
1825 chunk->data.heap.len = strlen(chunk->data.heap.p); in php_cli_server_send_error_page()
1826 php_cli_server_buffer_append(&client->content_sender.buffer, chunk); in php_cli_server_send_error_page()
1830 …php_cli_server_chunk *chunk = php_cli_server_chunk_immortal_new(epilogue_template, sizeof(epilogue… in php_cli_server_send_error_page() local
1831 if (!chunk) { in php_cli_server_send_error_page()
1834 php_cli_server_buffer_append(&client->content_sender.buffer, chunk); in php_cli_server_send_error_page()
1838 php_cli_server_chunk *chunk; in php_cli_server_send_error_page() local
1852 chunk = php_cli_server_chunk_heap_new(buffer.c, buffer.c, buffer.len); in php_cli_server_send_error_page()
1853 if (!chunk) { in php_cli_server_send_error_page()
1857 php_cli_server_buffer_prepend(&client->content_sender.buffer, chunk); in php_cli_server_send_error_page()
1918 php_cli_server_chunk *chunk; in php_cli_server_begin_send_static() local
1942 chunk = php_cli_server_chunk_heap_new(buffer.c, buffer.c, buffer.len); in php_cli_server_begin_send_static()
1943 if (!chunk) { in php_cli_server_begin_send_static()
1948 php_cli_server_buffer_append(&client->content_sender.buffer, chunk); in php_cli_server_begin_send_static()