Add missing braces around MCAST_EXCLUDE check when KTR support is
compiled into the kernel This ensures that .iss_asm (the number of ASM listeners) isn't incorrectly decremented for MLD-layer source datagrams when inspecting im*s_st[1] (the second state in the structure). MFC after: 2 months PR: 217509 [1] Reported by: Coverity (Isilon) Reviewed by: ae ("This patch looks correct to me." [1]) Submitted by: Miles Ohlrich <miles.ohlrich@isilon.com> Sponsored by: Dell EMC Isilon
This commit is contained in:
parent
c45e7190ab
commit
bd7459366e
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=318255
@ -1047,9 +1047,10 @@ inm_merge(struct in_multi *inm, /*const*/ struct in_mfilter *imf)
|
||||
/* Decrement ASM listener count on transition out of ASM mode. */
|
||||
if (imf->imf_st[0] == MCAST_EXCLUDE && nsrc0 == 0) {
|
||||
if ((imf->imf_st[1] != MCAST_EXCLUDE) ||
|
||||
(imf->imf_st[1] == MCAST_EXCLUDE && nsrc1 > 0))
|
||||
(imf->imf_st[1] == MCAST_EXCLUDE && nsrc1 > 0)) {
|
||||
CTR1(KTR_IGMPV3, "%s: --asm on inm at t1", __func__);
|
||||
--inm->inm_st[1].iss_asm;
|
||||
}
|
||||
}
|
||||
|
||||
/* Increment ASM listener count on transition to ASM mode. */
|
||||
|
@ -999,9 +999,10 @@ in6m_merge(struct in6_multi *inm, /*const*/ struct in6_mfilter *imf)
|
||||
/* Decrement ASM listener count on transition out of ASM mode. */
|
||||
if (imf->im6f_st[0] == MCAST_EXCLUDE && nsrc0 == 0) {
|
||||
if ((imf->im6f_st[1] != MCAST_EXCLUDE) ||
|
||||
(imf->im6f_st[1] == MCAST_EXCLUDE && nsrc1 > 0))
|
||||
(imf->im6f_st[1] == MCAST_EXCLUDE && nsrc1 > 0)) {
|
||||
CTR1(KTR_MLD, "%s: --asm on inm at t1", __func__);
|
||||
--inm->in6m_st[1].iss_asm;
|
||||
}
|
||||
}
|
||||
|
||||
/* Increment ASM listener count on transition to ASM mode. */
|
||||
|
Loading…
Reference in New Issue
Block a user