Clean up includes in third_party/quic/load_balancer.
Also fixed a couple of typos and compiler warnings about use of const in declarations.
PiperOrigin-RevId: 559225729
diff --git a/quiche/quic/load_balancer/load_balancer_config.cc b/quiche/quic/load_balancer/load_balancer_config.cc
index 62d8898..89be497 100644
--- a/quiche/quic/load_balancer/load_balancer_config.cc
+++ b/quiche/quic/load_balancer/load_balancer_config.cc
@@ -4,10 +4,14 @@
#include "quiche/quic/load_balancer/load_balancer_config.h"
-#include <memory>
-#include <string_view>
+#include <cstdint>
+#include <cstring>
+#include "absl/strings/string_view.h"
+#include "absl/types/optional.h"
+#include "absl/types/span.h"
#include "openssl/aes.h"
+#include "quiche/quic/core/quic_connection_id.h"
#include "quiche/quic/platform/api/quic_bug_tracker.h"
namespace quic {
diff --git a/quiche/quic/load_balancer/load_balancer_config.h b/quiche/quic/load_balancer/load_balancer_config.h
index 39b7781..7f63edd 100644
--- a/quiche/quic/load_balancer/load_balancer_config.h
+++ b/quiche/quic/load_balancer/load_balancer_config.h
@@ -5,8 +5,12 @@
#ifndef QUICHE_QUIC_LOAD_BALANCER_LOAD_BALANCER_CONFIG_H_
#define QUICHE_QUIC_LOAD_BALANCER_LOAD_BALANCER_CONFIG_H_
+#include <cstdint>
+
+#include "absl/strings/string_view.h"
+#include "absl/types/optional.h"
+#include "absl/types/span.h"
#include "openssl/aes.h"
-#include "quiche/quic/core/quic_types.h"
#include "quiche/quic/platform/api/quic_export.h"
namespace quic {
@@ -42,22 +46,21 @@
// nonce_len: Length of the nonce. Must be at least 4 and no larger than 16.
// Further the server_id_len + nonce_len must be no larger than 19.
// key: The encryption key must be 16B long.
- static absl::optional<LoadBalancerConfig> Create(const uint8_t config_id,
- const uint8_t server_id_len,
- const uint8_t nonce_len,
- const absl::string_view key);
+ static absl::optional<LoadBalancerConfig> Create(uint8_t config_id,
+ uint8_t server_id_len,
+ uint8_t nonce_len,
+ absl::string_view key);
// Creates an unencrypted config.
static absl::optional<LoadBalancerConfig> CreateUnencrypted(
- const uint8_t config_id, const uint8_t server_id_len,
- const uint8_t nonce_len);
+ uint8_t config_id, uint8_t server_id_len, uint8_t nonce_len);
// Handles one pass of 4-pass encryption. Encoder and decoder use of this
// function varies substantially, so they are not implemented here.
// Returns false if the config is not encrypted, or if |target| isn't long
// enough.
ABSL_MUST_USE_RESULT bool EncryptionPass(absl::Span<uint8_t> target,
- const uint8_t index) const;
+ uint8_t index) const;
// Use the key to do a block encryption, which is used both in all cases of
// encrypted configs. Returns false if there's no key.
ABSL_MUST_USE_RESULT bool BlockEncrypt(
diff --git a/quiche/quic/load_balancer/load_balancer_config_test.cc b/quiche/quic/load_balancer/load_balancer_config_test.cc
index bd4cbd2..071815e 100644
--- a/quiche/quic/load_balancer/load_balancer_config_test.cc
+++ b/quiche/quic/load_balancer/load_balancer_config_test.cc
@@ -4,8 +4,11 @@
#include "quiche/quic/load_balancer/load_balancer_config.h"
+#include <array>
#include <cstdint>
+#include <cstring>
+#include "absl/strings/string_view.h"
#include "absl/types/span.h"
#include "quiche/quic/platform/api/quic_expect_bug.h"
#include "quiche/quic/platform/api/quic_test.h"
diff --git a/quiche/quic/load_balancer/load_balancer_decoder.cc b/quiche/quic/load_balancer/load_balancer_decoder.cc
index a770c28..a475ada 100644
--- a/quiche/quic/load_balancer/load_balancer_decoder.cc
+++ b/quiche/quic/load_balancer/load_balancer_decoder.cc
@@ -5,8 +5,13 @@
#include "quiche/quic/load_balancer/load_balancer_decoder.h"
#include <cstdint>
+#include <cstring>
+#include "absl/types/optional.h"
+#include "absl/types/span.h"
+#include "quiche/quic/core/quic_connection_id.h"
#include "quiche/quic/load_balancer/load_balancer_config.h"
+#include "quiche/quic/load_balancer/load_balancer_server_id.h"
#include "quiche/quic/platform/api/quic_bug_tracker.h"
namespace quic {
diff --git a/quiche/quic/load_balancer/load_balancer_decoder.h b/quiche/quic/load_balancer/load_balancer_decoder.h
index f5ba6f3..5712b0f 100644
--- a/quiche/quic/load_balancer/load_balancer_decoder.h
+++ b/quiche/quic/load_balancer/load_balancer_decoder.h
@@ -5,6 +5,10 @@
#ifndef QUICHE_QUIC_LOAD_BALANCER_LOAD_BALANCER_DECODER_H_
#define QUICHE_QUIC_LOAD_BALANCER_LOAD_BALANCER_DECODER_H_
+#include <cstdint>
+
+#include "absl/types/optional.h"
+#include "quiche/quic/core/quic_connection_id.h"
#include "quiche/quic/load_balancer/load_balancer_config.h"
#include "quiche/quic/load_balancer/load_balancer_server_id.h"
diff --git a/quiche/quic/load_balancer/load_balancer_decoder_test.cc b/quiche/quic/load_balancer/load_balancer_decoder_test.cc
index eccc90f..1248db7 100644
--- a/quiche/quic/load_balancer/load_balancer_decoder_test.cc
+++ b/quiche/quic/load_balancer/load_balancer_decoder_test.cc
@@ -6,6 +6,8 @@
#include <cstdint>
+#include "absl/strings/string_view.h"
+#include "absl/types/span.h"
#include "quiche/quic/core/quic_connection_id.h"
#include "quiche/quic/load_balancer/load_balancer_config.h"
#include "quiche/quic/load_balancer/load_balancer_server_id.h"
diff --git a/quiche/quic/load_balancer/load_balancer_encoder.cc b/quiche/quic/load_balancer/load_balancer_encoder.cc
index 58cacbf..2d3f15b 100644
--- a/quiche/quic/load_balancer/load_balancer_encoder.cc
+++ b/quiche/quic/load_balancer/load_balancer_encoder.cc
@@ -7,14 +7,17 @@
#include <cstdint>
#include "absl/numeric/int128.h"
+#include "absl/types/optional.h"
+#include "quiche/quic/core/crypto/quic_random.h"
#include "quiche/quic/core/quic_connection_id.h"
-#include "quiche/quic/core/quic_data_reader.h"
#include "quiche/quic/core/quic_data_writer.h"
-#include "quiche/quic/core/quic_packet_number.h"
-#include "quiche/quic/core/quic_types.h"
#include "quiche/quic/core/quic_utils.h"
+#include "quiche/quic/core/quic_versions.h"
#include "quiche/quic/load_balancer/load_balancer_config.h"
+#include "quiche/quic/load_balancer/load_balancer_server_id.h"
#include "quiche/quic/platform/api/quic_bug_tracker.h"
+#include "quiche/quic/platform/api/quic_logging.h"
+#include "quiche/common/quiche_endian.h"
namespace quic {
diff --git a/quiche/quic/load_balancer/load_balancer_encoder.h b/quiche/quic/load_balancer/load_balancer_encoder.h
index c780c5e..2d70a7c 100644
--- a/quiche/quic/load_balancer/load_balancer_encoder.h
+++ b/quiche/quic/load_balancer/load_balancer_encoder.h
@@ -5,8 +5,15 @@
#ifndef QUICHE_QUIC_LOAD_BALANCER_LOAD_BALANCER_ENCODER_H_
#define QUICHE_QUIC_LOAD_BALANCER_LOAD_BALANCER_ENCODER_H_
+#include <algorithm>
+#include <cstdint>
+
+#include "absl/numeric/int128.h"
+#include "absl/types/optional.h"
#include "quiche/quic/core/connection_id_generator.h"
#include "quiche/quic/core/crypto/quic_random.h"
+#include "quiche/quic/core/quic_connection_id.h"
+#include "quiche/quic/core/quic_versions.h"
#include "quiche/quic/load_balancer/load_balancer_config.h"
#include "quiche/quic/load_balancer/load_balancer_server_id.h"
@@ -43,14 +50,14 @@
// connection IDs and replace them with routable ones using the new config,
// while avoiding sending a sudden storm of packets containing
// RETIRE_CONNECTION_ID and NEW_CONNECTION_ID frames.
- virtual void OnConfigAdded(const uint8_t config_id) = 0;
+ virtual void OnConfigAdded(uint8_t config_id) = 0;
// Called when the config is changed.
//
// Existing routable connection IDs should be retired before the decoder stops
// supporting that config. The timing of this event is deployment-dependent
// and might be tied to the arrival of a new config at the encoder.
- virtual void OnConfigChanged(const uint8_t old_config_id,
- const uint8_t new_config_id) = 0;
+ virtual void OnConfigChanged(uint8_t old_config_id,
+ uint8_t new_config_id) = 0;
// Called when a config is deleted. The encoder will generate unroutable
// connection IDs from now on.
//
@@ -59,7 +66,7 @@
// deleted config, which will only become unroutable once the decoder also
// deletes it. The time of that deletion is deployment-dependent and might be
// tied to the arrival of a new config at the encoder.
- virtual void OnConfigDeleted(const uint8_t config_id) = 0;
+ virtual void OnConfigDeleted(uint8_t config_id) = 0;
};
// Manages QUIC-LB configurations to properly encode a given server ID in a
@@ -83,9 +90,9 @@
// connection IDs to be generated when there is no active config. It must not
// be 0 and must not be larger than the RFC9000 maximum of 20.
static absl::optional<LoadBalancerEncoder> Create(
- QuicRandom& random, LoadBalancerEncoderVisitorInterface* const visitor,
- const bool len_self_encoded,
- const uint8_t unroutable_connection_id_len = kLoadBalancerUnroutableLen);
+ QuicRandom& random, LoadBalancerEncoderVisitorInterface* visitor,
+ bool len_self_encoded,
+ uint8_t unroutable_connection_id_len = kLoadBalancerUnroutableLen);
// Attempts to replace the current config and server_id with |config| and
// |server_id|. If the length |server_id| does not match the server_id_length
@@ -94,7 +101,7 @@
// true. When the encoder runs out of nonces, it will delete the config and
// begin generating unroutable connection IDs.
bool UpdateConfig(const LoadBalancerConfig& config,
- const LoadBalancerServerId server_id);
+ LoadBalancerServerId server_id);
// Delete the current config and generate unroutable connection IDs from now
// on.
diff --git a/quiche/quic/load_balancer/load_balancer_encoder_test.cc b/quiche/quic/load_balancer/load_balancer_encoder_test.cc
index d246758..5566df6 100644
--- a/quiche/quic/load_balancer/load_balancer_encoder_test.cc
+++ b/quiche/quic/load_balancer/load_balancer_encoder_test.cc
@@ -4,10 +4,20 @@
#include "quiche/quic/load_balancer/load_balancer_encoder.h"
+#include <cstddef>
#include <cstdint>
+#include <cstring>
+#include <queue>
#include "absl/numeric/int128.h"
+#include "absl/strings/string_view.h"
+#include "absl/types/optional.h"
+#include "absl/types/span.h"
+#include "quiche/quic/core/crypto/quic_random.h"
#include "quiche/quic/core/quic_connection_id.h"
+#include "quiche/quic/core/quic_versions.h"
+#include "quiche/quic/load_balancer/load_balancer_config.h"
+#include "quiche/quic/load_balancer/load_balancer_server_id.h"
#include "quiche/quic/platform/api/quic_expect_bug.h"
#include "quiche/quic/platform/api/quic_test.h"
#include "quiche/quic/test_tools/quic_test_utils.h"
diff --git a/quiche/quic/load_balancer/load_balancer_server_id.cc b/quiche/quic/load_balancer/load_balancer_server_id.cc
index 5805b7f..7b91b7f 100644
--- a/quiche/quic/load_balancer/load_balancer_server_id.cc
+++ b/quiche/quic/load_balancer/load_balancer_server_id.cc
@@ -4,9 +4,15 @@
#include "quiche/quic/load_balancer/load_balancer_server_id.h"
+#include <array>
+#include <cstdint>
+#include <cstring>
+#include <string>
+
#include "absl/strings/escaping.h"
+#include "absl/strings/string_view.h"
+#include "absl/types/optional.h"
#include "absl/types/span.h"
-#include "quiche/quic/core/quic_types.h"
#include "quiche/quic/platform/api/quic_bug_tracker.h"
namespace quic {
diff --git a/quiche/quic/load_balancer/load_balancer_server_id.h b/quiche/quic/load_balancer/load_balancer_server_id.h
index cdd3c95..fdb4604 100644
--- a/quiche/quic/load_balancer/load_balancer_server_id.h
+++ b/quiche/quic/load_balancer/load_balancer_server_id.h
@@ -6,8 +6,12 @@
#define QUICHE_QUIC_LOAD_BALANCER_LOAD_BALANCER_SERVER_ID_H_
#include <array>
+#include <cstdint>
+#include <string>
-#include "quiche/quic/core/quic_types.h"
+#include "absl/strings/string_view.h"
+#include "absl/types/optional.h"
+#include "absl/types/span.h"
#include "quiche/quic/platform/api/quic_export.h"
namespace quic {
@@ -60,7 +64,7 @@
private:
// The constructor is private because it can't validate the input.
- LoadBalancerServerId(const absl::Span<const uint8_t> data);
+ LoadBalancerServerId(absl::Span<const uint8_t> data);
std::array<uint8_t, kLoadBalancerMaxServerIdLen> data_;
uint8_t length_;
diff --git a/quiche/quic/load_balancer/load_balancer_server_id_map.h b/quiche/quic/load_balancer/load_balancer_server_id_map.h
index 2e79e66..1b108fc 100644
--- a/quiche/quic/load_balancer/load_balancer_server_id_map.h
+++ b/quiche/quic/load_balancer/load_balancer_server_id_map.h
@@ -5,7 +5,11 @@
#ifndef QUICHE_QUIC_LOAD_BALANCER_LOAD_BALANCER_SERVER_ID_MAP_H_
#define QUICHE_QUIC_LOAD_BALANCER_LOAD_BALANCER_SERVER_ID_MAP_H_
+#include <cstdint>
+#include <memory>
+
#include "absl/container/flat_hash_map.h"
+#include "absl/types/optional.h"
#include "quiche/quic/load_balancer/load_balancer_server_id.h"
#include "quiche/quic/platform/api/quic_bug_tracker.h"
@@ -20,17 +24,16 @@
public:
// Returns a newly created pool for server IDs of length |server_id_len|, or
// nullptr if |server_id_len| is invalid.
- static std::shared_ptr<LoadBalancerServerIdMap> Create(
- const uint8_t server_id_len);
+ static std::shared_ptr<LoadBalancerServerIdMap> Create(uint8_t server_id_len);
// Returns the entry associated with |server_id|, if present. For small |T|,
// use Lookup. For large |T|, use LookupNoCopy.
- absl::optional<const T> Lookup(const LoadBalancerServerId server_id) const;
- const T* LookupNoCopy(const LoadBalancerServerId server_id) const;
+ absl::optional<const T> Lookup(LoadBalancerServerId server_id) const;
+ const T* LookupNoCopy(LoadBalancerServerId server_id) const;
// Updates the table so that |value| is associated with |server_id|. Sets
// QUIC_BUG if the length is incorrect for this map.
- void AddOrReplace(const LoadBalancerServerId server_id, T value);
+ void AddOrReplace(LoadBalancerServerId server_id, T value);
// Removes the entry associated with |server_id|.
void Erase(const LoadBalancerServerId server_id) {
diff --git a/quiche/quic/load_balancer/load_balancer_server_id_map_test.cc b/quiche/quic/load_balancer/load_balancer_server_id_map_test.cc
index d8fcdac..6fe680f 100644
--- a/quiche/quic/load_balancer/load_balancer_server_id_map_test.cc
+++ b/quiche/quic/load_balancer/load_balancer_server_id_map_test.cc
@@ -4,9 +4,13 @@
#include "quiche/quic/load_balancer/load_balancer_server_id_map.h"
+#include <cstdint>
+
+#include "absl/types/optional.h"
+#include "absl/types/span.h"
+#include "quiche/quic/load_balancer/load_balancer_server_id.h"
#include "quiche/quic/platform/api/quic_expect_bug.h"
#include "quiche/quic/platform/api/quic_test.h"
-#include "quiche/quic/test_tools/quic_test_utils.h"
namespace quic {
diff --git a/quiche/quic/load_balancer/load_balancer_server_id_test.cc b/quiche/quic/load_balancer/load_balancer_server_id_test.cc
index 91fcc57..faed01a 100644
--- a/quiche/quic/load_balancer/load_balancer_server_id_test.cc
+++ b/quiche/quic/load_balancer/load_balancer_server_id_test.cc
@@ -4,11 +4,14 @@
#include "quiche/quic/load_balancer/load_balancer_server_id.h"
+#include <cstdint>
+#include <cstring>
+
#include "absl/hash/hash_testing.h"
+#include "absl/types/span.h"
#include "quiche/quic/platform/api/quic_expect_bug.h"
#include "quiche/quic/platform/api/quic_test.h"
-#include "quiche/quic/test_tools/quic_test_utils.h"
namespace quic {