Lines Matching refs:icmph
106 struct icmphdr icmph; member
361 if (icmp_pointers[icmp_param->data.icmph.type].error) in icmp_glue_bits()
381 struct icmphdr *icmph = icmp_hdr(skb); in icmp_push_reply() local
386 (char *)icmph, in icmp_push_reply()
391 icmph->checksum = csum_fold(csum); in icmp_push_reply()
411 int type = icmp_param->data.icmph.type; in icmp_reply()
412 int code = icmp_param->data.icmph.code; in icmp_reply()
429 icmp_param->data.icmph.checksum = 0; in icmp_reply()
728 icmp_param.data.icmph.type = type; in __icmp_send()
729 icmp_param.data.icmph.code = code; in __icmp_send()
730 icmp_param.data.icmph.un.gateway = info; in __icmp_send()
731 icmp_param.data.icmph.checksum = 0; in __icmp_send()
854 struct icmphdr *icmph; in icmp_unreach() local
869 icmph = icmp_hdr(skb); in icmp_unreach()
875 switch (icmph->type) { in icmp_unreach()
877 switch (icmph->code & 15) { in icmp_unreach()
900 info = ntohs(icmph->un.frag.mtu); in icmp_unreach()
910 if (icmph->code > NR_ICMP_UNREACH) in icmp_unreach()
914 info = ntohl(icmph->un.gateway) >> 24; in icmp_unreach()
918 if (icmph->code == ICMP_EXC_FRAGTIME) in icmp_unreach()
945 icmph->type, icmph->code, in icmp_unreach()
1004 icmp_param.data.icmph = *icmp_hdr(skb); in icmp_echo()
1010 if (icmp_param.data.icmph.type == ICMP_ECHO) in icmp_echo()
1011 icmp_param.data.icmph.type = ICMP_ECHOREPLY; in icmp_echo()
1012 else if (!icmp_build_probe(skb, &icmp_param.data.icmph)) in icmp_echo()
1151 icmp_param.data.icmph = *icmp_hdr(skb); in icmp_timestamp()
1152 icmp_param.data.icmph.type = ICMP_TIMESTAMPREPLY; in icmp_timestamp()
1153 icmp_param.data.icmph.code = 0; in icmp_timestamp()
1177 struct icmphdr *icmph; in icmp_rcv() local
1190 if (!pskb_may_pull(skb, sizeof(*icmph) + sizeof(struct iphdr))) in icmp_rcv()
1194 skb_set_network_header(skb, sizeof(*icmph)); in icmp_rcv()
1207 if (!pskb_pull(skb, sizeof(*icmph))) in icmp_rcv()
1210 icmph = icmp_hdr(skb); in icmp_rcv()
1212 ICMPMSGIN_INC_STATS(net, icmph->type); in icmp_rcv()
1215 if (icmph->type == ICMP_EXT_ECHO) { in icmp_rcv()
1223 if (icmph->type == ICMP_EXT_ECHOREPLY) { in icmp_rcv()
1234 if (icmph->type > NR_ICMP_TYPES) in icmp_rcv()
1248 if ((icmph->type == ICMP_ECHO || in icmp_rcv()
1249 icmph->type == ICMP_TIMESTAMP) && in icmp_rcv()
1253 if (icmph->type != ICMP_ECHO && in icmp_rcv()
1254 icmph->type != ICMP_TIMESTAMP && in icmp_rcv()
1255 icmph->type != ICMP_ADDRESS && in icmp_rcv()
1256 icmph->type != ICMP_ADDRESSREPLY) { in icmp_rcv()
1261 success = icmp_pointers[icmph->type].handler(skb); in icmp_rcv()
1341 struct icmphdr *icmph = (struct icmphdr *)(skb->data + offset); in icmp_err() local
1350 if (icmph->type != ICMP_ECHOREPLY) { in icmp_err()