taglinefilesource code
iph113arch/alpha/lib/checksum.cunsigned short ip_fast_csum(unsigned char * iph, unsigned int ihl)
iph115arch/alpha/lib/checksum.creturn ~do_csum(iph,ihl*4);
iph132drivers/net/tunnel.cstruct iphdr *iph;    /* Our new IP header */
iph168drivers/net/tunnel.ciph=(struct iphdr *)skb->data;
iph169drivers/net/tunnel.cif ( iph->version != 4 ) 
iph174drivers/net/tunnel.cprintk("%s: Bad IP packet: ip version %d\n", dev->name, iph->version);
iph185drivers/net/tunnel.cif ( iph->protocol == IPPROTO_IPIP && iph->saddr == dev->pa_addr ) 
iph196drivers/net/tunnel.cif ( iph->daddr == dev->pa_addr ) 
iph206drivers/net/tunnel.cprint_ip(iph);
iph226drivers/net/tunnel.ciph=skb2->h.iph=(struct iphdr *)skb2->data;
iph227drivers/net/tunnel.cskb2->ip_hdr=iph;
iph228drivers/net/tunnel.cmemcpy(skb2->h.iph, skb->data, ip_header_len );
iph234drivers/net/tunnel.c++iph->ttl;  /* Note: ip_forward() decrements ttl, so compensate */
iph235drivers/net/tunnel.ciph->saddr = dev->pa_addr;
iph236drivers/net/tunnel.ciph->daddr = dev->pa_dstaddr;
iph237drivers/net/tunnel.ciph->protocol = IPPROTO_IPIP;
iph238drivers/net/tunnel.ciph->ihl = 5;
iph239drivers/net/tunnel.ciph->tot_len = htons(skb2->len);
iph240drivers/net/tunnel.ciph->frag_off = 0;
iph244drivers/net/tunnel.ciph->check = 0;
iph245drivers/net/tunnel.ciph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);
iph249drivers/net/tunnel.cprint_ip(iph);
iph255drivers/net/tunnel.cif(ip_forward(skb2, dev, 0, iph->daddr))
iph9include/asm-alpha/checksum.hextern unsigned short ip_fast_csum(unsigned char * iph, unsigned int ihl);
iph45include/asm-i386/checksum.hstatic inline unsigned short ip_fast_csum(unsigned char * iph,
iph68include/asm-i386/checksum.h: "=&r" (sum), "=&r" (iph), "=&r" (ihl)
iph69include/asm-i386/checksum.h: "1" (iph), "2" (ihl));
iph54include/linux/skbuff.hstruct iphdr  *iph;
iph64include/net/ip.hstruct iphdr  *iph;    /* pointer to IP header      */
iph248net/ethernet/eth.cstruct iphdr *iph;
iph266net/ethernet/eth.ciph=(struct iphdr*)(src+14);  /* 14 = Rx_addr+Tx_addr+type_field */
iph267net/ethernet/eth.cip_length = ntohs(iph->tot_len) - sizeof(struct iphdr);
iph253net/ipv4/icmp.cstruct iphdr *iph;
iph263net/ipv4/icmp.ciph = skb_in->ip_hdr;
iph276net/ipv4/icmp.catype=ip_chk_addr(iph->daddr);
iph285net/ipv4/icmp.cif(iph->frag_off&htons(IP_OFFSET))
iph298net/ipv4/icmp.cif(iph->protocol==IPPROTO_ICMP)
iph300net/ipv4/icmp.cicmph = (struct icmphdr *)((char *)iph + (iph->ihl<<2));
iph314net/ipv4/icmp.csaddr=iph->daddr;
iph321net/ipv4/icmp.cicmp_param.data_ptr=iph;
iph322net/ipv4/icmp.cicmp_param.data_len=(iph->ihl<<2)+8;  /* RFC says return header + 8 bytes */
iph328net/ipv4/icmp.cif (ip_options_echo(&icmp_param.replyopts, NULL, saddr, iph->saddr, skb_in) == 0)
iph329net/ipv4/icmp.cicmp_build_xmit(&icmp_param, saddr, iph->saddr);
iph339net/ipv4/icmp.cstruct iphdr *iph;
iph344net/ipv4/icmp.ciph = (struct iphdr *) (icmph + 1);
iph346net/ipv4/icmp.cdp= ((unsigned char *)iph)+(iph->ihl<<2);
iph358net/ipv4/icmp.cin_ntoa(iph->daddr), ntohs(iph->protocol));
iph364net/ipv4/icmp.cin_ntoa(iph->daddr));
iph367net/ipv4/icmp.cprintk("ICMP: %s: Source Route Failed.\n", in_ntoa(iph->daddr));
iph388net/ipv4/icmp.chash = iph->protocol & (MAX_INET_PROTOS -1);
iph410net/ipv4/icmp.cif (iph->protocol == ipprot->protocol && ipprot->err_handler) 
iph413net/ipv4/icmp.ciph->daddr, iph->saddr, ipprot);
iph431net/ipv4/icmp.cstruct iphdr *iph;
iph438net/ipv4/icmp.ciph = (struct iphdr *) (icmph + 1);
iph439net/ipv4/icmp.cip = iph->daddr;
iph184net/ipv4/ip.cunsigned char * iph = (unsigned char*)skb->ip_hdr;
iph187net/ipv4/ip.cmemcpy(iph+sizeof(struct iphdr), opt->__data, opt->optlen);
iph192net/ipv4/ip.cmemcpy(iph+opt->srr+iph[opt->srr+1]-4, &daddr, 4);
iph196net/ipv4/ip.cmemcpy(iph+opt->rr+iph[opt->rr+2]-5, &saddr, 4);
iph198net/ipv4/ip.cmemcpy(iph+opt->ts+iph[opt->ts+2]-9, &saddr, 4);
iph204net/ipv4/ip.cmemcpy(iph+opt->ts+iph[opt->ts+2]-5, &midtime, 4);
iph209net/ipv4/ip.cmemset(iph+opt->rr, IPOPT_NOP, iph[opt->rr+1]);
iph214net/ipv4/ip.cmemset(iph+opt->ts, IPOPT_NOP, iph[opt->ts+1]);
iph368net/ipv4/ip.cunsigned char * iph;
iph376net/ipv4/ip.ciph = (unsigned char*)skb->ip_hdr;
iph377net/ipv4/ip.copt->optlen = ((struct iphdr *)iph)->ihl*4 - sizeof(struct iphdr);
iph378net/ipv4/ip.coptptr = iph + sizeof(struct iphdr);
iph382net/ipv4/ip.ciph = optptr - sizeof(struct iphdr);
iph431net/ipv4/ip.copt->srr = optptr - iph;
iph458net/ipv4/ip.copt->rr = optptr - iph;
iph482net/ipv4/ip.copt->ts = optptr - iph;
iph494net/ipv4/ip.copt->ts = optptr - iph;
iph508net/ipv4/ip.copt->ts = optptr - iph;
iph539net/ipv4/ip.copt->ts = optptr - iph;
iph564net/ipv4/ip.cicmp_send(skb, ICMP_PARAMETERPROB, 0, pp_ptr-iph, skb->dev);
iph649net/ipv4/ip.cstruct iphdr *iph;
iph749net/ipv4/ip.ciph=(struct iphdr *)skb_put(skb,sizeof(struct iphdr) + opt->optlen);
iph751net/ipv4/ip.ciph=(struct iphdr *)skb_put(skb,sizeof(struct iphdr));
iph753net/ipv4/ip.ciph->version  = 4;
iph754net/ipv4/ip.ciph->ihl      = 5;
iph755net/ipv4/ip.ciph->tos      = tos;
iph756net/ipv4/ip.ciph->frag_off = 0;
iph757net/ipv4/ip.ciph->ttl      = ttl;
iph758net/ipv4/ip.ciph->daddr    = daddr;
iph759net/ipv4/ip.ciph->saddr    = saddr;
iph760net/ipv4/ip.ciph->protocol = type;
iph761net/ipv4/ip.cskb->ip_hdr   = iph;
iph769net/ipv4/ip.ciph->ihl += opt->optlen>>2;
iph771net/ipv4/ip.creturn iph->ihl*4 + tmp;
iph779net/ipv4/ip.cvoid ip_send_check(struct iphdr *iph)
iph781net/ipv4/ip.ciph->check = 0;
iph782net/ipv4/ip.ciph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);
iph828net/ipv4/ip.cstatic struct ipq *ip_find(struct iphdr *iph)
iph837net/ipv4/ip.cif (iph->id== qp->iph->id && iph->saddr == qp->iph->saddr &&
iph838net/ipv4/ip.ciph->daddr == qp->iph->daddr && iph->protocol == qp->iph->protocol)
iph895net/ipv4/ip.ckfree_s(qp->iph, 64 + 8);
iph938net/ipv4/ip.cstatic struct ipq *ip_create(struct sk_buff *skb, struct iphdr *iph, struct device *dev)
iph956net/ipv4/ip.cihlen = iph->ihl * 4;
iph957net/ipv4/ip.cqp->iph = (struct iphdr *) kmalloc(64 + 8, GFP_ATOMIC);
iph958net/ipv4/ip.cif (qp->iph == NULL)
iph965net/ipv4/ip.cmemcpy(qp->iph, iph, ihlen + 8);
iph1029net/ipv4/ip.cstruct iphdr *iph;
iph1054net/ipv4/ip.cmemcpy(ptr, ((unsigned char *) qp->iph), qp->ihlen);
iph1080net/ipv4/ip.ciph = skb->h.iph;
iph1081net/ipv4/ip.ciph->frag_off = 0;
iph1082net/ipv4/ip.ciph->tot_len = htons((iph->ihl * 4) + count);
iph1083net/ipv4/ip.cskb->ip_hdr = iph;
iph1094net/ipv4/ip.cstatic struct sk_buff *ip_defrag(struct iphdr *iph, struct sk_buff *skb, struct device *dev)
iph1107net/ipv4/ip.cqp = ip_find(iph);
iph1110net/ipv4/ip.coffset = ntohs(iph->frag_off);
iph1121net/ipv4/ip.cihl = iph->ihl * 4;
iph1137net/ipv4/ip.cmemcpy(qp->iph, iph, ihl+8);
iph1150net/ipv4/ip.cif ((qp = ip_create(skb, iph, dev)) == NULL)
iph1163net/ipv4/ip.cend = offset + ntohs(iph->tot_len) - ihl;
iph1296net/ipv4/ip.cstruct iphdr *iph;
iph1310net/ipv4/ip.ciph = (struct iphdr *) (raw + dev->hard_header_len);  
iph1311net/ipv4/ip.cskb->ip_hdr = iph;
iph1313net/ipv4/ip.ciph = skb->ip_hdr;
iph1320net/ipv4/ip.chlen = iph->ihl * 4;
iph1321net/ipv4/ip.cleft = ntohs(iph->tot_len) - hlen;  /* Space per frame */
iph1330net/ipv4/ip.cif (ntohs(iph->frag_off) & IP_DF)
iph1361net/ipv4/ip.coffset = (ntohs(iph->frag_off) & IP_OFFSET) << 3;
iph1436net/ipv4/ip.ciph = (struct iphdr *)(skb2->h.raw/*+dev->hard_header_len*/);
iph1437net/ipv4/ip.ciph->frag_off = htons((offset >> 3));
iph1438net/ipv4/ip.cskb2->ip_hdr = iph;
iph1454net/ipv4/ip.ciph->frag_off |= htons(IP_MF);
iph1487net/ipv4/ip.cstruct iphdr *iph=(struct iphdr *)skb_push(skb,sizeof(struct iphdr));
iph1490net/ipv4/ip.ciph->version  =   4;
iph1491net/ipv4/ip.ciph->tos  =  skb->ip_hdr->tos;
iph1492net/ipv4/ip.ciph->ttl  =  skb->ip_hdr->ttl;
iph1493net/ipv4/ip.ciph->frag_off  =  0;
iph1494net/ipv4/ip.ciph->daddr  =  daddr;
iph1495net/ipv4/ip.ciph->saddr  =  out->pa_addr;
iph1496net/ipv4/ip.ciph->protocol  =  IPPROTO_IPIP;
iph1497net/ipv4/ip.ciph->ihl  =  5;
iph1498net/ipv4/ip.ciph->tot_len  =  htons(skb->len);
iph1499net/ipv4/ip.ciph->id    =  htons(ip_id_count++);
iph1500net/ipv4/ip.cip_send_check(iph);
iph1525net/ipv4/ip.cstruct iphdr *iph;  /* Our header */
iph1546net/ipv4/ip.cfw_res=ip_fw_chk(skb->h.iph, dev, ip_fw_fwd_chain, ip_fw_fwd_policy, 0);
iph1572net/ipv4/ip.ciph = skb->h.iph;
iph1573net/ipv4/ip.ciph->ttl--;
iph1581net/ipv4/ip.ciph->check = ntohs(iph->check) + 0x0100;
iph1582net/ipv4/ip.cif ((iph->check & 0xFF00) == 0)
iph1583net/ipv4/ip.ciph->check++;    /* carry overflow */
iph1584net/ipv4/ip.ciph->check = htons(iph->check);
iph1586net/ipv4/ip.cif (iph->ttl <= 0)
iph1655net/ipv4/ip.cif (dev == dev2 && !((iph->saddr^iph->daddr)&dev->pa_mask) &&
iph1691net/ipv4/ip.cif (skb->len+encap > dev2->mtu && (ntohs(iph->frag_off) & IP_DF)) {
iph1745net/ipv4/ip.ciph = skb2->ip_hdr = skb2->h.iph;
iph1777net/ipv4/ip.coptptr = (unsigned char *)iph + opt->rr;
iph1784net/ipv4/ip.coptptr = (unsigned char *)iph + opt->srr;
iph1798net/ipv4/ip.ciph->daddr = target_addr;
iph1804net/ipv4/ip.coptptr = (unsigned char *)iph + opt->ts;
iph1810net/ipv4/ip.cip_send_check(iph);
iph1836net/ipv4/ip.cip_fw_chk(iph,dev,ip_acct_chain,IP_FW_F_ACCEPT,1);
iph1844net/ipv4/ip.cif(iph->tos & IPTOS_LOWDELAY)
iph1846net/ipv4/ip.celse if(iph->tos & IPTOS_THROUGHPUT)
iph1889net/ipv4/ip.cstruct iphdr *iph = skb->h.iph;
iph1909net/ipv4/ip.cif(iph->version == 6)
iph1919net/ipv4/ip.cskb->ip_hdr = iph;
iph1934net/ipv4/ip.cif (skb->len<sizeof(struct iphdr) || iph->ihl<5 || iph->version != 4 || ip_fast_csum((unsigned char *)iph, iph->ihl) !=0
iph1935net/ipv4/ip.c|| skb->len < ntohs(iph->tot_len))
iph1948net/ipv4/ip.cskb_trim(skb,ntohs(iph->tot_len));
iph1950net/ipv4/ip.cif (iph->ihl > 5) {
iph1969net/ipv4/ip.cif ((err=ip_fw_chk(iph,dev,ip_fw_blk_chain,ip_fw_blk_policy, 0))<FW_ACCEPT)
iph1983net/ipv4/ip.cif(iph->frag_off)
iph1985net/ipv4/ip.cif (iph->frag_off & htons(IP_MF))
iph1991net/ipv4/ip.cif (iph->frag_off & htons(IP_OFFSET))
iph2007net/ipv4/ip.cif ( iph->daddr == skb->dev->pa_addr || (brd = ip_chk_addr(iph->daddr)) != 0)
iph2012net/ipv4/ip.cunsigned char * optptr = ((unsigned char *)iph) + opt->srr;
iph2063net/ipv4/ip.cif(!(dev->flags&IFF_ALLMULTI) && brd==IS_MULTICAST && iph->daddr!=IGMP_ALL_HOSTS && !(dev->flags&IFF_LOOPBACK))
iph2076net/ipv4/ip.cif(ip_mc->multiaddr==iph->daddr)
iph2090net/ipv4/ip.cstruct iphdr *iph=skb->h.iph;
iph2091net/ipv4/ip.cif (ip_forward(skb, dev, is_frag|4, iph->daddr))
iph2102net/ipv4/ip.cip_fw_chk(iph,dev,ip_acct_chain,IP_FW_F_ACCEPT,1);
iph2112net/ipv4/ip.cskb=ip_defrag(iph,skb,dev);
iph2116net/ipv4/ip.ciph=skb->h.iph;
iph2123net/ipv4/ip.cskb->ip_hdr = iph;
iph2124net/ipv4/ip.cskb->h.raw += iph->ihl*4;
iph2131net/ipv4/ip.cif(brd==IS_MULTICAST && (iph->daddr&htonl(0xFFFFFF00))!=htonl(0xE0000000))
iph2141net/ipv4/ip.chash = iph->protocol & (SOCK_ARRAY_SIZE-1);
iph2151net/ipv4/ip.craw_sk=get_sock_raw(raw_sk, iph->protocol,  iph->saddr, iph->daddr);
iph2157net/ipv4/ip.csknext=get_sock_raw(raw_sk->next, iph->protocol, iph->saddr, iph->daddr);
iph2163net/ipv4/ip.craw_rcv(raw_sk, skb1, dev, iph->saddr,iph->daddr);
iph2182net/ipv4/ip.chash = iph->protocol & (MAX_INET_PROTOS -1);
iph2187net/ipv4/ip.cif (ipprot->protocol != iph->protocol)
iph2218net/ipv4/ip.cipprot->handler(skb2, dev, opt, iph->daddr,
iph2219net/ipv4/ip.c(ntohs(iph->tot_len) - (iph->ihl * 4)),
iph2220net/ipv4/ip.ciph->saddr, 0, ipprot);
iph2255net/ipv4/ip.craw_rcv(raw_sk, skb, dev, iph->saddr, iph->daddr);
iph2290net/ipv4/ip.cif (ip_forward(skb, dev, is_frag, iph->daddr))
iph2360net/ipv4/ip.cstruct iphdr *iph;
iph2388net/ipv4/ip.ciph = skb->ip_hdr;
iph2389net/ipv4/ip.ciph->tot_len = ntohs(skb->len-(((unsigned char *)iph)-skb->data));
iph2392net/ipv4/ip.cif(ip_fw_chk(iph, dev, ip_fw_blk_chain, ip_fw_blk_policy, 0) < FW_ACCEPT)
iph2402net/ipv4/ip.ciph->id      = htons(ip_id_count++);
iph2418net/ipv4/ip.cif(ntohs(iph->tot_len)> dev->mtu)
iph2430net/ipv4/ip.cip_send_check(iph);
iph2494net/ipv4/ip.cip_fw_chk(iph,dev,ip_acct_chain,IP_FW_F_ACCEPT,1);
iph2503net/ipv4/ip.cif (MULTICAST(iph->daddr) && !(dev->flags&IFF_LOOPBACK))
iph2507net/ipv4/ip.cif(iph->daddr==IGMP_ALL_HOSTS || (dev->flags&IFF_ALLMULTI))
iph2516net/ipv4/ip.cif(imc->multiaddr==iph->daddr)
iph2534net/ipv4/ip.cif((dev->flags&IFF_BROADCAST) && (iph->daddr==dev->pa_brdaddr||iph->daddr==0xFFFFFFFF) && !(dev->flags&IFF_LOOPBACK))
iph3093net/ipv4/ip.cstruct iphdr *iph;
iph3230net/ipv4/ip.cskb->ip_hdr=iph=(struct iphdr *)skb_put(skb,length);
iph3234net/ipv4/ip.ciph->version=4;
iph3235net/ipv4/ip.ciph->ihl=5;
iph3236net/ipv4/ip.ciph->tos=sk->ip_tos;
iph3237net/ipv4/ip.ciph->tot_len = htons(length);
iph3238net/ipv4/ip.ciph->id=htons(ip_id_count++);
iph3239net/ipv4/ip.ciph->frag_off = 0;
iph3240net/ipv4/ip.ciph->ttl=sk->ip_ttl;
iph3241net/ipv4/ip.ciph->protocol=type;
iph3242net/ipv4/ip.ciph->saddr=saddr;
iph3243net/ipv4/ip.ciph->daddr=daddr;
iph3245net/ipv4/ip.ciph->ihl += opt->optlen>>2;
iph3249net/ipv4/ip.ciph->check=0;
iph3250net/ipv4/ip.ciph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);
iph3251net/ipv4/ip.cgetfrag(frag,saddr,((char *)iph)+iph->ihl*4,0, length-iph->ihl*4);
iph3254net/ipv4/ip.cgetfrag(frag,saddr,(void *)iph,0,length-20);
iph3257net/ipv4/ip.cif(ip_fw_chk(iph, dev, ip_fw_blk_chain, ip_fw_blk_policy,0) < FW_ACCEPT)
iph3399net/ipv4/ip.cskb->ip_hdr = iph = (struct iphdr *)data;
iph3408net/ipv4/ip.ciph->version = 4;
iph3409net/ipv4/ip.ciph->ihl = 5; /* ugh */
iph3411net/ipv4/ip.ciph->ihl += opt->optlen>>2;
iph3415net/ipv4/ip.ciph->tos = sk->ip_tos;
iph3416net/ipv4/ip.ciph->tot_len = htons(fraglen - fragheaderlen + iph->ihl*4);
iph3417net/ipv4/ip.ciph->id = id;
iph3418net/ipv4/ip.ciph->frag_off = htons(offset>>3);
iph3419net/ipv4/ip.ciph->frag_off |= mf;
iph3422net/ipv4/ip.ciph->ttl = sk->ip_mc_ttl;
iph3425net/ipv4/ip.ciph->ttl = sk->ip_ttl;
iph3426net/ipv4/ip.ciph->protocol = type;
iph3427net/ipv4/ip.ciph->check = 0;
iph3428net/ipv4/ip.ciph->saddr = saddr;
iph3429net/ipv4/ip.ciph->daddr = daddr;
iph3430net/ipv4/ip.ciph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);
iph3431net/ipv4/ip.cdata += iph->ihl*4;
iph3451net/ipv4/ip.cif(!offset && ip_fw_chk(iph, dev, ip_fw_blk_chain, ip_fw_blk_policy,0) < FW_ACCEPT)
iph3460net/ipv4/ip.cip_fw_chk(iph, dev, ip_acct_chain, IP_FW_F_ACCEPT, 1);
iph580net/ipv4/ip_fw.cstruct iphdr *iph = skb->h.iph;
iph581net/ipv4/ip_fw.cstruct tcphdr *th = (struct tcphdr *)&(((char *)iph)[iph->ihl*4]);
iph660net/ipv4/ip_fw.cms->dst      = iph->daddr;
iph730net/ipv4/ip_fw.ciph=skb2->h.iph;
iph734net/ipv4/ip_fw.ciph->tot_len = htons(diff+ntohs(iph->tot_len));
iph735net/ipv4/ip_fw.ciph->check = 0;
iph736net/ipv4/ip_fw.ciph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);
iph751net/ipv4/ip_fw.ciph->tot_len = htons(skb->len + diff);
iph777net/ipv4/ip_fw.cstruct iphdr  *iph = skb->h.iph;
iph786net/ipv4/ip_fw.cif (iph->protocol!=IPPROTO_UDP && iph->protocol!=IPPROTO_TCP)
iph793net/ipv4/ip_fw.cportptr = (unsigned short *)&(((char *)iph)[iph->ihl*4]);
iph798net/ipv4/ip_fw.cstrProt[iph->protocol==IPPROTO_TCP],
iph799net/ipv4/ip_fw.cntohl(iph->saddr), ntohs(portptr[0]),
iph800net/ipv4/ip_fw.cntohl(iph->daddr), ntohs(portptr[1]));
iph804net/ipv4/ip_fw.cif (iph->protocol == ms->protocol &&
iph805net/ipv4/ip_fw.ciph->saddr == ms->src   && iph->daddr == ms->dst &&
iph826net/ipv4/ip_fw.cms->protocol = iph->protocol;
iph827net/ipv4/ip_fw.cms->src      = iph->saddr;
iph828net/ipv4/ip_fw.cms->dst      = iph->daddr;
iph838net/ipv4/ip_fw.ciph->saddr = dev->pa_addr; /* my own address */
iph845net/ipv4/ip_fw.cif (iph->protocol==IPPROTO_UDP) 
iph848net/ipv4/ip_fw.crecalc_check((struct udphdr *)portptr,iph->saddr,iph->daddr,size);
iph857net/ipv4/ip_fw.ciph = skb->h.iph;
iph858net/ipv4/ip_fw.cportptr = (unsigned short *)&(((char *)iph)[iph->ihl*4]);
iph873net/ipv4/ip_fw.ctcp_send_check(th,iph->saddr,iph->daddr,size,skb->sk);
iph876net/ipv4/ip_fw.cip_send_check(iph);
iph894net/ipv4/ip_fw.cstruct iphdr  *iph = skb_ptr->h.iph;
iph897net/ipv4/ip_fw.cstruct tcphdr   *th = (struct tcphdr *)(skb_ptr->h.raw+(iph->ihl<<2));
iph899net/ipv4/ip_fw.cif (iph->protocol!=IPPROTO_UDP && iph->protocol!=IPPROTO_TCP)
iph902net/ipv4/ip_fw.cportptr = (unsigned short *)&(((char *)iph)[iph->ihl*4]);
iph909net/ipv4/ip_fw.cstrProt[iph->protocol==IPPROTO_TCP],
iph910net/ipv4/ip_fw.cntohl(iph->saddr), ntohs(portptr[0]),
iph911net/ipv4/ip_fw.cntohl(iph->daddr), ntohs(portptr[1]));
iph926net/ipv4/ip_fw.cif (iph->protocol==ms->protocol &&
iph927net/ipv4/ip_fw.c(iph->saddr==ms->dst || iph->protocol==IPPROTO_UDP) && 
iph933net/ipv4/ip_fw.ciph->daddr = ms->src;
iph947net/ipv4/ip_fw.cif (iph->protocol==IPPROTO_UDP)
iph948net/ipv4/ip_fw.crecalc_check((struct udphdr *)portptr,iph->saddr,iph->daddr,size);
iph978net/ipv4/ip_fw.ctcp_send_check((struct tcphdr *)portptr,iph->saddr,iph->daddr,size,skb_ptr->sk);
iph980net/ipv4/ip_fw.cip_send_check(iph);
iph982net/ipv4/ip_fw.cprintk("I-routed to %lX:%X\n",ntohl(iph->daddr),ntohs(portptr[1]));
iph1341net/ipv4/ip_fw.cvoid ip_acct_cnt(struct iphdr *iph, struct device *dev, struct ip_fw *f)
iph1343net/ipv4/ip_fw.c(void) ip_fw_chk(iph, dev, f, 0, 1);
iph84net/ipv4/ipip.cskb->h.iph=(struct iphdr *)skb->data;
iph269net/ipv4/ipmr.cskb->h.iph=skb->ip_hdr;
iph714net/ipv4/ipmr.cskb->raddr=skb->h.iph->daddr;
iph164net/ipv4/raw.cstruct iphdr *iph=(struct iphdr *)to;
iph165net/ipv4/raw.ciph->saddr=saddr;
iph166net/ipv4/raw.ciph->check=0;
iph167net/ipv4/raw.ciph->tot_len=htons(fraglen);  /* This is right as you cant frag
iph173net/ipv4/raw.ciph->id = htons(ip_id_count++);
iph174net/ipv4/raw.ciph->check=ip_fast_csum((unsigned char *)iph, iph->ihl);
iph644net/ipv4/tcp.cstruct iphdr *iph;
iph666net/ipv4/tcp.ciph = (struct iphdr *)skb->data;
iph667net/ipv4/tcp.cth = (struct tcphdr *)(((char *)iph) + (iph->ihl << 2));
iph668net/ipv4/tcp.csize = ntohs(iph->tot_len) - (iph->ihl<<2);
iph675net/ipv4/tcp.ciph->id = htons(ip_id_count++);
iph676net/ipv4/tcp.cip_send_check(iph);
iph683net/ipv4/tcp.crt=ip_rt_local(iph->daddr,NULL,NULL);
iph685net/ipv4/tcp.crt=ip_rt_route(iph->daddr,NULL,NULL);
iph700net/ipv4/tcp.cskb->raddr=iph->daddr;
iph1043net/ipv4/tcp.cstruct iphdr *iph=(struct iphdr *)header;
iph1045net/ipv4/tcp.cheader+=4*iph->ihl;
iph3281net/ipv4/tcp.cstruct iphdr *iph;
iph3290net/ipv4/tcp.ciph = skb->ip_hdr;
iph3291net/ipv4/tcp.cth = (struct tcphdr *)(((char *)iph) +(iph->ihl << 2));
iph5165net/ipv4/tcp.cstruct iphdr *iph;
iph5184net/ipv4/tcp.ciph = (struct iphdr *)skb->ip_hdr;
iph5185net/ipv4/tcp.cth = (struct tcphdr *)(((char *)iph) +(iph->ihl << 2));
iph5192net/ipv4/tcp.c(iph->ihl << 2) +
iph5245net/ipv4/tcp.c(iph->ihl << 2) + th->doff * 4;