+def wait_for_igmp_event(test, timeout, itf, gaddr, saddr, ff):
+ ev = test.vapi.wait_for_event(timeout, "igmp_event")
+ if (
+ ev.sw_if_index == itf.sw_if_index
+ and str(ev.gaddr) == gaddr
+ and str(ev.saddr) == saddr
+ and ev.filter == ff
+ ):
+ return True
+ return False
+
+
+class IgmpSG:
+ def __init__(self, gaddr, saddrs):