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

Side by Side Diff: net/test/test_server.cc

Issue 6804032: Add TLS-SRP (RFC 5054) support Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: remove "httpsv" scheme, minor NSS/OpenSSL changes Created 9 years, 8 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « net/test/test_server.h ('k') | net/third_party/nss/README.chromium » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 #include "net/test/test_server.h" 5 #include "net/test/test_server.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 } 55 }
56 56
57 return "127.0.0.1"; 57 return "127.0.0.1";
58 } 58 }
59 59
60 } // namespace 60 } // namespace
61 61
62 TestServer::HTTPSOptions::HTTPSOptions() 62 TestServer::HTTPSOptions::HTTPSOptions()
63 : server_certificate(CERT_OK), 63 : server_certificate(CERT_OK),
64 request_client_certificate(false), 64 request_client_certificate(false),
65 bulk_ciphers(HTTPSOptions::BULK_CIPHER_ANY) {} 65 bulk_ciphers(HTTPSOptions::BULK_CIPHER_ANY),
66 use_tls_srp(0), only_tls_srp(0) {}
66 67
67 TestServer::HTTPSOptions::HTTPSOptions( 68 TestServer::HTTPSOptions::HTTPSOptions(
68 TestServer::HTTPSOptions::ServerCertificate cert) 69 TestServer::HTTPSOptions::ServerCertificate cert)
69 : server_certificate(cert), 70 : server_certificate(cert),
70 request_client_certificate(false), 71 request_client_certificate(false),
71 bulk_ciphers(HTTPSOptions::BULK_CIPHER_ANY) {} 72 bulk_ciphers(HTTPSOptions::BULK_CIPHER_ANY),
73 use_tls_srp(0), only_tls_srp(0) {}
72 74
73 TestServer::HTTPSOptions::~HTTPSOptions() {} 75 TestServer::HTTPSOptions::~HTTPSOptions() {}
74 76
75 FilePath TestServer::HTTPSOptions::GetCertificateFile() const { 77 FilePath TestServer::HTTPSOptions::GetCertificateFile() const {
76 switch (server_certificate) { 78 switch (server_certificate) {
77 case CERT_OK: 79 case CERT_OK:
78 case CERT_MISMATCHED_NAME: 80 case CERT_MISMATCHED_NAME:
79 return FilePath(FILE_PATH_LITERAL("ok_cert.pem")); 81 return FilePath(FILE_PATH_LITERAL("ok_cert.pem"));
80 case CERT_EXPIRED: 82 case CERT_EXPIRED:
81 return FilePath(FILE_PATH_LITERAL("expired_cert.pem")); 83 return FilePath(FILE_PATH_LITERAL("expired_cert.pem"));
(...skipping 18 matching lines...) Expand all
100 } 102 }
101 103
102 TestServer::~TestServer() { 104 TestServer::~TestServer() {
103 TestRootCerts* root_certs = TestRootCerts::GetInstance(); 105 TestRootCerts* root_certs = TestRootCerts::GetInstance();
104 root_certs->Clear(); 106 root_certs->Clear();
105 Stop(); 107 Stop();
106 } 108 }
107 109
108 bool TestServer::Start() { 110 bool TestServer::Start() {
109 if (type_ == TYPE_HTTPS) { 111 if (type_ == TYPE_HTTPS) {
110 if (!LoadTestRootCert()) 112 if (!LoadTestRootCert()) {
113 LOG(ERROR) << "Failed to load test root cert";
111 return false; 114 return false;
115 }
112 } 116 }
113 117
114 // Get path to python server script 118 // Get path to python server script
115 FilePath testserver_path; 119 FilePath testserver_path;
116 if (!PathService::Get(base::DIR_SOURCE_ROOT, &testserver_path)) { 120 if (!PathService::Get(base::DIR_SOURCE_ROOT, &testserver_path)) {
117 LOG(ERROR) << "Failed to get DIR_SOURCE_ROOT"; 121 LOG(ERROR) << "Failed to get DIR_SOURCE_ROOT";
118 return false; 122 return false;
119 } 123 }
120 testserver_path = testserver_path 124 testserver_path = testserver_path
121 .Append(FILE_PATH_LITERAL("net")) 125 .Append(FILE_PATH_LITERAL("net"))
122 .Append(FILE_PATH_LITERAL("tools")) 126 .Append(FILE_PATH_LITERAL("tools"))
123 .Append(FILE_PATH_LITERAL("testserver")) 127 .Append(FILE_PATH_LITERAL("testserver"))
124 .Append(FILE_PATH_LITERAL("testserver.py")); 128 .Append(FILE_PATH_LITERAL("testserver.py"));
125 129
126 if (!SetPythonPath()) 130 if (!SetPythonPath()) {
131 LOG(ERROR) << "Failed to set Python path";
127 return false; 132 return false;
133 }
128 134
129 if (!LaunchPython(testserver_path)) 135 if (!LaunchPython(testserver_path)) {
136 LOG(ERROR) << "Failed to launch Python test server";
130 return false; 137 return false;
138 }
131 139
132 if (!WaitToStart()) { 140 if (!WaitToStart()) {
133 Stop(); 141 Stop();
142 LOG(ERROR) << "Failed in WaitToStart()";
134 return false; 143 return false;
135 } 144 }
136 145
137 allowed_port_.reset(new ScopedPortException(host_port_pair_.port())); 146 allowed_port_.reset(new ScopedPortException(host_port_pair_.port()));
138 147
139 started_ = true; 148 started_ = true;
140 return true; 149 return true;
141 } 150 }
142 151
143 bool TestServer::Stop() { 152 bool TestServer::Stop() {
(...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after
385 394
386 const char kBulkCipherSwitch[] = "ssl-bulk-cipher"; 395 const char kBulkCipherSwitch[] = "ssl-bulk-cipher";
387 if (https_options_.bulk_ciphers & HTTPSOptions::BULK_CIPHER_RC4) 396 if (https_options_.bulk_ciphers & HTTPSOptions::BULK_CIPHER_RC4)
388 command_line->AppendSwitchASCII(kBulkCipherSwitch, "rc4"); 397 command_line->AppendSwitchASCII(kBulkCipherSwitch, "rc4");
389 if (https_options_.bulk_ciphers & HTTPSOptions::BULK_CIPHER_AES128) 398 if (https_options_.bulk_ciphers & HTTPSOptions::BULK_CIPHER_AES128)
390 command_line->AppendSwitchASCII(kBulkCipherSwitch, "aes128"); 399 command_line->AppendSwitchASCII(kBulkCipherSwitch, "aes128");
391 if (https_options_.bulk_ciphers & HTTPSOptions::BULK_CIPHER_AES256) 400 if (https_options_.bulk_ciphers & HTTPSOptions::BULK_CIPHER_AES256)
392 command_line->AppendSwitchASCII(kBulkCipherSwitch, "aes256"); 401 command_line->AppendSwitchASCII(kBulkCipherSwitch, "aes256");
393 if (https_options_.bulk_ciphers & HTTPSOptions::BULK_CIPHER_3DES) 402 if (https_options_.bulk_ciphers & HTTPSOptions::BULK_CIPHER_3DES)
394 command_line->AppendSwitchASCII(kBulkCipherSwitch, "3des"); 403 command_line->AppendSwitchASCII(kBulkCipherSwitch, "3des");
404
405 if (https_options_.use_tls_srp)
406 command_line->AppendSwitch("use-tls-srp");
407 if (https_options_.only_tls_srp)
408 command_line->AppendSwitch("only-tls-srp");
395 } 409 }
396 410
397 return true; 411 return true;
398 } 412 }
399 413
400 } // namespace net 414 } // namespace net
OLDNEW
« no previous file with comments | « net/test/test_server.h ('k') | net/third_party/nss/README.chromium » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698