[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20130320182920.GA2837@ioremap.net>
Date: Wed, 20 Mar 2013 22:29:20 +0400
From: Evgeniy Polyakov <zbr@...emap.net>
To: vaughan <vaughan.cao@...cle.com>
Cc: netdev@...r.kernel.org, KY Srinivasan <kys@...rosoft.com>,
"devel@...uxdriverproject.org" <devel@...uxdriverproject.org>
Subject: Re: How to assign sockaddr_nl->nl_groups when using connector
Hi
On Tue, Mar 19, 2013 at 10:15:43AM +0800, vaughan (vaughan.cao@...cle.com) wrote:
> I am not quite sure how to assign nl_groups when using connector. You
> Documentation/connector/connector.txt don't explain it very clearly. I
> thought it's a bitmask representing only 32 groups.
> If I just want to subscribe only one group such as CN_KVP_IDX, what
> shall I do? Which one below is correct?
> a) l_local.nl_groups = CN_KVP_IDX;
> Or
> b) l_local.nl_groups = 1 << (CN_KVP_IDX -1)
> and bind with bind(s, (struct sockaddr *)&l_local, sizeof(struct
> sockaddr_nl)).
Iirc, first groups, created before bitmap-to-number conversion were
actually bitmaps, but then broadcast interface was obsoleted.
One should use NETLINK_ADD_MEMBERSHIP interface and specify gruop number
directly.
> I ran your example in Documentation/connector/. 'l_local.nl_groups = -1'
> in ucon.c seems subscribe all channels, because if I start cgred
> service, ucon will receive messages with idx=1.
>
> And it seems setsockopt is not needed now, for it is done by
> netlink_autobind? You even comment it out using '#if 0' in
> Documentation/connector/ucon.c.
>
> Could you do me a favor to check
> http://driverdev.linuxdriverproject.org/pipermail/devel/2013-March/036306.html
> to see if my understanding is correct or not? Thanks.
Yes, you are right.
--
Evgeniy Polyakov
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists