Lines Matching refs:hc_ptr
588 static u8 lowpan_compress_addr_64(u8 **hc_ptr, const struct in6_addr *ipaddr, in lowpan_compress_addr_64() argument
598 lowpan_push_hc_data(hc_ptr, &ipaddr->s6_addr16[7], 2); in lowpan_compress_addr_64()
601 *hc_ptr - 2, 2); in lowpan_compress_addr_64()
604 lowpan_push_hc_data(hc_ptr, &ipaddr->s6_addr16[4], 8); in lowpan_compress_addr_64()
607 *hc_ptr - 8, 8); in lowpan_compress_addr_64()
643 static u8 lowpan_iphc_tf_compress(u8 **hc_ptr, const struct ipv6hdr *hdr) in lowpan_iphc_tf_compress() argument
663 lowpan_push_hc_data(hc_ptr, &tc, sizeof(tc)); in lowpan_iphc_tf_compress()
683 lowpan_push_hc_data(hc_ptr, tf, 3); in lowpan_iphc_tf_compress()
703 lowpan_push_hc_data(hc_ptr, tf, 4); in lowpan_iphc_tf_compress()
711 static u8 lowpan_iphc_mcast_addr_compress(u8 **hc_ptr, in lowpan_iphc_mcast_addr_compress() argument
719 lowpan_push_hc_data(hc_ptr, &ipaddr->s6_addr[15], 1); in lowpan_iphc_mcast_addr_compress()
724 lowpan_push_hc_data(hc_ptr, &ipaddr->s6_addr[1], 1); in lowpan_iphc_mcast_addr_compress()
725 lowpan_push_hc_data(hc_ptr, &ipaddr->s6_addr[13], 3); in lowpan_iphc_mcast_addr_compress()
730 lowpan_push_hc_data(hc_ptr, &ipaddr->s6_addr[1], 1); in lowpan_iphc_mcast_addr_compress()
731 lowpan_push_hc_data(hc_ptr, &ipaddr->s6_addr[11], 5); in lowpan_iphc_mcast_addr_compress()
735 lowpan_push_hc_data(hc_ptr, ipaddr->s6_addr, 16); in lowpan_iphc_mcast_addr_compress()
745 u8 iphc0, iphc1, *hc_ptr; in lowpan_header_compress() local
754 hc_ptr = head + 2; in lowpan_header_compress()
781 iphc0 |= lowpan_iphc_tf_compress(&hc_ptr, hdr); in lowpan_header_compress()
788 ret = lowpan_nhc_check_compression(skb, hdr, &hc_ptr); in lowpan_header_compress()
790 lowpan_push_hc_data(&hc_ptr, &hdr->nexthdr, in lowpan_header_compress()
812 lowpan_push_hc_data(&hc_ptr, &hdr->hop_limit, in lowpan_header_compress()
823 iphc1 |= lowpan_compress_addr_64(&hc_ptr, &hdr->saddr, in lowpan_header_compress()
829 lowpan_push_hc_data(&hc_ptr, hdr->saddr.s6_addr, 16); in lowpan_header_compress()
838 iphc1 |= lowpan_iphc_mcast_addr_compress(&hc_ptr, &hdr->daddr); in lowpan_header_compress()
842 iphc1 |= lowpan_compress_addr_64(&hc_ptr, &hdr->daddr, in lowpan_header_compress()
848 lowpan_push_hc_data(&hc_ptr, hdr->daddr.s6_addr, 16); in lowpan_header_compress()
854 ret = lowpan_nhc_do_compression(skb, hdr, &hc_ptr); in lowpan_header_compress()
864 memcpy(skb_push(skb, hc_ptr - head), head, hc_ptr - head); in lowpan_header_compress()
867 pr_debug("header len %d skb %u\n", (int)(hc_ptr - head), skb->len); in lowpan_header_compress()