Re: RtNetlink in wireless.c and netlink_broadcast(uevent_sock,...) - newbie

From: Jean Tourrilhes <hidden>
Date: 2006-05-01 17:50:04

Xu Nakajima wrote :
Hello,

I saw that in the wireless linux stack, there is usage

of sending messages to user space via the RtNetlink
event channel : 
in net/core/wireless.c,  wireless_send_event() method
calls rtmsg_iwinfo() which calls
netlink_broadcast(rtnl, skb, 0, RTNLGRP_LINK,
GFP_ATOMIC); (it fills a struct with 
rtnetlink_fill_iwinfo before).

On the other hand, I see that for example, in the case
of 
sending messeges to userspace udev socket, the
netlink_broadcast() call is with a different
mecahinsm;  
In lib/kobject_uevent.c, there is the following call
netlink_broadcast(uevent_sock, skb, 0, 1, GFP_KERNEL);

Is there something special about RtNetlink event
channel
which makes it needed fot wireless.c (for example)? 
While udev can use some other mechanism ?
What is special about RtNetlink event channel
in comaprison to non RtNetlink channels?
	Netlink is a generic socket mechanism. On top of Netlink, you
can have multiple types of sockets, the same way that on top of TCP
sockets you can implement various protocols, such as HTTP, NFS, SSH...
	RtNetlink was the first Netlink protocol implemented and is
the Netlink protocol used to configure network interfaces. In the file
net/core/rtnetlink.c, you will find that there are many actions that
generates RtNetlink events. Together with wireless events, they give
you a very detailed view of what's happening with network interfaces.
	The udev-netlink protocol is quite recent and a completely
different Netlink ptotocol that uses a different packet format. As far
as exporting network information, it is very crude, because the goal
of udev is not managing network interfaces. Yes, udev does duplicate
some RtNetlink events, but the overlap is not so much, so that's ok.

	Good luck...

	Jean
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help