@fails-components/webtransport-transport-http3-quiche 1.0.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/CMakeLists.txt +978 -0
  2. package/LICENSE +39 -0
  3. package/LICENSE.chromium +27 -0
  4. package/LICENSE.envoy +207 -0
  5. package/build.js +315 -0
  6. package/lib/clientsocket.js +80 -0
  7. package/lib/index.js +47 -0
  8. package/lib/serversocket.js +80 -0
  9. package/lib/socket.js +118 -0
  10. package/lib/types.ts +15 -0
  11. package/lib/utils.js +12 -0
  12. package/package.json +68 -0
  13. package/platform/icufix/fakedata.cpp +8 -0
  14. package/platform/quiche/quic/core/io/socket_win.inc +3 -0
  15. package/platform/quiche_platform_impl/quiche_bug_tracker_impl.h +7 -0
  16. package/platform/quiche_platform_impl/quiche_client_stats_impl.h +7 -0
  17. package/platform/quiche_platform_impl/quiche_command_line_flags_impl.h +7 -0
  18. package/platform/quiche_platform_impl/quiche_containers_impl.h +7 -0
  19. package/platform/quiche_platform_impl/quiche_event_loop_impl.h +7 -0
  20. package/platform/quiche_platform_impl/quiche_export_impl.h +6 -0
  21. package/platform/quiche_platform_impl/quiche_flag_utils_impl.h +11 -0
  22. package/platform/quiche_platform_impl/quiche_flags_impl.h +8 -0
  23. package/platform/quiche_platform_impl/quiche_googleurl_impl.h +8 -0
  24. package/platform/quiche_platform_impl/quiche_iovec_impl.h +10 -0
  25. package/platform/quiche_platform_impl/quiche_logging_impl.h +21 -0
  26. package/platform/quiche_platform_impl/quiche_mem_slice_impl.h +2 -0
  27. package/platform/quiche_platform_impl/quiche_mutex_impl.h +8 -0
  28. package/platform/quiche_platform_impl/quiche_prefetch_impl.h +11 -0
  29. package/platform/quiche_platform_impl/quiche_reference_counted_impl.h +16 -0
  30. package/platform/quiche_platform_impl/quiche_server_stats_impl.h +7 -0
  31. package/platform/quiche_platform_impl/quiche_stack_trace_impl.h +12 -0
  32. package/platform/quiche_platform_impl/quiche_stream_buffer_allocator_impl.h +8 -0
  33. package/platform/quiche_platform_impl/quiche_testvalue_impl.h +1 -0
  34. package/platform/quiche_platform_impl/quiche_thread_local_impl.h +6 -0
  35. package/platform/quiche_platform_impl/quiche_time_utils_impl.h +13 -0
  36. package/platform/quiche_platform_impl/quiche_udp_socket_platform_impl.h +39 -0
  37. package/readme.md +20 -0
  38. package/src/http3backendresponse.cc +36 -0
  39. package/src/http3backendresponse.h +109 -0
  40. package/src/http3client.cc +1402 -0
  41. package/src/http3client.h +531 -0
  42. package/src/http3clientsession.cc +65 -0
  43. package/src/http3clientsession.h +58 -0
  44. package/src/http3clientstream.cc +52 -0
  45. package/src/http3clientstream.h +42 -0
  46. package/src/http3dispatcher.cc +62 -0
  47. package/src/http3dispatcher.h +57 -0
  48. package/src/http3server.cc +529 -0
  49. package/src/http3server.h +149 -0
  50. package/src/http3serverbackend.cc +104 -0
  51. package/src/http3serverbackend.h +96 -0
  52. package/src/http3serversession.cc +123 -0
  53. package/src/http3serversession.h +95 -0
  54. package/src/http3serverstream.cc +463 -0
  55. package/src/http3serverstream.h +114 -0
  56. package/src/http3sessioncache.cc +85 -0
  57. package/src/http3sessioncache.h +59 -0
  58. package/src/http3wtsessionvisitor.cc +312 -0
  59. package/src/http3wtsessionvisitor.h +257 -0
  60. package/src/http3wtstreamvisitor.cc +286 -0
  61. package/src/http3wtstreamvisitor.h +323 -0
  62. package/src/librarymain.cc +86 -0
  63. package/src/librarymain.h +42 -0
  64. package/src/napialarmfactory.cc +51 -0
  65. package/src/napialarmfactory.h +165 -0
  66. package/src/socketjswriter.cc +46 -0
  67. package/src/socketjswriter.h +100 -0
package/CMakeLists.txt ADDED
@@ -0,0 +1,978 @@
1
+ cmake_minimum_required(VERSION 3.18)
2
+
3
+ cmake_policy(SET CMP0091 NEW)
4
+
5
+ #IF (MSVC)
6
+ set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
7
+ add_definitions(-D_ITERATOR_DEBUG_LEVEL=0)
8
+ set(protobuf_MSVC_STATIC_RUNTIME ON)
9
+ #ENDIF(MSVC)
10
+
11
+ project (webtransport)
12
+
13
+
14
+ set(CMAKE_POSITION_INDEPENDENT_CODE TRUE)
15
+ set(CMAKE_CXX_STANDARD 20)
16
+
17
+ set(BUILD_TESTING OFF)
18
+
19
+ set(protobuf_BUILD_PROTOC_BINARIES ON)
20
+
21
+
22
+
23
+
24
+ IF (WIN32)
25
+ add_compile_definitions(NOMINMAX)
26
+ ENDIF(WIN32)
27
+
28
+ set(ABSL_PROPAGATE_CXX_STD ON)
29
+ # include abseil
30
+ add_subdirectory(third_party/abseil-cpp EXCLUDE_FROM_ALL)
31
+
32
+
33
+ # include protobuf
34
+ SET(protobuf_WITH_ZLIB OFF CACHE BOOL "Build with zlib support")
35
+ SET(protobuf_BUILD_TESTS OFF CACHE BOOL "Build tests")
36
+ add_subdirectory(third_party/protobuf EXCLUDE_FROM_ALL)
37
+ IF(APPLE)
38
+ set_target_properties(protoc libprotoc libprotobuf PROPERTIES OSX_ARCHITECTURES "arm64;x86_64" CACHE STRING "Build architectures for Mac OS X" FORCE )
39
+ ENDIF(APPLE)
40
+
41
+ IF (WIN32)
42
+ add_compile_definitions(WIN32_LEAN_AND_MEAN NOGDI)
43
+ ENDIF(WIN32)
44
+
45
+ # include boring ssl
46
+ add_subdirectory(third_party/boringssl/src EXCLUDE_FROM_ALL)
47
+
48
+ #IF(MSVC)
49
+ # set(CMAKE_CXX_STANDARD 17)
50
+ #ENDIF(MSVC)
51
+
52
+ # include zlib
53
+ add_subdirectory(third_party/zlib EXCLUDE_FROM_ALL)
54
+
55
+
56
+ if(COMMAND cmake_policy)
57
+ cmake_policy(SET CMP0003 NEW)
58
+ endif(COMMAND cmake_policy)
59
+
60
+ # google quiche build parameters start, inspired by chromium build
61
+
62
+
63
+
64
+ #protobuf_generate_cpp(PROTO_SRCS PROTO_HDRS
65
+ #third_party/quiche/quiche/quic/core/proto/cached_network_parameters.proto
66
+ #third_party/quiche/quiche/quic/core/proto/crypto_server_config.proto
67
+ #third_party/quiche/quiche/quic/core/proto/source_address_token.proto)
68
+
69
+
70
+
71
+ IF( NOT (WIN32 OR APPLE))
72
+ find_package(ICU COMPONENTS uc i18n REQUIRED)
73
+ ENDIF(NOT (WIN32 OR APPLE))
74
+
75
+ add_library(gquiche STATIC
76
+ #plattform impl
77
+ platform/quiche_platform_impl/quiche_export_impl.h
78
+ platform/quiche_platform_impl/quiche_logging_impl.h
79
+ platform/quiche_platform_impl/quiche_containers_impl.h
80
+ platform/quiche_platform_impl/quiche_client_stats_impl.h
81
+ platform/quiche_platform_impl/quiche_event_loop_impl.h
82
+ platform/quiche_platform_impl/quiche_bug_tracker_impl.h
83
+ platform/quiche_platform_impl/quiche_googleurl_impl.h
84
+ platform/quiche_platform_impl/quiche_iovec_impl.h
85
+ platform/quiche_platform_impl/quiche_mutex_impl.h
86
+ platform/quiche_platform_impl/quiche_stack_trace_impl.h
87
+ platform/quiche_platform_impl/quiche_stream_buffer_allocator_impl.h
88
+ platform/quiche_platform_impl/quiche_time_utils_impl.h
89
+ platform/quiche_platform_impl/quiche_udp_socket_platform_impl.h
90
+ platform/quiche_platform_impl/quiche_prefetch_impl.h
91
+ platform/quiche_platform_impl/quiche_server_stats_impl.h
92
+ platform/quiche_platform_impl/quiche_mem_slice_impl.h
93
+ platform/quiche_platform_impl/quiche_flag_utils_impl.h
94
+ #protofiles
95
+ #${PROTO_SRCS}
96
+ #${CMAKE_CURRENT_BINARY_DIR}/third_party/quiche/quiche/quic/core/proto/cached_network_parameters.pb.h
97
+ #${CMAKE_CURRENT_BINARY_DIR}/third_party/quiche/quiche/quic/core/proto/crypto_server_config.pb.h
98
+ #${CMAKE_CURRENT_BINARY_DIR}/third_party/quiche/quiche/quic/core/proto/source_address_token.pb.h
99
+ #${CMAKE_CURRENT_BINARY_DIR}/third_party/quiche/quiche/quic/core/proto/cached_network_parameters.pb.cc
100
+ #${CMAKE_CURRENT_BINARY_DIR}/third_party/quiche/quiche/quic/core/proto/crypto_server_config.pb.cc
101
+ #${CMAKE_CURRENT_BINARY_DIR}/third_party/quiche/quiche/quic/core/proto/source_address_token.pb.cc
102
+ # url file
103
+ third_party/googleurl/base/debug/crash_logging.cc
104
+ third_party/googleurl/base/debug/crash_logging.h
105
+ third_party/googleurl/base/strings/string_util_constants.cc
106
+ third_party/googleurl/base/strings/string_util.cc
107
+ third_party/googleurl/base/strings/string_util.h
108
+ third_party/googleurl/base/strings/utf_string_conversions.cc
109
+ third_party/googleurl/base/strings/utf_string_conversions.h
110
+ #third_party/googleurl/base/strings/utf_ostream_operators.cc
111
+ #third_party/googleurl/base/strings/utf_ostream_operators.h
112
+ third_party/googleurl/url/url_canon.cc
113
+ third_party/googleurl/url/url_canon_internal.cc
114
+ third_party/googleurl/url/url_canon_path.cc
115
+ third_party/googleurl/url/url_canon_query.cc
116
+ third_party/googleurl/url/url_canon_stdstring.cc
117
+ third_party/googleurl/url/url_canon_stdurl.cc
118
+ third_party/googleurl/url/url_canon_filesystemurl.cc
119
+ third_party/googleurl/url/third_party/mozilla/url_parse.h
120
+ third_party/googleurl/url/url_canon.h
121
+ third_party/googleurl/url/url_canon_etc.cc
122
+ third_party/googleurl/url/url_canon_fileurl.cc
123
+ third_party/googleurl/url/url_canon_internal.h
124
+ third_party/googleurl/url/url_canon_mailtourl.cc
125
+ third_party/googleurl/url/url_canon_pathurl.cc
126
+ third_party/googleurl/url/url_canon_path.cc
127
+ third_party/googleurl/url/url_canon_relative.cc
128
+ third_party/googleurl/url/url_canon_stdstring.h
129
+ third_party/googleurl/url/url_parse_internal.h
130
+ third_party/googleurl/url/url_parse_file.cc
131
+ third_party/googleurl/url/url_canon_host.cc
132
+ third_party/googleurl/url/url_canon_ip.cc
133
+ third_party/googleurl/url/url_constants.cc
134
+ third_party/googleurl/url/url_features.cc
135
+ third_party/googleurl/url/url_features.h
136
+ third_party/googleurl/url/url_util.cc
137
+ third_party/googleurl/url/url_util.h
138
+ third_party/googleurl/url/gurl.cc
139
+ third_party/googleurl/url/gurl.h
140
+ third_party/googleurl/url/third_party/mozilla/url_parse.cc
141
+ third_party/googleurl/url/third_party/mozilla/url_parse.h
142
+ third_party/googleurl/base/strings/utf_string_conversion_utils.cc
143
+ third_party/googleurl/base/strings/utf_string_conversion_utils.h
144
+ third_party/googleurl/build/buildflag.h
145
+ third_party/googleurl/build/build_config.h
146
+ # normal files
147
+ third_party/quiche/quiche/common/capsule.cc
148
+ third_party/quiche/quiche/common/capsule.h
149
+ third_party/quiche/quiche/common/http/http_header_block.cc
150
+ third_party/quiche/quiche/common/http/http_header_block.h
151
+ third_party/quiche/quiche/common/http/http_header_storage.cc
152
+ third_party/quiche/quiche/common/http/http_header_storage.h
153
+ third_party/quiche/quiche/common/platform/api/quiche_bug_tracker.h
154
+ third_party/quiche/quiche/common/platform/api/quiche_export.h
155
+ third_party/quiche/quiche/common/platform/api/quiche_flag_utils.h
156
+ third_party/quiche/quiche/common/platform/api/quiche_flags.h
157
+ third_party/quiche/quiche/common/platform/api/quiche_hostname_utils.cc
158
+ third_party/quiche/quiche/common/platform/api/quiche_hostname_utils.h
159
+ third_party/quiche/quiche/common/platform/api/quiche_iovec.h
160
+ third_party/quiche/quiche/common/platform/api/quiche_logging.h
161
+ third_party/quiche/quiche/common/platform/api/quiche_mem_slice.h
162
+ third_party/quiche/quiche/common/platform/api/quiche_mutex.cc
163
+ third_party/quiche/quiche/common/platform/api/quiche_mutex.h
164
+ third_party/quiche/quiche/common/platform/api/quiche_prefetch.h
165
+ third_party/quiche/quiche/common/platform/api/quiche_reference_counted.h
166
+ third_party/quiche/quiche/common/platform/api/quiche_time_utils.h
167
+ third_party/quiche/quiche/common/platform/api/quiche_url_utils.h
168
+ third_party/quiche/quiche/common/platform/default/quiche_platform_impl/quiche_command_line_flags_impl.cc
169
+ third_party/quiche/quiche/common/platform/default/quiche_platform_impl/quiche_command_line_flags_impl.h
170
+ third_party/quiche/quiche/common/platform/default/quiche_platform_impl/quiche_flag_utils_impl.h
171
+ third_party/quiche/quiche/common/platform/default/quiche_platform_impl/quiche_flags_impl.h
172
+ third_party/quiche/quiche/common/platform/default/quiche_platform_impl/quiche_flags_impl.cc
173
+ third_party/quiche/quiche/common/platform/default/quiche_platform_impl/quiche_prefetch_impl.h
174
+ third_party/quiche/quiche/common/platform/default/quiche_platform_impl/quiche_logging_impl.cc
175
+ third_party/quiche/quiche/common/platform/default/quiche_platform_impl/quiche_logging_impl.h
176
+ third_party/quiche/quiche/common/platform/default/quiche_platform_impl/quiche_mutex_impl.cc
177
+ third_party/quiche/quiche/common/platform/default/quiche_platform_impl/quiche_mutex_impl.h
178
+ third_party/quiche/quiche/common/platform/default/quiche_platform_impl/quiche_stack_trace_impl.cc
179
+ third_party/quiche/quiche/common/platform/default/quiche_platform_impl/quiche_stack_trace_impl.h
180
+ third_party/quiche/quiche/common/platform/default/quiche_platform_impl/quiche_iovec_impl.h
181
+ third_party/quiche/quiche/common/platform/default/quiche_platform_impl/quiche_time_utils_impl.cc
182
+ third_party/quiche/quiche/common/print_elements.h
183
+ third_party/quiche/quiche/common/quiche_buffer_allocator.cc
184
+ third_party/quiche/quiche/common/quiche_buffer_allocator.h
185
+ third_party/quiche/quiche/common/quiche_crypto_logging.cc
186
+ third_party/quiche/quiche/common/quiche_crypto_logging.h
187
+ third_party/quiche/quiche/common/quiche_circular_deque.h
188
+ third_party/quiche/quiche/common/quiche_data_reader.cc
189
+ third_party/quiche/quiche/common/quiche_data_reader.h
190
+ third_party/quiche/quiche/common/quiche_data_writer.cc
191
+ third_party/quiche/quiche/common/quiche_data_writer.h
192
+ third_party/quiche/quiche/common/quiche_endian.h
193
+ third_party/quiche/quiche/common/quiche_ip_address.cc
194
+ third_party/quiche/quiche/common/quiche_ip_address.h
195
+ third_party/quiche/quiche/common/quiche_ip_address_family.cc
196
+ third_party/quiche/quiche/common/quiche_ip_address_family.h
197
+ third_party/quiche/quiche/common/quiche_linked_hash_map.h
198
+ third_party/quiche/quiche/common/quiche_mem_slice_storage.h
199
+ third_party/quiche/quiche/common/quiche_mem_slice_storage.cc
200
+ third_party/quiche/quiche/common/quiche_random.cc
201
+ third_party/quiche/quiche/common/quiche_random.h
202
+ third_party/quiche/quiche/common/quiche_simple_arena.cc
203
+ third_party/quiche/quiche/common/quiche_simple_arena.h
204
+ third_party/quiche/quiche/common/quiche_text_utils.cc
205
+ third_party/quiche/quiche/common/quiche_text_utils.h
206
+ third_party/quiche/quiche/common/simple_buffer_allocator.cc
207
+ third_party/quiche/quiche/common/structured_headers.h
208
+ third_party/quiche/quiche/common/structured_headers.cc
209
+ third_party/quiche/quiche/http2/adapter/data_source.h
210
+ third_party/quiche/quiche/http2/adapter/event_forwarder.cc
211
+ third_party/quiche/quiche/http2/adapter/event_forwarder.h
212
+ third_party/quiche/quiche/http2/adapter/header_validator.cc
213
+ third_party/quiche/quiche/http2/adapter/header_validator.h
214
+ third_party/quiche/quiche/http2/adapter/http2_adapter.h
215
+ third_party/quiche/quiche/http2/adapter/http2_protocol.cc
216
+ third_party/quiche/quiche/http2/adapter/http2_protocol.h
217
+ third_party/quiche/quiche/http2/adapter/http2_session.h
218
+ third_party/quiche/quiche/http2/adapter/http2_util.cc
219
+ third_party/quiche/quiche/http2/adapter/http2_util.h
220
+ third_party/quiche/quiche/http2/adapter/http2_visitor_interface.h
221
+ third_party/quiche/quiche/http2/adapter/noop_header_validator.h
222
+ third_party/quiche/quiche/http2/adapter/noop_header_validator.cc
223
+ third_party/quiche/quiche/http2/adapter/oghttp2_adapter.cc
224
+ third_party/quiche/quiche/http2/adapter/oghttp2_adapter.h
225
+ third_party/quiche/quiche/http2/adapter/oghttp2_session.cc
226
+ third_party/quiche/quiche/http2/adapter/oghttp2_session.h
227
+ third_party/quiche/quiche/http2/adapter/oghttp2_util.cc
228
+ third_party/quiche/quiche/http2/adapter/oghttp2_util.h
229
+ third_party/quiche/quiche/http2/adapter/window_manager.cc
230
+ third_party/quiche/quiche/http2/adapter/window_manager.h
231
+ third_party/quiche/quiche/http2/core/http2_trace_logging.cc
232
+ third_party/quiche/quiche/http2/core/http2_trace_logging.h
233
+ third_party/quiche/quiche/http2/core/priority_write_scheduler.h
234
+ third_party/quiche/quiche/http2/decoder/decode_buffer.cc
235
+ third_party/quiche/quiche/http2/decoder/decode_buffer.h
236
+ third_party/quiche/quiche/http2/decoder/decode_http2_structures.cc
237
+ third_party/quiche/quiche/http2/decoder/decode_http2_structures.h
238
+ third_party/quiche/quiche/http2/decoder/decode_status.cc
239
+ third_party/quiche/quiche/http2/decoder/decode_status.h
240
+ third_party/quiche/quiche/http2/decoder/frame_decoder_state.cc
241
+ third_party/quiche/quiche/http2/decoder/frame_decoder_state.h
242
+ third_party/quiche/quiche/http2/decoder/http2_frame_decoder.cc
243
+ third_party/quiche/quiche/http2/decoder/http2_frame_decoder.h
244
+ third_party/quiche/quiche/http2/decoder/http2_frame_decoder_listener.cc
245
+ third_party/quiche/quiche/http2/decoder/http2_frame_decoder_listener.h
246
+ third_party/quiche/quiche/http2/decoder/http2_structure_decoder.cc
247
+ third_party/quiche/quiche/http2/decoder/http2_structure_decoder.h
248
+ third_party/quiche/quiche/http2/decoder/payload_decoders/altsvc_payload_decoder.cc
249
+ third_party/quiche/quiche/http2/decoder/payload_decoders/altsvc_payload_decoder.h
250
+ third_party/quiche/quiche/http2/decoder/payload_decoders/continuation_payload_decoder.cc
251
+ third_party/quiche/quiche/http2/decoder/payload_decoders/continuation_payload_decoder.h
252
+ third_party/quiche/quiche/http2/decoder/payload_decoders/data_payload_decoder.cc
253
+ third_party/quiche/quiche/http2/decoder/payload_decoders/data_payload_decoder.h
254
+ third_party/quiche/quiche/http2/decoder/payload_decoders/goaway_payload_decoder.cc
255
+ third_party/quiche/quiche/http2/decoder/payload_decoders/goaway_payload_decoder.h
256
+ third_party/quiche/quiche/http2/decoder/payload_decoders/headers_payload_decoder.cc
257
+ third_party/quiche/quiche/http2/decoder/payload_decoders/headers_payload_decoder.h
258
+ third_party/quiche/quiche/http2/decoder/payload_decoders/ping_payload_decoder.cc
259
+ third_party/quiche/quiche/http2/decoder/payload_decoders/ping_payload_decoder.h
260
+ third_party/quiche/quiche/http2/decoder/payload_decoders/priority_payload_decoder.cc
261
+ third_party/quiche/quiche/http2/decoder/payload_decoders/priority_payload_decoder.h
262
+ third_party/quiche/quiche/http2/decoder/payload_decoders/priority_update_payload_decoder.cc
263
+ third_party/quiche/quiche/http2/decoder/payload_decoders/priority_update_payload_decoder.h
264
+ third_party/quiche/quiche/http2/decoder/payload_decoders/push_promise_payload_decoder.cc
265
+ third_party/quiche/quiche/http2/decoder/payload_decoders/push_promise_payload_decoder.h
266
+ third_party/quiche/quiche/http2/decoder/payload_decoders/rst_stream_payload_decoder.cc
267
+ third_party/quiche/quiche/http2/decoder/payload_decoders/rst_stream_payload_decoder.h
268
+ third_party/quiche/quiche/http2/decoder/payload_decoders/settings_payload_decoder.cc
269
+ third_party/quiche/quiche/http2/decoder/payload_decoders/settings_payload_decoder.h
270
+ third_party/quiche/quiche/http2/decoder/payload_decoders/unknown_payload_decoder.cc
271
+ third_party/quiche/quiche/http2/decoder/payload_decoders/unknown_payload_decoder.h
272
+ third_party/quiche/quiche/http2/decoder/payload_decoders/window_update_payload_decoder.cc
273
+ third_party/quiche/quiche/http2/decoder/payload_decoders/window_update_payload_decoder.h
274
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_block_decoder.cc
275
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_block_decoder.h
276
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_decoder.cc
277
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_decoder.h
278
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_decoder_listener.cc
279
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_decoder_listener.h
280
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_decoder_state.cc
281
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_decoder_state.h
282
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_decoder_string_buffer.cc
283
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_decoder_string_buffer.h
284
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_decoder_tables.cc
285
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_decoder_tables.h
286
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_decoding_error.cc
287
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_decoding_error.h
288
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_entry_decoder.cc
289
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_entry_decoder.h
290
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_entry_decoder_listener.cc
291
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_entry_decoder_listener.h
292
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_entry_type_decoder.cc
293
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_entry_type_decoder.h
294
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_string_decoder.cc
295
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_string_decoder.h
296
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_string_decoder_listener.cc
297
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_string_decoder_listener.h
298
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_whole_entry_buffer.cc
299
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_whole_entry_buffer.h
300
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_whole_entry_listener.cc
301
+ third_party/quiche/quiche/http2/hpack/decoder/hpack_whole_entry_listener.h
302
+ third_party/quiche/quiche/http2/hpack/hpack_static_table_entries.inc
303
+ third_party/quiche/quiche/http2/hpack/http2_hpack_constants.cc
304
+ third_party/quiche/quiche/http2/hpack/http2_hpack_constants.h
305
+ third_party/quiche/quiche/http2/hpack/huffman/hpack_huffman_decoder.cc
306
+ third_party/quiche/quiche/http2/hpack/huffman/hpack_huffman_decoder.h
307
+ third_party/quiche/quiche/http2/hpack/huffman/hpack_huffman_encoder.cc
308
+ third_party/quiche/quiche/http2/hpack/huffman/hpack_huffman_encoder.h
309
+ third_party/quiche/quiche/http2/hpack/huffman/huffman_spec_tables.cc
310
+ third_party/quiche/quiche/http2/hpack/huffman/huffman_spec_tables.h
311
+ third_party/quiche/quiche/http2/hpack/varint/hpack_varint_decoder.cc
312
+ third_party/quiche/quiche/http2/hpack/varint/hpack_varint_decoder.h
313
+ third_party/quiche/quiche/http2/hpack/varint/hpack_varint_encoder.cc
314
+ third_party/quiche/quiche/http2/hpack/varint/hpack_varint_encoder.h
315
+ third_party/quiche/quiche/http2/http2_constants.cc
316
+ third_party/quiche/quiche/http2/http2_constants.h
317
+ third_party/quiche/quiche/http2/http2_structures.cc
318
+ third_party/quiche/quiche/http2/http2_structures.h
319
+ #third_party/quiche/quiche/http2/platform/api/http2_macros.h
320
+ #third_party/quiche/quiche/quic/bindings/quic_libevent.h
321
+ #third_party/quiche/quiche/quic/bindings/quic_libevent.cc
322
+ third_party/quiche/quiche/quic/core/chlo_extractor.cc
323
+ third_party/quiche/quiche/quic/core/chlo_extractor.h
324
+ third_party/quiche/quiche/quic/core/quic_ping_manager.cc
325
+ third_party/quiche/quiche/quic/core/quic_ping_manager.h
326
+ third_party/quiche/quiche/quic/core/congestion_control/bandwidth_sampler.cc
327
+ third_party/quiche/quiche/quic/core/congestion_control/bandwidth_sampler.h
328
+ third_party/quiche/quiche/quic/core/congestion_control/bbr2_drain.cc
329
+ third_party/quiche/quiche/quic/core/congestion_control/bbr2_drain.h
330
+ third_party/quiche/quiche/quic/core/congestion_control/bbr2_misc.cc
331
+ third_party/quiche/quiche/quic/core/congestion_control/bbr2_misc.h
332
+ third_party/quiche/quiche/quic/core/congestion_control/bbr2_probe_bw.cc
333
+ third_party/quiche/quiche/quic/core/congestion_control/bbr2_probe_bw.h
334
+ third_party/quiche/quiche/quic/core/congestion_control/bbr2_probe_rtt.cc
335
+ third_party/quiche/quiche/quic/core/congestion_control/bbr2_probe_rtt.h
336
+ third_party/quiche/quiche/quic/core/congestion_control/bbr2_sender.cc
337
+ third_party/quiche/quiche/quic/core/congestion_control/bbr2_sender.h
338
+ third_party/quiche/quiche/quic/core/congestion_control/bbr2_startup.cc
339
+ third_party/quiche/quiche/quic/core/congestion_control/bbr2_startup.h
340
+ third_party/quiche/quiche/quic/core/congestion_control/bbr_sender.cc
341
+ third_party/quiche/quiche/quic/core/congestion_control/bbr_sender.h
342
+ third_party/quiche/quiche/quic/core/congestion_control/cubic_bytes.cc
343
+ third_party/quiche/quiche/quic/core/congestion_control/cubic_bytes.h
344
+ third_party/quiche/quiche/quic/core/congestion_control/general_loss_algorithm.cc
345
+ third_party/quiche/quiche/quic/core/congestion_control/general_loss_algorithm.h
346
+ third_party/quiche/quiche/quic/core/congestion_control/hybrid_slow_start.cc
347
+ third_party/quiche/quiche/quic/core/congestion_control/hybrid_slow_start.h
348
+ third_party/quiche/quiche/quic/core/congestion_control/loss_detection_interface.h
349
+ third_party/quiche/quiche/quic/core/congestion_control/pacing_sender.cc
350
+ third_party/quiche/quiche/quic/core/congestion_control/pacing_sender.h
351
+ third_party/quiche/quiche/quic/core/congestion_control/prr_sender.cc
352
+ third_party/quiche/quiche/quic/core/congestion_control/prr_sender.h
353
+ third_party/quiche/quiche/quic/core/congestion_control/rtt_stats.cc
354
+ third_party/quiche/quiche/quic/core/congestion_control/rtt_stats.h
355
+ third_party/quiche/quiche/quic/core/congestion_control/send_algorithm_interface.cc
356
+ third_party/quiche/quiche/quic/core/congestion_control/send_algorithm_interface.h
357
+ third_party/quiche/quiche/quic/core/congestion_control/tcp_cubic_sender_bytes.cc
358
+ third_party/quiche/quiche/quic/core/congestion_control/tcp_cubic_sender_bytes.h
359
+ third_party/quiche/quiche/quic/core/congestion_control/uber_loss_algorithm.cc
360
+ third_party/quiche/quiche/quic/core/congestion_control/uber_loss_algorithm.h
361
+ third_party/quiche/quiche/quic/core/congestion_control/windowed_filter.h
362
+ third_party/quiche/quiche/quic/core/crypto/aead_base_decrypter.cc
363
+ third_party/quiche/quiche/quic/core/crypto/aead_base_decrypter.h
364
+ third_party/quiche/quiche/quic/core/crypto/aead_base_encrypter.cc
365
+ third_party/quiche/quiche/quic/core/crypto/aead_base_encrypter.h
366
+ third_party/quiche/quiche/quic/core/crypto/aes_128_gcm_12_decrypter.cc
367
+ third_party/quiche/quiche/quic/core/crypto/aes_128_gcm_12_decrypter.h
368
+ third_party/quiche/quiche/quic/core/crypto/aes_128_gcm_12_encrypter.cc
369
+ third_party/quiche/quiche/quic/core/crypto/aes_128_gcm_12_encrypter.h
370
+ third_party/quiche/quiche/quic/core/crypto/aes_128_gcm_decrypter.cc
371
+ third_party/quiche/quiche/quic/core/crypto/aes_128_gcm_decrypter.h
372
+ third_party/quiche/quiche/quic/core/crypto/aes_128_gcm_encrypter.cc
373
+ third_party/quiche/quiche/quic/core/crypto/aes_128_gcm_encrypter.h
374
+ third_party/quiche/quiche/quic/core/crypto/aes_256_gcm_decrypter.cc
375
+ third_party/quiche/quiche/quic/core/crypto/aes_256_gcm_decrypter.h
376
+ third_party/quiche/quiche/quic/core/crypto/aes_256_gcm_encrypter.cc
377
+ third_party/quiche/quiche/quic/core/crypto/aes_256_gcm_encrypter.h
378
+ third_party/quiche/quiche/quic/core/crypto/aes_base_decrypter.cc
379
+ third_party/quiche/quiche/quic/core/crypto/aes_base_decrypter.h
380
+ third_party/quiche/quiche/quic/core/crypto/aes_base_encrypter.cc
381
+ third_party/quiche/quiche/quic/core/crypto/aes_base_encrypter.h
382
+ third_party/quiche/quiche/quic/core/crypto/boring_utils.h
383
+ third_party/quiche/quiche/quic/core/crypto/cert_compressor.cc
384
+ third_party/quiche/quiche/quic/core/crypto/cert_compressor.h
385
+ third_party/quiche/quiche/quic/core/crypto/certificate_view.cc
386
+ third_party/quiche/quiche/quic/core/crypto/certificate_view.h
387
+ third_party/quiche/quiche/quic/core/crypto/chacha20_poly1305_decrypter.cc
388
+ third_party/quiche/quiche/quic/core/crypto/chacha20_poly1305_decrypter.h
389
+ third_party/quiche/quiche/quic/core/crypto/chacha20_poly1305_encrypter.cc
390
+ third_party/quiche/quiche/quic/core/crypto/chacha20_poly1305_encrypter.h
391
+ third_party/quiche/quiche/quic/core/crypto/chacha20_poly1305_tls_decrypter.cc
392
+ third_party/quiche/quiche/quic/core/crypto/chacha20_poly1305_tls_decrypter.h
393
+ third_party/quiche/quiche/quic/core/crypto/chacha20_poly1305_tls_encrypter.cc
394
+ third_party/quiche/quiche/quic/core/crypto/chacha20_poly1305_tls_encrypter.h
395
+ third_party/quiche/quiche/quic/core/crypto/chacha_base_decrypter.cc
396
+ third_party/quiche/quiche/quic/core/crypto/chacha_base_decrypter.h
397
+ third_party/quiche/quiche/quic/core/crypto/chacha_base_encrypter.cc
398
+ third_party/quiche/quiche/quic/core/crypto/chacha_base_encrypter.h
399
+ third_party/quiche/quiche/quic/core/crypto/channel_id.cc
400
+ third_party/quiche/quiche/quic/core/crypto/channel_id.h
401
+ third_party/quiche/quiche/quic/core/crypto/client_proof_source.cc
402
+ third_party/quiche/quiche/quic/core/crypto/client_proof_source.h
403
+ third_party/quiche/quiche/quic/core/crypto/crypto_framer.cc
404
+ third_party/quiche/quiche/quic/core/crypto/crypto_framer.h
405
+ third_party/quiche/quiche/quic/core/crypto/crypto_handshake.cc
406
+ third_party/quiche/quiche/quic/core/crypto/crypto_handshake.h
407
+ third_party/quiche/quiche/quic/core/crypto/crypto_handshake_message.cc
408
+ third_party/quiche/quiche/quic/core/crypto/crypto_handshake_message.h
409
+ third_party/quiche/quiche/quic/core/crypto/crypto_message_parser.h
410
+ third_party/quiche/quiche/quic/core/crypto/crypto_protocol.h
411
+ third_party/quiche/quiche/quic/core/crypto/crypto_secret_boxer.cc
412
+ third_party/quiche/quiche/quic/core/crypto/crypto_secret_boxer.h
413
+ third_party/quiche/quiche/quic/core/crypto/crypto_utils.cc
414
+ third_party/quiche/quiche/quic/core/crypto/crypto_utils.h
415
+ third_party/quiche/quiche/quic/core/crypto/curve25519_key_exchange.cc
416
+ third_party/quiche/quiche/quic/core/crypto/curve25519_key_exchange.h
417
+ third_party/quiche/quiche/quic/core/crypto/key_exchange.cc
418
+ third_party/quiche/quiche/quic/core/crypto/key_exchange.h
419
+ third_party/quiche/quiche/quic/core/crypto/null_decrypter.cc
420
+ third_party/quiche/quiche/quic/core/crypto/null_decrypter.h
421
+ third_party/quiche/quiche/quic/core/crypto/null_encrypter.cc
422
+ third_party/quiche/quiche/quic/core/crypto/null_encrypter.h
423
+ third_party/quiche/quiche/quic/core/crypto/p256_key_exchange.cc
424
+ third_party/quiche/quiche/quic/core/crypto/p256_key_exchange.h
425
+ third_party/quiche/quiche/quic/core/crypto/proof_source_x509.cc
426
+ third_party/quiche/quiche/quic/core/crypto/proof_source_x509.h
427
+ third_party/quiche/quiche/quic/core/crypto/proof_source.cc
428
+ third_party/quiche/quiche/quic/core/crypto/proof_source.h
429
+ third_party/quiche/quiche/quic/core/crypto/proof_verifier.h
430
+ third_party/quiche/quiche/quic/core/crypto/quic_client_session_cache.cc
431
+ third_party/quiche/quiche/quic/core/crypto/quic_client_session_cache.h
432
+ third_party/quiche/quiche/quic/core/crypto/quic_compressed_certs_cache.cc
433
+ third_party/quiche/quiche/quic/core/crypto/quic_compressed_certs_cache.h
434
+ third_party/quiche/quiche/quic/core/crypto/quic_crypter.cc
435
+ third_party/quiche/quiche/quic/core/crypto/quic_crypter.h
436
+ third_party/quiche/quiche/quic/core/crypto/quic_crypto_client_config.cc
437
+ third_party/quiche/quiche/quic/core/crypto/quic_crypto_client_config.h
438
+ third_party/quiche/quiche/quic/core/crypto/quic_crypto_proof.cc
439
+ third_party/quiche/quiche/quic/core/crypto/quic_crypto_proof.h
440
+ third_party/quiche/quiche/quic/core/crypto/quic_crypto_server_config.cc
441
+ third_party/quiche/quiche/quic/core/crypto/quic_crypto_server_config.h
442
+ third_party/quiche/quiche/quic/core/crypto/quic_decrypter.cc
443
+ third_party/quiche/quiche/quic/core/crypto/quic_decrypter.h
444
+ third_party/quiche/quiche/quic/core/crypto/quic_encrypter.cc
445
+ third_party/quiche/quiche/quic/core/crypto/quic_encrypter.h
446
+ third_party/quiche/quiche/quic/core/crypto/quic_hkdf.cc
447
+ third_party/quiche/quiche/quic/core/crypto/quic_hkdf.h
448
+ third_party/quiche/quiche/quic/core/crypto/tls_client_connection.cc
449
+ third_party/quiche/quiche/quic/core/crypto/tls_client_connection.h
450
+ third_party/quiche/quiche/quic/core/crypto/tls_connection.cc
451
+ third_party/quiche/quiche/quic/core/crypto/tls_connection.h
452
+ third_party/quiche/quiche/quic/core/crypto/tls_server_connection.cc
453
+ third_party/quiche/quiche/quic/core/crypto/tls_server_connection.h
454
+ third_party/quiche/quiche/quic/core/crypto/transport_parameters.cc
455
+ third_party/quiche/quiche/quic/core/crypto/transport_parameters.h
456
+ third_party/quiche/quiche/quic/core/crypto/web_transport_fingerprint_proof_verifier.cc
457
+ third_party/quiche/quiche/quic/core/crypto/web_transport_fingerprint_proof_verifier.h
458
+ third_party/quiche/quiche/quic/core/frames/quic_ack_frame.cc
459
+ third_party/quiche/quiche/quic/core/frames/quic_ack_frame.h
460
+ third_party/quiche/quiche/quic/core/frames/quic_ack_frequency_frame.cc
461
+ third_party/quiche/quiche/quic/core/frames/quic_ack_frequency_frame.h
462
+ third_party/quiche/quiche/quic/core/frames/quic_blocked_frame.cc
463
+ third_party/quiche/quiche/quic/core/frames/quic_blocked_frame.h
464
+ third_party/quiche/quiche/quic/core/frames/quic_connection_close_frame.cc
465
+ third_party/quiche/quiche/quic/core/frames/quic_connection_close_frame.h
466
+ third_party/quiche/quiche/quic/core/frames/quic_crypto_frame.cc
467
+ third_party/quiche/quiche/quic/core/frames/quic_crypto_frame.h
468
+ third_party/quiche/quiche/quic/core/frames/quic_frame.cc
469
+ third_party/quiche/quiche/quic/core/frames/quic_frame.h
470
+ third_party/quiche/quiche/quic/core/frames/quic_goaway_frame.cc
471
+ third_party/quiche/quiche/quic/core/frames/quic_goaway_frame.h
472
+ third_party/quiche/quiche/quic/core/frames/quic_handshake_done_frame.cc
473
+ third_party/quiche/quiche/quic/core/frames/quic_handshake_done_frame.h
474
+ third_party/quiche/quiche/quic/core/frames/quic_inlined_frame.h
475
+ third_party/quiche/quiche/quic/core/frames/quic_max_streams_frame.cc
476
+ third_party/quiche/quiche/quic/core/frames/quic_max_streams_frame.h
477
+ third_party/quiche/quiche/quic/core/frames/quic_message_frame.cc
478
+ third_party/quiche/quiche/quic/core/frames/quic_message_frame.h
479
+ third_party/quiche/quiche/quic/core/frames/quic_mtu_discovery_frame.h
480
+ third_party/quiche/quiche/quic/core/frames/quic_new_connection_id_frame.cc
481
+ third_party/quiche/quiche/quic/core/frames/quic_new_connection_id_frame.h
482
+ third_party/quiche/quiche/quic/core/frames/quic_new_token_frame.cc
483
+ third_party/quiche/quiche/quic/core/frames/quic_new_token_frame.h
484
+ third_party/quiche/quiche/quic/core/frames/quic_padding_frame.cc
485
+ third_party/quiche/quiche/quic/core/frames/quic_padding_frame.h
486
+ third_party/quiche/quiche/quic/core/frames/quic_path_challenge_frame.cc
487
+ third_party/quiche/quiche/quic/core/frames/quic_path_challenge_frame.h
488
+ third_party/quiche/quiche/quic/core/frames/quic_path_response_frame.cc
489
+ third_party/quiche/quiche/quic/core/frames/quic_path_response_frame.h
490
+ third_party/quiche/quiche/quic/core/frames/quic_ping_frame.cc
491
+ third_party/quiche/quiche/quic/core/frames/quic_ping_frame.h
492
+ third_party/quiche/quiche/quic/core/frames/quic_retire_connection_id_frame.cc
493
+ third_party/quiche/quiche/quic/core/frames/quic_retire_connection_id_frame.h
494
+ third_party/quiche/quiche/quic/core/frames/quic_rst_stream_frame.cc
495
+ third_party/quiche/quiche/quic/core/frames/quic_rst_stream_frame.h
496
+ third_party/quiche/quiche/quic/core/frames/quic_stop_sending_frame.cc
497
+ third_party/quiche/quiche/quic/core/frames/quic_stop_sending_frame.h
498
+ third_party/quiche/quiche/quic/core/frames/quic_stop_waiting_frame.cc
499
+ third_party/quiche/quiche/quic/core/frames/quic_stop_waiting_frame.h
500
+ third_party/quiche/quiche/quic/core/frames/quic_stream_frame.cc
501
+ third_party/quiche/quiche/quic/core/frames/quic_stream_frame.h
502
+ third_party/quiche/quiche/quic/core/frames/quic_streams_blocked_frame.cc
503
+ third_party/quiche/quiche/quic/core/frames/quic_streams_blocked_frame.h
504
+ third_party/quiche/quiche/quic/core/frames/quic_window_update_frame.cc
505
+ third_party/quiche/quiche/quic/core/frames/quic_window_update_frame.h
506
+ third_party/quiche/quiche/quic/core/handshaker_delegate_interface.h
507
+ third_party/quiche/quiche/quic/core/http/http_constants.cc
508
+ third_party/quiche/quiche/quic/core/http/http_constants.h
509
+ third_party/quiche/quiche/quic/core/http/http_decoder.cc
510
+ third_party/quiche/quiche/quic/core/http/http_decoder.h
511
+ third_party/quiche/quiche/quic/core/http/http_encoder.cc
512
+ third_party/quiche/quiche/quic/core/http/http_encoder.h
513
+ third_party/quiche/quiche/quic/core/http/http_frames.h
514
+ third_party/quiche/quiche/quic/core/http/quic_header_list.cc
515
+ third_party/quiche/quiche/quic/core/http/quic_header_list.h
516
+ third_party/quiche/quiche/quic/core/http/quic_headers_stream.cc
517
+ third_party/quiche/quiche/quic/core/http/quic_headers_stream.h
518
+ third_party/quiche/quiche/quic/core/http/quic_receive_control_stream.cc
519
+ third_party/quiche/quiche/quic/core/http/quic_receive_control_stream.h
520
+ third_party/quiche/quiche/quic/core/http/quic_send_control_stream.cc
521
+ third_party/quiche/quiche/quic/core/http/quic_send_control_stream.h
522
+ third_party/quiche/quiche/quic/core/http/quic_server_initiated_spdy_stream.cc
523
+ third_party/quiche/quiche/quic/core/http/quic_server_initiated_spdy_stream.h
524
+ third_party/quiche/quiche/quic/core/http/quic_server_session_base.cc
525
+ third_party/quiche/quiche/quic/core/http/quic_server_session_base.h
526
+ third_party/quiche/quiche/quic/core/http/quic_spdy_client_session.cc
527
+ third_party/quiche/quiche/quic/core/http/quic_spdy_client_session.h
528
+ third_party/quiche/quiche/quic/core/http/quic_spdy_client_session_base.cc
529
+ third_party/quiche/quiche/quic/core/http/quic_spdy_client_session_base.h
530
+ third_party/quiche/quiche/quic/core/http/quic_spdy_client_stream.cc
531
+ third_party/quiche/quiche/quic/core/http/quic_spdy_client_stream.h
532
+ third_party/quiche/quiche/quic/core/http/quic_spdy_server_stream_base.cc
533
+ third_party/quiche/quiche/quic/core/http/quic_spdy_server_stream_base.h
534
+ third_party/quiche/quiche/quic/core/http/quic_spdy_session.cc
535
+ third_party/quiche/quiche/quic/core/http/quic_spdy_session.h
536
+ third_party/quiche/quiche/quic/core/http/quic_spdy_stream.cc
537
+ third_party/quiche/quiche/quic/core/http/quic_spdy_stream.h
538
+ third_party/quiche/quiche/quic/core/http/quic_spdy_stream_body_manager.cc
539
+ third_party/quiche/quiche/quic/core/http/quic_spdy_stream_body_manager.h
540
+ third_party/quiche/quiche/quic/core/http/spdy_utils.cc
541
+ third_party/quiche/quiche/quic/core/http/spdy_utils.h
542
+ third_party/quiche/quiche/quic/core/http/web_transport_http3.cc
543
+ third_party/quiche/quiche/quic/core/http/web_transport_http3.h
544
+ third_party/quiche/quiche/quic/core/http/web_transport_stream_adapter.cc
545
+ third_party/quiche/quiche/quic/core/http/web_transport_stream_adapter.h
546
+ third_party/quiche/quiche/quic/core/io/quic_event_loop.h
547
+ third_party/quiche/quiche/quic/core/io/quic_default_event_loop.cc
548
+ third_party/quiche/quiche/quic/core/io/quic_default_event_loop.h
549
+ third_party/quiche/quiche/quic/core/io/quic_poll_event_loop.cc
550
+ third_party/quiche/quiche/quic/core/io/quic_poll_event_loop.h
551
+ third_party/quiche/quiche/quic/core/io/socket.h
552
+ third_party/quiche/quiche/quic/core/io/socket.cc
553
+ third_party/quiche/quiche/quic/core/io/socket_posix.inc
554
+ third_party/quiche/quiche/quic/core/io/socket_win.inc
555
+ third_party/quiche/quiche/quic/core/io/socket_internal.h
556
+ third_party/quiche/quiche/quic/core/legacy_quic_stream_id_manager.cc
557
+ third_party/quiche/quiche/quic/core/legacy_quic_stream_id_manager.h
558
+ third_party/quiche/quiche/quic/core/packet_number_indexed_queue.h
559
+ third_party/quiche/quiche/quic/core/proto/cached_network_parameters_proto.h
560
+ third_party/quiche/quiche/quic/core/proto/crypto_server_config_proto.h
561
+ third_party/quiche/quiche/quic/core/proto/source_address_token_proto.h
562
+ third_party/quiche/quiche/quic/core/qpack/qpack_blocking_manager.cc
563
+ third_party/quiche/quiche/quic/core/qpack/qpack_blocking_manager.h
564
+ third_party/quiche/quiche/quic/core/qpack/qpack_decoded_headers_accumulator.cc
565
+ third_party/quiche/quiche/quic/core/qpack/qpack_decoded_headers_accumulator.h
566
+ third_party/quiche/quiche/quic/core/qpack/qpack_decoder.cc
567
+ third_party/quiche/quiche/quic/core/qpack/qpack_decoder.h
568
+ third_party/quiche/quiche/quic/core/qpack/qpack_decoder_stream_receiver.cc
569
+ third_party/quiche/quiche/quic/core/qpack/qpack_decoder_stream_receiver.h
570
+ third_party/quiche/quiche/quic/core/qpack/qpack_decoder_stream_sender.cc
571
+ third_party/quiche/quiche/quic/core/qpack/qpack_decoder_stream_sender.h
572
+ third_party/quiche/quiche/quic/core/qpack/qpack_encoder.cc
573
+ third_party/quiche/quiche/quic/core/qpack/qpack_encoder.h
574
+ third_party/quiche/quiche/quic/core/qpack/qpack_encoder_stream_receiver.cc
575
+ third_party/quiche/quiche/quic/core/qpack/qpack_encoder_stream_receiver.h
576
+ third_party/quiche/quiche/quic/core/qpack/qpack_encoder_stream_sender.cc
577
+ third_party/quiche/quiche/quic/core/qpack/qpack_encoder_stream_sender.h
578
+ third_party/quiche/quiche/quic/core/qpack/qpack_header_table.cc
579
+ third_party/quiche/quiche/quic/core/qpack/qpack_header_table.h
580
+ third_party/quiche/quiche/quic/core/qpack/qpack_index_conversions.cc
581
+ third_party/quiche/quiche/quic/core/qpack/qpack_index_conversions.h
582
+ third_party/quiche/quiche/quic/core/qpack/qpack_instruction_decoder.cc
583
+ third_party/quiche/quiche/quic/core/qpack/qpack_instruction_decoder.h
584
+ third_party/quiche/quiche/quic/core/qpack/qpack_instruction_encoder.cc
585
+ third_party/quiche/quiche/quic/core/qpack/qpack_instruction_encoder.h
586
+ third_party/quiche/quiche/quic/core/qpack/qpack_instructions.cc
587
+ third_party/quiche/quiche/quic/core/qpack/qpack_instructions.h
588
+ third_party/quiche/quiche/quic/core/qpack/qpack_progressive_decoder.cc
589
+ third_party/quiche/quiche/quic/core/qpack/qpack_progressive_decoder.h
590
+ third_party/quiche/quiche/quic/core/qpack/qpack_receive_stream.cc
591
+ third_party/quiche/quiche/quic/core/qpack/qpack_receive_stream.h
592
+ third_party/quiche/quiche/quic/core/qpack/qpack_required_insert_count.cc
593
+ third_party/quiche/quiche/quic/core/qpack/qpack_required_insert_count.h
594
+ third_party/quiche/quiche/quic/core/qpack/qpack_send_stream.cc
595
+ third_party/quiche/quiche/quic/core/qpack/qpack_send_stream.h
596
+ third_party/quiche/quiche/quic/core/qpack/qpack_static_table.cc
597
+ third_party/quiche/quiche/quic/core/qpack/qpack_static_table.h
598
+ third_party/quiche/quiche/quic/core/qpack/qpack_stream_receiver.h
599
+ third_party/quiche/quiche/quic/core/qpack/qpack_stream_sender_delegate.h
600
+ third_party/quiche/quiche/quic/core/qpack/value_splitting_header_list.cc
601
+ third_party/quiche/quiche/quic/core/qpack/value_splitting_header_list.h
602
+ third_party/quiche/quiche/quic/core/quic_ack_listener_interface.cc
603
+ third_party/quiche/quiche/quic/core/quic_ack_listener_interface.h
604
+ third_party/quiche/quiche/quic/core/quic_alarm.cc
605
+ third_party/quiche/quiche/quic/core/quic_alarm.h
606
+ third_party/quiche/quiche/quic/core/quic_alarm_factory.h
607
+ third_party/quiche/quiche/quic/core/quic_arena_scoped_ptr.h
608
+ third_party/quiche/quiche/quic/core/quic_bandwidth.cc
609
+ third_party/quiche/quiche/quic/core/quic_bandwidth.h
610
+ third_party/quiche/quiche/quic/core/quic_blocked_writer_interface.h
611
+ third_party/quiche/quiche/quic/core/quic_buffered_packet_store.cc
612
+ third_party/quiche/quiche/quic/core/quic_buffered_packet_store.h
613
+ third_party/quiche/quiche/quic/core/quic_chaos_protector.cc
614
+ third_party/quiche/quiche/quic/core/quic_chaos_protector.h
615
+ third_party/quiche/quiche/quic/core/quic_clock.h
616
+ third_party/quiche/quiche/quic/core/quic_coalesced_packet.cc
617
+ third_party/quiche/quiche/quic/core/quic_coalesced_packet.h
618
+ third_party/quiche/quiche/quic/core/quic_config.cc
619
+ third_party/quiche/quiche/quic/core/quic_config.h
620
+ third_party/quiche/quiche/quic/core/quic_connection.cc
621
+ third_party/quiche/quiche/quic/core/quic_connection.h
622
+ third_party/quiche/quiche/quic/core/quic_connection_context.cc
623
+ third_party/quiche/quiche/quic/core/quic_connection_context.h
624
+ third_party/quiche/quiche/quic/core/quic_connection_id.cc
625
+ third_party/quiche/quiche/quic/core/quic_connection_id.h
626
+ third_party/quiche/quiche/quic/core/quic_connection_id_manager.cc
627
+ third_party/quiche/quiche/quic/core/quic_connection_id_manager.h
628
+ third_party/quiche/quiche/quic/core/quic_connection_stats.cc
629
+ third_party/quiche/quiche/quic/core/quic_connection_stats.h
630
+ third_party/quiche/quiche/quic/core/quic_constants.cc
631
+ third_party/quiche/quiche/quic/core/quic_constants.h
632
+ third_party/quiche/quiche/quic/core/quic_control_frame_manager.cc
633
+ third_party/quiche/quiche/quic/core/quic_control_frame_manager.h
634
+ third_party/quiche/quiche/quic/core/quic_crypto_client_handshaker.cc
635
+ third_party/quiche/quiche/quic/core/quic_crypto_client_handshaker.h
636
+ third_party/quiche/quiche/quic/core/quic_crypto_client_stream.cc
637
+ third_party/quiche/quiche/quic/core/quic_crypto_client_stream.h
638
+ third_party/quiche/quiche/quic/core/quic_crypto_handshaker.cc
639
+ third_party/quiche/quiche/quic/core/quic_crypto_handshaker.h
640
+ third_party/quiche/quiche/quic/core/quic_crypto_server_stream.cc
641
+ third_party/quiche/quiche/quic/core/quic_crypto_server_stream.h
642
+ third_party/quiche/quiche/quic/core/quic_crypto_server_stream_base.cc
643
+ third_party/quiche/quiche/quic/core/quic_crypto_server_stream_base.h
644
+ third_party/quiche/quiche/quic/core/quic_crypto_stream.cc
645
+ third_party/quiche/quiche/quic/core/quic_crypto_stream.h
646
+ third_party/quiche/quiche/quic/core/quic_data_reader.cc
647
+ third_party/quiche/quiche/quic/core/quic_data_reader.h
648
+ third_party/quiche/quiche/quic/core/quic_data_writer.cc
649
+ third_party/quiche/quiche/quic/core/quic_data_writer.h
650
+ third_party/quiche/quiche/quic/core/quic_datagram_queue.cc
651
+ third_party/quiche/quiche/quic/core/quic_datagram_queue.h
652
+ third_party/quiche/quiche/quic/core/quic_default_packet_writer.cc
653
+ third_party/quiche/quiche/quic/core/quic_default_packet_writer.h
654
+ third_party/quiche/quiche/quic/core/quic_default_clock.cc
655
+ third_party/quiche/quiche/quic/core/quic_default_clock.h
656
+ third_party/quiche/quiche/quic/core/quic_default_connection_helper.h
657
+ third_party/quiche/quiche/quic/core/deterministic_connection_id_generator.h
658
+ third_party/quiche/quiche/quic/core/deterministic_connection_id_generator.cc
659
+ third_party/quiche/quiche/quic/core/quic_dispatcher.cc
660
+ third_party/quiche/quiche/quic/core/quic_dispatcher.h
661
+ third_party/quiche/quiche/quic/core/quic_error_codes.cc
662
+ third_party/quiche/quiche/quic/core/quic_error_codes.h
663
+ third_party/quiche/quiche/quic/core/quic_flags_list.h
664
+ third_party/quiche/quiche/quic/core/quic_flow_controller.cc
665
+ third_party/quiche/quiche/quic/core/quic_flow_controller.h
666
+ third_party/quiche/quiche/quic/core/quic_framer.cc
667
+ third_party/quiche/quiche/quic/core/quic_framer.h
668
+ third_party/quiche/quiche/quic/core/quic_idle_network_detector.cc
669
+ third_party/quiche/quiche/quic/core/quic_idle_network_detector.h
670
+ third_party/quiche/quiche/quic/core/quic_interval.h
671
+ third_party/quiche/quiche/quic/core/quic_interval_deque.h
672
+ third_party/quiche/quiche/quic/core/quic_interval_set.h
673
+ third_party/quiche/quiche/quic/core/quic_lru_cache.h
674
+ third_party/quiche/quiche/quic/core/quic_mtu_discovery.cc
675
+ third_party/quiche/quiche/quic/core/quic_mtu_discovery.h
676
+ third_party/quiche/quiche/quic/core/quic_network_blackhole_detector.cc
677
+ third_party/quiche/quiche/quic/core/quic_network_blackhole_detector.h
678
+ third_party/quiche/quiche/quic/core/quic_one_block_arena.h
679
+ third_party/quiche/quiche/quic/core/quic_packet_creator.cc
680
+ third_party/quiche/quiche/quic/core/quic_packet_creator.h
681
+ third_party/quiche/quiche/quic/core/quic_packet_number.cc
682
+ third_party/quiche/quiche/quic/core/quic_packet_number.h
683
+ third_party/quiche/quiche/quic/core/quic_packet_reader.cc
684
+ third_party/quiche/quiche/quic/core/quic_packet_reader.h
685
+ third_party/quiche/quiche/quic/core/quic_packet_writer.h
686
+ third_party/quiche/quiche/quic/core/quic_packets.cc
687
+ third_party/quiche/quiche/quic/core/quic_packets.h
688
+ third_party/quiche/quiche/quic/core/quic_path_validator.cc
689
+ third_party/quiche/quiche/quic/core/quic_path_validator.h
690
+ third_party/quiche/quiche/quic/core/quic_protocol_flags_list.h
691
+ third_party/quiche/quiche/quic/core/quic_received_packet_manager.cc
692
+ third_party/quiche/quiche/quic/core/quic_received_packet_manager.h
693
+ third_party/quiche/quiche/quic/core/quic_sent_packet_manager.cc
694
+ third_party/quiche/quiche/quic/core/quic_sent_packet_manager.h
695
+ third_party/quiche/quiche/quic/core/quic_server_id.cc
696
+ third_party/quiche/quiche/quic/core/quic_server_id.h
697
+ third_party/quiche/quiche/quic/core/quic_session.cc
698
+ third_party/quiche/quiche/quic/core/quic_session.h
699
+ third_party/quiche/quiche/quic/core/quic_socket_address_coder.cc
700
+ third_party/quiche/quiche/quic/core/quic_socket_address_coder.h
701
+ third_party/quiche/quiche/quic/core/quic_stream.cc
702
+ third_party/quiche/quiche/quic/core/quic_stream.h
703
+ third_party/quiche/quiche/quic/core/quic_stream_frame_data_producer.h
704
+ third_party/quiche/quiche/quic/core/quic_stream_id_manager.cc
705
+ third_party/quiche/quiche/quic/core/quic_stream_id_manager.h
706
+ third_party/quiche/quiche/quic/core/quic_stream_priority.cc
707
+ third_party/quiche/quiche/quic/core/quic_stream_priority.h
708
+ third_party/quiche/quiche/quic/core/quic_stream_send_buffer.cc
709
+ third_party/quiche/quiche/quic/core/quic_stream_send_buffer.h
710
+ third_party/quiche/quiche/quic/core/quic_stream_sequencer.cc
711
+ third_party/quiche/quiche/quic/core/quic_stream_sequencer.h
712
+ third_party/quiche/quiche/quic/core/quic_stream_sequencer_buffer.cc
713
+ third_party/quiche/quiche/quic/core/quic_stream_sequencer_buffer.h
714
+ third_party/quiche/quiche/quic/core/quic_sustained_bandwidth_recorder.cc
715
+ third_party/quiche/quiche/quic/core/quic_sustained_bandwidth_recorder.h
716
+ third_party/quiche/quiche/quic/core/quic_tag.cc
717
+ third_party/quiche/quiche/quic/core/quic_tag.h
718
+ third_party/quiche/quiche/quic/core/quic_time.cc
719
+ third_party/quiche/quiche/quic/core/quic_time.h
720
+ third_party/quiche/quiche/quic/core/quic_time_wait_list_manager.cc
721
+ third_party/quiche/quiche/quic/core/quic_time_wait_list_manager.h
722
+ third_party/quiche/quiche/quic/core/quic_time_accumulator.h
723
+ third_party/quiche/quiche/quic/core/quic_transmission_info.cc
724
+ third_party/quiche/quiche/quic/core/quic_transmission_info.h
725
+ third_party/quiche/quiche/quic/core/quic_types.cc
726
+ third_party/quiche/quiche/quic/core/quic_types.h
727
+ third_party/quiche/quiche/quic/core/quic_unacked_packet_map.cc
728
+ third_party/quiche/quiche/quic/core/quic_unacked_packet_map.h
729
+ third_party/quiche/quiche/quic/core/quic_udp_socket.cc
730
+ third_party/quiche/quiche/quic/core/quic_udp_socket_win.inc
731
+ third_party/quiche/quiche/quic/core/quic_udp_socket_posix.inc
732
+ third_party/quiche/quiche/quic/core/quic_udp_socket.h
733
+ third_party/quiche/quiche/quic/core/quic_utils.cc
734
+ third_party/quiche/quiche/quic/core/quic_utils.h
735
+ third_party/quiche/quiche/quic/core/quic_version_manager.cc
736
+ third_party/quiche/quiche/quic/core/quic_version_manager.h
737
+ third_party/quiche/quiche/quic/core/quic_versions.cc
738
+ third_party/quiche/quiche/quic/core/quic_versions.h
739
+ third_party/quiche/quiche/quic/core/quic_write_blocked_list.cc
740
+ third_party/quiche/quiche/quic/core/quic_write_blocked_list.h
741
+ third_party/quiche/quiche/quic/core/session_notifier_interface.h
742
+ third_party/quiche/quiche/quic/core/stream_delegate_interface.h
743
+ third_party/quiche/quiche/quic/core/tls_chlo_extractor.cc
744
+ third_party/quiche/quiche/quic/core/tls_chlo_extractor.h
745
+ third_party/quiche/quiche/quic/core/tls_client_handshaker.h
746
+ third_party/quiche/quiche/quic/core/tls_client_handshaker.cc
747
+ third_party/quiche/quiche/quic/core/tls_client_handshaker.h
748
+ third_party/quiche/quiche/quic/core/tls_handshaker.cc
749
+ third_party/quiche/quiche/quic/core/tls_handshaker.h
750
+ third_party/quiche/quiche/quic/core/tls_server_handshaker.cc
751
+ third_party/quiche/quiche/quic/core/tls_server_handshaker.h
752
+ third_party/quiche/quiche/quic/core/uber_quic_stream_id_manager.cc
753
+ third_party/quiche/quiche/quic/core/uber_quic_stream_id_manager.h
754
+ third_party/quiche/quiche/quic/core/uber_received_packet_manager.cc
755
+ third_party/quiche/quiche/quic/core/uber_received_packet_manager.h
756
+ third_party/quiche/quiche/quic/core/web_transport_stats.h
757
+ third_party/quiche/quiche/quic/core/web_transport_stats.cc
758
+ third_party/quiche/quiche/quic/platform/api/quic_bug_tracker.h
759
+ third_party/quiche/quiche/quic/platform/api/quic_client_stats.h
760
+ third_party/quiche/quiche/quic/platform/api/quic_export.h
761
+ third_party/quiche/quiche/quic/platform/api/quic_exported_stats.h
762
+ third_party/quiche/quiche/quic/platform/api/quic_flag_utils.h
763
+ third_party/quiche/quiche/quic/platform/api/quic_flags.h
764
+ third_party/quiche/quiche/quic/platform/api/quic_logging.h
765
+ #third_party/quiche/quiche/quic/platform/api/quic_mem_slice.h
766
+ #third_party/quiche/quiche/quic/platform/api/quic_mem_slice_storage.cc
767
+ #third_party/quiche/quiche/quic/platform/api/quic_mem_slice_storage.h
768
+ third_party/quiche/quiche/quic/platform/api/quic_server_stats.h
769
+ third_party/quiche/quiche/quic/platform/api/quic_socket_address.cc
770
+ third_party/quiche/quiche/quic/platform/api/quic_socket_address.h
771
+ third_party/quiche/quiche/quic/platform/api/quic_stack_trace.h
772
+ third_party/quiche/quiche/quic/platform/api/quic_thread.h
773
+ third_party/quiche/quiche/quic/tools/quic_simple_crypto_server_stream_helper.cc
774
+ third_party/quiche/quiche/quic/tools/quic_simple_crypto_server_stream_helper.h
775
+ third_party/quiche/quiche/spdy/core/hpack/hpack_constants.cc
776
+ third_party/quiche/quiche/spdy/core/hpack/hpack_constants.h
777
+ third_party/quiche/quiche/spdy/core/hpack/hpack_decoder_adapter.cc
778
+ third_party/quiche/quiche/spdy/core/hpack/hpack_decoder_adapter.h
779
+ third_party/quiche/quiche/spdy/core/hpack/hpack_encoder.cc
780
+ third_party/quiche/quiche/spdy/core/hpack/hpack_encoder.h
781
+ third_party/quiche/quiche/spdy/core/hpack/hpack_entry.cc
782
+ third_party/quiche/quiche/spdy/core/hpack/hpack_entry.h
783
+ third_party/quiche/quiche/spdy/core/hpack/hpack_header_table.cc
784
+ third_party/quiche/quiche/spdy/core/hpack/hpack_header_table.h
785
+ third_party/quiche/quiche/spdy/core/hpack/hpack_output_stream.cc
786
+ third_party/quiche/quiche/spdy/core/hpack/hpack_output_stream.h
787
+ third_party/quiche/quiche/spdy/core/hpack/hpack_static_table.cc
788
+ third_party/quiche/quiche/spdy/core/hpack/hpack_static_table.h
789
+ third_party/quiche/quiche/spdy/core/http2_frame_decoder_adapter.cc
790
+ third_party/quiche/quiche/spdy/core/http2_frame_decoder_adapter.h
791
+ third_party/quiche/quiche/spdy/core/recording_headers_handler.cc
792
+ third_party/quiche/quiche/spdy/core/recording_headers_handler.h
793
+ third_party/quiche/quiche/spdy/core/spdy_alt_svc_wire_format.cc
794
+ third_party/quiche/quiche/spdy/core/spdy_alt_svc_wire_format.h
795
+ third_party/quiche/quiche/spdy/core/spdy_bitmasks.h
796
+ third_party/quiche/quiche/spdy/core/spdy_frame_builder.cc
797
+ third_party/quiche/quiche/spdy/core/spdy_frame_builder.h
798
+ #third_party/quiche/quiche/spdy/core/spdy_frame_reader.cc
799
+ #third_party/quiche/quiche/spdy/core/spdy_frame_reader.h
800
+ third_party/quiche/quiche/spdy/core/spdy_framer.cc
801
+ third_party/quiche/quiche/spdy/core/spdy_framer.h
802
+ third_party/quiche/quiche/spdy/core/spdy_headers_handler_interface.h
803
+ third_party/quiche/quiche/spdy/core/spdy_intrusive_list.h
804
+ third_party/quiche/quiche/spdy/core/spdy_no_op_visitor.cc
805
+ third_party/quiche/quiche/spdy/core/spdy_no_op_visitor.h
806
+ third_party/quiche/quiche/spdy/core/spdy_pinnable_buffer_piece.cc
807
+ third_party/quiche/quiche/spdy/core/spdy_pinnable_buffer_piece.h
808
+ third_party/quiche/quiche/spdy/core/spdy_prefixed_buffer_reader.cc
809
+ third_party/quiche/quiche/spdy/core/spdy_prefixed_buffer_reader.h
810
+ third_party/quiche/quiche/spdy/core/spdy_protocol.cc
811
+ third_party/quiche/quiche/spdy/core/spdy_protocol.h
812
+ third_party/quiche/quiche/spdy/core/zero_copy_output_buffer.h
813
+ )
814
+
815
+ IF(APPLE OR WIN32)
816
+ target_sources(gquiche PRIVATE third_party/googleurl/url/url_idna_ascii_only.cc)
817
+ ELSE()
818
+ target_sources(gquiche PRIVATE third_party/googleurl/url/url_idna_icu.cc)
819
+ ENDIF()
820
+
821
+ FILE(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche PROTOMODEL_PATH)
822
+ FILE(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche PROTOBINDING_PATH)
823
+
824
+ IF (WIN32)
825
+ target_sources(gquiche PRIVATE third_party/googleurl/base/strings/string_util_win.cc
826
+ third_party/googleurl/base/strings/string_util_win.h)
827
+
828
+ target_compile_definitions(crypto PRIVATE strdup=_strdup)
829
+ target_compile_definitions(gquiche PRIVATE _WINSOCK_DEPRECATED_NO_WARNINGS)
830
+ ELSE(WIN32)
831
+ IF(APPLE)
832
+ ELSE(APPLE)
833
+ target_link_libraries(gquiche -static-libgcc -static-libstdc++)
834
+ ENDIF(APPLE)
835
+ ENDIF(WIN32)
836
+
837
+
838
+
839
+ add_custom_command(
840
+ OUTPUT
841
+ ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/cached_network_parameters.pb.h
842
+ ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/crypto_server_config.pb.h
843
+ ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/source_address_token.pb.h
844
+ ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/cached_network_parameters.pb.cc
845
+ ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/crypto_server_config.pb.cc
846
+ ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/source_address_token.pb.cc
847
+ DEPENDS protobuf::protoc ${filename} ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/cached_network_parameters.proto
848
+ ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/crypto_server_config.proto
849
+ ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/source_address_token.proto
850
+ COMMAND protobuf::protoc --proto_path=${PROTOMODEL_PATH} --cpp_out=${PROTOBINDING_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/cached_network_parameters.proto
851
+ COMMAND protobuf::protoc --proto_path=${PROTOMODEL_PATH} --cpp_out=${PROTOBINDING_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/crypto_server_config.proto
852
+ COMMAND protobuf::protoc --proto_path=${PROTOMODEL_PATH} --cpp_out=${PROTOBINDING_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/source_address_token.proto
853
+ )
854
+
855
+ target_sources(gquiche PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/cached_network_parameters.pb.h
856
+ ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/crypto_server_config.pb.h
857
+ ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/source_address_token.pb.h
858
+ ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/cached_network_parameters.pb.cc
859
+ ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/crypto_server_config.pb.cc
860
+ ${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche/quiche/quic/core/proto/source_address_token.pb.cc)
861
+
862
+
863
+ #set(Protobuf_IMPORT_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche")
864
+
865
+ #protobuf_generate(
866
+ # TARGET
867
+ # gquiche
868
+ # LANGUAGE
869
+ # cpp
870
+ # GENERATE_EXTENSIONS
871
+ # .pb.h
872
+ # .pb.cc
873
+ # OUT_VAR PROTO_SRCS
874
+ # IMPORT_DIRS
875
+ # "${CMAKE_CURRENT_SOURCE_DIR}/third_party/quiche"
876
+ # PROTOC_OUT_DIR
877
+ # ${CMAKE_CURRENT_SOURCE_DIR}
878
+ # PROTOS
879
+ # quic/core/proto/cached_network_parameters.proto
880
+ # quic/core/proto/crypto_server_config.proto
881
+ # quic/core/proto/source_address_token.proto
882
+ #)
883
+
884
+ #target_sources(gquiche PRIVATE ${PROTO_SRCS})
885
+
886
+ set_property(TARGET gquiche PROPERTY CXX_STANDARD 20)
887
+
888
+ target_include_directories(gquiche
889
+ PUBLIC platform
890
+ PUBLIC third_party/quiche
891
+ PUBLIC third_party/boringssl/src/include
892
+ PUBLIC third_party/abseil-cpp
893
+ PUBLIC third_party/googleurl
894
+ PUBLIC third_party/zlib
895
+ PUBLIC ${CMAKE_CURRENT_BINARY_DIR}/third_party/zlib
896
+ PUBLIC .
897
+ PUBLIC ${Protobuf_INCLUDE_DIRS}
898
+ PUBLIC ${CMAKE_CURRENT_BINARY_DIR}
899
+ PUBLIC ${CMAKE_JS_INC}
900
+ )
901
+
902
+ target_include_directories(crypto PUBLIC
903
+ $<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/third_party/boringssl/src/include>
904
+ )
905
+
906
+ target_link_libraries(gquiche
907
+ absl::core_headers
908
+ absl::log_severity
909
+ absl::flags
910
+ absl::flags_usage
911
+ absl::flags_parse
912
+ absl::absl_check
913
+ absl::absl_log
914
+ absl::log_flags
915
+ absl::log_initialize
916
+ absl::int128
917
+ absl::strings
918
+ absl::str_format
919
+ absl::flat_hash_map
920
+ absl::any
921
+ absl::synchronization
922
+ absl::time
923
+ absl::status
924
+ absl::statusor
925
+ absl::cleanup
926
+ protobuf::libprotobuf
927
+ ssl
928
+ zlibstatic
929
+ crypto
930
+ )
931
+
932
+
933
+ add_definitions(-DNAPI_VERSION=${napi_build_version})
934
+
935
+ if(MSVC AND CMAKE_JS_NODELIB_DEF AND CMAKE_JS_NODELIB_TARGET)
936
+ # Generate node.lib
937
+ execute_process(COMMAND ${CMAKE_LINKER} /def:${CMAKE_JS_NODELIB_DEF} /out:${CMAKE_JS_NODELIB_TARGET} ${CMAKE_STATIC_LINKER_FLAGS})
938
+ endif()
939
+
940
+
941
+
942
+
943
+ # google quiche build parameters end
944
+
945
+ #include_directories(${CMAKE_JS_INC})
946
+ file(GLOB SOURCE_FILES "src/*.cc" "src/*.h")
947
+ add_library(${PROJECT_NAME} SHARED ${SOURCE_FILES} ${CMAKE_JS_SRC})
948
+ set_target_properties(${PROJECT_NAME} PROPERTIES PREFIX "" SUFFIX ".node")
949
+ set_property(TARGET ${PROJECT_NAME} PROPERTY CXX_STANDARD 20)
950
+ target_include_directories(${PROJECT_NAME}
951
+ PUBLIC third_party/boringssl/src/include
952
+ PUBLIC ${CMAKE_JS_INC})
953
+ target_link_libraries(${PROJECT_NAME} gquiche ssl zlibstatic crypto ${CMAKE_JS_LIB} )
954
+ set_target_properties(${PROJECT_NAME} PROPERTIES LINKER_LANGUAGE CXX)
955
+ IF (WIN32)
956
+ # place for custom window stuff
957
+ ELSE(WIN32)
958
+ IF(APPLE)
959
+ ELSE(APPLE)
960
+ target_link_libraries(${PROJECT_NAME} -static-libgcc -static-libstdc++)
961
+ ENDIF(APPLE)
962
+ ENDIF(WIN32)
963
+
964
+ execute_process(COMMAND node -p "require('node-addon-api').include"
965
+ WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
966
+ OUTPUT_VARIABLE NODE_ADDON_API_DIR
967
+ )
968
+ string(REPLACE "\n" "" NODE_ADDON_API_DIR ${NODE_ADDON_API_DIR})
969
+ string(REPLACE "\"" "" NODE_ADDON_API_DIR ${NODE_ADDON_API_DIR})
970
+ target_include_directories(${PROJECT_NAME}
971
+ PRIVATE ${NODE_ADDON_API_DIR})
972
+
973
+
974
+ #add_definitions(-DNAPI_VERSION=3)
975
+
976
+
977
+
978
+