taglinefilesource code
rt88include/net/ip.hextern int     ip_send(struct rtable *rt, struct sk_buff *skb, __u32 daddr, int len, struct device *dev, __u32 saddr);
rt146include/net/route.hextern int    ip_rt_new(struct rtentry *rt);
rt178include/net/route.hextern __inline__ void ip_rt_put(struct rtable * rt)
rt181include/net/route.hif (rt)
rt182include/net/route.hATOMIC_DECR(&rt->rt_refcnt);
rt215include/net/route.hstruct rtable * rt = *rp;
rt217include/net/route.hif (!rt || rt->rt_dst != daddr || !(rt->rt_flags&RTF_UP)
rt218include/net/route.h|| ((local==1)^((rt->rt_flags&RTF_LOCAL) != 0)))
rt220include/net/route.hip_rt_put(rt);
rt221include/net/route.hrt = ip_rt_route(daddr, local);
rt222include/net/route.h*rp = rt;
rt224include/net/route.hreturn rt;
rt197kernel/module.cstruct mod_routines rt;
rt222kernel/module.cmemcpy_fromfs(&rt, routines, sizeof rt);
rt231kernel/module.c(unsigned long) rt.init, (unsigned long) rt.cleanup));
rt232kernel/module.cmp->cleanup = rt.cleanup;
rt309kernel/module.cif ((*rt.init)() != 0) {
rt536net/appletalk/ddp.cstruct atalk_route *rt;
rt559net/appletalk/ddp.cfor(rt=atalk_router_list;rt!=NULL;rt=rt->next)
rt561net/appletalk/ddp.cif(r->rt_flags != rt->flags)
rt564net/appletalk/ddp.cif(ta->sat_addr.s_net == rt->target.s_net) 
rt566net/appletalk/ddp.cif(!(rt->flags&RTF_HOST))
rt568net/appletalk/ddp.cif(ta->sat_addr.s_node == rt->target.s_node)
rt590net/appletalk/ddp.cif(rt==NULL)
rt592net/appletalk/ddp.crt=(struct atalk_route *)kmalloc(sizeof(struct atalk_route), GFP_KERNEL);
rt593net/appletalk/ddp.cif(rt==NULL)
rt596net/appletalk/ddp.crt->next=atalk_router_list;
rt597net/appletalk/ddp.catalk_router_list=rt;
rt603net/appletalk/ddp.crt->target=ta->sat_addr;      
rt604net/appletalk/ddp.crt->dev=devhint;
rt605net/appletalk/ddp.crt->flags=r->rt_flags;
rt606net/appletalk/ddp.crt->gateway=ga->sat_addr;
rt818net/appletalk/ddp.cstruct rtentry rt;
rt820net/appletalk/ddp.cerr=verify_area(VERIFY_READ, arg, sizeof(rt));
rt823net/appletalk/ddp.cmemcpy_fromfs(&rt,arg,sizeof(rt));
rt828net/appletalk/ddp.cif(rt.rt_dst.sa_family!=AF_APPLETALK)
rt830net/appletalk/ddp.creturn atrtr_delete(&((struct sockaddr_at *)&rt.rt_dst)->sat_addr);
rt832net/appletalk/ddp.creturn atrtr_create(&rt, NULL);
rt875net/appletalk/ddp.cstruct atalk_route *rt;
rt883net/appletalk/ddp.crt=&atrtr_default;
rt885net/appletalk/ddp.cntohs(rt->gateway.s_net), rt->gateway.s_node, rt->flags,
rt886net/appletalk/ddp.crt->dev->name);
rt888net/appletalk/ddp.cfor (rt = atalk_router_list; rt != NULL; rt = rt->next)
rt891net/appletalk/ddp.cntohs(rt->target.s_net),rt->target.s_node,
rt892net/appletalk/ddp.cntohs(rt->gateway.s_net), rt->gateway.s_node, rt->flags,
rt893net/appletalk/ddp.crt->dev->name);
rt1436net/appletalk/ddp.cstruct atalk_route *rt;
rt1462net/appletalk/ddp.crt=atrtr_find(&ta);
rt1463net/appletalk/ddp.cif(rt==NULL || ddp->deh_hops==15)
rt1471net/appletalk/ddp.cskb_trim(skb,min(origlen, rt->dev->hard_header_len + 
rt1478net/appletalk/ddp.cif(aarp_send_ddp(rt->dev, skb, &ta, NULL)==-1)
rt1521net/appletalk/ddp.cstruct atalk_route *rt;
rt1569net/appletalk/ddp.crt=atrtr_find(&usat->sat_addr);
rt1570net/appletalk/ddp.cif(rt==NULL)
rt1572net/appletalk/ddp.cdev=rt->dev;
rt1579net/appletalk/ddp.crt=atrtr_find(&at_hint);
rt1580net/appletalk/ddp.cif(rt==NULL)
rt1582net/appletalk/ddp.cdev=rt->dev;
rt1650net/appletalk/ddp.cif((!(rt->flags&RTF_GATEWAY))&&(!(dev->flags&IFF_LOOPBACK)))
rt1684net/appletalk/ddp.cif ( rt->flags & RTF_GATEWAY ) {
rt1685net/appletalk/ddp.cgsat.sat_addr = rt->gateway;
rt1625net/ipv4/arp.cstruct rtable *rt;
rt1649net/ipv4/arp.crt = ip_rt_route(ip, 0);
rt1650net/ipv4/arp.cif (!rt)
rt1652net/ipv4/arp.cdev1 = rt->rt_dev;
rt1653net/ipv4/arp.cip_rt_put(rt);
rt89net/ipv4/ip_forward.cstruct rtable *rt;  /* Route we use */
rt163net/ipv4/ip_forward.crt = ip_rt_route(target_addr, 0);
rt165net/ipv4/ip_forward.cif (rt == NULL)
rt184net/ipv4/ip_forward.craddr = rt->rt_gateway;
rt186net/ipv4/ip_forward.cif (opt->is_strictroute && (rt->rt_flags & RTF_GATEWAY)) {
rt191net/ipv4/ip_forward.cip_rt_put(rt);
rt200net/ipv4/ip_forward.cdev2 = rt->rt_dev;
rt201net/ipv4/ip_forward.chh = rt->rt_hh;
rt209net/ipv4/ip_forward.c(rt->rt_flags&RTF_MODIFIED) && !opt->srr)
rt223net/ipv4/ip_forward.crt=NULL;
rt248net/ipv4/ip_forward.cip_rt_put(rt);
rt269net/ipv4/ip_forward.cip_rt_put(rt);
rt286net/ipv4/ip_forward.cip_send(rt,skb2,raddr,skb->len,dev2,dev2->pa_addr);
rt326net/ipv4/ip_forward.cprintk("ip_forward: hh miss %08x via %08x\n", target_addr, rt->rt_gateway);
rt430net/ipv4/ip_forward.cip_rt_put(rt);
rt433net/ipv4/ip_forward.cip_rt_put(rt);
rt113net/ipv4/ip_output.cint ip_send(struct rtable * rt, struct sk_buff *skb, __u32 daddr, int len, struct device *dev, __u32 saddr)
rt127net/ipv4/ip_output.cif (rt && dev == rt->rt_dev && rt->rt_hh)
rt129net/ipv4/ip_output.cmemcpy(skb_push(skb,dev->hard_header_len),rt->rt_hh->hh_data,dev->hard_header_len);
rt130net/ipv4/ip_output.cif (rt->rt_hh->hh_uptodate)
rt133net/ipv4/ip_output.cprintk("ip_send: hh miss %08x via %08x\n", daddr, rt->rt_gateway);
rt150net/ipv4/ip_output.cstatic int ip_send_room(struct rtable * rt, struct sk_buff *skb, __u32 daddr, int len, struct device *dev, __u32 saddr)
rt160net/ipv4/ip_output.cif (rt && dev == rt->rt_dev && rt->rt_hh)
rt162net/ipv4/ip_output.cmemcpy(skb_push(skb,dev->hard_header_len),rt->rt_hh->hh_data,dev->hard_header_len);
rt163net/ipv4/ip_output.cif (rt->rt_hh->hh_uptodate)
rt166net/ipv4/ip_output.cprintk("ip_send_room: hh miss %08x via %08x\n", daddr, rt->rt_gateway);
rt195net/ipv4/ip_output.cstruct rtable *rt;
rt215net/ipv4/ip_output.crt = ip_check_route(rp, daddr, skb->localroute);
rt220net/ipv4/ip_output.cif (rt)
rt221net/ipv4/ip_output.cATOMIC_INCR(&rt->rt_refcnt);
rt224net/ipv4/ip_output.crt = ip_rt_route(daddr, skb->localroute);
rt229net/ipv4/ip_output.cif (rt == NULL)
rt235net/ipv4/ip_output.c*dev = rt->rt_dev;
rt239net/ipv4/ip_output.csaddr = rt ? rt->rt_src : (*dev)->pa_addr;
rt241net/ipv4/ip_output.craddr = rt ? rt->rt_gateway : 0;
rt243net/ipv4/ip_output.cif (opt && opt->is_strictroute && rt && (rt->rt_flags & RTF_GATEWAY))
rt245net/ipv4/ip_output.cip_rt_put(rt);
rt262net/ipv4/ip_output.ctmp = ip_send_room(rt, skb, raddr, len, *dev, saddr);
rt264net/ipv4/ip_output.ctmp = ip_send(rt, skb, raddr, len, *dev, saddr);
rt266net/ipv4/ip_output.cip_rt_put(rt);
rt575net/ipv4/ip_output.cstruct rtable *rt;
rt598net/ipv4/ip_output.crt=NULL;
rt607net/ipv4/ip_output.crt = ip_check_route(&sk->ip_route_cache, daddr,
rt610net/ipv4/ip_output.cif (rt == NULL) 
rt615net/ipv4/ip_output.csaddr = rt->rt_src;
rt617net/ipv4/ip_output.chh = rt->rt_hh;
rt622net/ipv4/ip_output.cdev=rt->rt_dev;
rt625net/ipv4/ip_output.cif (rt && !dev)
rt626net/ipv4/ip_output.cdev = rt->rt_dev;
rt631net/ipv4/ip_output.craddr = rt ? rt->rt_gateway : daddr;
rt670net/ipv4/ip_output.cprintk("ip_build_xmit: hh miss %08x via %08x\n", rt->rt_dst, rt->rt_gateway);
rt846net/ipv4/ip_output.cprintk("ip_build_xmit: hh miss %08x via %08x\n", rt->rt_dst, rt->rt_gateway);
rt264net/ipv4/ip_sockglue.cstruct rtable *rt;
rt286net/ipv4/ip_sockglue.cif((rt=ip_rt_route(mreq.imr_multiaddr.s_addr,0))!=NULL)
rt288net/ipv4/ip_sockglue.cdev=rt->rt_dev;
rt289net/ipv4/ip_sockglue.croute_src = rt->rt_src;
rt290net/ipv4/ip_sockglue.cATOMIC_DECR(&rt->rt_use);
rt291net/ipv4/ip_sockglue.cip_rt_put(rt);
rt320net/ipv4/ip_sockglue.cstruct rtable *rt;
rt340net/ipv4/ip_sockglue.cif((rt=ip_rt_route(mreq.imr_multiaddr.s_addr,0))!=NULL)
rt342net/ipv4/ip_sockglue.cdev=rt->rt_dev;
rt343net/ipv4/ip_sockglue.cATOMIC_DECR(&rt->rt_use);
rt344net/ipv4/ip_sockglue.croute_src = rt->rt_src;
rt345net/ipv4/ip_sockglue.cip_rt_put(rt);
rt290net/ipv4/rarp.cstruct rtable *rt;
rt330net/ipv4/rarp.crt = ip_rt_route(ip, 0);
rt331net/ipv4/rarp.cif (rt == NULL)
rt333net/ipv4/rarp.cdev = rt->rt_dev;
rt334net/ipv4/rarp.cip_rt_put(rt);
rt566net/ipv4/rarp.cstruct rarp_table *rt, *rt_next;
rt571net/ipv4/rarp.crt = rarp_tables;
rt575net/ipv4/rarp.cfor ( ; rt != NULL; rt = rt_next) {
rt576net/ipv4/rarp.crt_next = rt->next;
rt577net/ipv4/rarp.crarp_release_entry(rt);
rt943net/ipv4/route.cstatic void rt_free(struct rtable * rt)
rt949net/ipv4/route.cif (!rt->rt_refcnt)
rt951net/ipv4/route.cstruct hh_cache * hh = rt->rt_hh;
rt952net/ipv4/route.crt->rt_hh = NULL;
rt959net/ipv4/route.ckfree_s(rt, sizeof(struct rt_table));
rt962net/ipv4/route.crt->rt_next = rt_free_queue;
rt963net/ipv4/route.crt->rt_flags &= ~RTF_UP;
rt964net/ipv4/route.crt_free_queue = rt;
rt967net/ipv4/route.cprintk("rt_free: %08x\n", rt->rt_dst);
rt978net/ipv4/route.cstruct rtable *rt, **rtp;
rt982net/ipv4/route.cwhile ((rt = *rtp) != NULL)
rt984net/ipv4/route.cif  (!rt->rt_refcnt)
rt986net/ipv4/route.cstruct hh_cache * hh = rt->rt_hh;
rt988net/ipv4/route.c__u32 daddr = rt->rt_dst;
rt990net/ipv4/route.c*rtp = rt->rt_next;
rt991net/ipv4/route.crt->rt_hh = NULL;
rt998net/ipv4/route.ckfree_s(rt, sizeof(struct rt_table));
rt1005net/ipv4/route.crtp = &rt->rt_next;
rt1105net/ipv4/route.cstruct rtable *rt;
rt1112net/ipv4/route.crt = (struct rtable *) kmalloc(sizeof(struct rtable), GFP_ATOMIC);
rt1113net/ipv4/route.cif (rt == NULL) 
rt1115net/ipv4/route.cmemset(rt, 0, sizeof(struct rtable));
rt1116net/ipv4/route.crt->rt_flags = RTF_DYNAMIC | RTF_MODIFIED | RTF_HOST | RTF_GATEWAY | RTF_UP;
rt1117net/ipv4/route.crt->rt_dst = dst;
rt1118net/ipv4/route.crt->rt_dev = dev;
rt1119net/ipv4/route.crt->rt_gateway = gw;
rt1120net/ipv4/route.crt->rt_src = dev->pa_addr;
rt1121net/ipv4/route.crt->rt_mtu = dev->mtu;
rt1124net/ipv4/route.crt->rt_mtu = 576;
rt1126net/ipv4/route.crt->rt_lastuse  = jiffies;
rt1127net/ipv4/route.crt->rt_refcnt  = 1;
rt1128net/ipv4/route.crt_cache_add(hash, rt);
rt1129net/ipv4/route.cip_rt_put(rt);
rt1319net/ipv4/route.cstruct rtable * rt;
rt1321net/ipv4/route.crt = ip_rt_route(dst, 0);
rt1322net/ipv4/route.cif (!rt)
rt1325net/ipv4/route.cif (rt->rt_gateway != src ||
rt1326net/ipv4/route.crt->rt_dev != dev ||
rt1330net/ipv4/route.cip_rt_put(rt);
rt1333net/ipv4/route.cip_rt_put(rt);
rt1555net/ipv4/route.cvoid ip_rt_put(struct rtable * rt)
rt1557net/ipv4/route.cif (rt)
rt1558net/ipv4/route.cATOMIC_DECR(&rt->rt_refcnt);
rt1737net/ipv4/route.cstruct rtentry rt;
rt1748net/ipv4/route.cmemcpy_fromfs(&rt, arg, sizeof(struct rtentry));
rt1749net/ipv4/route.creturn (cmd == SIOCDELRT) ? rt_kill(&rt) : ip_rt_new(&rt);
rt638net/ipv4/tcp.cstruct rtable *rt;
rt685net/ipv4/tcp.crt = ip_check_route(&sk->ip_route_cache, opt->srr?opt->faddr:iph->daddr, skb->localroute);
rt690net/ipv4/tcp.cif (rt && ntohs(iph->tot_len) > rt->rt_mtu)
rt695net/ipv4/tcp.cif (rt==NULL)  /* Deep poo */
rt705net/ipv4/tcp.cdev=rt->rt_dev;
rt706net/ipv4/tcp.cskb->raddr=rt->rt_gateway;
rt709net/ipv4/tcp.cif (rt->rt_hh)
rt711net/ipv4/tcp.cmemcpy(skb_push(skb,dev->hard_header_len),rt->rt_hh->hh_data,dev->hard_header_len);
rt712net/ipv4/tcp.cif (!rt->rt_hh->hh_uptodate)
rt716net/ipv4/tcp.cprintk("tcp_do_retransmit: hh miss %08x via %08x\n", iph->daddr, rt->rt_gateway);
rt1093net/ipv4/tcp.cstruct rtable * rt;
rt1100net/ipv4/tcp.cif ((rt = sk->ip_route_cache) != NULL)
rt1101net/ipv4/tcp.cif (rt->rt_mtu > new_mtu)
rt1102net/ipv4/tcp.crt->rt_mtu = new_mtu;
rt2931net/ipv4/tcp.cstruct rtable *rt;
rt3085net/ipv4/tcp.crt = ip_rt_route(newsk->opt && newsk->opt->srr ? newsk->opt->faddr : saddr, 0);
rt3086net/ipv4/tcp.cnewsk->ip_route_cache = rt;
rt3088net/ipv4/tcp.cif(rt!=NULL && (rt->rt_flags&RTF_WINDOW))
rt3089net/ipv4/tcp.cnewsk->window_clamp = rt->rt_window;
rt3095net/ipv4/tcp.celse if (rt)
rt3096net/ipv4/tcp.cnewsk->mtu = rt->rt_mtu - sizeof(struct iphdr) - sizeof(struct tcphdr);
rt4537net/ipv4/tcp.cstruct rtable *rt;
rt4601net/ipv4/tcp.cif ((rt = sk->ip_route_cache) != NULL && !sk->saddr)
rt4602net/ipv4/tcp.csk->saddr = rt->rt_src;
rt4624net/ipv4/tcp.cif(rt!=NULL && (rt->rt_flags&RTF_WINDOW))
rt4625net/ipv4/tcp.csk->window_clamp=rt->rt_window;
rt4631net/ipv4/tcp.celse if (rt)
rt4632net/ipv4/tcp.csk->mtu = rt->rt_mtu - sizeof(struct iphdr) - sizeof(struct tcphdr);
rt4678net/ipv4/tcp.cif(rt&&rt->rt_flags&RTF_IRTT)
rt4679net/ipv4/tcp.csk->rto = rt->rt_irtt;
rt301net/ipv4/udp.cconst unsigned char *from, int len, int rt,
rt327net/ipv4/udp.csin->sin_addr.s_addr, saddr, sk->opt, rt, IPPROTO_UDP, noblock);
rt330net/ipv4/udp.csin->sin_addr.s_addr, saddr, sk->opt, rt, IPPROTO_UDP, noblock);
rt549net/ipv4/udp.cstruct rtable *rt;
rt561net/ipv4/udp.crt=ip_rt_route((__u32)usin->sin_addr.s_addr, sk->localroute);
rt562net/ipv4/udp.cif (rt==NULL)
rt565net/ipv4/udp.csk->saddr = rt->rt_src;    /* Update source address */
rt567net/ipv4/udp.csk->rcv_saddr = rt->rt_src;
rt572net/ipv4/udp.csk->ip_route_cache = rt;
rt957net/ipx/af_ipx.cipx_route  *rt;
rt960net/ipx/af_ipx.crt = ipxrtr_lookup(network);
rt961net/ipx/af_ipx.cif (rt==NULL) {
rt962net/ipx/af_ipx.crt=(ipx_route *)kmalloc(sizeof(ipx_route),GFP_ATOMIC);
rt963net/ipx/af_ipx.cif(rt==NULL)
rt965net/ipx/af_ipx.crt->ir_next=ipx_routes;
rt966net/ipx/af_ipx.cipx_routes=rt;
rt969net/ipx/af_ipx.crt->ir_net = network;
rt970net/ipx/af_ipx.crt->ir_intrfc = intrfc;
rt972net/ipx/af_ipx.cmemset(rt->ir_router_node, '\0', IPX_NODE_LEN);
rt973net/ipx/af_ipx.crt->ir_routed = 0;
rt975net/ipx/af_ipx.cmemcpy(rt->ir_router_node, node, IPX_NODE_LEN);
rt976net/ipx/af_ipx.crt->ir_routed=1;
rt1043net/ipx/af_ipx.cipx_route *rt = NULL;
rt1054net/ipx/af_ipx.crt = ipxrtr_lookup(usipx->sipx_network);
rt1055net/ipx/af_ipx.cif (rt==NULL) {
rt1058net/ipx/af_ipx.cintrfc = rt->ir_intrfc;
rt1098net/ipx/af_ipx.creturn ipxitf_send(intrfc, skb, (rt && rt->ir_routed) ? 
rt1099net/ipx/af_ipx.crt->ir_router_node : ipx->ipx_dest.node);
rt1128net/ipx/af_ipx.cstruct rtentry rt;  /* Use these to behave like 'other' stacks */
rt1131net/ipx/af_ipx.cerr=verify_area(VERIFY_READ,arg,sizeof(rt));
rt1135net/ipx/af_ipx.cmemcpy_fromfs(&rt,arg,sizeof(rt));
rt1137net/ipx/af_ipx.csg=(struct sockaddr_ipx *)&rt.rt_gateway;
rt1138net/ipx/af_ipx.cst=(struct sockaddr_ipx *)&rt.rt_dst;
rt1140net/ipx/af_ipx.cif(!(rt.rt_flags&RTF_GATEWAY))
rt1287net/ipx/af_ipx.cipx_route *rt;
rt1294net/ipx/af_ipx.cfor (rt = ipx_routes; rt != NULL; rt = rt->ir_next)
rt1296net/ipx/af_ipx.clen += sprintf (buffer+len,"%08lX   ", ntohl(rt->ir_net));
rt1297net/ipx/af_ipx.cif (rt->ir_routed) {
rt1299net/ipx/af_ipx.cntohl(rt->ir_intrfc->if_netnum), 
rt1300net/ipx/af_ipx.crt->ir_router_node[0], rt->ir_router_node[1], 
rt1301net/ipx/af_ipx.crt->ir_router_node[2], rt->ir_router_node[3], 
rt1302net/ipx/af_ipx.crt->ir_router_node[4], rt->ir_router_node[5]);