nghttp2/lib
Tatsuhiro Tsujikawa 9eff511c5e Add nghttp2_send_data_callback to send DATA payload without copying
To avoid buffer copy in nghttp2_data_source_read_callback, this commit
introduces NGHTTP2_DATA_FLAG_NO_COPY and nghttp2_send_data_callback.
By using NGHTTP2_DATA_FLAG_NO_COPY in
nghttp2_data_source_read_callback, application can avoid to copy
application data to given buffer.  Instead, application has to
implement nghttp2_send_data_callback to send complete DATA frame by
itself.  We see noticeable performance increase in nghttpd and
tiny-nghttpd using this new feature.  On the other hand, nghttpx does
not show such difference, probably because buffer copy is not
bottleneck.  Using nghttp2_send_data_callback adds complexity, so it
is recommended to measure the performance to see whether this extra
complexity worth it.
2015-04-04 21:23:50 +09:00
..
includes Add nghttp2_send_data_callback to send DATA payload without copying 2015-04-04 21:23:50 +09:00
.gitignore Refactor .gitignore files 2015-03-29 18:40:37 +09:00
Makefile.am Validate HTTP semantics by default 2015-02-20 01:01:10 +09:00
Makefile.msvc MSVC: remove of winsock dependency 2015-04-03 12:00:06 +02:00
libnghttp2.pc.in libnghttp2: Remove dependency to zlib 2014-05-06 23:10:50 +09:00
nghttp2_buf.c Fix bug that inflater->nvbufs is not reset 2015-03-24 21:54:05 +09:00
nghttp2_buf.h Fix bug that inflater->nvbufs is not reset 2015-03-24 21:54:05 +09:00
nghttp2_callbacks.c Add nghttp2_send_data_callback to send DATA payload without copying 2015-04-04 21:23:50 +09:00
nghttp2_callbacks.h Add nghttp2_send_data_callback to send DATA payload without copying 2015-04-04 21:23:50 +09:00
nghttp2_frame.c Add nghttp2_send_data_callback to send DATA payload without copying 2015-04-04 21:23:50 +09:00
nghttp2_frame.h Add nghttp2_send_data_callback to send DATA payload without copying 2015-04-04 21:23:50 +09:00
nghttp2_hd.c Fix bug that inflater->nvbufs is not reset 2015-03-24 21:54:05 +09:00
nghttp2_hd.h Fix bug that inflater->nvbufs is not reset 2015-03-24 21:54:05 +09:00
nghttp2_hd_huffman.c Fix other shorten-64-to-32 casting error found by MSVC (64bits) 2015-01-10 15:17:31 +01:00
nghttp2_hd_huffman.h Reformat lines with clang-format-3.5 2014-11-27 23:56:30 +09:00
nghttp2_hd_huffman_data.c Reformat lines with clang-format-3.5 2014-11-27 23:56:30 +09:00
nghttp2_helper.c Add missing entry to nghttp2_strerror() 2015-02-26 23:04:38 +09:00
nghttp2_helper.h Support custom memory allocator 2014-12-08 00:55:55 +09:00
nghttp2_http.c Use literal instead of computed value in token lookup 2015-03-21 23:03:37 +09:00
nghttp2_http.h Call on_invalid_frame_recv_callback on bad HTTP messaging 2015-02-26 22:59:07 +09:00
nghttp2_int.h Call on_invalid_frame_recv_callback on bad HTTP messaging 2015-02-26 22:59:07 +09:00
nghttp2_map.c Support custom memory allocator 2014-12-08 00:55:55 +09:00
nghttp2_map.h Fix -Werror=cast-align error on 32 bit platform 2015-03-03 22:36:24 +09:00
nghttp2_mem.c Remove return in void function 2015-01-09 20:56:37 +09:00
nghttp2_mem.h Support custom memory allocator 2014-12-08 00:55:55 +09:00
nghttp2_net.h "static inline" fix for build with VS2013 2015-04-03 11:55:57 +02:00
nghttp2_npn.c Refactor ALPN/NPN protocol selection and introduce NGHTTP2_PROTO_ALPN macro 2015-02-06 22:35:30 +09:00
nghttp2_npn.h Reformat lines with clang-format-3.5 2014-11-27 23:56:30 +09:00
nghttp2_option.c Add nghttp2_option_set_no_http_messaging() API function 2015-02-20 23:26:56 +09:00
nghttp2_option.h Add nghttp2_option_set_no_http_messaging() API function 2015-02-20 23:26:56 +09:00
nghttp2_outbound_item.c Support custom memory allocator 2014-12-08 00:55:55 +09:00
nghttp2_outbound_item.h Add nghttp2_send_data_callback to send DATA payload without copying 2015-04-04 21:23:50 +09:00
nghttp2_pq.c Handle situation where request HEADERS in queue is reset by RST_STREAM 2015-02-13 23:48:16 +09:00
nghttp2_pq.h Handle situation where request HEADERS in queue is reset by RST_STREAM 2015-02-13 23:48:16 +09:00
nghttp2_priority_spec.c Reformat lines with clang-format-3.5 2014-11-27 23:56:30 +09:00
nghttp2_priority_spec.h Reformat lines with clang-format-3.5 2014-11-27 23:56:30 +09:00
nghttp2_queue.c Reformat lines with clang-format-3.5 2014-11-27 23:56:30 +09:00
nghttp2_queue.h Reformat lines with clang-format-3.5 2014-11-27 23:56:30 +09:00
nghttp2_session.c Add nghttp2_send_data_callback to send DATA payload without copying 2015-04-04 21:23:50 +09:00
nghttp2_session.h Add nghttp2_send_data_callback to send DATA payload without copying 2015-04-04 21:23:50 +09:00
nghttp2_stream.c Fix Value stored to 'rv' is never read found by Clang Analyzer 2015-04-01 13:03:22 +02:00
nghttp2_stream.h Reorder fields 2015-03-29 18:10:38 +09:00
nghttp2_submit.c Add a way to send trailer with nghttp2_submit_request/nghttp2_submit_response 2015-03-07 17:09:29 +09:00
nghttp2_submit.h Reformat lines with clang-format-3.5 2014-11-27 23:56:30 +09:00
nghttp2_version.c Reformat lines with clang-format-3.5 2014-11-27 23:56:30 +09:00