diff --git a/logging/rtc_event_log/encoder/rtc_event_log_encoder_new_format.cc b/logging/rtc_event_log/encoder/rtc_event_log_encoder_new_format.cc
index 87782d5..f0a3079 100644
--- a/logging/rtc_event_log/encoder/rtc_event_log_encoder_new_format.cc
+++ b/logging/rtc_event_log/encoder/rtc_event_log_encoder_new_format.cc
@@ -289,7 +289,7 @@
 
 // Copies all RTCP blocks except APP, SDES and unknown from |packet| to
 // |buffer|. |buffer| must have space for at least |packet.size()| bytes.
-size_t RemoveNonWhitelistedRtcpBlocks(const rtc::Buffer& packet,
+size_t RemoveNonAllowlistedRtcpBlocks(const rtc::Buffer& packet,
                                       uint8_t* buffer) {
   RTC_DCHECK(buffer != nullptr);
   rtcp::CommonHeader header;
@@ -316,7 +316,7 @@
         // inter-arrival jitter, third-party loss reports, payload-specific
         // feedback and extended reports.
         // TODO(terelius): As an optimization, don't copy anything if all blocks
-        // in the packet are whitelisted types.
+        // in the packet are allowlisted types.
         memcpy(buffer + buffer_length, block_begin, block_size);
         buffer_length += block_size;
         break;
@@ -346,7 +346,7 @@
   {
     std::vector<uint8_t> buffer(base_event->packet().size());
     size_t buffer_length =
-        RemoveNonWhitelistedRtcpBlocks(base_event->packet(), buffer.data());
+        RemoveNonAllowlistedRtcpBlocks(base_event->packet(), buffer.data());
     proto_batch->set_raw_packet(buffer.data(), buffer_length);
   }
 
@@ -375,7 +375,7 @@
     const EventType* event = batch[i + 1];
     scrubed_packets[i].resize(event->packet().size());
     static_assert(sizeof(std::string::value_type) == sizeof(uint8_t), "");
-    const size_t buffer_length = RemoveNonWhitelistedRtcpBlocks(
+    const size_t buffer_length = RemoveNonAllowlistedRtcpBlocks(
         event->packet(), reinterpret_cast<uint8_t*>(&scrubed_packets[i][0]));
     if (buffer_length < event->packet().size()) {
       scrubed_packets[i].resize(buffer_length);
diff --git a/rtc_base/message_digest.h b/rtc_base/message_digest.h
index 36f00b5..691330e 100644
--- a/rtc_base/message_digest.h
+++ b/rtc_base/message_digest.h
@@ -45,7 +45,8 @@
   static MessageDigest* Create(const std::string& alg);
 };
 
-// A whitelist of approved digest algorithms from RFC 4572 (FIPS 180).
+// A check that an algorithm is in a list of approved digest algorithms
+// from RFC 4572 (FIPS 180).
 bool IsFips180DigestAlgorithm(const std::string& alg);
 
 // Functions to create hashes.
