summaryrefslogtreecommitdiff
path: root/deps/nghttp2/lib
diff options
context:
space:
mode:
authorgengjiawen <technicalcute@gmail.com>2019-04-18 21:26:14 +0800
committerZYSzys <zyszys98@gmail.com>2019-04-22 22:44:15 +0800
commit2161690024862fbfc23c4e01d98199acb832f76b (patch)
tree1e21da90f705606caea43bbcf107ca9941301774 /deps/nghttp2/lib
parent8eaf31181a103fab77b8eef750e59979a911cd15 (diff)
downloadandroid-node-v8-2161690024862fbfc23c4e01d98199acb832f76b.tar.gz
android-node-v8-2161690024862fbfc23c4e01d98199acb832f76b.tar.bz2
android-node-v8-2161690024862fbfc23c4e01d98199acb832f76b.zip
deps: update nghttp2 to 1.38.0
PR-URL: https://github.com/nodejs/node/pull/27295 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Yongsheng Zhang <zyszys98@gmail.com> Reviewed-By: Masashi Hirano <shisama07@gmail.com>
Diffstat (limited to 'deps/nghttp2/lib')
-rw-r--r--deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h4
-rw-r--r--deps/nghttp2/lib/nghttp2_session.c98
2 files changed, 52 insertions, 50 deletions
diff --git a/deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h b/deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
index 2384f52787..7ddf43e703 100644
--- a/deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
+++ b/deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
@@ -29,7 +29,7 @@
* @macro
* Version number of the nghttp2 library release
*/
-#define NGHTTP2_VERSION "1.37.0"
+#define NGHTTP2_VERSION "1.38.0"
/**
* @macro
@@ -37,6 +37,6 @@
* release. This is a 24 bit number with 8 bits for major number, 8 bits
* for minor and 8 bits for patch. Version 1.2.3 becomes 0x010203.
*/
-#define NGHTTP2_VERSION_NUM 0x012500
+#define NGHTTP2_VERSION_NUM 0x012600
#endif /* NGHTTP2VER_H */
diff --git a/deps/nghttp2/lib/nghttp2_session.c b/deps/nghttp2/lib/nghttp2_session.c
index ef4932af4e..33d987667e 100644
--- a/deps/nghttp2/lib/nghttp2_session.c
+++ b/deps/nghttp2/lib/nghttp2_session.c
@@ -3619,71 +3619,73 @@ static int inflate_header_block(nghttp2_session *session, nghttp2_frame *frame,
if (call_header_cb && (inflate_flags & NGHTTP2_HD_INFLATE_EMIT)) {
rv = 0;
- if (subject_stream && session_enforce_http_messaging(session)) {
- rv = nghttp2_http_on_header(session, subject_stream, frame, &nv,
- trailer);
+ if (subject_stream) {
+ if (session_enforce_http_messaging(session)) {
+ rv = nghttp2_http_on_header(session, subject_stream, frame, &nv,
+ trailer);
- if (rv == NGHTTP2_ERR_IGN_HTTP_HEADER) {
- /* Don't overwrite rv here */
- int rv2;
+ if (rv == NGHTTP2_ERR_IGN_HTTP_HEADER) {
+ /* Don't overwrite rv here */
+ int rv2;
- rv2 = session_call_on_invalid_header(session, frame, &nv);
- if (rv2 == NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE) {
- rv = NGHTTP2_ERR_HTTP_HEADER;
- } else {
- if (rv2 != 0) {
- return rv2;
+ rv2 = session_call_on_invalid_header(session, frame, &nv);
+ if (rv2 == NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE) {
+ rv = NGHTTP2_ERR_HTTP_HEADER;
+ } else {
+ if (rv2 != 0) {
+ return rv2;
+ }
+
+ /* header is ignored */
+ DEBUGF("recv: HTTP ignored: type=%u, id=%d, header %.*s: %.*s\n",
+ frame->hd.type, frame->hd.stream_id, (int)nv.name->len,
+ nv.name->base, (int)nv.value->len, nv.value->base);
+
+ rv2 = session_call_error_callback(
+ session, NGHTTP2_ERR_HTTP_HEADER,
+ "Ignoring received invalid HTTP header field: frame type: "
+ "%u, stream: %d, name: [%.*s], value: [%.*s]",
+ frame->hd.type, frame->hd.stream_id, (int)nv.name->len,
+ nv.name->base, (int)nv.value->len, nv.value->base);
+
+ if (nghttp2_is_fatal(rv2)) {
+ return rv2;
+ }
}
+ }
- /* header is ignored */
- DEBUGF("recv: HTTP ignored: type=%u, id=%d, header %.*s: %.*s\n",
+ if (rv == NGHTTP2_ERR_HTTP_HEADER) {
+ DEBUGF("recv: HTTP error: type=%u, id=%d, header %.*s: %.*s\n",
frame->hd.type, frame->hd.stream_id, (int)nv.name->len,
nv.name->base, (int)nv.value->len, nv.value->base);
- rv2 = session_call_error_callback(
+ rv = session_call_error_callback(
session, NGHTTP2_ERR_HTTP_HEADER,
- "Ignoring received invalid HTTP header field: frame type: "
+ "Invalid HTTP header field was received: frame type: "
"%u, stream: %d, name: [%.*s], value: [%.*s]",
frame->hd.type, frame->hd.stream_id, (int)nv.name->len,
nv.name->base, (int)nv.value->len, nv.value->base);
- if (nghttp2_is_fatal(rv2)) {
- return rv2;
+ if (nghttp2_is_fatal(rv)) {
+ return rv;
}
- }
- }
-
- if (rv == NGHTTP2_ERR_HTTP_HEADER) {
- DEBUGF("recv: HTTP error: type=%u, id=%d, header %.*s: %.*s\n",
- frame->hd.type, frame->hd.stream_id, (int)nv.name->len,
- nv.name->base, (int)nv.value->len, nv.value->base);
- rv = session_call_error_callback(
- session, NGHTTP2_ERR_HTTP_HEADER,
- "Invalid HTTP header field was received: frame type: "
- "%u, stream: %d, name: [%.*s], value: [%.*s]",
- frame->hd.type, frame->hd.stream_id, (int)nv.name->len,
- nv.name->base, (int)nv.value->len, nv.value->base);
-
- if (nghttp2_is_fatal(rv)) {
- return rv;
+ rv = session_handle_invalid_stream2(session,
+ subject_stream->stream_id,
+ frame, NGHTTP2_ERR_HTTP_HEADER);
+ if (nghttp2_is_fatal(rv)) {
+ return rv;
+ }
+ return NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE;
}
-
- rv =
- session_handle_invalid_stream2(session, subject_stream->stream_id,
- frame, NGHTTP2_ERR_HTTP_HEADER);
- if (nghttp2_is_fatal(rv)) {
+ }
+ if (rv == 0) {
+ rv = session_call_on_header(session, frame, &nv);
+ /* This handles NGHTTP2_ERR_PAUSE and
+ NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE as well */
+ if (rv != 0) {
return rv;
}
- return NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE;
- }
- }
- if (rv == 0) {
- rv = session_call_on_header(session, frame, &nv);
- /* This handles NGHTTP2_ERR_PAUSE and
- NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE as well */
- if (rv != 0) {
- return rv;
}
}
}