summaryrefslogtreecommitdiff
path: root/lib/command.h
diff options
context:
space:
mode:
authorSarita Patra <saritap@vmware.com>2020-03-03 03:35:43 -0800
committerSarita Patra <saritap@vmware.com>2020-03-03 03:35:43 -0800
commit4f007a5a031f01da4994c2bbd4cf9b4d331ceed9 (patch)
tree6b0501652e19a3e2d66c819b1f7e215b96174833 /lib/command.h
parent4765870ee751acdb9fa6d2617e0b4ffdb111e065 (diff)
pimd: fix crash seen while executing igmp related configuration
Issue 1: 1. Enable pim on an interface. 2. Configure query-interval or query max response time, which results in pimd crash. Root cause: 1. When pim is enabled on an interface, it creates a igmp socket with querier_timer and other_querier time as NULL. 2. When query-interval/max_response_time is configured, it call the function igmp_sock_query_reschedule() to reshedule the query. This function check either of querier_timer or other_querier timer should be running. Since in this case both are NULL, it results in crash. Issue 2: 1. Enable pim on an interface. 2. Execute no ip igmp query-interval or query max response time, which results in pimd crash. Root cause: 1. When pim is enabled on an interface, it creates a pim interface with querier_timer and other_querier time as NULL. 2. When no ip igmp query-interval/max_response_time is executed, it will check either of querier_timer or other_querier timer should be running. Since in this case both are NULL, it results in crash. Fix: When pim is enabled on an interface, it creates a igmp socket with mtrace_only as true. So add a check if mtrace_only is true, then don't reshedule the query. Signed-off-by: Sarita Patra <saritap@vmware.com>
Diffstat (limited to 'lib/command.h')
0 files changed, 0 insertions, 0 deletions