Lines Matching refs:icmph
110 struct icmphdr icmph; member
347 if (icmp_pointers[icmp_param->data.icmph.type].error) in icmp_glue_bits()
367 struct icmphdr *icmph = icmp_hdr(skb); in icmp_push_reply() local
375 (char *)icmph, in icmp_push_reply()
377 icmph->checksum = csum_fold(csum); in icmp_push_reply()
406 icmp_param->data.icmph.checksum = 0; in icmp_reply()
432 if (icmpv4_xrlim_allow(net, rt, &fl4, icmp_param->data.icmph.type, in icmp_reply()
433 icmp_param->data.icmph.code)) in icmp_reply()
666 icmp_param->data.icmph.type = type; in icmp_send()
667 icmp_param->data.icmph.code = code; in icmp_send()
668 icmp_param->data.icmph.un.gateway = info; in icmp_send()
669 icmp_param->data.icmph.checksum = 0; in icmp_send()
752 struct icmphdr *icmph; in icmp_unreach() local
767 icmph = icmp_hdr(skb); in icmp_unreach()
773 if (icmph->type == ICMP_DEST_UNREACH) { in icmp_unreach()
774 switch (icmph->code & 15) { in icmp_unreach()
797 info = ntohs(icmph->un.frag.mtu); in icmp_unreach()
807 if (icmph->code > NR_ICMP_UNREACH) in icmp_unreach()
809 } else if (icmph->type == ICMP_PARAMETERPROB) in icmp_unreach()
810 info = ntohl(icmph->un.gateway) >> 24; in icmp_unreach()
834 icmph->type, icmph->code, in icmp_unreach()
889 icmp_param.data.icmph = *icmp_hdr(skb); in icmp_echo()
890 icmp_param.data.icmph.type = ICMP_ECHOREPLY; in icmp_echo()
927 icmp_param.data.icmph = *icmp_hdr(skb); in icmp_timestamp()
928 icmp_param.data.icmph.type = ICMP_TIMESTAMPREPLY; in icmp_timestamp()
929 icmp_param.data.icmph.code = 0; in icmp_timestamp()
953 struct icmphdr *icmph; in icmp_rcv() local
966 if (!pskb_may_pull(skb, sizeof(*icmph) + sizeof(struct iphdr))) in icmp_rcv()
970 skb_set_network_header(skb, sizeof(*icmph)); in icmp_rcv()
983 if (!pskb_pull(skb, sizeof(*icmph))) in icmp_rcv()
986 icmph = icmp_hdr(skb); in icmp_rcv()
988 ICMPMSGIN_INC_STATS_BH(net, icmph->type); in icmp_rcv()
995 if (icmph->type > NR_ICMP_TYPES) in icmp_rcv()
1010 if ((icmph->type == ICMP_ECHO || in icmp_rcv()
1011 icmph->type == ICMP_TIMESTAMP) && in icmp_rcv()
1015 if (icmph->type != ICMP_ECHO && in icmp_rcv()
1016 icmph->type != ICMP_TIMESTAMP && in icmp_rcv()
1017 icmph->type != ICMP_ADDRESS && in icmp_rcv()
1018 icmph->type != ICMP_ADDRESSREPLY) { in icmp_rcv()
1023 success = icmp_pointers[icmph->type].handler(skb); in icmp_rcv()
1044 struct icmphdr *icmph = (struct icmphdr *)(skb->data + offset); in icmp_err() local
1053 if (icmph->type != ICMP_ECHOREPLY) { in icmp_err()