MASQUE interop changes for IETF 110 hackathon
diff --git a/quic/core/quic_session.cc b/quic/core/quic_session.cc
index e3b0408..bdc9ef5 100644
--- a/quic/core/quic_session.cc
+++ b/quic/core/quic_session.cc
@@ -25,6 +25,7 @@
#include "quic/platform/api/quic_ptr_util.h"
#include "quic/platform/api/quic_server_stats.h"
#include "quic/platform/api/quic_stack_trace.h"
+#include "common/platform/api/quiche_text_utils.h"
using spdy::SpdyPriority;
@@ -368,8 +369,11 @@
}
void QuicSession::OnMessageReceived(absl::string_view message) {
- QUIC_DVLOG(1) << ENDPOINT << "Received message, length: " << message.length()
- << ", " << message;
+ QUIC_DVLOG(1) << ENDPOINT << "Received message of length "
+ << message.length();
+ QUIC_DVLOG(2) << ENDPOINT << "Contents of message of length "
+ << message.length() << ":" << std::endl
+ << quiche::QuicheTextUtils::HexDump(message);
}
void QuicSession::OnHandshakeDoneReceived() {
diff --git a/quic/masque/masque_server_bin.cc b/quic/masque/masque_server_bin.cc
index 17fee23..d5a5d9f 100644
--- a/quic/masque/masque_server_bin.cc
+++ b/quic/masque/masque_server_bin.cc
@@ -14,6 +14,7 @@
#include "quic/platform/api/quic_flags.h"
#include "quic/platform/api/quic_logging.h"
#include "quic/platform/api/quic_socket_address.h"
+#include "quic/platform/api/quic_system_event_loop.h"
DEFINE_QUIC_COMMAND_LINE_FLAG(int32_t,
port,
@@ -42,6 +43,7 @@
"open and legacy. Defaults to open.");
int main(int argc, char* argv[]) {
+ QuicSystemEventLoop event_loop("masque_server");
const char* usage = "Usage: masque_server [options]";
std::vector<std::string> non_option_args =
quic::QuicParseCommandLineFlags(usage, argc, argv);
diff --git a/quic/masque/masque_utils.cc b/quic/masque/masque_utils.cc
index 17dec0d..cd19602 100644
--- a/quic/masque/masque_utils.cc
+++ b/quic/masque/masque_utils.cc
@@ -8,17 +8,16 @@
ParsedQuicVersionVector MasqueSupportedVersions() {
QuicVersionInitializeSupportForIetfDraft();
- ParsedQuicVersion version = UnsupportedQuicVersion();
- for (const ParsedQuicVersion& vers : AllSupportedVersions()) {
- // Find the first version that supports IETF QUIC.
- if (vers.HasIetfQuicFrames() && vers.UsesTls()) {
- version = vers;
- break;
+ ParsedQuicVersionVector versions;
+ for (const ParsedQuicVersion& version : AllSupportedVersions()) {
+ // Use all versions that support IETF QUIC.
+ if (version.UsesHttp3()) {
+ QuicEnableVersion(version);
+ versions.push_back(version);
}
}
- QUICHE_CHECK(version.IsKnown());
- QuicEnableVersion(version);
- return {version};
+ QUICHE_CHECK(!versions.empty());
+ return versions;
}
QuicConfig MasqueEncapsulatedConfig() {
diff --git a/quic/tools/quic_server_bin.cc b/quic/tools/quic_server_bin.cc
index 6ed8e99..c971367 100644
--- a/quic/tools/quic_server_bin.cc
+++ b/quic/tools/quic_server_bin.cc
@@ -9,10 +9,12 @@
#include "quic/core/quic_versions.h"
#include "quic/platform/api/quic_flags.h"
+#include "quic/platform/api/quic_system_event_loop.h"
#include "quic/tools/quic_epoll_server_factory.h"
#include "quic/tools/quic_toy_server.h"
int main(int argc, char* argv[]) {
+ QuicSystemEventLoop event_loop("quic_server");
const char* usage = "Usage: quic_server [options]";
std::vector<std::string> non_option_args =
quic::QuicParseCommandLineFlags(usage, argc, argv);