Lines Matching refs:rt
53 static int ipddp_delete(struct ipddp_route *rt);
54 static struct ipddp_route* ipddp_find_route(struct ipddp_route *rt);
118 struct ipddp_route *rt; in ipddp_xmit() local
124 for(rt = ipddp_route_list; rt != NULL; rt = rt->next) in ipddp_xmit()
126 if(rt->ip == paddr) in ipddp_xmit()
129 if(rt == NULL) in ipddp_xmit()
132 our_addr = atalk_find_dev_addr(rt->dev); in ipddp_xmit()
153 if(rt->dev->type == ARPHRD_LOCALTLK) in ipddp_xmit()
160 ddp->deh_dnet = rt->at.s_net; /* FIXME more hops?? */ in ipddp_xmit()
163 ddp->deh_dnode = rt->at.s_node; in ipddp_xmit()
176 if(aarp_send_ddp(rt->dev, skb, &rt->at, NULL) < 0) in ipddp_xmit()
188 struct ipddp_route *rt =(struct ipddp_route*) kmalloc(sizeof(*rt), GFP_KERNEL); in ipddp_create() local
190 if (rt == NULL) in ipddp_create()
193 rt->ip = new_rt->ip; in ipddp_create()
194 rt->at = new_rt->at; in ipddp_create()
195 rt->next = NULL; in ipddp_create()
196 if ((rt->dev = atrtr_get_dev(&rt->at)) == NULL) { in ipddp_create()
197 kfree(rt); in ipddp_create()
201 if (ipddp_find_route(rt)) { in ipddp_create()
202 kfree(rt); in ipddp_create()
206 rt->next = ipddp_route_list; in ipddp_create()
207 ipddp_route_list = rt; in ipddp_create()
216 static int ipddp_delete(struct ipddp_route *rt) in ipddp_delete() argument
223 if(tmp->ip == rt->ip in ipddp_delete()
224 && tmp->at.s_net == rt->at.s_net in ipddp_delete()
225 && tmp->at.s_node == rt->at.s_node) in ipddp_delete()
240 static struct ipddp_route* ipddp_find_route(struct ipddp_route *rt) in ipddp_find_route() argument
246 if(f->ip == rt->ip in ipddp_find_route()
247 && f->at.s_net == rt->at.s_net in ipddp_find_route()
248 && f->at.s_node == rt->at.s_node) in ipddp_find_route()
257 struct ipddp_route *rt = (struct ipddp_route *)ifr->ifr_data; in ipddp_ioctl() local
263 if(copy_from_user(&rcp, rt, sizeof(rcp))) in ipddp_ioctl()
272 if(copy_to_user(rt, ipddp_find_route(&rcp), sizeof(struct ipddp_route))) in ipddp_ioctl()