Remove network::mojom::OptionalBool in favor of bool?
Bug: 40489779
Change-Id: Ife9fea4e93c52329b7e3644d2b4ba8e3dca8aa7f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6731523
Reviewed-by: Tsuyoshi Horo <[email protected]>
Commit-Queue: David Benjamin <[email protected]>
Reviewed-by: Giovanni Ortuno Urquidi <[email protected]>
Reviewed-by: Andrew Rayskiy <[email protected]>
Reviewed-by: Yao Xiao <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1486951}
diff --git a/content/browser/direct_sockets/direct_sockets_service_impl.cc b/content/browser/direct_sockets/direct_sockets_service_impl.cc
index 8acde00..ff2187d2 100644
--- a/content/browser/direct_sockets/direct_sockets_service_impl.cc
+++ b/content/browser/direct_sockets/direct_sockets_service_impl.cc
@@ -559,11 +559,7 @@
}
auto socket_options = network::mojom::UDPSocketOptions::New();
- if (options->ipv6_only.has_value()) {
- socket_options->ipv6_only = *options->ipv6_only
- ? network::mojom::OptionalBool::kTrue
- : network::mojom::OptionalBool::kFalse;
- }
+ socket_options->ipv6_only = options->ipv6_only;
if (options->send_buffer_size.has_value()) {
socket_options->send_buffer_size = *options->send_buffer_size;
}
@@ -613,12 +609,7 @@
}
auto server_options = network::mojom::TCPServerSocketOptions::New();
-
- if (options->ipv6_only.has_value()) {
- server_options->ipv6_only = *options->ipv6_only
- ? network::mojom::OptionalBool::kTrue
- : network::mojom::OptionalBool::kFalse;
- }
+ server_options->ipv6_only = options->ipv6_only;
// Substitute |options->backlog| with SOMAXCONN if not specified.
server_options->backlog =
std::min<uint32_t>(SOMAXCONN, options->backlog.value_or(SOMAXCONN));
diff --git a/content/browser/shared_storage/shared_storage_header_observer_unittest.cc b/content/browser/shared_storage/shared_storage_header_observer_unittest.cc
index d8bc356..cdb24089 100644
--- a/content/browser/shared_storage/shared_storage_header_observer_unittest.cc
+++ b/content/browser/shared_storage/shared_storage_header_observer_unittest.cc
@@ -32,7 +32,6 @@
#include "services/network/public/cpp/permissions_policy/origin_with_possible_wildcards.h"
#include "services/network/public/cpp/permissions_policy/permissions_policy_declaration.h"
#include "services/network/public/cpp/shared_storage_utils.h"
-#include "services/network/public/mojom/optional_bool.mojom.h"
#include "services/network/public/mojom/permissions_policy/permissions_policy_feature.mojom-shared.h"
#include "services/network/public/mojom/url_loader_network_service_observer.mojom.h"
#include "testing/gmock/include/gmock/gmock.h"
diff --git a/services/network/public/mojom/BUILD.gn b/services/network/public/mojom/BUILD.gn
index 3e2e256..e17a681 100644
--- a/services/network/public/mojom/BUILD.gn
+++ b/services/network/public/mojom/BUILD.gn
@@ -608,7 +608,6 @@
"network_interface_change_listener.mojom",
"network_types.mojom",
"no_vary_search.mojom",
- "optional_bool.mojom",
"parsed_headers.mojom",
"parsed_request_cookie.mojom",
"referrer_policy.mojom",
diff --git a/services/network/public/mojom/optional_bool.mojom b/services/network/public/mojom/optional_bool.mojom
deleted file mode 100644
index f34bef7..0000000
--- a/services/network/public/mojom/optional_bool.mojom
+++ /dev/null
@@ -1,12 +0,0 @@
-// Copyright 2023 The Chromium Authors
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-module network.mojom;
-
-// Augments a bool to include an 'unset' value.
-enum OptionalBool {
- kUnset = 0,
- kFalse = 1,
- kTrue = 2,
-};
diff --git a/services/network/public/mojom/tcp_socket.mojom b/services/network/public/mojom/tcp_socket.mojom
index 11089ef..b07bb42 100644
--- a/services/network/public/mojom/tcp_socket.mojom
+++ b/services/network/public/mojom/tcp_socket.mojom
@@ -6,7 +6,6 @@
import "services/network/public/mojom/address_list.mojom";
import "services/network/public/mojom/ip_endpoint.mojom";
-import "services/network/public/mojom/optional_bool.mojom";
import "services/network/public/mojom/ssl_config.mojom";
import "services/network/public/mojom/tls_socket.mojom";
import "services/network/public/mojom/network_param.mojom";
@@ -56,7 +55,7 @@
// being applied (|true| on Windows, |false| on Posix).
// TODO(crbug.com/40262165): Investigate the possibility of replacing optional
// with a platform-agnostic default.
- OptionalBool ipv6_only;
+ bool? ipv6_only;
[EnableIf=is_chromeos]
// The caller may choose to supply a |connection_tracker| if they lack access
diff --git a/services/network/public/mojom/udp_socket.mojom b/services/network/public/mojom/udp_socket.mojom
index cacde08..e63f46e4 100644
--- a/services/network/public/mojom/udp_socket.mojom
+++ b/services/network/public/mojom/udp_socket.mojom
@@ -7,7 +7,6 @@
import "mojo/public/mojom/base/read_only_buffer.mojom";
import "services/network/public/mojom/ip_address.mojom";
import "services/network/public/mojom/ip_endpoint.mojom";
-import "services/network/public/mojom/optional_bool.mojom";
import "services/network/public/mojom/mutable_network_traffic_annotation_tag.mojom";
// Represents options that consumers can set when requesting a UDPSocket
@@ -76,7 +75,7 @@
// |true| restricts incoming connections to IPv6 only; |false| allows both
// IPv4/IPv6 connections. Leaving this value unset results in platform default
// being applied (|true| on Windows, |false| on Posix).
- OptionalBool ipv6_only;
+ bool? ipv6_only;
};
// UDPSocket is an interface that exposes UDP socket functionalities.
diff --git a/services/network/public/mojom/url_loader_network_service_observer.mojom b/services/network/public/mojom/url_loader_network_service_observer.mojom
index 2e8c1f96..fcf188b 100644
--- a/services/network/public/mojom/url_loader_network_service_observer.mojom
+++ b/services/network/public/mojom/url_loader_network_service_observer.mojom
@@ -12,7 +12,6 @@
import "services/network/public/mojom/ip_address.mojom";
import "services/network/public/mojom/ip_address_space.mojom";
import "services/network/public/mojom/network_param.mojom";
-import "services/network/public/mojom/optional_bool.mojom";
import "services/network/public/mojom/shared_storage.mojom";
import "url/mojom/origin.mojom";
import "url/mojom/url.mojom";
diff --git a/services/network/shared_storage/shared_storage_test_url_loader_network_observer.cc b/services/network/shared_storage/shared_storage_test_url_loader_network_observer.cc
index df815fb..30c467a 100644
--- a/services/network/shared_storage/shared_storage_test_url_loader_network_observer.cc
+++ b/services/network/shared_storage/shared_storage_test_url_loader_network_observer.cc
@@ -16,7 +16,6 @@
#include "base/containers/to_vector.h"
#include "base/functional/bind.h"
#include "base/functional/callback.h"
-#include "services/network/public/mojom/optional_bool.mojom.h"
#include "services/network/public/mojom/shared_storage.mojom.h"
#include "services/network/public/mojom/url_loader_network_service_observer.mojom.h"
#include "url/origin.h"
diff --git a/services/network/socket_factory.cc b/services/network/socket_factory.cc
index 0f7928e1..1c1ef5cc 100644
--- a/services/network/socket_factory.cc
+++ b/services/network/socket_factory.cc
@@ -154,19 +154,8 @@
socket->AttachConnectionTracker(std::move(options->connection_tracker));
}
#endif // BUILDFLAG(IS_CHROMEOS)
- std::optional<bool> ipv6_only;
- switch (options->ipv6_only) {
- case mojom::OptionalBool::kTrue:
- ipv6_only = true;
- break;
- case mojom::OptionalBool::kFalse:
- ipv6_only = false;
- break;
- case mojom::OptionalBool::kUnset:
- break;
- }
base::expected<net::IPEndPoint, int32_t> result =
- socket->Listen(local_addr, options->backlog, ipv6_only);
+ socket->Listen(local_addr, options->backlog, options->ipv6_only);
if (!result.has_value()) {
std::move(callback).Run(result.error(), std::nullopt);
return;
diff --git a/services/network/udp_socket.cc b/services/network/udp_socket.cc
index 4a11bd7..7e57d7c 100644
--- a/services/network/udp_socket.cc
+++ b/services/network/udp_socket.cc
@@ -141,17 +141,8 @@
result = socket_.SetSendBufferSize(
ClampUDPBufferSize(options->send_buffer_size));
}
- if (result == net::OK) {
- switch (options->ipv6_only) {
- case mojom::OptionalBool::kTrue:
- result = socket_.SetIPv6Only(true);
- break;
- case mojom::OptionalBool::kFalse:
- result = socket_.SetIPv6Only(false);
- break;
- default:
- break;
- }
+ if (result == net::OK && options->ipv6_only.has_value()) {
+ result = socket_.SetIPv6Only(options->ipv6_only.value());
}
return result;
}