Lines Matching refs:rt

51 	struct ipx_route *rt;  in ipxrtr_add_route()  local
55 rt = ipxrtr_lookup(network); in ipxrtr_add_route()
56 if (!rt) { in ipxrtr_add_route()
57 rt = kmalloc(sizeof(*rt), GFP_ATOMIC); in ipxrtr_add_route()
59 if (!rt) in ipxrtr_add_route()
62 atomic_set(&rt->refcnt, 1); in ipxrtr_add_route()
63 ipxrtr_hold(rt); in ipxrtr_add_route()
65 list_add(&rt->node, &ipx_routes); in ipxrtr_add_route()
73 rt->ir_net = network; in ipxrtr_add_route()
74 rt->ir_intrfc = intrfc; in ipxrtr_add_route()
76 memset(rt->ir_router_node, '\0', IPX_NODE_LEN); in ipxrtr_add_route()
77 rt->ir_routed = 0; in ipxrtr_add_route()
79 memcpy(rt->ir_router_node, node, IPX_NODE_LEN); in ipxrtr_add_route()
80 rt->ir_routed = 1; in ipxrtr_add_route()
85 ipxrtr_put(rt); in ipxrtr_add_route()
176 struct ipx_route *rt = NULL; in ipxrtr_route_packet() local
184 rt = ipxrtr_lookup(usipx->sipx_network); in ipxrtr_route_packet()
186 if (!rt) in ipxrtr_route_packet()
188 intrfc = rt->ir_intrfc; in ipxrtr_route_packet()
245 rc = ipxitf_send(intrfc, skb, (rt && rt->ir_routed) ? in ipxrtr_route_packet()
246 rt->ir_router_node : ipx->ipx_dest.node); in ipxrtr_route_packet()
249 if (rt) in ipxrtr_route_packet()
250 ipxrtr_put(rt); in ipxrtr_route_packet()
260 struct rtentry rt; /* Use these to behave like 'other' stacks */ in ipxrtr_ioctl() local
264 if (copy_from_user(&rt, arg, sizeof(rt))) in ipxrtr_ioctl()
267 sg = (struct sockaddr_ipx *)&rt.rt_gateway; in ipxrtr_ioctl()
268 st = (struct sockaddr_ipx *)&rt.rt_dst; in ipxrtr_ioctl()
271 if (!(rt.rt_flags & RTF_GATEWAY) || /* Direct routes are fixed */ in ipxrtr_ioctl()