Lines Matching refs:ihl
263 th = (struct tcphdr *)(((unsigned char *)ip) + ip->ihl*4); in slhc_compress()
264 hlen = ip->ihl*4 + th->doff*4; in slhc_compress()
347 if(ip->version != cs->cs_ip.version || ip->ihl != cs->cs_ip.ihl in slhc_compress()
352 || (ip->ihl > 5 && memcmp(ip+1,cs->cs_ipopt,((ip->ihl)-5)*4) != 0) in slhc_compress()
472 if (ip->ihl > 5) in slhc_compress()
473 memcpy(cs->cs_ipopt, ip+1, ((ip->ihl) - 5) * 4); in slhc_compress()
537 hdrlen = ip->ihl * 4 + thp->doff * 4; in slhc_uncompress()
610 if (ip->ihl > 5) { in slhc_uncompress()
611 memcpy(cp, cs->cs_ipopt, (ip->ihl - 5) * 4); in slhc_uncompress()
612 cp += (ip->ihl - 5) * 4; in slhc_uncompress()
615 put_unaligned(ip_fast_csum(icp, ip->ihl), in slhc_uncompress()
637 unsigned ihl; in slhc_remember() local
647 ihl = icp[0] & 0xf; in slhc_remember()
648 if(ihl < 20 / 4){ in slhc_remember()
656 if (ip_fast_csum(icp, ihl)) { in slhc_remember()
670 memcpy(&cs->cs_tcp,icp + ihl*4,20); in slhc_remember()
671 if (ihl > 5) in slhc_remember()
672 memcpy(cs->cs_ipopt, icp + sizeof(struct iphdr), (ihl - 5) * 4); in slhc_remember()
674 memcpy(cs->cs_tcpopt, icp + ihl*4 + sizeof(struct tcphdr), (cs->cs_tcp.doff - 5) * 4); in slhc_remember()
675 cs->cs_hsize = ihl*2 + cs->cs_tcp.doff*2; in slhc_remember()