Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit eef838f

Browse filesBrowse files
nodejs-github-botaduh95
authored andcommitted
deps: update nghttp2 to 1.67.1
PR-URL: #59790 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
1 parent f0d81c9 commit eef838f
Copy full SHA for eef838f
Expand file treeCollapse file tree

17 files changed

+388
-148
lines changed
Open diff view settings
Collapse file

‎deps/nghttp2/lib/CMakeLists.txt‎

Copy file name to clipboardExpand all lines: deps/nghttp2/lib/CMakeLists.txt
+32-8Lines changed: 32 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,29 @@ if(WIN32)
4747
set(NGHTTP2_RES ${CMAKE_CURRENT_BINARY_DIR}/version.rc)
4848
endif()
4949

50-
set(EXPORT_SET "${PROJECT_NAME}-targets")
50+
set(NGHTTP2_GENERATED_DIR "${CMAKE_CURRENT_BINARY_DIR}/generated")
51+
set(NGHTTP2_VERSION_CONFIG "${NGHTTP2_GENERATED_DIR}/${PROJECT_NAME}ConfigVersion.cmake")
52+
set(NGHTTP2_PROJECT_CONFIG "${NGHTTP2_GENERATED_DIR}/${PROJECT_NAME}Config.cmake")
53+
set(NGHTTP2_TARGETS_EXPORT_NAME "${PROJECT_NAME}Targets")
54+
set(NGHTTP2_CONFIG_INSTALL_DIR "lib/cmake/${PROJECT_NAME}")
55+
set(NGHTTP2_NAMESPACE "${PROJECT_NAME}::")
56+
set(NGHTTP2_VERSION ${PROJECT_VERSION})
57+
58+
include(CMakePackageConfigHelpers)
59+
write_basic_package_version_file(
60+
"${NGHTTP2_VERSION_CONFIG}" VERSION ${NGHTTP2_VERSION} COMPATIBILITY SameMajorVersion
61+
)
62+
configure_file("${CMAKE_CURRENT_SOURCE_DIR}/config.cmake.in" "${NGHTTP2_PROJECT_CONFIG}" @ONLY)
63+
64+
# Install cmake config files
65+
install(
66+
FILES "${NGHTTP2_PROJECT_CONFIG}" "${NGHTTP2_VERSION_CONFIG}"
67+
DESTINATION "${NGHTTP2_CONFIG_INSTALL_DIR}")
68+
69+
install(
70+
EXPORT "${NGHTTP2_TARGETS_EXPORT_NAME}"
71+
NAMESPACE "${NGHTTP2_NAMESPACE}"
72+
DESTINATION "${NGHTTP2_CONFIG_INSTALL_DIR}")
5173

5274
# Public shared library
5375
if(BUILD_SHARED_LIBS)
@@ -65,7 +87,11 @@ if(BUILD_SHARED_LIBS)
6587
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
6688
)
6789

68-
install(TARGETS ${SHARED_LIB} EXPORT ${EXPORT_SET})
90+
install(TARGETS ${SHARED_LIB}
91+
EXPORT ${NGHTTP2_TARGETS_EXPORT_NAME}
92+
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
93+
LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
94+
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
6995
list(APPEND nghttp2_exports ${SHARED_LIB})
7096
endif()
7197

@@ -87,7 +113,9 @@ if(BUILD_STATIC_LIBS)
87113

88114
target_compile_definitions(${STATIC_LIB} PUBLIC "-DNGHTTP2_STATICLIB")
89115

90-
install(TARGETS ${STATIC_LIB} EXPORT ${EXPORT_SET})
116+
install(TARGETS ${STATIC_LIB}
117+
EXPORT ${NGHTTP2_TARGETS_EXPORT_NAME}
118+
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}")
91119
list(APPEND nghttp2_exports ${STATIC_LIB})
92120
endif()
93121

@@ -97,11 +125,7 @@ else()
97125
set(LIB_SELECTED ${STATIC_LIB})
98126
endif()
99127

100-
add_library(${PROJECT_NAME}::nghttp2 ALIAS ${LIB_SELECTED})
128+
add_library(nghttp2 ALIAS ${LIB_SELECTED})
101129

102130
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/libnghttp2.pc"
103131
DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
104-
105-
install(EXPORT ${EXPORT_SET}
106-
DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME}
107-
NAMESPACE ${PROJECT_NAME}::)
Collapse file

‎deps/nghttp2/lib/Makefile.am‎

Copy file name to clipboardExpand all lines: deps/nghttp2/lib/Makefile.am
+1-1Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
2323
SUBDIRS = includes
2424

25-
EXTRA_DIST = Makefile.msvc CMakeLists.txt version.rc.in
25+
EXTRA_DIST = Makefile.msvc CMakeLists.txt version.rc.in config.cmake.in
2626

2727
AM_CFLAGS = $(WARNCFLAGS) $(EXTRACFLAG)
2828
AM_CPPFLAGS = -I$(srcdir)/includes -I$(builddir)/includes -DBUILDING_NGHTTP2 \
Collapse file

‎deps/nghttp2/lib/Makefile.in‎

Copy file name to clipboardExpand all lines: deps/nghttp2/lib/Makefile.in
+3-1Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -360,6 +360,8 @@ LIBNGHTTP3_LIBS = @LIBNGHTTP3_LIBS@
360360
LIBNGTCP2_CFLAGS = @LIBNGTCP2_CFLAGS@
361361
LIBNGTCP2_CRYPTO_BORINGSSL_CFLAGS = @LIBNGTCP2_CRYPTO_BORINGSSL_CFLAGS@
362362
LIBNGTCP2_CRYPTO_BORINGSSL_LIBS = @LIBNGTCP2_CRYPTO_BORINGSSL_LIBS@
363+
LIBNGTCP2_CRYPTO_LIBRESSL_CFLAGS = @LIBNGTCP2_CRYPTO_LIBRESSL_CFLAGS@
364+
LIBNGTCP2_CRYPTO_LIBRESSL_LIBS = @LIBNGTCP2_CRYPTO_LIBRESSL_LIBS@
363365
LIBNGTCP2_CRYPTO_OSSL_CFLAGS = @LIBNGTCP2_CRYPTO_OSSL_CFLAGS@
364366
LIBNGTCP2_CRYPTO_OSSL_LIBS = @LIBNGTCP2_CRYPTO_OSSL_LIBS@
365367
LIBNGTCP2_CRYPTO_QUICTLS_CFLAGS = @LIBNGTCP2_CRYPTO_QUICTLS_CFLAGS@
@@ -494,7 +496,7 @@ top_srcdir = @top_srcdir@
494496
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
495497
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
496498
SUBDIRS = includes
497-
EXTRA_DIST = Makefile.msvc CMakeLists.txt version.rc.in
499+
EXTRA_DIST = Makefile.msvc CMakeLists.txt version.rc.in config.cmake.in
498500
AM_CFLAGS = $(WARNCFLAGS) $(EXTRACFLAG)
499501
AM_CPPFLAGS = -I$(srcdir)/includes -I$(builddir)/includes -DBUILDING_NGHTTP2 \
500502
@DEFS@
Collapse file

‎deps/nghttp2/lib/config.cmake.in‎

Copy file name to clipboard
+3Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
include(CMakeFindDependencyMacro)
2+
3+
include("${CMAKE_CURRENT_LIST_DIR}/@NGHTTP2_TARGETS_EXPORT_NAME@.cmake")
Collapse file

‎deps/nghttp2/lib/includes/Makefile.in‎

Copy file name to clipboardExpand all lines: deps/nghttp2/lib/includes/Makefile.in
+2Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,8 @@ LIBNGHTTP3_LIBS = @LIBNGHTTP3_LIBS@
265265
LIBNGTCP2_CFLAGS = @LIBNGTCP2_CFLAGS@
266266
LIBNGTCP2_CRYPTO_BORINGSSL_CFLAGS = @LIBNGTCP2_CRYPTO_BORINGSSL_CFLAGS@
267267
LIBNGTCP2_CRYPTO_BORINGSSL_LIBS = @LIBNGTCP2_CRYPTO_BORINGSSL_LIBS@
268+
LIBNGTCP2_CRYPTO_LIBRESSL_CFLAGS = @LIBNGTCP2_CRYPTO_LIBRESSL_CFLAGS@
269+
LIBNGTCP2_CRYPTO_LIBRESSL_LIBS = @LIBNGTCP2_CRYPTO_LIBRESSL_LIBS@
268270
LIBNGTCP2_CRYPTO_OSSL_CFLAGS = @LIBNGTCP2_CRYPTO_OSSL_CFLAGS@
269271
LIBNGTCP2_CRYPTO_OSSL_LIBS = @LIBNGTCP2_CRYPTO_OSSL_LIBS@
270272
LIBNGTCP2_CRYPTO_QUICTLS_CFLAGS = @LIBNGTCP2_CRYPTO_QUICTLS_CFLAGS@
Collapse file

‎deps/nghttp2/lib/includes/nghttp2/nghttp2.h‎

Copy file name to clipboardExpand all lines: deps/nghttp2/lib/includes/nghttp2/nghttp2.h
+57-17Lines changed: 57 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2039,18 +2039,19 @@ typedef int (*nghttp2_on_header_callback2)(nghttp2_session *session,
20392039
/**
20402040
* @functypedef
20412041
*
2042-
* Callback function invoked when a invalid header name/value pair is
2042+
* Callback function invoked when an invalid header name/value pair is
20432043
* received for the |frame|.
20442044
*
20452045
* The parameter and behaviour are similar to
20462046
* :type:`nghttp2_on_header_callback`. The difference is that this
2047-
* callback is only invoked when a invalid header name/value pair is
2048-
* received which is treated as stream error if this callback is not
2049-
* set. Only invalid regular header field are passed to this
2050-
* callback. In other words, invalid pseudo header field is not
2051-
* passed to this callback. Also header fields which includes upper
2052-
* cased latter are also treated as error without passing them to this
2053-
* callback.
2047+
* callback is only invoked when an invalid header name/value pair is
2048+
* received which is treated as stream error if this callback returns
2049+
* :enum:`nghttp2_error.NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE` and
2050+
* :type:`nghttp2_on_invalid_header_callback2` is not set. Only
2051+
* invalid regular header field are passed to this callback. In other
2052+
* words, invalid pseudo header field is not passed to this callback.
2053+
* Also header fields which includes upper cased latter are also
2054+
* treated as error without passing them to this callback.
20542055
*
20552056
* This callback is only considered if HTTP messaging validation is
20562057
* turned on (which is on by default, see
@@ -2076,17 +2077,18 @@ typedef int (*nghttp2_on_invalid_header_callback)(
20762077
/**
20772078
* @functypedef
20782079
*
2079-
* Callback function invoked when a invalid header name/value pair is
2080+
* Callback function invoked when an invalid header name/value pair is
20802081
* received for the |frame|.
20812082
*
20822083
* The parameter and behaviour are similar to
20832084
* :type:`nghttp2_on_header_callback2`. The difference is that this
2084-
* callback is only invoked when a invalid header name/value pair is
2085-
* received which is silently ignored if this callback is not set.
2086-
* Only invalid regular header field are passed to this callback. In
2087-
* other words, invalid pseudo header field is not passed to this
2088-
* callback. Also header fields which includes upper cased latter are
2089-
* also treated as error without passing them to this callback.
2085+
* callback is only invoked when an invalid header name/value pair is
2086+
* received which is silently ignored if neither this callback nor
2087+
* :type:`nghttp2_on_invalid_header_callback` is set. Only invalid
2088+
* regular header field are passed to this callback. In other words,
2089+
* invalid pseudo header field is not passed to this callback. Also
2090+
* header fields which includes upper cased latter are also treated as
2091+
* error without passing them to this callback.
20902092
*
20912093
* This callback is only considered if HTTP messaging validation is
20922094
* turned on (which is on by default, see
@@ -2445,6 +2447,15 @@ typedef int (*nghttp2_error_callback2)(nghttp2_session *session,
24452447
int lib_error_code, const char *msg,
24462448
size_t len, void *user_data);
24472449

2450+
/**
2451+
* @functypedef
2452+
*
2453+
* Callback function invoked when unpredictable data of |destlen|
2454+
* bytes are needed. The implementation must write unpredictable data
2455+
* of |destlen| bytes into the buffer pointed by |dest|.
2456+
*/
2457+
typedef void (*nghttp2_rand_callback)(uint8_t *dest, size_t destlen);
2458+
24482459
struct nghttp2_session_callbacks;
24492460

24502461
/**
@@ -2649,7 +2660,7 @@ NGHTTP2_EXTERN void nghttp2_session_callbacks_set_on_header_callback2(
26492660
/**
26502661
* @function
26512662
*
2652-
* Sets callback function invoked when a invalid header name/value
2663+
* Sets callback function invoked when an invalid header name/value
26532664
* pair is received. If both
26542665
* `nghttp2_session_callbacks_set_on_invalid_header_callback()` and
26552666
* `nghttp2_session_callbacks_set_on_invalid_header_callback2()` are
@@ -2662,7 +2673,7 @@ NGHTTP2_EXTERN void nghttp2_session_callbacks_set_on_invalid_header_callback(
26622673
/**
26632674
* @function
26642675
*
2665-
* Sets callback function invoked when a invalid header name/value
2676+
* Sets callback function invoked when an invalid header name/value
26662677
* pair is received.
26672678
*/
26682679
NGHTTP2_EXTERN void nghttp2_session_callbacks_set_on_invalid_header_callback2(
@@ -2833,6 +2844,18 @@ NGHTTP2_EXTERN void nghttp2_session_callbacks_set_error_callback(
28332844
NGHTTP2_EXTERN void nghttp2_session_callbacks_set_error_callback2(
28342845
nghttp2_session_callbacks *cbs, nghttp2_error_callback2 error_callback2);
28352846

2847+
/**
2848+
* @function
2849+
*
2850+
* Sets callback function invoked when unpredictable data is needed.
2851+
* Although this callback is optional due to the backward
2852+
* compatibility, it is recommended to specify it to harden the
2853+
* runtime behavior against suspicious activities of a remote
2854+
* endpoint.
2855+
*/
2856+
NGHTTP2_EXTERN void nghttp2_session_callbacks_set_rand_callback(
2857+
nghttp2_session_callbacks *cbs, nghttp2_rand_callback rand_callback);
2858+
28362859
/**
28372860
* @functypedef
28382861
*
@@ -3218,6 +3241,23 @@ nghttp2_option_set_stream_reset_rate_limit(nghttp2_option *option,
32183241
NGHTTP2_EXTERN void nghttp2_option_set_max_continuations(nghttp2_option *option,
32193242
size_t val);
32203243

3244+
/**
3245+
* @function
3246+
*
3247+
* This function sets the rate limit for the "glitches", the
3248+
* suspicious activities from a remote endpoint. It is a token-bucket
3249+
* based rate limiter. |burst| specifies the number of tokens that is
3250+
* initially available. The maximum number of tokens is capped to
3251+
* this value. |rate| specifies the number of tokens that are
3252+
* regenerated per second. When a suspicious activity is detected,
3253+
* some amount of tokens are consumed. If there is no token
3254+
* available, GOAWAY is sent to tear down the connection. |burst| and
3255+
* |rate| default to 1000 and 33 respectively.
3256+
*/
3257+
NGHTTP2_EXTERN void nghttp2_option_set_glitch_rate_limit(nghttp2_option *option,
3258+
uint64_t burst,
3259+
uint64_t rate);
3260+
32213261
/**
32223262
* @function
32233263
*
Collapse file

‎deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h‎

Copy file name to clipboardExpand all lines: deps/nghttp2/lib/includes/nghttp2/nghttp2ver.h
+2-2Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,14 +29,14 @@
2929
* @macro
3030
* Version number of the nghttp2 library release
3131
*/
32-
#define NGHTTP2_VERSION "1.66.0"
32+
#define NGHTTP2_VERSION "1.67.1"
3333

3434
/**
3535
* @macro
3636
* Numerical representation of the version number of the nghttp2 library
3737
* release. This is a 24 bit number with 8 bits for major number, 8 bits
3838
* for minor and 8 bits for patch. Version 1.2.3 becomes 0x010203.
3939
*/
40-
#define NGHTTP2_VERSION_NUM 0x014200
40+
#define NGHTTP2_VERSION_NUM 0x014301
4141

4242
#endif /* NGHTTP2VER_H */
Collapse file

‎deps/nghttp2/lib/nghttp2_callbacks.c‎

Copy file name to clipboardExpand all lines: deps/nghttp2/lib/nghttp2_callbacks.c
+5Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,3 +201,8 @@ void nghttp2_session_callbacks_set_error_callback2(
201201
nghttp2_session_callbacks *cbs, nghttp2_error_callback2 error_callback2) {
202202
cbs->error_callback2 = error_callback2;
203203
}
204+
205+
void nghttp2_session_callbacks_set_rand_callback(
206+
nghttp2_session_callbacks *cbs, nghttp2_rand_callback rand_callback) {
207+
cbs->rand_callback = rand_callback;
208+
}
Collapse file

‎deps/nghttp2/lib/nghttp2_callbacks.h‎

Copy file name to clipboardExpand all lines: deps/nghttp2/lib/nghttp2_callbacks.h
+1Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -151,6 +151,7 @@ struct nghttp2_session_callbacks {
151151
nghttp2_on_extension_chunk_recv_callback on_extension_chunk_recv_callback;
152152
nghttp2_error_callback error_callback;
153153
nghttp2_error_callback2 error_callback2;
154+
nghttp2_rand_callback rand_callback;
154155
};
155156

156157
#endif /* NGHTTP2_CALLBACKS_H */
Collapse file

‎deps/nghttp2/lib/nghttp2_int.h‎

Copy file name to clipboardExpand all lines: deps/nghttp2/lib/nghttp2_int.h
+5-1Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,11 @@ typedef enum {
5252
* Unlike NGHTTP2_ERR_IGN_HTTP_HEADER, this does not invoke
5353
* nghttp2_on_invalid_header_callback.
5454
*/
55-
NGHTTP2_ERR_REMOVE_HTTP_HEADER = -106
55+
NGHTTP2_ERR_REMOVE_HTTP_HEADER = -106,
56+
/*
57+
* Cancel pushed stream.
58+
*/
59+
NGHTTP2_ERR_PUSH_CANCEL = -107,
5660
} nghttp2_internal_error;
5761

5862
#endif /* NGHTTP2_INT_H */

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.