Tatsuhiro Tsujikawa
e4ce595ebb
asio: Add serve_mux class to route incoming requet by path
...
serve_mux is direct port of ServeMux from go
2015-03-05 02:12:32 +09:00
Tatsuhiro Tsujikawa
726e6c087d
asio: server: Move push member function to response object
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
e7d052100c
asio: Utilize aggregate or value-initialization for header_value
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
fc2170e488
asio: Use uri_ref in server code
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
566baab307
asio: asio-cl: Disable peer verification to make development easier
...
Don't do this in practice
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
6753b6d61e
asio: Use header_map in server code
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
35817876fe
asio: Move server API to asio_http2_server.h
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
b0c1986a46
asio: Avoid shared_ptr for request and response
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
062b42918c
asio: Remove threaded task runner
...
This is too complicated and not suitable for event driven server. We
plan to expose io_service instead.
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
2fa28e790d
asio: Separate client API to asio_http2_client.h
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
76eab3faa0
asio: Pass connected address to connect_cb
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
70ea774f23
asio: Clear up TLS peer verification
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
e15d302985
asio: Introduce uri_ref
2015-03-05 02:12:31 +09:00
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