| OLD | NEW | 
|    1 // Copyright 2014 The Chromium Authors. All rights reserved. |    1 // Copyright 2014 The Chromium Authors. All rights reserved. | 
|    2 // Use of this source code is governed by a BSD-style license that can be |    2 // Use of this source code is governed by a BSD-style license that can be | 
|    3 // found in the LICENSE file. |    3 // found in the LICENSE file. | 
|    4 // |    4 // | 
|    5 // A binary wrapper for QuicServer.  It listens forever on --port |    5 // A binary wrapper for QuicServer.  It listens forever on --port | 
|    6 // (default 6121) until it's killed or ctrl-cd to death. |    6 // (default 6121) until it's killed or ctrl-cd to death. | 
|    7  |    7  | 
|    8 #include <iostream> |    8 #include <iostream> | 
|    9  |    9  | 
|   10 #include "base/at_exit.h" |   10 #include "base/at_exit.h" | 
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   50         "-h, --help                  show this help message and exit\n" |   50         "-h, --help                  show this help message and exit\n" | 
|   51         "--port=<port>               specify the port to listen on\n" |   51         "--port=<port>               specify the port to listen on\n" | 
|   52         "--quic_in_memory_cache_dir  directory containing response data\n" |   52         "--quic_in_memory_cache_dir  directory containing response data\n" | 
|   53         "                            to load\n" |   53         "                            to load\n" | 
|   54         "--certificate_file=<file>   path to the certificate chain\n" |   54         "--certificate_file=<file>   path to the certificate chain\n" | 
|   55         "--key_file=<file>           path to the pkcs8 private key\n"; |   55         "--key_file=<file>           path to the pkcs8 private key\n"; | 
|   56     std::cout << help_str; |   56     std::cout << help_str; | 
|   57     exit(0); |   57     exit(0); | 
|   58   } |   58   } | 
|   59  |   59  | 
 |   60   net::QuicInMemoryCache in_memory_cache; | 
|   60   if (line->HasSwitch("quic_in_memory_cache_dir")) { |   61   if (line->HasSwitch("quic_in_memory_cache_dir")) { | 
|   61     net::QuicInMemoryCache::GetInstance()->InitializeFromDirectory( |   62     in_memory_cache.InitializeFromDirectory( | 
|   62         line->GetSwitchValueASCII("quic_in_memory_cache_dir")); |   63         line->GetSwitchValueASCII("quic_in_memory_cache_dir")); | 
|   63   } |   64   } | 
|   64  |   65  | 
|   65   if (line->HasSwitch("port")) { |   66   if (line->HasSwitch("port")) { | 
|   66     if (!base::StringToInt(line->GetSwitchValueASCII("port"), &FLAGS_port)) { |   67     if (!base::StringToInt(line->GetSwitchValueASCII("port"), &FLAGS_port)) { | 
|   67       LOG(ERROR) << "--port must be an integer\n"; |   68       LOG(ERROR) << "--port must be an integer\n"; | 
|   68       return 1; |   69       return 1; | 
|   69     } |   70     } | 
|   70   } |   71   } | 
|   71  |   72  | 
|   72   if (!line->HasSwitch("certificate_file")) { |   73   if (!line->HasSwitch("certificate_file")) { | 
|   73     LOG(ERROR) << "missing --certificate_file"; |   74     LOG(ERROR) << "missing --certificate_file"; | 
|   74     return 1; |   75     return 1; | 
|   75   } |   76   } | 
|   76  |   77  | 
|   77   if (!line->HasSwitch("key_file")) { |   78   if (!line->HasSwitch("key_file")) { | 
|   78     LOG(ERROR) << "missing --key_file"; |   79     LOG(ERROR) << "missing --key_file"; | 
|   79     return 1; |   80     return 1; | 
|   80   } |   81   } | 
|   81  |   82  | 
|   82   net::IPAddress ip = net::IPAddress::IPv6AllZeros(); |   83   net::IPAddress ip = net::IPAddress::IPv6AllZeros(); | 
|   83  |   84  | 
|   84   net::QuicConfig config; |   85   net::QuicConfig config; | 
|   85   net::QuicSimpleServer server( |   86   net::QuicSimpleServer server( | 
|   86       CreateProofSource(line->GetSwitchValuePath("certificate_file"), |   87       CreateProofSource(line->GetSwitchValuePath("certificate_file"), | 
|   87                         line->GetSwitchValuePath("key_file")), |   88                         line->GetSwitchValuePath("key_file")), | 
|   88       config, net::QuicCryptoServerConfig::ConfigOptions(), |   89       config, net::QuicCryptoServerConfig::ConfigOptions(), | 
|   89       net::AllSupportedVersions()); |   90       net::AllSupportedVersions(), &in_memory_cache); | 
|   90  |   91  | 
|   91   int rc = server.Listen(net::IPEndPoint(ip, FLAGS_port)); |   92   int rc = server.Listen(net::IPEndPoint(ip, FLAGS_port)); | 
|   92   if (rc < 0) { |   93   if (rc < 0) { | 
|   93     return 1; |   94     return 1; | 
|   94   } |   95   } | 
|   95  |   96  | 
|   96   base::RunLoop().Run(); |   97   base::RunLoop().Run(); | 
|   97  |   98  | 
|   98   return 0; |   99   return 0; | 
|   99 } |  100 } | 
| OLD | NEW |