Lines Matching refs:icmph

111 		struct icmphdr icmph;  member
376 if (icmp_pointers[icmp_param->data.icmph.type].error) in icmp_glue_bits()
395 struct icmphdr *icmph = icmp_hdr(skb); in icmp_push_reply() local
400 (char *)icmph, in icmp_push_reply()
405 icmph->checksum = csum_fold(csum); in icmp_push_reply()
425 int type = icmp_param->data.icmph.type; in icmp_reply()
426 int code = icmp_param->data.icmph.code; in icmp_reply()
442 icmp_param->data.icmph.checksum = 0; in icmp_reply()
727 icmp_ext_append(struct net *net, struct sk_buff *skb_in, struct icmphdr *icmph, in icmp_ext_append() argument
736 switch (icmph->type) { in icmp_ext_append()
782 icmph->un.reserved[1] = ICMP_EXT_ORIG_DGRAM_MIN_LEN / sizeof(u32); in icmp_ext_append()
946 icmp_param->data.icmph.type = type; in __icmp_send()
947 icmp_param->data.icmph.code = code; in __icmp_send()
948 icmp_param->data.icmph.un.gateway = info; in __icmp_send()
949 icmp_param->data.icmph.checksum = 0; in __icmp_send()
981 ext_skb = icmp_ext_append(net, skb_in, &icmp_param->data.icmph, room, in __icmp_send()
1101 struct icmphdr *icmph; in icmp_unreach() local
1116 icmph = icmp_hdr(skb); in icmp_unreach()
1124 switch (icmph->type) { in icmp_unreach()
1126 switch (icmph->code & 15) { in icmp_unreach()
1149 info = ntohs(icmph->un.frag.mtu); in icmp_unreach()
1159 if (icmph->code > NR_ICMP_UNREACH) in icmp_unreach()
1163 info = ntohl(icmph->un.gateway) >> 24; in icmp_unreach()
1167 if (icmph->code == ICMP_EXC_FRAGTIME) in icmp_unreach()
1194 icmph->type, icmph->code, in icmp_unreach()
1254 icmp_param->data.icmph = *icmp_hdr(skb); in icmp_echo()
1260 if (icmp_param->data.icmph.type == ICMP_ECHO) in icmp_echo()
1261 icmp_param->data.icmph.type = ICMP_ECHOREPLY; in icmp_echo()
1262 else if (!icmp_build_probe(skb, &icmp_param->data.icmph)) in icmp_echo()
1416 icmp_param->data.icmph = *icmp_hdr(skb); in icmp_timestamp()
1417 icmp_param->data.icmph.type = ICMP_TIMESTAMPREPLY; in icmp_timestamp()
1418 icmp_param->data.icmph.code = 0; in icmp_timestamp()
1445 struct icmphdr *icmph; in icmp_rcv() local
1457 if (!pskb_may_pull(skb, sizeof(*icmph) + sizeof(struct iphdr))) in icmp_rcv()
1461 skb_set_network_header(skb, sizeof(*icmph)); in icmp_rcv()
1477 if (!pskb_pull(skb, sizeof(*icmph))) in icmp_rcv()
1480 icmph = icmp_hdr(skb); in icmp_rcv()
1482 ICMPMSGIN_INC_STATS(net, icmph->type); in icmp_rcv()
1485 if (icmph->type == ICMP_EXT_ECHO) { in icmp_rcv()
1504 if ((icmph->type == ICMP_ECHO || in icmp_rcv()
1505 icmph->type == ICMP_TIMESTAMP) && in icmp_rcv()
1510 if (icmph->type != ICMP_ECHO && in icmp_rcv()
1511 icmph->type != ICMP_TIMESTAMP && in icmp_rcv()
1512 icmph->type != ICMP_ADDRESS && in icmp_rcv()
1513 icmph->type != ICMP_ADDRESSREPLY) { in icmp_rcv()
1519 if (icmph->type == ICMP_EXT_ECHOREPLY || in icmp_rcv()
1520 icmph->type == ICMP_ECHOREPLY) { in icmp_rcv()
1531 if (icmph->type > NR_ICMP_TYPES) { in icmp_rcv()
1536 reason = icmp_pointers[icmph->type].handler(skb); in icmp_rcv()
1617 struct icmphdr *icmph = (struct icmphdr *)(skb->data + offset); in icmp_err() local
1626 if (icmph->type != ICMP_ECHOREPLY) { in icmp_err()