$OpenBSD: patch-request_c,v 1.2 2016/12/23 13:44:31 rzalamena Exp $
--- request.c.orig	Thu Dec 15 19:50:24 2016
+++ request.c	Mon Dec 19 21:06:50 2016
@@ -88,7 +88,7 @@
 
     } else {
         // Log the state of the interface the report was recieved on.
-        log(LOG_INFO, 0, "Mebership report was recieved on %s. Ignoring.",
+        log(LOG_INFO, 0, "Membership report was recieved on %s. Ignoring.",
             sourceVif->state==IF_STATE_UPSTREAM?"the upstream interface":"a disabled interface");
     }
 
@@ -136,7 +136,8 @@
 
     } else {
         // just ignore the leave request...
-        IF_DEBUG log(LOG_DEBUG, 0, "The found if for %s was not downstream. Ignoring leave request.");
+        IF_DEBUG log(LOG_DEBUG, 0, "The found if for %s was not downstream. Ignoring leave request.",
+	    inetFmt(src, s1));
     }
 }
 
@@ -184,8 +185,10 @@
     int             Ix;
 
     // Loop through all downstream vifs...
-    for ( Ix = 0; Dp = getIfByIx( Ix ); Ix++ ) {
+    for ( Ix = 0; (Dp = getIfByIx( Ix )); Ix++ ) {
         if ( Dp->InAdr.s_addr && ! (Dp->Flags & IFF_LOOPBACK) ) {
+		if (config_getinterface(Dp->Name) == NULL)
+			continue;
             if(Dp->state == IF_STATE_DOWNSTREAM) {
                 // Send the membership query...
                 sendIgmp(Dp->InAdr.s_addr, allhosts_group, 
