From owner-freebsd-net Thu Jan 4 14:49:21 2001 From owner-freebsd-net@FreeBSD.ORG Thu Jan 4 14:49:19 2001 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from hetnet.nl (net014s.hetnet.nl [194.151.104.154]) by hub.freebsd.org (Postfix) with ESMTP id 36AB037B402 for ; Thu, 4 Jan 2001 14:49:18 -0800 (PST) Received: from hetnet.nl ([192.150.187.12]) by hetnet.nl with Microsoft SMTPSVC(5.5.1877.537.53); Thu, 4 Jan 2001 23:47:44 +0100 Sender: degraaf@FreeBSD.ORG Message-ID: <3A54FDEB.FB442E82@hetnet.nl> Date: Thu, 04 Jan 2001 14:49:15 -0800 From: Wilbert de Graaf X-Mailer: Mozilla 4.75 [en] (X11; U; Linux 2.2.12 i386) X-Accept-Language: en MIME-Version: 1.0 To: net@freebsd.org Subject: igmp and if_down() Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-freebsd-net@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Some time ago I worked on an implementation of IGMPv3 on FreeBSD. Somebody I know is using it to test his router implementation on a terminal / ppp server. He told me the following: * a socket subscribes to some group on the ppp interface, and he sees IGMP reports * hangs no up, and dials in again and the IGMP messages continue He thinks this is not okay, but I'm not sure. You could argue that membership on a non-existing interface is impossible. On the other hand, it's get more complicated if you do remove membership: are you going to inform those sockets on which you removed their membership ? What do you think ? Btw. When I looked at the code I came as far as net/if.c in the fucntion if_down(). The documentation says that protocols should be informed here. I took a peek at the Linux code and they do notify IGMP, which removes all memberships on the interface that's going down. Wilbert To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message