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

Side by Side Diff: net/test/spawned_test_server/base_test_server.cc

Issue 2792573002: Remove base::Value::CreateNullValue (Closed)
Patch Set: Rebase Created 3 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
« no previous file with comments | « mojo/common/values_struct_traits.cc ('k') | net/test/spawned_test_server/remote_test_server.cc » ('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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/spawned_test_server/base_test_server.h" 5 #include "net/test/spawned_test_server/base_test_server.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 #include <limits> 8 #include <limits>
9 #include <string> 9 #include <string>
10 #include <utility> 10 #include <utility>
11 #include <vector> 11 #include <vector>
12 12
13 #include "base/base64.h" 13 #include "base/base64.h"
14 #include "base/files/file_util.h" 14 #include "base/files/file_util.h"
15 #include "base/json/json_reader.h" 15 #include "base/json/json_reader.h"
16 #include "base/logging.h" 16 #include "base/logging.h"
17 #include "base/memory/ptr_util.h"
17 #include "base/path_service.h" 18 #include "base/path_service.h"
18 #include "base/values.h" 19 #include "base/values.h"
19 #include "net/base/address_list.h" 20 #include "net/base/address_list.h"
20 #include "net/base/host_port_pair.h" 21 #include "net/base/host_port_pair.h"
21 #include "net/base/net_errors.h" 22 #include "net/base/net_errors.h"
22 #include "net/base/port_util.h" 23 #include "net/base/port_util.h"
23 #include "net/base/test_completion_callback.h" 24 #include "net/base/test_completion_callback.h"
24 #include "net/cert/test_root_certs.h" 25 #include "net/cert/test_root_certs.h"
25 #include "net/cert/x509_certificate.h" 26 #include "net/cert/x509_certificate.h"
26 #include "net/dns/host_resolver.h" 27 #include "net/dns/host_resolver.h"
(...skipping 501 matching lines...) Expand 10 before | Expand all | Expand 10 after
528 // { argument-name: argument-value, ... } 529 // { argument-name: argument-value, ... }
529 // Returns false if an invalid configuration is specified. 530 // Returns false if an invalid configuration is specified.
530 bool BaseTestServer::GenerateArguments(base::DictionaryValue* arguments) const { 531 bool BaseTestServer::GenerateArguments(base::DictionaryValue* arguments) const {
531 DCHECK(arguments); 532 DCHECK(arguments);
532 533
533 arguments->SetString("host", host_port_pair_.host()); 534 arguments->SetString("host", host_port_pair_.host());
534 arguments->SetInteger("port", host_port_pair_.port()); 535 arguments->SetInteger("port", host_port_pair_.port());
535 arguments->SetString("data-dir", document_root_.value()); 536 arguments->SetString("data-dir", document_root_.value());
536 537
537 if (VLOG_IS_ON(1) || log_to_console_) 538 if (VLOG_IS_ON(1) || log_to_console_)
538 arguments->Set("log-to-console", base::Value::CreateNullValue()); 539 arguments->Set("log-to-console", base::MakeUnique<base::Value>());
539 540
540 if (ws_basic_auth_) { 541 if (ws_basic_auth_) {
541 DCHECK(type_ == TYPE_WS || type_ == TYPE_WSS); 542 DCHECK(type_ == TYPE_WS || type_ == TYPE_WSS);
542 arguments->Set("ws-basic-auth", base::Value::CreateNullValue()); 543 arguments->Set("ws-basic-auth", base::MakeUnique<base::Value>());
543 } 544 }
544 545
545 if (no_anonymous_ftp_user_) { 546 if (no_anonymous_ftp_user_) {
546 DCHECK_EQ(TYPE_FTP, type_); 547 DCHECK_EQ(TYPE_FTP, type_);
547 arguments->Set("no-anonymous-ftp-user", base::Value::CreateNullValue()); 548 arguments->Set("no-anonymous-ftp-user", base::MakeUnique<base::Value>());
548 } 549 }
549 550
550 if (UsingSSL(type_)) { 551 if (UsingSSL(type_)) {
551 // Check the certificate arguments of the HTTPS server. 552 // Check the certificate arguments of the HTTPS server.
552 base::FilePath certificate_path(certificates_dir_); 553 base::FilePath certificate_path(certificates_dir_);
553 base::FilePath certificate_file(ssl_options_.GetCertificateFile()); 554 base::FilePath certificate_file(ssl_options_.GetCertificateFile());
554 if (!certificate_file.value().empty()) { 555 if (!certificate_file.value().empty()) {
555 certificate_path = certificate_path.Append(certificate_file); 556 certificate_path = certificate_path.Append(certificate_file);
556 if (certificate_path.IsAbsolute() && 557 if (certificate_path.IsAbsolute() &&
557 !base::PathExists(certificate_path)) { 558 !base::PathExists(certificate_path)) {
558 LOG(ERROR) << "Certificate path " << certificate_path.value() 559 LOG(ERROR) << "Certificate path " << certificate_path.value()
559 << " doesn't exist. Can't launch https server."; 560 << " doesn't exist. Can't launch https server.";
560 return false; 561 return false;
561 } 562 }
562 arguments->SetString("cert-and-key-file", certificate_path.value()); 563 arguments->SetString("cert-and-key-file", certificate_path.value());
563 } 564 }
564 565
565 // Check the client certificate related arguments. 566 // Check the client certificate related arguments.
566 if (ssl_options_.request_client_certificate) 567 if (ssl_options_.request_client_certificate)
567 arguments->Set("ssl-client-auth", base::Value::CreateNullValue()); 568 arguments->Set("ssl-client-auth", base::MakeUnique<base::Value>());
568 std::unique_ptr<base::ListValue> ssl_client_certs(new base::ListValue()); 569 std::unique_ptr<base::ListValue> ssl_client_certs(new base::ListValue());
569 570
570 std::vector<base::FilePath>::const_iterator it; 571 std::vector<base::FilePath>::const_iterator it;
571 for (it = ssl_options_.client_authorities.begin(); 572 for (it = ssl_options_.client_authorities.begin();
572 it != ssl_options_.client_authorities.end(); ++it) { 573 it != ssl_options_.client_authorities.end(); ++it) {
573 if (it->IsAbsolute() && !base::PathExists(*it)) { 574 if (it->IsAbsolute() && !base::PathExists(*it)) {
574 LOG(ERROR) << "Client authority path " << it->value() 575 LOG(ERROR) << "Client authority path " << it->value()
575 << " doesn't exist. Can't launch https server."; 576 << " doesn't exist. Can't launch https server.";
576 return false; 577 return false;
577 } 578 }
578 ssl_client_certs->AppendString(it->value()); 579 ssl_client_certs->AppendString(it->value());
579 } 580 }
580 581
581 if (ssl_client_certs->GetSize()) 582 if (ssl_client_certs->GetSize())
582 arguments->Set("ssl-client-ca", ssl_client_certs.release()); 583 arguments->Set("ssl-client-ca", ssl_client_certs.release());
583 584
584 std::unique_ptr<base::ListValue> client_cert_types(new base::ListValue()); 585 std::unique_ptr<base::ListValue> client_cert_types(new base::ListValue());
585 for (size_t i = 0; i < ssl_options_.client_cert_types.size(); i++) { 586 for (size_t i = 0; i < ssl_options_.client_cert_types.size(); i++) {
586 client_cert_types->AppendString( 587 client_cert_types->AppendString(
587 GetClientCertType(ssl_options_.client_cert_types[i])); 588 GetClientCertType(ssl_options_.client_cert_types[i]));
588 } 589 }
589 if (client_cert_types->GetSize()) 590 if (client_cert_types->GetSize())
590 arguments->Set("ssl-client-cert-type", client_cert_types.release()); 591 arguments->Set("ssl-client-cert-type", client_cert_types.release());
591 } 592 }
592 593
593 if (type_ == TYPE_HTTPS) { 594 if (type_ == TYPE_HTTPS) {
594 arguments->Set("https", base::Value::CreateNullValue()); 595 arguments->Set("https", base::MakeUnique<base::Value>());
595 596
596 if (ssl_options_.server_certificate == 597 if (ssl_options_.server_certificate ==
597 SSLOptions::CERT_AUTO_AIA_INTERMEDIATE) 598 SSLOptions::CERT_AUTO_AIA_INTERMEDIATE)
598 arguments->Set("aia-intermediate", base::Value::CreateNullValue()); 599 arguments->Set("aia-intermediate", base::MakeUnique<base::Value>());
599 600
600 std::string ocsp_arg = ssl_options_.GetOCSPArgument(); 601 std::string ocsp_arg = ssl_options_.GetOCSPArgument();
601 if (!ocsp_arg.empty()) 602 if (!ocsp_arg.empty())
602 arguments->SetString("ocsp", ocsp_arg); 603 arguments->SetString("ocsp", ocsp_arg);
603 604
604 std::string ocsp_date_arg = ssl_options_.GetOCSPDateArgument(); 605 std::string ocsp_date_arg = ssl_options_.GetOCSPDateArgument();
605 if (!ocsp_date_arg.empty()) 606 if (!ocsp_date_arg.empty())
606 arguments->SetString("ocsp-date", ocsp_date_arg); 607 arguments->SetString("ocsp-date", ocsp_date_arg);
607 608
608 std::string ocsp_produced_arg = ssl_options_.GetOCSPProducedArgument(); 609 std::string ocsp_produced_arg = ssl_options_.GetOCSPProducedArgument();
609 if (!ocsp_produced_arg.empty()) 610 if (!ocsp_produced_arg.empty())
610 arguments->SetString("ocsp-produced", ocsp_produced_arg); 611 arguments->SetString("ocsp-produced", ocsp_produced_arg);
611 612
612 if (ssl_options_.cert_serial != 0) { 613 if (ssl_options_.cert_serial != 0) {
613 arguments->SetInteger("cert-serial", ssl_options_.cert_serial); 614 arguments->SetInteger("cert-serial", ssl_options_.cert_serial);
614 } 615 }
615 616
616 // Check key exchange argument. 617 // Check key exchange argument.
617 std::unique_ptr<base::ListValue> key_exchange_values(new base::ListValue()); 618 std::unique_ptr<base::ListValue> key_exchange_values(new base::ListValue());
618 GetKeyExchangesList(ssl_options_.key_exchanges, key_exchange_values.get()); 619 GetKeyExchangesList(ssl_options_.key_exchanges, key_exchange_values.get());
619 if (key_exchange_values->GetSize()) 620 if (key_exchange_values->GetSize())
620 arguments->Set("ssl-key-exchange", key_exchange_values.release()); 621 arguments->Set("ssl-key-exchange", key_exchange_values.release());
621 // Check bulk cipher argument. 622 // Check bulk cipher argument.
622 std::unique_ptr<base::ListValue> bulk_cipher_values(new base::ListValue()); 623 std::unique_ptr<base::ListValue> bulk_cipher_values(new base::ListValue());
623 GetCiphersList(ssl_options_.bulk_ciphers, bulk_cipher_values.get()); 624 GetCiphersList(ssl_options_.bulk_ciphers, bulk_cipher_values.get());
624 if (bulk_cipher_values->GetSize()) 625 if (bulk_cipher_values->GetSize())
625 arguments->Set("ssl-bulk-cipher", bulk_cipher_values.release()); 626 arguments->Set("ssl-bulk-cipher", bulk_cipher_values.release());
626 if (ssl_options_.record_resume) 627 if (ssl_options_.record_resume)
627 arguments->Set("https-record-resume", base::Value::CreateNullValue()); 628 arguments->Set("https-record-resume", base::MakeUnique<base::Value>());
628 if (ssl_options_.tls_intolerant != SSLOptions::TLS_INTOLERANT_NONE) { 629 if (ssl_options_.tls_intolerant != SSLOptions::TLS_INTOLERANT_NONE) {
629 arguments->SetInteger("tls-intolerant", ssl_options_.tls_intolerant); 630 arguments->SetInteger("tls-intolerant", ssl_options_.tls_intolerant);
630 arguments->Set("tls-intolerance-type", GetTLSIntoleranceType( 631 arguments->Set("tls-intolerance-type", GetTLSIntoleranceType(
631 ssl_options_.tls_intolerance_type)); 632 ssl_options_.tls_intolerance_type));
632 } 633 }
633 if (ssl_options_.fallback_scsv_enabled) 634 if (ssl_options_.fallback_scsv_enabled)
634 arguments->Set("fallback-scsv", base::Value::CreateNullValue()); 635 arguments->Set("fallback-scsv", base::MakeUnique<base::Value>());
635 if (!ssl_options_.signed_cert_timestamps_tls_ext.empty()) { 636 if (!ssl_options_.signed_cert_timestamps_tls_ext.empty()) {
636 std::string b64_scts_tls_ext; 637 std::string b64_scts_tls_ext;
637 base::Base64Encode(ssl_options_.signed_cert_timestamps_tls_ext, 638 base::Base64Encode(ssl_options_.signed_cert_timestamps_tls_ext,
638 &b64_scts_tls_ext); 639 &b64_scts_tls_ext);
639 arguments->SetString("signed-cert-timestamps-tls-ext", b64_scts_tls_ext); 640 arguments->SetString("signed-cert-timestamps-tls-ext", b64_scts_tls_ext);
640 } 641 }
641 if (ssl_options_.staple_ocsp_response) 642 if (ssl_options_.staple_ocsp_response)
642 arguments->Set("staple-ocsp-response", base::Value::CreateNullValue()); 643 arguments->Set("staple-ocsp-response", base::MakeUnique<base::Value>());
643 if (ssl_options_.ocsp_server_unavailable) { 644 if (ssl_options_.ocsp_server_unavailable) {
644 arguments->Set("ocsp-server-unavailable", 645 arguments->Set("ocsp-server-unavailable",
645 base::Value::CreateNullValue()); 646 base::MakeUnique<base::Value>());
646 } 647 }
647 if (!ssl_options_.alpn_protocols.empty()) { 648 if (!ssl_options_.alpn_protocols.empty()) {
648 std::unique_ptr<base::ListValue> alpn_protocols(new base::ListValue()); 649 std::unique_ptr<base::ListValue> alpn_protocols(new base::ListValue());
649 for (const std::string& proto : ssl_options_.alpn_protocols) { 650 for (const std::string& proto : ssl_options_.alpn_protocols) {
650 alpn_protocols->AppendString(proto); 651 alpn_protocols->AppendString(proto);
651 } 652 }
652 arguments->Set("alpn-protocols", std::move(alpn_protocols)); 653 arguments->Set("alpn-protocols", std::move(alpn_protocols));
653 } 654 }
654 if (!ssl_options_.npn_protocols.empty()) { 655 if (!ssl_options_.npn_protocols.empty()) {
655 std::unique_ptr<base::ListValue> npn_protocols(new base::ListValue()); 656 std::unique_ptr<base::ListValue> npn_protocols(new base::ListValue());
656 for (const std::string& proto : ssl_options_.npn_protocols) { 657 for (const std::string& proto : ssl_options_.npn_protocols) {
657 npn_protocols->AppendString(proto); 658 npn_protocols->AppendString(proto);
658 } 659 }
659 arguments->Set("npn-protocols", std::move(npn_protocols)); 660 arguments->Set("npn-protocols", std::move(npn_protocols));
660 } 661 }
661 if (ssl_options_.alert_after_handshake) 662 if (ssl_options_.alert_after_handshake)
662 arguments->Set("alert-after-handshake", base::Value::CreateNullValue()); 663 arguments->Set("alert-after-handshake", base::MakeUnique<base::Value>());
663 664
664 if (ssl_options_.disable_channel_id) 665 if (ssl_options_.disable_channel_id)
665 arguments->Set("disable-channel-id", base::Value::CreateNullValue()); 666 arguments->Set("disable-channel-id", base::MakeUnique<base::Value>());
666 if (ssl_options_.disable_extended_master_secret) { 667 if (ssl_options_.disable_extended_master_secret) {
667 arguments->Set("disable-extended-master-secret", 668 arguments->Set("disable-extended-master-secret",
668 base::Value::CreateNullValue()); 669 base::MakeUnique<base::Value>());
669 } 670 }
670 if (!ssl_options_.supported_token_binding_params.empty()) { 671 if (!ssl_options_.supported_token_binding_params.empty()) {
671 std::unique_ptr<base::ListValue> token_binding_params( 672 std::unique_ptr<base::ListValue> token_binding_params(
672 new base::ListValue()); 673 new base::ListValue());
673 arguments->Set( 674 arguments->Set(
674 "token-binding-params", 675 "token-binding-params",
675 GetTokenBindingParams(ssl_options_.supported_token_binding_params)); 676 GetTokenBindingParams(ssl_options_.supported_token_binding_params));
676 } 677 }
677 } 678 }
678 679
679 return GenerateAdditionalArguments(arguments); 680 return GenerateAdditionalArguments(arguments);
680 } 681 }
681 682
682 bool BaseTestServer::GenerateAdditionalArguments( 683 bool BaseTestServer::GenerateAdditionalArguments(
683 base::DictionaryValue* arguments) const { 684 base::DictionaryValue* arguments) const {
684 return true; 685 return true;
685 } 686 }
686 687
687 } // namespace net 688 } // namespace net
OLDNEW
« no previous file with comments | « mojo/common/values_struct_traits.cc ('k') | net/test/spawned_test_server/remote_test_server.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698