rtnetlink.c (2942e90050569525628a9f34e0daaa9b661b49cc) rtnetlink.c (97676b6b5538b3e059d33b8338e7d5cc41c5f1f1)
1/*
2 * INET An implementation of the TCP/IP protocol suite for the LINUX
3 * operating system. INET is implemented using the BSD Socket
4 * interface as the means of communication with the user level.
5 *
6 * Routing netlink socket interface: protocol independent part.
7 *
8 * Authors: Alexey Kuznetsov, <kuznet@ms2.inr.ac.ru>

--- 157 unchanged lines hidden (view full) ---

166 return err;
167}
168
169int rtnl_unicast(struct sk_buff *skb, u32 pid)
170{
171 return nlmsg_unicast(rtnl, skb, pid);
172}
173
1/*
2 * INET An implementation of the TCP/IP protocol suite for the LINUX
3 * operating system. INET is implemented using the BSD Socket
4 * interface as the means of communication with the user level.
5 *
6 * Routing netlink socket interface: protocol independent part.
7 *
8 * Authors: Alexey Kuznetsov, <kuznet@ms2.inr.ac.ru>

--- 157 unchanged lines hidden (view full) ---

166 return err;
167}
168
169int rtnl_unicast(struct sk_buff *skb, u32 pid)
170{
171 return nlmsg_unicast(rtnl, skb, pid);
172}
173
174int rtnl_notify(struct sk_buff *skb, u32 pid, u32 group,
175 struct nlmsghdr *nlh, gfp_t flags)
176{
177 int report = 0;
178
179 if (nlh)
180 report = nlmsg_report(nlh);
181
182 return nlmsg_notify(rtnl, skb, pid, group, report, flags);
183}
184
185void rtnl_set_sk_err(u32 group, int error)
186{
187 netlink_set_err(rtnl, 0, group, error);
188}
189
174int rtnetlink_put_metrics(struct sk_buff *skb, u32 *metrics)
175{
176 struct rtattr *mx = (struct rtattr*)skb->tail;
177 int i;
178
179 RTA_PUT(skb, RTA_METRICS, 0, NULL);
180 for (i=0; i<RTAX_MAX; i++) {
181 if (metrics[i])

--- 642 unchanged lines hidden (view full) ---

824EXPORT_SYMBOL(rtattr_parse);
825EXPORT_SYMBOL(rtnetlink_links);
826EXPORT_SYMBOL(rtnetlink_put_metrics);
827EXPORT_SYMBOL(rtnl);
828EXPORT_SYMBOL(rtnl_lock);
829EXPORT_SYMBOL(rtnl_trylock);
830EXPORT_SYMBOL(rtnl_unlock);
831EXPORT_SYMBOL(rtnl_unicast);
190int rtnetlink_put_metrics(struct sk_buff *skb, u32 *metrics)
191{
192 struct rtattr *mx = (struct rtattr*)skb->tail;
193 int i;
194
195 RTA_PUT(skb, RTA_METRICS, 0, NULL);
196 for (i=0; i<RTAX_MAX; i++) {
197 if (metrics[i])

--- 642 unchanged lines hidden (view full) ---

840EXPORT_SYMBOL(rtattr_parse);
841EXPORT_SYMBOL(rtnetlink_links);
842EXPORT_SYMBOL(rtnetlink_put_metrics);
843EXPORT_SYMBOL(rtnl);
844EXPORT_SYMBOL(rtnl_lock);
845EXPORT_SYMBOL(rtnl_trylock);
846EXPORT_SYMBOL(rtnl_unlock);
847EXPORT_SYMBOL(rtnl_unicast);
848EXPORT_SYMBOL(rtnl_notify);
849EXPORT_SYMBOL(rtnl_set_sk_err);