Tatsuhiro Tsujikawa
152a20a416
Influence last_stream_id to nghttp2_session_want_{read,write}
2014-11-29 23:13:42 +09:00
Tatsuhiro Tsujikawa
7ff0797535
Rewrite session_is_new_peer_stream_id()
2014-11-29 17:24:49 +09:00
Tatsuhiro Tsujikawa
ca57c2f6b6
Rename NGHTTP2_GOAWAY_FAIL_ON_SEND with NGHTTP2_GOAWAY_TERM_ON_FAIL
2014-11-29 16:28:08 +09:00
Tatsuhiro Tsujikawa
d75ba74bbd
Return error if invalid stream_id is given to nghttp2_submit_push_promise
2014-11-29 16:17:02 +09:00
Tatsuhiro Tsujikawa
9ff1925538
Robust GOAWAY handling
...
This change will utilize last_stream_id in GOAWAY extensively. When
GOAWAY is received with a last_stream_id, library closes all outgoing
streams whose stream_id > received last_stream_id.
nghttp2_on_stream_callback is called for each stream to be closed.
When GOAWAY is sent with a last_stream_id, library closes all incoming
streams whose stream_id > sent last_stream_id.
nghttp2_on_stream_callback is called for each stream to be closed.
2014-11-29 16:02:13 +09:00
Tatsuhiro Tsujikawa
1915408096
doc: Add language attribute in asio_http2.h.rst.in
2014-11-28 02:01:59 +09:00
Tatsuhiro Tsujikawa
45801883ba
Cleanup previous commit
2014-11-28 01:35:12 +09:00
Tatsuhiro Tsujikawa
382a328ead
Issue connection error if client receives HEADERS with idle stream ID
...
If stream ID is not idle, it might be valid HEADERS. If stream ID is
idle, it is invalid regardless stream ID is even or odd, since client
is not expected to recieve request from server. nghttp2 library
historically allows this, but now we forbids this.
2014-11-28 01:22:57 +09:00
Tatsuhiro Tsujikawa
babfa41424
Just ignore HEADERS with non-idle stream ID and not found in stream map
2014-11-28 01:01:33 +09:00
Tatsuhiro Tsujikawa
204ff787fa
nghttpx: Submit RST_STREAM if HEADERS appears in the middle of a stream
2014-11-28 00:23:46 +09:00
Tatsuhiro Tsujikawa
2a68cc7076
Merge branch 'clang-format'
2014-11-27 23:56:53 +09:00
Tatsuhiro Tsujikawa
b1f807abd1
Reformat lines with clang-format-3.5
2014-11-27 23:56:30 +09:00
Tatsuhiro Tsujikawa
2c830a4698
Add make clang-format
2014-11-27 23:56:29 +09:00
Tatsuhiro Tsujikawa
87ce5068bb
Add pre-commit script
2014-11-27 23:56:29 +09:00
Tatsuhiro Tsujikawa
7c794b8d93
Add .clang-format config file and git-clang-format from clang project
2014-11-27 23:56:29 +09:00
Tatsuhiro Tsujikawa
0a406eab94
Add contribution guidelines
2014-11-27 23:56:29 +09:00
Tatsuhiro Tsujikawa
c67ccad74d
nghttpx: Use cached get_config()->pid in save_pid()
2014-11-27 22:41:14 +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
04dae32509
nghttpx: Store PID to Config again after daemon()
2014-11-27 21:32:34 +09:00
Tatsuhiro Tsujikawa
3e0813d407
Merge branch 'alagoutte-scan-build'
2014-11-27 21:27:52 +09:00
Tatsuhiro Tsujikawa
c8b83d7024
Merge branch 'scan-build' of https://github.com/alagoutte/nghttp2 into alagoutte-scan-build
2014-11-27 21:25:56 +09:00
Alexis La Goutte
d1285255eb
Fix last warning found by Clang Analyzer
...
nghttp2_session.c:636:3: warning: Branch condition evaluates to a garbage value
2014-11-26 18:20:16 +01:00
Tatsuhiro Tsujikawa
dfbc6e6a57
examples: Guard include config.h with HAVE_CONFIG_H
2014-11-27 00:12:42 +09:00
Tatsuhiro Tsujikawa
2eab5d03fd
Merge branch 'alagoutte-Wunused-parameter'
2014-11-26 01:20:21 +09:00
Tatsuhiro Tsujikawa
fe634e5326
Merge branch 'Wunused-parameter' of https://github.com/alagoutte/nghttp2 into alagoutte-Wunused-parameter
2014-11-26 01:16:52 +09:00
Alexis La Goutte
bac44d7ffb
Fix -Werror=unused-parameter using _U_ macro
2014-11-25 17:08:09 +01:00
Alexis La Goutte
51b59bc8f0
Remove -Wno-unused-parameter (and add _U_ macro)
2014-11-25 17:08:09 +01:00
Tatsuhiro Tsujikawa
2d10e31931
Merge branch 'andydavies-master'
2014-11-26 00:04:40 +09:00
Andy Davies
4cf7b3cebd
Fixed minor typo
...
turotial -> tutorial
2014-11-25 10:03:10 +00:00
Tatsuhiro Tsujikawa
e11834d1c9
src: Add code in case struct tm.tm_gmtoff is not available
2014-11-24 18:39:35 +09:00
Tatsuhiro Tsujikawa
8f22ff3032
Update man pages
2014-11-24 15:27:41 +09:00
Tatsuhiro Tsujikawa
8e94551881
Handle idle stream in priority field
2014-11-24 15:25:19 +09:00
Tatsuhiro Tsujikawa
6e1470c9d3
Remove duplicated code
2014-11-24 15:25:19 +09:00
Tatsuhiro Tsujikawa
9416bf9079
Update doc
2014-11-24 15:25:19 +09:00
Tatsuhiro Tsujikawa
24f83eef7c
Reduce nghttp2_session_get_stream() call before sending frame
2014-11-24 15:25:19 +09:00
Tatsuhiro Tsujikawa
b7c0576eb5
Make certain type of HEADERS subject to priority
...
We make following HEADERS under priority control:
* push response HEADERS
* HEADERS submitted by nghttp2_submit_response
Currently, HEADERS submitted by nghttp2_submit_headers is not attached
to stream. This is because it may be used as non-final response
header and application may submit final response using
nghttp2_submit_response without checking non-final response header
transmission.
2014-11-24 15:25:19 +09:00
Tatsuhiro Tsujikawa
5a48750e16
Assign default weight if NGHTTP2_MAX_DEP_TREE_LENGTH is exceeded
2014-11-24 15:25:19 +09:00
Tatsuhiro Tsujikawa
ae93f6345c
Allow PRIORITY frame at anytime.
...
Allowing PRIORITY frame at anytime so that PRIORITY frame to idle
stream can create anchor node in dependency tree. In this change, we
open stream with new NGHTTP2_STREAM_IDLE state, which is linked in
session->closed_stream_head and is treated as if it is closed stream.
One difference is that if the stream is opened, we remove it from
linked list and change the state to the appropriate one. To O(1)
removal from linked list, we change session->closed_stream_head to
doubly linked list.
2014-11-24 15:25:19 +09:00
Tatsuhiro Tsujikawa
9bba616426
nghttpx: Add $alpn variable to accesslog formatting
...
$alpn is a variable which represents ALPN identifier of the protocol
which generates the response.
2014-11-24 15:24:09 +09:00
Tatsuhiro Tsujikawa
1fe50f272b
nghttpx: Add $pid to --accesslog-format variable
...
$pid refers to the PID of the running process.
2014-11-24 14:34:43 +09:00
Tatsuhiro Tsujikawa
93023acc6c
nghttpx: Make --accesslog-format usage doc help2man friendly
...
This is unfortunate but help2man behaves badly when there is indented
lines in help messages in commnad-line args. We removed indentations
to make help2man happy.
2014-11-24 14:16:48 +09:00
Tatsuhiro Tsujikawa
daf659c64e
nghttpx: Note the conversion made in <VAR>
2014-11-24 14:04:37 +09:00
Tatsuhiro Tsujikawa
de2a855572
Implement faster formatting for format_iso8601 and format_common_log
2014-11-24 14:00:52 +09:00
Tatsuhiro Tsujikawa
df401f57a2
Merge branch 'LPardue-accesslog_port'
2014-11-24 13:35:47 +09:00
Lucas Pardue
6e178653a5
fixed conflict
2014-11-23 21:10:51 +00:00
Lucas Pardue
9cf1a0c77c
Add features to logging, client and server port,
...
time_iso8601 and request_time.
2014-11-23 20:37:51 +00:00
Tatsuhiro Tsujikawa
ebdbe88bc0
Add contrib/.gitignore
2014-11-23 19:32:54 +09:00
Tatsuhiro Tsujikawa
74ec1d3377
nghttpx: Write accesslog when upstream connection is lost for HTTP/2 and SPDY
2014-11-23 17:24:23 +09:00
Tatsuhiro Tsujikawa
1e4f288a7c
nghttpx: Remove misleading logging
2014-11-23 16:45:36 +09:00