All of lore.kernel.org
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: Hannes Frederic Sowa <hannes@stressinduktion.org>
Cc: Sven-Thorsten Dietrich <sven@vyatta.com>,
	LKML <linux-kernel@vger.kernel.org>,
	Stephen Hemminger <shemminger@vyatta.com>,
	"nicolas.dichtel@6wind.com" <nicolas.dichtel@6wind.com>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	Mike Davison <Mike.Davison@vyatta.com>
Subject: Re: [PATCH] Set the correct RTNL family for multicast netconf messages
Date: Thu, 27 Jun 2013 18:33:42 -0700	[thread overview]
Message-ID: <20130627183342.4b9c5598@nehalam.linuxnetplumber.net> (raw)
In-Reply-To: <20130628012307.GB15799@order.stressinduktion.org>

On Fri, 28 Jun 2013 03:23:07 +0200
Hannes Frederic Sowa <hannes@stressinduktion.org> wrote:

> On Thu, Jun 27, 2013 at 04:44:47PM -0700, Sven-Thorsten Dietrich wrote:
> > diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c
> > index dfc39d4..695858b 100644
> > --- a/net/ipv4/devinet.c
> > +++ b/net/ipv4/devinet.c
> > @@ -1705,7 +1705,16 @@ static int inet_netconf_fill_devconf(struct sk_buff *skb, int ifindex,
> >  		return -EMSGSIZE;
> >  
> >  	ncm = nlmsg_data(nlh);
> > -	ncm->ncm_family = AF_INET;
> > +
> > +	switch (type) {
> > +		case NETCONFA_MC_FORWARDING:
> > +			ncm->ncm_family = RTNL_FAMILY_IPMR;
> > +			break;
> > +
> > +		default:
> > +			ncm->ncm_family = AF_INET;
> > +			break;
> > +	}
> >  
> >  	if (nla_put_s32(skb, NETCONFA_IFINDEX, ifindex) < 0)
> >  		goto nla_put_failure;
> > diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c
> > index 4ab4c38..a177da4 100644
> > --- a/net/ipv6/addrconf.c
> > +++ b/net/ipv6/addrconf.c
> > @@ -492,7 +492,16 @@ static int inet6_netconf_fill_devconf(struct sk_buff *skb, int ifindex,
> >  		return -EMSGSIZE;
> >  
> >  	ncm = nlmsg_data(nlh);
> > -	ncm->ncm_family = AF_INET6;
> > +
> > +	switch (type) {
> > +		case NETCONFA_MC_FORWARDING:
> > +			ncm->ncm_family = RTNL_FAMILY_IP6MR;
> > +			break;
> > +
> > +		default:
> > +			ncm->ncm_family = AF_INET6;
> > +			break;
> > +	}
> >  
> 
> Hm, are you sure? NETCONFA_MC_FORWARDING is of type RTM_NEWNETCONF
> and expects ncm_family to be either AF_INET or AF_INET6 (at least in
> iproute2/ipmonitor.c).
> 

I agree with Sven on this, looks like the recent addition of netconf
configuration to netlink didn't embrace how multicast is handled in kernel.

Multicast forwarding is a routing related configuration value.
All the multicast routing events come in as special family RTNL_FAMILY_IPMR
(see net/ipv4/ipmr.c function ipmr_fill_route). I would expect that multicast
routing daemons would like to be able to use special family to listen for
all multicast related changes (and not see non-multicast events).


Minor nit: the patch is formatted incorrectly (case should line up with switch).

  reply	other threads:[~2013-06-28  1:33 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-27 23:44 [PATCH] Set the correct RTNL family for multicast netconf messages Sven-Thorsten Dietrich
2013-06-27 23:44 ` Sven-Thorsten Dietrich
2013-06-28  1:23 ` Hannes Frederic Sowa
2013-06-28  1:33   ` Stephen Hemminger [this message]
2013-06-28  1:51     ` Hannes Frederic Sowa
2013-06-28 10:13       ` Nicolas Dichtel
2013-06-28 15:26 ` Stephen Hemminger
2013-06-28 15:54   ` Nicolas Dichtel
2013-06-28 16:13     ` [RFC net] netconf: set mulitcast family for multicast forwarding messages Stephen Hemminger
2013-07-01 12:38       ` Nicolas Dichtel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20130627183342.4b9c5598@nehalam.linuxnetplumber.net \
    --to=stephen@networkplumber.org \
    --cc=Mike.Davison@vyatta.com \
    --cc=hannes@stressinduktion.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=nicolas.dichtel@6wind.com \
    --cc=shemminger@vyatta.com \
    --cc=sven@vyatta.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.