From 1ea9e13165201523d2c0afde8ded39b09cacec7e Mon Sep 17 00:00:00 2001 From: Amos Jeffries Date: Sun, 30 Nov 2025 09:37:24 +1300 Subject: [PATCH 1/2] Maintenance: update mcast_groups to SBufList --- src/SquidConfig.h | 2 +- src/cf.data.pre | 2 +- src/icp_v2.cc | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/SquidConfig.h b/src/SquidConfig.h index ae2d72cc763..a21f7b16bad 100644 --- a/src/SquidConfig.h +++ b/src/SquidConfig.h @@ -243,7 +243,7 @@ class SquidConfig } Addrs; size_t tcpRcvBufsz; size_t udpMaxHitObjsz; - wordlist *mcast_group_list; + SBufList mcast_group_list; CachePeers *peers; int npeers; diff --git a/src/cf.data.pre b/src/cf.data.pre index 898fc9af48d..16addd4c507 100644 --- a/src/cf.data.pre +++ b/src/cf.data.pre @@ -8753,7 +8753,7 @@ COMMENT_START COMMENT_END NAME: mcast_groups -TYPE: wordlist +TYPE: SBufList LOC: Config.mcast_group_list DEFAULT: none DOC_START diff --git a/src/icp_v2.cc b/src/icp_v2.cc index cc9c76306f9..13a15bd48af 100644 --- a/src/icp_v2.cc +++ b/src/icp_v2.cc @@ -739,8 +739,8 @@ icpIncomingConnectionOpened(Ipc::StartListeningAnswer &answer) Comm::SetSelect(conn->fd, COMM_SELECT_READ, icpHandleUdp, nullptr, 0); - for (const wordlist *s = Config.mcast_group_list; s; s = s->next) - ipcache_nbgethostbyname(s->key, mcastJoinGroups, nullptr); // XXX: pass the conn for mcastJoinGroups usage. + for (auto &s : Config.mcast_group_list) + ipcache_nbgethostbyname(s.c_str(), mcastJoinGroups, nullptr); // XXX: pass the conn for mcastJoinGroups usage. debugs(12, DBG_IMPORTANT, "Accepting ICP messages on " << conn->local); From 2cb7271fbc196d5d70c3be708c9a51d725307c5f Mon Sep 17 00:00:00 2001 From: Amos Jeffries Date: Mon, 1 Dec 2025 06:23:43 +1300 Subject: [PATCH 2/2] Reviewer requested change --- src/icp_v2.cc | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/icp_v2.cc b/src/icp_v2.cc index 13a15bd48af..2b82e21f56b 100644 --- a/src/icp_v2.cc +++ b/src/icp_v2.cc @@ -739,8 +739,10 @@ icpIncomingConnectionOpened(Ipc::StartListeningAnswer &answer) Comm::SetSelect(conn->fd, COMM_SELECT_READ, icpHandleUdp, nullptr, 0); - for (auto &s : Config.mcast_group_list) - ipcache_nbgethostbyname(s.c_str(), mcastJoinGroups, nullptr); // XXX: pass the conn for mcastJoinGroups usage. + for (const auto &groupName : Config.mcast_group_list) { + SBuf tmp(groupName); // XXX: c_str() may reallocate + ipcache_nbgethostbyname(tmp.c_str(), mcastJoinGroups, nullptr); // XXX: pass the conn for mcastJoinGroups usage. + } debugs(12, DBG_IMPORTANT, "Accepting ICP messages on " << conn->local);