Commit 26549dab authored by Li Zetao's avatar Li Zetao Committed by Jakub Kicinski
Browse files

ipv6: mcast: use min() to simplify the code



When coping sockaddr in ip6_mc_msfget(), the time of copies
depends on the minimum value between sl_count and gf_numsrc.
Using min() here is very semantic.

Signed-off-by: default avatarLi Zetao <lizetao1@huawei.com>
Reviewed-by: default avatarSimon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20240822133908.1042240-7-lizetao1@huawei.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent b4985aa8
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -586,7 +586,8 @@ int ip6_mc_msfget(struct sock *sk, struct group_filter *gsf,
	const struct in6_addr *group;
	struct ipv6_mc_socklist *pmc;
	struct ip6_sf_socklist *psl;
	int i, count, copycount;
	unsigned int count;
	int i, copycount;

	group = &((struct sockaddr_in6 *)&gsf->gf_group)->sin6_addr;

@@ -610,7 +611,7 @@ int ip6_mc_msfget(struct sock *sk, struct group_filter *gsf,
	psl = sock_dereference(pmc->sflist, sk);
	count = psl ? psl->sl_count : 0;

	copycount = count < gsf->gf_numsrc ? count : gsf->gf_numsrc;
	copycount = min(count, gsf->gf_numsrc);
	gsf->gf_numsrc = count;
	for (i = 0; i < copycount; i++) {
		struct sockaddr_in6 *psin6;