taglinefilesource code
ihl113arch/alpha/lib/checksum.cunsigned short ip_fast_csum(unsigned char * iph, unsigned int ihl)
ihl115arch/alpha/lib/checksum.creturn ~do_csum(iph,ihl*4);
ihl108drivers/net/new_tunnel.cprintk("--- header len = %d\n", ip->ihl*4);
ihl274drivers/net/new_tunnel.ciph->ihl    =  5;
ihl268drivers/net/slhc.cth = (struct tcphdr *)(((unsigned char *)ip) + ip->ihl*4);
ihl269drivers/net/slhc.chlen = ip->ihl*4 + th->doff*4;
ihl352drivers/net/slhc.c|| ip->version != cs->cs_ip.version || ip->ihl != cs->cs_ip.ihl
ihl357drivers/net/slhc.c|| (ip->ihl > 5 && memcmp(ip+1,cs->cs_ipopt,((ip->ihl)-5)*4) != 0)
ihl477drivers/net/slhc.cif (ip->ihl > 5)
ihl478drivers/net/slhc.cmemcpy(cs->cs_ipopt, ip+1, ((ip->ihl) - 5) * 4);
ihl544drivers/net/slhc.chdrlen = ip->ihl * 4 + thp->doff * 4;
ihl617drivers/net/slhc.cif (ip->ihl > 5) {
ihl618drivers/net/slhc.cmemcpy(cp, cs->cs_ipopt, (ip->ihl - 5) * 4);
ihl619drivers/net/slhc.ccp += (ip->ihl - 5) * 4;
ihl623drivers/net/slhc.cstw_u(ip_fast_csum(icp, ip->ihl), &((struct iphdr *)icp)->check);
ihl625drivers/net/slhc.c((struct iphdr *)icp)->check = ip_fast_csum(icp, ((struct iphdr*)icp)->ihl);
ihl647drivers/net/slhc.cunsigned ihl;
ihl657drivers/net/slhc.cihl = icp[0] & 0xf;
ihl658drivers/net/slhc.cif(ihl < 20 / 4){
ihl666drivers/net/slhc.cif (ip_fast_csum(icp, ihl)) {
ihl680drivers/net/slhc.cmemcpy(&cs->cs_tcp,icp + ihl*4,20);
ihl681drivers/net/slhc.cif (ihl > 5)
ihl682drivers/net/slhc.cmemcpy(cs->cs_ipopt, icp + sizeof(struct iphdr), (ihl - 5) * 4);
ihl684drivers/net/slhc.cmemcpy(cs->cs_tcpopt, icp + ihl*4 + sizeof(struct tcphdr), (cs->cs_tcp.doff - 5) * 4);
ihl685drivers/net/slhc.ccs->cs_hsize = ihl*2 + cs->cs_tcp.doff*2;
ihl104drivers/net/tunnel.cprintk("--- header len = %d\n", ip->ihl*4);
ihl234drivers/net/tunnel.ciph->ihl = 5;
ihl241drivers/net/tunnel.ciph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);
ihl9include/asm-alpha/checksum.hextern unsigned short ip_fast_csum(unsigned char * iph, unsigned int ihl);
ihl46include/asm-i386/checksum.hunsigned int ihl) {
ihl68include/asm-i386/checksum.h: "=&r" (sum), "=&r" (iph), "=&r" (ihl)
ihl69include/asm-i386/checksum.h: "1" (iph), "2" (ihl));
ihl50include/asm-mips/checksum.hunsigned int ihl)
ihl96include/asm-mips/checksum.h: "r" (iph), "r"(ihl)
ihl9include/asm-ppc/checksum.hextern unsigned short ip_fast_csum(unsigned char * iph, unsigned int ihl);
ihl75include/asm-sparc/checksum.hextern inline unsigned short ip_fast_csum(unsigned char * iph, unsigned int ihl)
ihl77include/asm-sparc/checksum.hreturn ~do_csum(iph,ihl*4);
ihl92include/linux/ip.h__u8  ihl:4,
ihl96include/linux/ip.hihl:4;
ihl303net/ipv4/icmp.cicmph = (struct icmphdr *)((char *)iph + (iph->ihl<<2));
ihl325net/ipv4/icmp.cicmp_param.data_len=(iph->ihl<<2)+8;  /* RFC says return header + 8 bytes */
ihl349net/ipv4/icmp.cdp= ((unsigned char *)iph)+(iph->ihl<<2);
ihl62net/ipv4/ip_forward.ciph->ihl  =  5;
ihl271net/ipv4/ip_fragment.cihlen = iph->ihl * 4;
ihl397net/ipv4/ip_fragment.ciph->tot_len = htons((iph->ihl * 4) + count);
ihl417net/ipv4/ip_fragment.cint i, ihl, end;
ihl445net/ipv4/ip_fragment.cihl = iph->ihl * 4;
ihl460net/ipv4/ip_fragment.cqp->ihlen = ihl;
ihl461net/ipv4/ip_fragment.cmemcpy(qp->iph, iph, ihl+8);
ihl487net/ipv4/ip_fragment.cend = offset + ntohs(iph->tot_len) - ihl;
ihl493net/ipv4/ip_fragment.cptr = skb->data + ihl;
ihl644net/ipv4/ip_fragment.chlen = iph->ihl * 4;
ihl206net/ipv4/ip_fw.cstruct tcphdr    *tcp=(struct tcphdr *)((unsigned long *)ip+ip->ihl);
ihl207net/ipv4/ip_fw.cstruct udphdr    *udp=(struct udphdr *)((unsigned long *)ip+ip->ihl);
ihl208net/ipv4/ip_fw.cstruct icmphdr    *icmp=(struct icmphdr *)((unsigned long *)ip+ip->ihl);
ihl260net/ipv4/ip_fw.cif(ip->protocol==IPPROTO_TCP && (ip->ihl<<2)+16 > ntohs(ip->tot_len))
ihl267net/ipv4/ip_fw.celse if(ntohs(ip->tot_len)<8+(ip->ihl<<2))
ihl616net/ipv4/ip_fw.cstruct tcphdr *th = (struct tcphdr *)&(((char *)iph)[iph->ihl*4]);
ihl771net/ipv4/ip_fw.ciph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);
ihl828net/ipv4/ip_fw.cportptr = (unsigned short *)&(((char *)iph)[iph->ihl*4]);
ihl893net/ipv4/ip_fw.cportptr = (unsigned short *)&(((char *)iph)[iph->ihl*4]);
ihl933net/ipv4/ip_fw.cstruct tcphdr   *th = (struct tcphdr *)(skb->h.raw+(iph->ihl<<2));
ihl938net/ipv4/ip_fw.cportptr = (unsigned short *)&(((char *)iph)[iph->ihl*4]);
ihl1387net/ipv4/ip_fw.c} else if ( ip->ihl != sizeof(struct iphdr) / sizeof(int)) {
ihl1389net/ipv4/ip_fw.cprintk("ip_fw_ctl: ip->ihl=%d, want %d\n",ip->ihl,
ihl247net/ipv4/ip_input.cif (skb->len<sizeof(struct iphdr) || iph->ihl<5 || iph->version != 4 || ip_fast_csum((unsigned char *)iph, iph->ihl) !=0
ihl263net/ipv4/ip_input.cif (iph->ihl > 5) 
ihl454net/ipv4/ip_input.cskb->h.raw += iph->ihl*4;
ihl549net/ipv4/ip_input.c(ntohs(iph->tot_len) - (iph->ihl * 4)),
ihl247net/ipv4/ip_options.copt->optlen = ((struct iphdr *)iph)->ihl*4 - sizeof(struct iphdr);
ihl298net/ipv4/ip_output.ciph->ihl      = 5;
ihl309net/ipv4/ip_output.ciph->ihl += opt->optlen>>2;
ihl311net/ipv4/ip_output.creturn iph->ihl*4 + tmp;
ihl322net/ipv4/ip_output.ciph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);
ihl688net/ipv4/ip_output.ciph->ihl=5;
ihl699net/ipv4/ip_output.ciph->ihl += opt->optlen>>2;
ihl704net/ipv4/ip_output.ciph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);
ihl705net/ipv4/ip_output.cgetfrag(frag,saddr,((char *)iph)+iph->ihl*4,0, length-iph->ihl*4);
ihl873net/ipv4/ip_output.ciph->ihl = 5; /* ugh */
ihl875net/ipv4/ip_output.ciph->ihl += opt->optlen>>2;
ihl880net/ipv4/ip_output.ciph->tot_len = htons(fraglen - fragheaderlen + iph->ihl*4);
ihl894net/ipv4/ip_output.ciph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);
ihl895net/ipv4/ip_output.cdata += iph->ihl*4;
ihl68net/ipv4/ipip.cskb_pull(skb, ((struct iphdr *)skb->data)->ihl<<2);
ihl77net/ipv4/ipip.cif (skb->ip_hdr->ihl > 5) 
ihl256net/ipv4/ipmr.cint ihl=pkt->ip_hdr->ihl<<2;
ihl267net/ipv4/ipmr.cskb->ip_hdr=(struct iphdr *)skb_put(skb,ihl);
ihl269net/ipv4/ipmr.cmemcpy(skb->data,pkt->data,ihl);
ihl137net/ipv4/raw.cskb->ip_hdr->tot_len=ntohs(skb->ip_hdr->tot_len-4*skb->ip_hdr->ihl);
ihl186net/ipv4/raw.ciph->check=ip_fast_csum((unsigned char *)iph, iph->ihl);
ihl271net/ipv4/tcp_output.cth = (struct tcphdr *)(((char *)iph) +(iph->ihl << 2));
ihl363net/ipv4/tcp_output.cth = (struct tcphdr *)(((char *)iph) + (iph->ihl << 2));
ihl364net/ipv4/tcp_output.csize = ntohs(iph->tot_len) - (iph->ihl<<2);
ihl910net/ipv4/tcp_output.cth = (struct tcphdr *)(((char *)iph) +(iph->ihl << 2));
ihl917net/ipv4/tcp_output.c(iph->ihl << 2) +