rtmsg
struct rtmsg;
struct rtmsg *rtm, u32 portid);
struct rtmsg;
struct rtmsg *rtm, u32 portid);
struct mr_mfc *c, struct rtmsg *rtm);
struct mr_mfc *c, struct rtmsg *rtm)
struct in6_rtmsg *rtmsg);
#define RTM_RTA(r) ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct rtmsg))))
#define RTM_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct rtmsg))
} else if (nlmsg_len(nlh) >= sizeof(struct rtmsg)) {
struct rtmsg *rtm = nlmsg_data(nlh);
struct rtmsg *rtm;
nlmsg_for_each_attr(attr, nlh, sizeof(struct rtmsg), remaining) {
struct rtmsg *rtm;
struct rtmsg *rtm;
size_t payload = NLMSG_ALIGN(sizeof(struct rtmsg))
struct rtmsg *rtm, u32 portid)
struct rtmsg *rtm;
NLMSG_ALIGN(sizeof(struct rtmsg))
struct rtmsg *rtm;
struct rtmsg *rtm;
nlmsg_for_each_attr(attr, nlh, sizeof(struct rtmsg), rem) {
struct mr_mfc *c, struct rtmsg *rtm)
struct rtmsg *r;
struct rtmsg *rtm;
struct rtmsg *rtm;
struct in6_rtmsg rtmsg;
if (copy_from_user(&rtmsg, argp, sizeof(rtmsg)))
return ipv6_route_ioctl(net, cmd, &rtmsg);
} else if (nlmsg_len(nlh) >= sizeof(struct rtmsg)) {
struct rtmsg *rtm = nlmsg_data(nlh);
int ip6mr_get_route(struct net *net, struct sk_buff *skb, struct rtmsg *rtm,
struct rtmsg *rtm;
NLMSG_ALIGN(sizeof(struct rtmsg))
struct rtmsg *rtm;
struct in6_rtmsg *rtmsg,
.fc_table = l3mdev_fib_table_by_index(net, rtmsg->rtmsg_ifindex) ?
.fc_ifindex = rtmsg->rtmsg_ifindex,
.fc_metric = rtmsg->rtmsg_metric,
.fc_expires = rtmsg->rtmsg_info,
.fc_dst_len = rtmsg->rtmsg_dst_len,
.fc_src_len = rtmsg->rtmsg_src_len,
.fc_flags = rtmsg->rtmsg_flags,
.fc_type = rtmsg->rtmsg_type,
.fc_dst = rtmsg->rtmsg_dst,
.fc_src = rtmsg->rtmsg_src,
.fc_gateway = rtmsg->rtmsg_gateway,
int ipv6_route_ioctl(struct net *net, unsigned int cmd, struct in6_rtmsg *rtmsg)
rtmsg_to_fib6_config(net, rtmsg, &cfg);
struct rtmsg *rtm;
return NLMSG_ALIGN(sizeof(struct rtmsg))
struct rtmsg *rtm;
struct rtmsg *rtm;
struct rtmsg *rtm;
struct nlattr **tb, struct rtmsg **rtm,
rc = nlmsg_parse(nlh, sizeof(struct rtmsg), tb, RTA_MAX,
struct rtmsg *rtm;
struct rtmsg *rtm;
struct rtmsg *hdr;
struct rtmsg *rtm;
struct rtmsg *rtm;
struct rtmsg *rtm;
NLMSG_ALIGN(sizeof(struct rtmsg))
struct rtmsg *rtm;
struct rtmsg *rtm, *r;
struct rtmsg *rtm;
skb = nlmsg_new(NLMSG_ALIGN(sizeof(struct rtmsg)) +
struct rtmsg *rtm;
rt_msg = (struct rtmsg *)NLMSG_DATA(nh);
struct rtmsg rt;
req.nl.nlmsg_len = NLMSG_LENGTH(sizeof(struct rtmsg));
req.nl.nlmsg_len = NLMSG_LENGTH(sizeof(struct rtmsg));
struct rtmsg *rt_msg;
#define RTM_RTA(r) ((struct rtattr*)(((char*)(r)) + NLMSG_ALIGN(sizeof(struct rtmsg))))
#define RTM_PAYLOAD(n) NLMSG_PAYLOAD(n,sizeof(struct rtmsg))
struct rtmsg rtm;
struct rtmsg rt;
struct rtmsg rt;
static inline void fill_route_req_header(struct rtmsg *rtm, int family,