Commit 3830303e authored by Renjie Tang's avatar Renjie Tang Committed by Commit Bot

Log PATH_CHALLENGE and PATH_RESPONSE frame's binary data.

The data is generated by QUIC transport and has no user information.

Change-Id: I001bb30a69129cdb5195c36e1ba3abc39628fd89
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1838538Reviewed-by: default avatarZhongyi Shi <zhongyi@chromium.org>
Reviewed-by: default avatarEric Roman <eroman@chromium.org>
Commit-Queue: Renjie Tang <renjietang@chromium.org>
Cr-Commit-Position: refs/heads/master@{#705743}
parent 9f80fa7b
......@@ -2007,6 +2007,30 @@ EVENT_TYPE(QUIC_SESSION_CLOSED)
// }
EVENT_TYPE(QUIC_SESSION_CONNECTIVITY_PROBING_FINISHED)
// Session sent a PATH_CHALLENGE frame.
// {
// "data": <The challenge data in base64 string>
// }
EVENT_TYPE(QUIC_SESSION_PATH_CHALLENGE_FRAME_SENT)
// Session received a PATH_CHALLENGE frame.
// {
// "data": <The challenge data in base64 string>
// }
EVENT_TYPE(QUIC_SESSION_PATH_CHALLENGE_FRAME_RECEIVED)
// Session sent a PATH_RESPONSE frame.
// {
// "data": <The response data in base64 string>
// }
EVENT_TYPE(QUIC_SESSION_PATH_RESPONSE_FRAME_SENT)
// Session received a PATH_RESPONSE frame.
// {
// "data": <The response data in base64 string>
// }
EVENT_TYPE(QUIC_SESSION_PATH_RESPONSE_FRAME_RECEIVED)
// Session sent a CRYPTO frame.
// {
// "encryption_level": <The quic::EncryptionLevel of the frame>,
......
......@@ -213,6 +213,14 @@ base::Value NetLogQuicPublicResetPacketParams(
return dict;
}
base::Value NetLogQuicPathData(const quic::QuicPathFrameBuffer& buffer) {
base::Value dict(base::Value::Type::DICTIONARY);
dict.SetKey("data",
NetLogBinaryValue(reinterpret_cast<const char*>(buffer.data()),
buffer.size()));
return dict;
}
base::Value NetLogQuicCryptoHandshakeMessageParams(
const quic::CryptoHandshakeMessage* message) {
base::Value dict(base::Value::Type::DICTIONARY);
......@@ -508,8 +516,16 @@ void QuicConnectionLogger::OnFrameAddedToPacket(const quic::QuicFrame& frame) {
});
break;
case quic::PATH_RESPONSE_FRAME:
net_log_.AddEvent(
NetLogEventType::QUIC_SESSION_PATH_RESPONSE_FRAME_SENT, [&] {
return NetLogQuicPathData(frame.path_response_frame->data_buffer);
});
break;
case quic::PATH_CHALLENGE_FRAME:
net_log_.AddEvent(
NetLogEventType::QUIC_SESSION_PATH_CHALLENGE_FRAME_SENT, [&] {
return NetLogQuicPathData(frame.path_challenge_frame->data_buffer);
});
break;
case quic::STOP_SENDING_FRAME:
net_log_.AddEvent(
......@@ -684,6 +700,22 @@ void QuicConnectionLogger::OnStreamFrame(const quic::QuicStreamFrame& frame) {
[&] { return NetLogQuicStreamFrameParams(frame); });
}
void QuicConnectionLogger::OnPathChallengeFrame(
const quic::QuicPathChallengeFrame& frame) {
if (!net_log_.IsCapturing())
return;
net_log_.AddEvent(NetLogEventType::QUIC_SESSION_PATH_CHALLENGE_FRAME_RECEIVED,
[&] { return NetLogQuicPathData(frame.data_buffer); });
}
void QuicConnectionLogger::OnPathResponseFrame(
const quic::QuicPathResponseFrame& frame) {
if (!net_log_.IsCapturing())
return;
net_log_.AddEvent(NetLogEventType::QUIC_SESSION_PATH_RESPONSE_FRAME_RECEIVED,
[&] { return NetLogQuicPathData(frame.data_buffer); });
}
void QuicConnectionLogger::OnCryptoFrame(const quic::QuicCryptoFrame& frame) {
if (!net_log_.IsCapturing())
return;
......
......@@ -69,6 +69,8 @@ class NET_EXPORT_PRIVATE QuicConnectionLogger
void OnDuplicatePacket(quic::QuicPacketNumber packet_number) override;
void OnProtocolVersionMismatch(quic::ParsedQuicVersion version) override;
void OnPacketHeader(const quic::QuicPacketHeader& header) override;
void OnPathChallengeFrame(const quic::QuicPathChallengeFrame& frame) override;
void OnPathResponseFrame(const quic::QuicPathResponseFrame& frame) override;
void OnCryptoFrame(const quic::QuicCryptoFrame& frame) override;
void OnStopSendingFrame(const quic::QuicStopSendingFrame& frame) override;
void OnStreamsBlockedFrame(
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment