Lines Matching refs:rt
513 struct atalk_route *rt; in atrtr_create() local
529 for (rt = atalk_routes; rt; rt = rt->next) { in atrtr_create()
530 if (r->rt_flags != rt->flags) in atrtr_create()
533 if (ta->sat_addr.s_net == rt->target.s_net) { in atrtr_create()
534 if (!(rt->flags & RTF_HOST)) in atrtr_create()
536 if (ta->sat_addr.s_node == rt->target.s_node) in atrtr_create()
566 if (!rt) { in atrtr_create()
567 rt = kzalloc(sizeof(*rt), GFP_ATOMIC); in atrtr_create()
570 if (!rt) in atrtr_create()
573 rt->next = atalk_routes; in atrtr_create()
574 atalk_routes = rt; in atrtr_create()
578 rt->target = ta->sat_addr; in atrtr_create()
579 dev_put(rt->dev); /* Release old device */ in atrtr_create()
581 rt->dev = devhint; in atrtr_create()
582 rt->flags = r->rt_flags; in atrtr_create()
583 rt->gateway = ga->sat_addr; in atrtr_create()
885 static int atrtr_ioctl_addrt(struct rtentry *rt) in atrtr_ioctl_addrt() argument
889 if (rt->rt_dev) { in atrtr_ioctl_addrt()
892 if (copy_from_user(name, rt->rt_dev, IFNAMSIZ-1)) in atrtr_ioctl_addrt()
900 return atrtr_create(rt, dev); in atrtr_ioctl_addrt()
906 struct rtentry rt; in atrtr_ioctl() local
908 if (copy_from_user(&rt, arg, sizeof(rt))) in atrtr_ioctl()
913 if (rt.rt_dst.sa_family != AF_APPLETALK) in atrtr_ioctl()
916 &rt.rt_dst)->sat_addr); in atrtr_ioctl()
919 return atrtr_ioctl_addrt(&rt); in atrtr_ioctl()
1304 struct atalk_route *rt; in atalk_route_packet() local
1328 rt = atrtr_find(&ta); in atalk_route_packet()
1331 if (!rt || !(len_hops & (15 << 10))) in atalk_route_packet()
1341 if (rt->flags & RTF_GATEWAY) { in atalk_route_packet()
1342 ta.s_net = rt->gateway.s_net; in atalk_route_packet()
1343 ta.s_node = rt->gateway.s_node; in atalk_route_packet()
1348 (rt->dev->hard_header_len + in atalk_route_packet()
1380 if (aarp_send_ddp(rt->dev, skb, &ta, NULL) == NET_XMIT_DROP) in atalk_route_packet()
1559 struct atalk_route *rt, *rt_lo = NULL; in atalk_sendmsg() local
1604 rt = atrtr_find(&usat->sat_addr); in atalk_sendmsg()
1611 rt = atrtr_find(&at_hint); in atalk_sendmsg()
1614 if (!rt) in atalk_sendmsg()
1617 dev = rt->dev; in atalk_sendmsg()
1625 (dev->flags & IFF_LOOPBACK || !(rt->flags & RTF_GATEWAY))) { in atalk_sendmsg()
1678 !(rt->flags & RTF_GATEWAY) && !(dev->flags & IFF_LOOPBACK)) { in atalk_sendmsg()
1707 if (rt->flags & RTF_GATEWAY) { in atalk_sendmsg()
1708 gsat.sat_addr = rt->gateway; in atalk_sendmsg()
1833 struct rtentry rt; in atalk_compat_routing_ioctl() local
1835 if (copy_from_user(&rt.rt_dst, &ur->rt_dst, in atalk_compat_routing_ioctl()
1837 get_user(rt.rt_flags, &ur->rt_flags) || in atalk_compat_routing_ioctl()
1838 get_user(rt.rt_metric, &ur->rt_metric) || in atalk_compat_routing_ioctl()
1839 get_user(rt.rt_mtu, &ur->rt_mtu) || in atalk_compat_routing_ioctl()
1840 get_user(rt.rt_window, &ur->rt_window) || in atalk_compat_routing_ioctl()
1841 get_user(rt.rt_irtt, &ur->rt_irtt) || in atalk_compat_routing_ioctl()
1847 if (rt.rt_dst.sa_family != AF_APPLETALK) in atalk_compat_routing_ioctl()
1850 &rt.rt_dst)->sat_addr); in atalk_compat_routing_ioctl()
1853 rt.rt_dev = compat_ptr(rtdev); in atalk_compat_routing_ioctl()
1854 return atrtr_ioctl_addrt(&rt); in atalk_compat_routing_ioctl()