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);
ihl109drivers/net/new_tunnel.cprintk("--- header len = %d\n", ip->ihl*4);
ihl285drivers/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;
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));
ihl45include/asm-m68k/checksum.hip_fast_csum(unsigned char *iph, unsigned int ihl)
ihl59include/asm-m68k/checksum.h: "=d" (sum), "=a" (iph), "=d" (ihl)
ihl60include/asm-m68k/checksum.h: "0" (sum), "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);
ihl121include/asm-sparc/checksum.hextern inline unsigned short ip_fast_csum(const unsigned char *iph, unsigned int ihl)
ihl151include/asm-sparc/checksum.h: "=&r" (sum), "=&r" (iph), "=&r" (ihl)
ihl152include/asm-sparc/checksum.h: "1" (iph), "2" (ihl)
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);
ihl65net/ipv4/ip_forward.ciph->ihl  =  5;
ihl259net/ipv4/ip_fragment.cihlen = iph->ihl * 4;
ihl385net/ipv4/ip_fragment.ciph->tot_len = htons((iph->ihl * 4) + count);
ihl405net/ipv4/ip_fragment.cint i, ihl, end;
ihl433net/ipv4/ip_fragment.cihl = iph->ihl * 4;
ihl448net/ipv4/ip_fragment.cqp->ihlen = ihl;
ihl449net/ipv4/ip_fragment.cmemcpy(qp->iph, iph, ihl+8);
ihl475net/ipv4/ip_fragment.cend = offset + ntohs(iph->tot_len) - ihl;
ihl481net/ipv4/ip_fragment.cptr = skb->data + ihl;
ihl631net/ipv4/ip_fragment.chlen = iph->ihl * 4;
ihl202net/ipv4/ip_fw.cstruct tcphdr    *tcp=(struct tcphdr *)((unsigned long *)ip+ip->ihl);
ihl203net/ipv4/ip_fw.cstruct udphdr    *udp=(struct udphdr *)((unsigned long *)ip+ip->ihl);
ihl204net/ipv4/ip_fw.cstruct icmphdr    *icmp=(struct icmphdr *)((unsigned long *)ip+ip->ihl);
ihl256net/ipv4/ip_fw.cif(ip->protocol==IPPROTO_TCP && (ip->ihl<<2)+16 > ntohs(ip->tot_len))
ihl263net/ipv4/ip_fw.celse if(ntohs(ip->tot_len)<8+(ip->ihl<<2))
ihl883net/ipv4/ip_fw.c} else if ( ip->ihl != sizeof(struct iphdr) / sizeof(int)) {
ihl885net/ipv4/ip_fw.cprintk("ip_fw_ctl: ip->ihl=%d, want %d\n",ip->ihl,
ihl250net/ipv4/ip_input.cif (skb->len<sizeof(struct iphdr) || iph->ihl<5 || iph->version != 4 || ip_fast_csum((unsigned char *)iph, iph->ihl) !=0
ihl277net/ipv4/ip_input.cif (iph->ihl > 5) 
ihl466net/ipv4/ip_input.cskb->h.raw += iph->ihl*4;
ihl561net/ipv4/ip_input.c(ntohs(iph->tot_len) - (iph->ihl * 4)),
ihl202net/ipv4/ip_masq.cportptr = (__u16 *)&(((char *)iph)[iph->ihl*4]);
ihl233net/ipv4/ip_masq.cportptr = (__u16 *)&(((char *)iph)[iph->ihl*4]);
ihl447net/ipv4/ip_masq.cportptr = (__u16 *)&(((char *)iph)[iph->ihl*4]);
ihl495net/ipv4/ip_masq.cportptr = (__u16 *)&(((char *)iph)[iph->ihl*4]);
ihl571net/ipv4/ip_masq.cportptr = (__u16 *)&(((char *)iph)[iph->ihl*4]);
ihl629net/ipv4/ip_masq.cportptr = (__u16 *)&(((char *)iph)[iph->ihl*4]);
ihl329net/ipv4/ip_masq_app.cth = (struct tcphdr *)&(((char *)iph)[iph->ihl*4]);
ihl392net/ipv4/ip_masq_app.cth = (struct tcphdr *)&(((char *)iph)[iph->ihl*4]);
ihl581net/ipv4/ip_masq_app.ciph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);
ihl67net/ipv4/ip_masq_ftp.cth = (struct tcphdr *)&(((char *)iph)[iph->ihl*4]);
ihl69net/ipv4/ip_masq_irc.cth = (struct tcphdr *)&(((char *)iph)[iph->ihl*4]);
ihl247net/ipv4/ip_options.copt->optlen = ((struct iphdr *)iph)->ihl*4 - sizeof(struct iphdr);
ihl296net/ipv4/ip_output.ciph->ihl      = 5;
ihl307net/ipv4/ip_output.ciph->ihl += opt->optlen>>2;
ihl309net/ipv4/ip_output.creturn iph->ihl*4 + tmp;
ihl320net/ipv4/ip_output.ciph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);
ihl692net/ipv4/ip_output.ciph->ihl=5;
ihl703net/ipv4/ip_output.ciph->ihl += opt->optlen>>2;
ihl708net/ipv4/ip_output.ciph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);
ihl709net/ipv4/ip_output.cgetfrag(frag,saddr,((char *)iph)+iph->ihl*4,0, length-iph->ihl*4);
ihl877net/ipv4/ip_output.ciph->ihl = 5; /* ugh */
ihl879net/ipv4/ip_output.ciph->ihl += opt->optlen>>2;
ihl884net/ipv4/ip_output.ciph->tot_len = htons(fraglen - fragheaderlen + iph->ihl*4);
ihl898net/ipv4/ip_output.ciph->check = ip_fast_csum((unsigned char *)iph, iph->ihl);
ihl899net/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);
ihl164net/ipv4/raw.cskb->ip_hdr->tot_len=ntohs(skb->ip_hdr->tot_len-4*skb->ip_hdr->ihl);
ihl208net/ipv4/raw.ciph->check=ip_fast_csum((unsigned char *)iph, iph->ihl);
ihl280net/ipv4/tcp_output.cth = (struct tcphdr *)(((char *)iph) +(iph->ihl << 2));
ihl370net/ipv4/tcp_output.cth = (struct tcphdr *)(((char *)iph) + (iph->ihl << 2));
ihl371net/ipv4/tcp_output.csize = ntohs(iph->tot_len) - (iph->ihl<<2);
ihl935net/ipv4/tcp_output.cth = (struct tcphdr *)(((char *)iph) +(iph->ihl << 2));
ihl942net/ipv4/tcp_output.c(iph->ihl << 2) +