Peter Wu
d10f149161
cmake: fix Windows support
...
Fix Windows build by defining `ssize_t` when missing and adjusting the
install commands.
Add support for ENABLE_WERROR=1 while at it.
Tested with MSVC 2013 on Windows 7 x64.
2016-03-16 17:33:20 +01:00
Peter Wu
7c55c335cc
Merge branches 'master' and 'cmake-updated' into cmake
...
Update to latest master with appropriate cmake changes at the same time.
2016-03-14 17:26:15 +01:00
Peter Wu
2ddb83206b
cmake: sync with v1.8.0-63-g37b09f6
...
Adds missing source files and configure.ac changes since
v1.7.0-93-g093eb51.
2016-03-14 17:20:37 +01:00
Jan-E
e8b62c620d
Revert change of NGHTTP2_VERSION_NUM, keep the parentheses around VERSION_NUM, not in the sed -e
2016-03-14 14:13:19 +01:00
Jan-E
0f71fbce8d
Generate nghttp2ver.h before compiling
2016-03-13 18:57:58 +01:00
Jan-E
4e2972a5dc
Use string for NGHTTP2_VERSION_NUM, e.g 0x010800: do not add parentheses
2016-03-13 18:43:44 +01:00
Jan-E
78e5417ff2
Remove -nologo: not used in VC11/VC14, throws error in VC9
2016-03-13 18:31:14 +01:00
Jan-E
77852cf572
Use string for NGHTTP2_VERSION_NUM, e.g 0x010800
2016-03-13 18:24:32 +01:00
Jan-E
fa36537f82
Detect version for releases en dev versions
2016-03-13 18:18:22 +01:00
Jan-E
4cde76c9c3
Do not use Cython by default
2016-03-13 18:13:46 +01:00
Jan-E
e02512032b
Fix missing external symbol nghttp2_rcbuf_new2
2016-03-13 18:12:39 +01:00
Tatsuhiro Tsujikawa
e58db4f8b0
Attempt to fix compile error with msvc
2016-03-14 00:54:02 +09:00
Peter Wu
7f8110601e
cmake: fix compatibility with cmake before 3.3
...
The COMPILE_LANGUAGE generator expression is only supported since CMake
3.3. Moreover, it does not work with all generators (works with Makefile
and Ninja, but not with Visual Studio).
target_compile_options would only work if a target does not mix C and
C++ sources, since the flags are intended to be set for a specific
language, use set_source_files_properties instead. This approach is also
less repetitive.
Drop the idea of using lists and COMPILE_OPTIONS,
set_source_files_properties only understands COMPILE_FLAGS (a single
string, not a list).
2016-03-13 12:30:41 +01:00
Tatsuhiro Tsujikawa
37b09f6785
Use %u for uint8_t for formatting
2016-03-13 18:25:30 +09:00
Tatsuhiro Tsujikawa
2a606bae4c
Add nghttp2_error_callback to tell application human readable error message
2016-03-13 18:22:52 +09:00
Tatsuhiro Tsujikawa
3db9c2c796
Remove extra tokenization of header names; they are not effective at best
2016-03-12 21:13:09 +09:00
Tatsuhiro Tsujikawa
12dad32890
Add nghttp2_on_header_callback2
2016-03-12 21:13:09 +09:00
Tatsuhiro Tsujikawa
689d2a1afb
Fix compile error with --enable-debug
2016-03-12 21:12:27 +09:00
Tatsuhiro Tsujikawa
ff0d137fb3
Reference counted HPACK name/value pair
2016-03-12 21:12:27 +09:00
Tatsuhiro Tsujikawa
8da20975f9
Always allocate buffer for name, and value
2016-03-12 21:12:26 +09:00
Peter Wu
bdb6581990
Add CMake-related files to EXTRA_DIST
2016-03-12 01:38:12 +01:00
Tatsuhiro Tsujikawa
e453759637
Add nghttp2_option_set_no_auto_ping_ack() option
...
This option prevents the nghttp2 library from sending PING frame with
ACK flag set in the reply to incoming PING frame. To allow the
application to send PING with ACK flag set, nghttp2_submit_ping() now
recognizes NGHTTP2_FLAG_PING in its flags parameter.
2016-02-29 23:39:50 +09:00
Tatsuhiro Tsujikawa
a21c87d11c
Add nghttp2_http2_strerror() to return HTTP/2 error code string
2016-02-29 23:10:20 +09:00
Tatsuhiro Tsujikawa
32446a5197
Revert "Update doc"
...
This reverts commit 8aac5d6af2
.
2016-02-25 21:19:38 +09:00
Tatsuhiro Tsujikawa
40c1b29f36
Handle extension frame in session_inbound_frame_reset
2016-02-25 21:18:59 +09:00
Tatsuhiro Tsujikawa
8aac5d6af2
Update doc
2016-02-25 00:58:50 +09:00
Tatsuhiro Tsujikawa
56bdfd1df2
Revert "Handle extension frame in session_inbound_frame_reset"
...
This reverts commit dbffb8995b
.
2016-02-25 00:58:24 +09:00
Tatsuhiro Tsujikawa
dbffb8995b
Handle extension frame in session_inbound_frame_reset
2016-02-25 00:45:24 +09:00
Tatsuhiro Tsujikawa
ebfae904ab
Fix typo
2016-02-25 00:32:17 +09:00
Tatsuhiro Tsujikawa
827abb57e9
Simplified bitfield calculation of extension frame
2016-02-24 23:59:01 +09:00
Tatsuhiro Tsujikawa
9aee43f7d8
Update doc for extension frames
2016-02-24 23:51:00 +09:00
Tatsuhiro Tsujikawa
34bf153653
Merge branch 'master' into simple-extensions
2016-02-24 23:21:03 +09:00
Tatsuhiro Tsujikawa
3e72711e23
Cap 100 limit for remembering idle streams
2016-02-23 01:09:45 +09:00
Tatsuhiro Tsujikawa
7921029e33
Tokenize extra HTTP header fields
...
The extra HTTP header fields are compiled from
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers ,
https://en.wikipedia.org/wiki/List_of_HTTP_header_fields , and
https://www.owasp.org/index.php/List_of_useful_HTTP_headers .
2016-02-20 23:30:02 +09:00
Tatsuhiro Tsujikawa
b7159f80b2
Eliminate the possibility of nghttp2_stream.cycle overflow
2016-02-18 23:56:29 +09:00
Peter Wu
77e8190b6c
cmake: fix symbol visibility issues
...
libnghttp2.so was missing -fvisibility=hidden. libnghttp2_asio.so on the
other hand had hidden visibility which resulted in no exported symbols
and a broken asio client examples.
Just build a static nghttp2 library to solve this issue.
2016-02-16 16:04:01 +01:00
Peter Wu
0afc21c9d8
cmake: fix compilation in lib
...
Need to add -fPIC to objects that will be put in a shared library.
2016-02-15 10:49:55 +01:00
Peter Wu
8c46d9181f
cmake: process tests directory
...
Split the nghttp2 library into objects and a shared library from those
objects. This is needed because of symbol visibility. An advantage over
the autotools build is that there are no worries about static versus
static library builds.
Test:
cmake $srcdir
make nghttpx-unittest main failmalloc
make test
2016-02-15 01:57:13 +01:00
Peter Wu
ccd2d34160
cmake: Install headers
2016-02-13 20:13:42 +01:00
Peter Wu
ea6eed10c7
cmake: fix version in soname
2016-02-13 20:13:42 +01:00
Peter Wu
5b21c39bb2
cmake: add lib, add versioning info, install lib
...
Also remove some headers which were not checked anyway and add macros to
cmakeconfig.h.in (based on the headers list in the CMakeLists.txt file).
2016-02-13 20:13:42 +01:00
Peter Wu
0e469ed221
Fix typo in HAVE_CONFIG_H name
...
Only used by lib/nghttp2_npn.c where the presence of config.h does not
seem to make a difference though.
2016-02-13 20:11:50 +01:00
Tatsuhiro Tsujikawa
61dda40b44
Don't pass NULL to memcpy
2016-02-12 22:31:47 +09:00
Tatsuhiro Tsujikawa
00e722f02c
Add warning
2016-02-11 23:20:31 +09:00
Tatsuhiro Tsujikawa
304ff6a6f9
Don't send extension frame in closing state
2016-02-07 21:12:36 +09:00
Tatsuhiro Tsujikawa
fc39f2d9d2
Merge branch 'master' into simple-extensions
2016-02-07 21:09:08 +09:00
Tatsuhiro Tsujikawa
4c05558273
Evaluate nghttp2_session_want_read and nghttp2_session_want_write when determining session is about to close
2016-02-03 00:25:11 +09:00
Reza Tavakoli
5a6f312182
Fixing window makefile version detection
2016-01-26 13:57:21 +03:30
Tatsuhiro Tsujikawa
4a78f59e7b
Rename nghttp2_session.sent_stream_id as last_sent_stream_id
...
This is more accurate, and there is symmetric relation between
last_sent_stream_id and last_recv_stream_id, which is bettern fit in
my sense.
2016-01-23 14:47:39 +09:00
Tatsuhiro Tsujikawa
4ceb9fd767
Cancel stream if flow control window gets overflow
...
Previously, we did terminate session, but it did not actually cancel
streams. Now we just cancel streams in this case.
2016-01-23 00:24:12 +09:00