Skip to content

Commit

Permalink
Merge pull request #15 from MacroLau/update_quiche98_and_add_qlog
Browse files Browse the repository at this point in the history
1. update to quiche version 98.0.4758.81
2. add support qlog
  • Loading branch information
wangsheng-bilibili authored Apr 13, 2022
2 parents 8f09cb2 + a67577e commit fbdc2dc
Show file tree
Hide file tree
Showing 706 changed files with 49,934 additions and 13,307 deletions.
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -32,4 +32,4 @@
*.app

/build
/third_party/*
/third_party/*
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -10,3 +10,6 @@
[submodule "third_party/boringssl"]
path = third_party/boringssl
url = https://github.com/google/boringssl.git
[submodule "third_party/rapidjson"]
path = third_party/rapidjson
url = https://github.com/Tencent/rapidjson.git
30 changes: 28 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ INCLUDE_DIRECTORIES(
third_party/spdlog/include
third_party/abseil-cpp
third_party/boringssl/include
third_party/rapidjson/include
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_BINARY_DIR}
${CMAKE_BINARY_DIR}/quiche
Expand All @@ -43,8 +44,21 @@ SET(BASE_SRCS
base/files/file_util.cc
base/files/file_util_posix.cc
base/strings/stringprintf.cc
base/bvc-qlog/src/qlogger_types.h
base/bvc-qlog/src/qlogger_types.cc
base/bvc-qlog/src/qlogger_constants.h
base/bvc-qlog/src/qlogger_constants.cc
base/bvc-qlog/src/qlogger.h
base/bvc-qlog/src/qlogger.cc
base/bvc-qlog/src/base_qlogger.h
base/bvc-qlog/src/base_qlogger.cc
base/bvc-qlog/src/file_qlogger.h
base/bvc-qlog/src/file_qlogger.cc
base/bvc-qlog/src/bvc_quic_connection_debug_visitor.h
base/bvc-qlog/src/bvc_quic_connection_debug_visitor.cc
)


SET(NET_SRCS
net/base/io_buffer.cc
net/http/http_util.cc
Expand All @@ -65,7 +79,6 @@ SET(PLATFORM_SRCS
platform/quiche_platform_impl/quic_mutex_impl.cc
platform/quic_platform_impl/quic_cert_utils_impl.cc
platform/quic_platform_impl/quic_default_proof_providers_impl.cc
platform/quic_platform_impl/quic_file_utils_impl.cc
platform/quic_platform_impl/quic_hostname_utils_impl.cc
platform/quic_platform_impl/quic_mem_slice_impl.cc
platform/quic_platform_impl/quic_mem_slice_span_impl.cc
Expand All @@ -74,6 +87,9 @@ SET(PLATFORM_SRCS
)

SET(GQUICHE_SRCS
gquiche/common/platform/api/quiche_file_utils.cc
gquiche/common/platform/default/quiche_platform_impl/quiche_file_utils_impl.cc
gquiche/common/quiche_text_utils.cc
gquiche/common/quiche_data_reader.cc
gquiche/common/quiche_data_writer.cc
gquiche/http2/decoder/decode_buffer.cc
Expand Down Expand Up @@ -184,6 +200,8 @@ SET(GQUICHE_SRCS
gquiche/quic/core/crypto/tls_connection.cc
gquiche/quic/core/crypto/tls_server_connection.cc
gquiche/quic/core/crypto/transport_parameters.cc
gquiche/quic/core/crypto/quic_client_session_cache.cc
gquiche/quic/core/crypto/client_proof_source.cc
gquiche/quic/core/frames/quic_ack_frame.cc
gquiche/quic/core/frames/quic_ack_frequency_frame.cc
gquiche/quic/core/frames/quic_blocked_frame.cc
Expand All @@ -207,6 +225,7 @@ SET(GQUICHE_SRCS
gquiche/quic/core/frames/quic_stream_frame.cc
gquiche/quic/core/frames/quic_streams_blocked_frame.cc
gquiche/quic/core/frames/quic_window_update_frame.cc
gquiche/quic/core/http/capsule.cc
gquiche/quic/core/http/http_constants.cc
gquiche/quic/core/http/http_decoder.cc
gquiche/quic/core/http/http_encoder.cc
Expand Down Expand Up @@ -322,12 +341,15 @@ SET(GQUICHE_SRCS
gquiche/quic/core/tls_server_handshaker.cc
gquiche/quic/core/uber_quic_stream_id_manager.cc
gquiche/quic/core/uber_received_packet_manager.cc
gquiche/quic/core/web_transport_stream_adapter.cc
gquiche/quic/core/quic_chaos_protector.cc
gquiche/quic/core/quic_connection_context.cc
gquiche/quic/core/http/web_transport_stream_adapter.cc
gquiche/quic/platform/api/quic_file_utils.cc
gquiche/quic/platform/api/quic_hostname_utils.cc
gquiche/quic/platform/api/quic_ip_address.cc
gquiche/quic/platform/api/quic_mutex.cc
gquiche/quic/platform/api/quic_socket_address.cc
gquiche/quic/platform/api/quic_mem_slice_storage.cc
gquiche/spdy/core/hpack/hpack_constants.cc
gquiche/spdy/core/hpack/hpack_decoder_adapter.cc
gquiche/spdy/core/hpack/hpack_encoder.cc
Expand All @@ -353,6 +375,10 @@ SET(GQUICHE_SRCS

SET(QUIC_TOOLS_SRCS
gquiche/quic/tools/simple_ticket_crypter.cc
gquiche/quic/tools/quic_spdy_client_base.cc
gquiche/quic/tools/quic_client_base.cc
gquiche/quic/tools/quic_client.cc
gquiche/quic/tools/quic_client_epoll_network_helper.cc
)

message("PROTO_SRCS = ${CoreProtoSource}")
Expand Down
12 changes: 6 additions & 6 deletions DEVELOPMENT.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# Compilation

**1. Prerequisite**

> export GOPROXY=https://goproxy.io
> apt-get install git cmake build-essential protobuf-compiler libprotobuf-dev golang-go libunwind-dev libicu-dev
**2. Build**
> git clone https://github.com/bilibili/quiche.git && cd quiche
> git submodule update --init
> git clone git@git.bilibili.co:quic/quiche.git && cd quiche
> git submodule update --init --recursive
> mkdir -p build
> cd build && cmake ..
> make -j
Expand All @@ -21,18 +21,18 @@
> git clone https://quiche.googlesource.com/quiche google_quiche
> git clone https://quiche.googlesource.com/googleurl
**2. Select a proper tag from chromium and find out quiche version and boringssl version it depended on, then checkout it.**
**2. Select a proper tag from chromium and find out quiche version and boringssl version and absl version it depended on, then checkout it.**
> git checkout [commit-id]
**3. Rewrite**
> cp -fr google_quiche/* quiche/
> cp -fr google_quiche/* quiche/gquiche
> cp -fr googleurl/* quiche/googleurl/
> cd quiche && bash utils/google_quiche_rewrite.sh
**4. Check if any file or dir should be checkouted**
> git checkout README.md
**5. Update VERSION, log chromium tag and quiche/boringssl version**
**5. Update VERSION, log chromium tag and quiche/boringssl version and quiche/abseil-cpp version**

**6. Compile and fix errors**
> Repeate Compilation steps and fix errors.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ Google quiche is used in Chromium (http://www.chromium.org/quic) project. This r
- Easy building with cmake
- Only support Linux platform
- Easy to keep pace with Google quiche upgrading
- Support Qlog: APIs to expose transport and server statistics for debuggability with qvis

### Source Layout
- `base`: Implementation of basic platform functions
Expand Down
8 changes: 4 additions & 4 deletions VERSION
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
>>> VERSION LIST
chromium_tag: 92.0.4484.8
quiche_version: 2a62c51
boringssl_version: 1596137
chromium_tag: 98.0.4758.81
quiche_version: 4003b67
boringssl_version: 3a667d1
googleurl_version: 4c7645e
absl_version: 9336be0
Loading

0 comments on commit fbdc2dc

Please sign in to comment.