Tatsuhiro Tsujikawa
b2196f215a
asio: Use boost::system::error_code for on_error callback
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
8afd75ca47
Make request, response const
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
0676535caf
Do async-resove in ctor
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
dd741a58ae
Use header_map instead of wrapping it
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
26304546c4
[WIP] Add asio client interface
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
3144f7de72
asio-sv2: Fix compile error with OS X
...
Use struct stat.st_mtime instead of st_mtim which seems to be Linux
specific.
2015-02-21 21:02:40 +09:00
Tatsuhiro Tsujikawa
fe84ec5e8b
tiny-nghttpd: Add token lookup for slight optimization
2015-02-20 21:50:02 +09:00
Tatsuhiro Tsujikawa
2216fd2bc1
tiny-nghttpd: Remove validations offered by lib
2015-02-20 20:58:11 +09:00
Tatsuhiro Tsujikawa
2dd6353e24
examples/client: Send SETTINGS
2015-02-06 01:22:29 +09:00
Tatsuhiro Tsujikawa
fbd9bcb00e
Use _LDADD to specify libraries instead of _LDFLAGS
...
This is because _LDFLAGS comes before _LDADD. If we specify a library
and another library in _LDADD depends on it, we get undefined
reference error.
2015-01-25 00:58:30 +09:00
Tatsuhiro Tsujikawa
8bfd900be5
src, examples: Check return value
2015-01-07 00:26:17 +09:00
Alexis La Goutte
27fa4d310a
Fix: error pointer target types incompatible in C++ [-Werror=c++-compat]
2014-12-16 17:54:47 +01:00
Tatsuhiro Tsujikawa
7036859823
Do not change user variable CFLAGS in configure.ac
2014-12-01 23:06:11 +09:00
Tatsuhiro Tsujikawa
2b465ee65f
libevent-client: Disable SSLv3
2014-11-30 21:09:23 +09:00
Tatsuhiro Tsujikawa
b1f807abd1
Reformat lines with clang-format-3.5
2014-11-27 23:56:30 +09:00
Tatsuhiro Tsujikawa
5d59adc52b
libevent-server: Disable SSLv3
2014-11-27 21:40:34 +09:00
Tatsuhiro Tsujikawa
770cfcaae9
libevent-server: Enable ECDHE ciphers
2014-11-27 21:38:54 +09:00
Tatsuhiro Tsujikawa
dfbc6e6a57
examples: Guard include config.h with HAVE_CONFIG_H
2014-11-27 00:12:42 +09:00
Alexis La Goutte
bac44d7ffb
Fix -Werror=unused-parameter using _U_ macro
2014-11-25 17:08:09 +01:00
Tatsuhiro Tsujikawa
20ffe2b2a0
tiny-nghttpd: Fix memory leak
2014-11-10 21:20:44 +09:00
Tatsuhiro Tsujikawa
0ef99b90d9
asio-lib: Make request_cb take const ref and use int64_t as http_date arg
2014-10-28 01:01:48 +09:00
Tatsuhiro Tsujikawa
9c1b5e8fb1
Update .gitignore
2014-10-18 18:55:42 +09:00
Tatsuhiro Tsujikawa
e570225e97
tiny-nghttpd: Simplify timer event handling
2014-10-14 21:52:30 +09:00
Tatsuhiro Tsujikawa
3931a0b04d
Fix bugs found by coverity scan
2014-10-10 22:50:35 +09:00
Tatsuhiro Tsujikawa
6d42b6697b
examples: Disable tiny-nghttpd if timerfd_create is not available
2014-10-09 21:18:24 +09:00
Tatsuhiro Tsujikawa
b6d0a32d0e
tiny-nghttpd: Save number of read(2) calls using file size
2014-09-29 22:37:41 +09:00
Tatsuhiro Tsujikawa
88d7abcc23
libnghttp2_asio: Add request::run_task to execute task in separate thread
2014-09-28 16:25:45 +09:00
Tatsuhiro Tsujikawa
409316018d
examples: Fix travis error: unreachable-code
2014-09-28 00:02:13 +09:00
Tatsuhiro Tsujikawa
34413d8d7c
examples: Build tiny-nghttpd only when epoll is available
2014-09-27 23:45:57 +09:00
Tatsuhiro Tsujikawa
b7ccca4c47
examples: Add tiny-nghttpd
...
tiny-nghttpd is HTTP/2 server and its purpose is measure the
performance of nghttp2 library code. Currently it only accepts direct
HTTP/2 connection only.
2014-09-27 23:44:33 +09:00
Tatsuhiro Tsujikawa
e887b2516f
Remove boost LDFLAGS from examples
2014-09-26 21:42:31 +09:00
Tatsuhiro Tsujikawa
fd07f5e142
src: Add utility APIs to asio_http2.h; add asio-sv2 example to serve files
2014-09-24 23:05:13 +09:00
Tatsuhiro Tsujikawa
83728219db
Update doc
2014-09-24 00:45:40 +09:00
Tatsuhiro Tsujikawa
5d0bf4cc84
Add C++ library libnghttp2_asio on top of libnghttp2
...
The libnghttp2_asio library is C++ library built on top of libnghttp2.
Currently, it has server API and easily create HTTP/2 server using
node.js like API calls. See the example server source code in
examples/asio-sv.cc. The library depends on Boost::ASIO library.
2014-09-24 00:45:40 +09:00
Tatsuhiro Tsujikawa
5ff73de195
libevent-server: Use nghttp2_option_set_recv_client_preface()
2014-09-13 21:24:45 +09:00
Tatsuhiro Tsujikawa
ab5b81bee1
Hide nghttp2_session_callbacks details and provide setter like functions
...
To make it possible to add new callbacks without bumping so name, we
decided to hide details of nghttp2_session_callbacks. We provide
setter like functions to set individual callback function.
2014-08-25 21:24:04 +09:00
Tatsuhiro Tsujikawa
455d911f61
src, examples: Call OPENSSL_config()
2014-08-02 10:11:45 +09:00
Tatsuhiro Tsujikawa
8dc47c6750
Fix resource leaks
2014-07-18 00:31:32 +09:00
Tatsuhiro Tsujikawa
39498beffd
examples: Fix possible division by zero
2014-07-18 00:09:05 +09:00
Tatsuhiro Tsujikawa
8235bb136b
doc: Add HPACK API tutorial
2014-06-29 23:45:49 +09:00
Tatsuhiro Tsujikawa
ae74a18624
examples: Fix libevent-server which could not send error reply
2014-06-18 13:11:01 +09:00
Tatsuhiro Tsujikawa
85a43cfa66
examples: Check return value of evbuffer_drain
2014-06-18 13:06:05 +09:00
Tatsuhiro Tsujikawa
b78a51da0e
Support graceful shutdown using multiple GOAWAY
...
Add last_stream_id parameter to nghttp2_submit_goaway(). To terminate
connection immediately with application chosen last stream ID,
nghttp2_session_terminate_session2() was added.
2014-06-18 11:35:08 +09:00
Tatsuhiro Tsujikawa
9b174bf5c9
Fix compile error with -Wshorten-64-to-32
...
The original patch was contributed by Alexis La Goutte
2014-06-11 23:37:16 +09:00
Tatsuhiro Tsujikawa
e8de437d5c
Return new stream ID from nghttp2_submit_{request, headers, push_promise}
...
Previously stream ID was assigned just before HEADERS or PUSH_PROMISE
was serialized and nghttp2_submit_{request, headers, push_promise} did
not return stream ID. The application has to check assigned stream ID
using before_frame_send_callback. Now it is apparent that priority is
meant to DATA transfer only. Also application can reorder the
requests if it wants. Therefore we can assign stream ID in
nghttp2_submit_* functions and return stream ID from them. With this
change, now application does not have to check stream ID using
before_frame_send_callback and its code will be simplified.
2014-05-07 23:24:07 +09:00
Tatsuhiro Tsujikawa
4f027c1562
libnghttp2: Remove dependency to zlib
...
We inherited gzip compression API from spdylay codebase. In spdylay,
the cost of having such API is almost free because spdylay requires
zlib for header compression. nghttp2 no longer uses gzip to header
compression. zlib dependency exists just for gzip compression API,
which is not an essential. So we decided to move gzip code to under
src and remove zlib dependency from libnghttp2 itself. As nghttp2
package, we depend on zlib to compile tools under src.
2014-05-06 23:10:50 +09:00
Tatsuhiro Tsujikawa
9ca63de9e8
examples: Zero clear callbacks
2014-05-01 10:46:08 +09:00
Tatsuhiro Tsujikawa
813c750c12
Merge branch 'clang' of https://github.com/alagoutte/nghttp2 into alagoutte-clang
2014-05-01 10:45:38 +09:00
Alexis La Goutte
66ed7f6a59
Fix build when use Clang
...
libevent-server.c:552:43: error: missing field 'recv_callback' initializer [-Werror,-Wmissing-field-initializers]
2014-04-30 17:31:33 +02:00
Alexis La Goutte
8ca2f6aa92
Fix build when use Clang
...
libevent-client.c:355:43: error: missing field 'recv_callback' initializer [-Werror,-Wmissing-field-initializers]
2014-04-30 17:31:29 +02:00