diff options
author | Benoît Ganne <bganne@cisco.com> | 2020-04-16 12:47:47 +0200 |
---|---|---|
committer | Andrew Yourtchenko <ayourtch@gmail.com> | 2020-08-13 17:20:47 +0000 |
commit | 8453fb7509b7fa43c8e94f8cf383c638d36dc0bf (patch) | |
tree | 95d90d8d34ff98c62654891ee2c7b7c3e1f45b07 /src/plugins/igmp/igmp_group.h | |
parent | 7e5733ad1705280ce70b63169492e310b2c31917 (diff) |
igmp: fix igmp proxy group merge
When merging proxy groups in igmp_proxy_device_merge_group(), the call
to igmp_proxy_device_merge_src() can end up removing the current proxy
group via igmp_group_clear(). When that happens, it must returns NULL so
that igmp_proxy_device_merge_config() does not send a IGMPv3 report for
a dead proxy group.
Make igmp_group_clear() reset the group pointer to NULL to fix this bug
and to detect similar bugs more easily.
Type: fix
Change-Id: I229e55b5bfa71734d7844893f5209a66fa3cc8ae
Signed-off-by: Benoît Ganne <bganne@cisco.com>
(cherry picked from commit bd7f3422bbe38ba87888b765e94b56bfcbb9602c)
Diffstat (limited to 'src/plugins/igmp/igmp_group.h')
-rw-r--r-- | src/plugins/igmp/igmp_group.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/plugins/igmp/igmp_group.h b/src/plugins/igmp/igmp_group.h index 7d4dfb6d243..0eb4f43ef05 100644 --- a/src/plugins/igmp/igmp_group.h +++ b/src/plugins/igmp/igmp_group.h @@ -103,7 +103,7 @@ do { \ */ struct igmp_config_t_; -extern void igmp_group_clear (igmp_group_t * group); +extern void igmp_group_clear (igmp_group_t ** group); extern void igmp_group_free_all_srcs (igmp_group_t * group); extern igmp_group_t *igmp_group_alloc (struct igmp_config_t_ *config, |