Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(227)

Unified Diff: net/tools/flip_server/flip_in_mem_edsm_server.cc

Issue 6291004: Add a flag to the in-memory-server to force SPDY even if SSL-NPN didn't... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/tools/flip_server/flip_in_mem_edsm_server.cc
===================================================================
--- net/tools/flip_server/flip_in_mem_edsm_server.cc (revision 71545)
+++ net/tools/flip_server/flip_in_mem_edsm_server.cc (working copy)
@@ -85,6 +85,9 @@
// SO_REUSEPORT);
bool FLAGS_reuseport = false;
+// Flag to force spdy, even if NPN is not negotiated.
+bool FLAGS_force_spdy = false;
+
// The amount of time the server delays before sending back the
// reply);
double FLAGS_server_think_time_in_s = 0;
@@ -1150,24 +1153,30 @@
} else {
VLOG(1) << "Session status: resumed";
}
- const unsigned char *npn_proto;
- unsigned int npn_proto_len;
- SSL_get0_next_proto_negotiated(ssl_, &npn_proto, &npn_proto_len);
- if (npn_proto_len > 0) {
- string npn_proto_str((const char *)npn_proto, npn_proto_len);
- VLOG(1) << log_prefix_ << ACCEPTOR_CLIENT_IDENT
- << "NPN protocol detected: " << npn_proto_str;
- } else {
- VLOG(1) << log_prefix_ << ACCEPTOR_CLIENT_IDENT
- << "NPN protocol detected: none";
- if (acceptor_->flip_handler_type_ == FLIP_HANDLER_SPDY_SERVER) {
+ bool spdy_negotiated = FLAGS_force_spdy;
+ if (!spdy_negotiated) {
+ const unsigned char *npn_proto;
+ unsigned int npn_proto_len;
+ SSL_get0_next_proto_negotiated(ssl_, &npn_proto, &npn_proto_len);
+ if (npn_proto_len > 0) {
+ string npn_proto_str((const char *)npn_proto, npn_proto_len);
VLOG(1) << log_prefix_ << ACCEPTOR_CLIENT_IDENT
- << "NPN protocol: Could not negotiate SPDY protocol.";
- goto error_or_close;
+ << "NPN protocol detected: " << npn_proto_str;
+ } else {
+ VLOG(1) << log_prefix_ << ACCEPTOR_CLIENT_IDENT
+ << "NPN protocol detected: none";
+ if (acceptor_->flip_handler_type_ == FLIP_HANDLER_SPDY_SERVER) {
+ VLOG(1) << log_prefix_ << ACCEPTOR_CLIENT_IDENT
+ << "NPN protocol: Could not negotiate SPDY protocol.";
+ goto error_or_close;
+ }
}
+ if (npn_proto_len > 0 &&
+ !strncmp((char *)npn_proto, "spdy/2", npn_proto_len)) {
+ spdy_negotiated = true;
+ }
}
- if (npn_proto_len > 0 &&
- !strncmp((char *)npn_proto, "spdy/2", npn_proto_len)) {
+ if (spdy_negotiated) {
if (!sm_spdy_interface_) {
sm_spdy_interface_ = NewSpdySM(this, NULL, epoll_server_,
memory_cache_, acceptor_);
@@ -3086,6 +3095,9 @@
g_proxy_config.ssl_disable_compression_ = true;
}
+ if (cl.HasSwitch("force_spdy"))
+ FLAGS_force_spdy = true;
+
InitLogging(g_proxy_config.log_filename_.c_str(),
g_proxy_config.log_destination_,
logging::DONT_LOCK_LOG_FILE,
@@ -3104,6 +3116,8 @@
LOG(INFO) << "Disable nagle : "
<< (FLAGS_disable_nagle?"true":"false");
LOG(INFO) << "Reuseport : " << (FLAGS_reuseport?"true":"false");
+ LOG(INFO) << "Force SPDY : "
+ << (FLAGS_force_spdy?"true":"false");
LOG(INFO) << "SSL session expiry : "
<< g_proxy_config.ssl_session_expiry_;
LOG(INFO) << "SSL disable compression : "
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698