/linux-6.3-rc2/tools/testing/selftests/bpf/progs/ |
A D | xdping_kern.c | 64 struct icmphdr *icmph; in icmp_check() local 83 if (icmph->type != type) in icmp_check() 96 struct icmphdr *icmph; in xdping_client() local 141 icmph->type = ICMP_ECHO; in xdping_client() 143 icmph->un.echo.sequence = seq; in xdping_client() 144 icmph->checksum = 0; in xdping_client() 145 icmph->checksum = ipv4_csum(icmph, ICMP_ECHO_LEN); in xdping_client() 159 struct icmphdr *icmph; in xdping_server() local 177 icmph->type = ICMP_ECHOREPLY; in xdping_server() 178 icmph->checksum = 0; in xdping_server() [all …]
|
/linux-6.3-rc2/net/ipv4/ |
A D | icmp.c | 106 struct icmphdr icmph; member 382 (char *)icmph, in icmp_push_reply() 851 struct icmphdr *icmph; in icmp_unreach() local 866 icmph = icmp_hdr(skb); in icmp_unreach() 874 switch (icmph->type) { in icmp_unreach() 876 switch (icmph->code & 15) { in icmp_unreach() 944 icmph->type, icmph->code, in icmp_unreach() 1152 icmp_param.data.icmph.code = 0; in icmp_timestamp() 1179 struct icmphdr *icmph; in icmp_rcv() local 1214 icmph = icmp_hdr(skb); in icmp_rcv() [all …]
|
A D | ping.c | 502 struct icmphdr *icmph; in ping_err() local 527 if (!ping_supported(family, icmph->type, icmph->code)) in ping_err() 532 ntohs(icmph->un.echo.sequence)); in ping_err() 600 info, (u8 *)icmph); in ping_err() 604 info, (u8 *)icmph); in ping_err() 654 pfh->icmph.checksum = csum_fold(pfh->wcheck); in ping_v4_push_pending_frames() 830 pfh.icmph.checksum = 0; in ping_v4_sendmsg() 831 pfh.icmph.un.echo.id = inet->inet_sport; in ping_v4_sendmsg() 987 struct icmphdr *icmph = icmp_hdr(skb); in ping_rcv() local 992 skb, ntohs(icmph->un.echo.id), ntohs(icmph->un.echo.sequence)); in ping_rcv() [all …]
|
A D | ip_tunnel_core.c | 198 struct icmphdr *icmph; in iptunnel_pmtud_build_icmp() local 210 err = pskb_trim(skb, 576 - sizeof(*niph) - sizeof(*icmph)); in iptunnel_pmtud_build_icmp() 214 len = skb->len + sizeof(*icmph); in iptunnel_pmtud_build_icmp() 215 err = skb_cow(skb, sizeof(*niph) + sizeof(*icmph) + ETH_HLEN); in iptunnel_pmtud_build_icmp() 219 icmph = skb_push(skb, sizeof(*icmph)); in iptunnel_pmtud_build_icmp() 220 *icmph = (struct icmphdr) { in iptunnel_pmtud_build_icmp() 227 icmph->checksum = ip_compute_csum(icmph, len); in iptunnel_pmtud_build_icmp() 263 const struct icmphdr *icmph = icmp_hdr(skb); in iptunnel_pmtud_check_icmp() local 274 if (iph->protocol == IPPROTO_ICMP && icmp_is_err(icmph->type)) in iptunnel_pmtud_check_icmp()
|
A D | raw.c | 82 struct icmphdr icmph; member 437 fl4->fl4_icmp_type = rfv->hdr.icmph.type; in raw_probe_proto_opt() 438 fl4->fl4_icmp_code = rfv->hdr.icmph.code; in raw_probe_proto_opt()
|
/linux-6.3-rc2/net/sched/ |
A D | act_nat.c | 211 struct icmphdr *icmph; in tcf_nat_act() local 213 if (!pskb_may_pull(skb, ihl + sizeof(*icmph) + noff)) in tcf_nat_act() 216 icmph = (void *)(skb_network_header(skb) + ihl); in tcf_nat_act() 218 if (!icmp_is_err(icmph->type)) in tcf_nat_act() 221 if (!pskb_may_pull(skb, ihl + sizeof(*icmph) + sizeof(*iph) + in tcf_nat_act() 225 icmph = (void *)(skb_network_header(skb) + ihl); in tcf_nat_act() 226 iph = (void *)(icmph + 1); in tcf_nat_act() 235 if (skb_try_make_writable(skb, ihl + sizeof(*icmph) + in tcf_nat_act() 239 icmph = (void *)(skb_network_header(skb) + ihl); in tcf_nat_act() 240 iph = (void *)(icmph + 1); in tcf_nat_act() [all …]
|
A D | act_csum.c | 150 struct icmphdr *icmph; in tcf_csum_ipv4_icmp() local 152 icmph = tcf_csum_skb_nextlayer(skb, ihl, ipl, sizeof(*icmph)); in tcf_csum_ipv4_icmp() 153 if (icmph == NULL) in tcf_csum_ipv4_icmp() 156 icmph->checksum = 0; in tcf_csum_ipv4_icmp() 157 skb->csum = csum_partial(icmph, ipl - ihl, 0); in tcf_csum_ipv4_icmp() 158 icmph->checksum = csum_fold(skb->csum); in tcf_csum_ipv4_icmp()
|
/linux-6.3-rc2/net/batman-adv/ |
A D | routing.c | 221 struct batadv_icmp_header *icmph; in batadv_recv_my_icmp_packet() local 224 icmph = (struct batadv_icmp_header *)skb->data; in batadv_recv_my_icmp_packet() 226 switch (icmph->msg_type) { in batadv_recv_my_icmp_packet() 244 ether_addr_copy(icmph->dst, icmph->orig); in batadv_recv_my_icmp_packet() 246 icmph->msg_type = BATADV_ECHO_REPLY; in batadv_recv_my_icmp_packet() 247 icmph->ttl = BATADV_TTL; in batadv_recv_my_icmp_packet() 342 struct batadv_icmp_header *icmph; in batadv_recv_icmp_packet() local 370 if ((icmph->msg_type == BATADV_ECHO_REPLY || in batadv_recv_icmp_packet() 392 if (batadv_is_my_mac(bat_priv, icmph->dst)) in batadv_recv_icmp_packet() 396 if (icmph->ttl < 2) in batadv_recv_icmp_packet() [all …]
|
/linux-6.3-rc2/net/bridge/ |
A D | br_arp_nd_proxy.c | 241 if (m->icmph.icmp6_code != 0 || in br_is_nd_neigh_msg() 242 (m->icmph.icmp6_type != NDISC_NEIGHBOUR_SOLICITATION && in br_is_nd_neigh_msg() 243 m->icmph.icmp6_type != NDISC_NEIGHBOUR_ADVERTISEMENT)) in br_is_nd_neigh_msg() 323 na->icmph.icmp6_type = NDISC_NEIGHBOUR_ADVERTISEMENT; in br_nd_send() 324 na->icmph.icmp6_router = (n->flags & NTF_ROUTER) ? 1 : 0; in br_nd_send() 325 na->icmph.icmp6_override = 1; in br_nd_send() 326 na->icmph.icmp6_solicited = 1; in br_nd_send() 332 na->icmph.icmp6_cksum = csum_ipv6_magic(&pip6->saddr, in br_nd_send() 413 if (msg->icmph.icmp6_type == NDISC_NEIGHBOUR_ADVERTISEMENT && in br_do_suppress_nd() 414 !msg->icmph.icmp6_solicited) { in br_do_suppress_nd() [all …]
|
/linux-6.3-rc2/net/ipv6/netfilter/ |
A D | nf_socket_ipv6.c | 31 struct icmp6hdr *icmph, _icmph; in extract_icmp6_fields() local 37 icmph = skb_header_pointer(skb, outside_hdrlen, in extract_icmp6_fields() 39 if (icmph == NULL) in extract_icmp6_fields() 42 if (icmph->icmp6_type & ICMPV6_INFOMSG_MASK) in extract_icmp6_fields()
|
/linux-6.3-rc2/net/ipv4/netfilter/ |
A D | nf_socket_ipv4.c | 26 struct icmphdr *icmph, _icmph; in extract_icmp4_fields() local 29 icmph = skb_header_pointer(skb, outside_hdrlen, in extract_icmp4_fields() 31 if (icmph == NULL) in extract_icmp4_fields() 34 if (!icmp_is_err(icmph->type)) in extract_icmp4_fields()
|
A D | nf_reject_ipv4.c | 81 struct icmphdr *icmph; in nf_reject_skb_v4_unreach() local 123 icmph = skb_put_zero(nskb, sizeof(struct icmphdr)); in nf_reject_skb_v4_unreach() 124 icmph->type = ICMP_DEST_UNREACH; in nf_reject_skb_v4_unreach() 125 icmph->code = code; in nf_reject_skb_v4_unreach() 129 csum = csum_partial((void *)icmph, len + sizeof(struct icmphdr), 0); in nf_reject_skb_v4_unreach() 130 icmph->checksum = csum_fold(csum); in nf_reject_skb_v4_unreach()
|
/linux-6.3-rc2/net/ipv6/ |
A D | ping.c | 163 pfh.icmph.type = user_icmph.icmp6_type; in ping_v6_sendmsg() 164 pfh.icmph.code = user_icmph.icmp6_code; in ping_v6_sendmsg() 165 pfh.icmph.checksum = 0; in ping_v6_sendmsg() 166 pfh.icmph.un.echo.id = inet->inet_sport; in ping_v6_sendmsg() 167 pfh.icmph.un.echo.sequence = user_icmph.icmp6_sequence; in ping_v6_sendmsg() 186 (struct icmp6hdr *)&pfh.icmph, len); in ping_v6_sendmsg()
|
A D | ndisc.c | 559 .icmph = { in ndisc_send_na() 627 .icmph = { in ndisc_ns_create() 708 .icmph = { in ndisc_send_rs() 1015 msg->icmph.icmp6_solicited) { in ndisc_recv_na() 1345 pref = ra_msg->icmph.icmp6_router_pref; in ndisc_router_discovery() 1412 ra_msg->icmph.icmp6_hop_limit) { in ndisc_router_discovery() 1416 ra_msg->icmph.icmp6_hop_limit); in ndisc_router_discovery() 1753 .icmph = { in ndisc_send_redirect() 1829 if (msg->icmph.icmp6_code != 0) { in ndisc_rcv() 1831 msg->icmph.icmp6_code); in ndisc_rcv() [all …]
|
A D | icmp.c | 715 struct icmp6hdr *icmph = icmp6_hdr(skb); in icmpv6_echo_reply() local 740 if (icmph->icmp6_type == ICMPV6_EXT_ECHO_REQUEST) in icmpv6_echo_reply() 745 memcpy(&tmp_hdr, icmph, sizeof(tmp_hdr)); in icmpv6_echo_reply() 795 if (icmph->icmp6_type == ICMPV6_EXT_ECHO_REQUEST) in icmpv6_echo_reply()
|
A D | datagram.c | 308 struct icmp6hdr *icmph = icmp6_hdr(skb); in ipv6_icmp_error() local 323 serr->ee.ee_type = icmph->icmp6_type; in ipv6_icmp_error() 324 serr->ee.ee_code = icmph->icmp6_code; in ipv6_icmp_error() 328 serr->addr_offset = (u8 *)&(((struct ipv6hdr *)(icmph + 1))->daddr) - in ipv6_icmp_error()
|
/linux-6.3-rc2/net/netfilter/ |
A D | nf_conntrack_proto_icmp.c | 209 const struct icmphdr *icmph; in nf_conntrack_icmpv4_error() local 213 icmph = skb_header_pointer(skb, dataoff, sizeof(_ih), &_ih); in nf_conntrack_icmpv4_error() 214 if (icmph == NULL) { in nf_conntrack_icmpv4_error() 233 if (icmph->type > NR_ICMP_TYPES) { in nf_conntrack_icmpv4_error() 239 if (!icmp_is_err(icmph->type)) in nf_conntrack_icmpv4_error() 245 dataoff += sizeof(*icmph); in nf_conntrack_icmpv4_error()
|
A D | xt_HMARK.c | 233 const struct icmphdr *icmph; in get_inner_hdr() local 237 icmph = skb_header_pointer(skb, *nhoff + iphsz, sizeof(_ih), &_ih); in get_inner_hdr() 238 if (icmph == NULL || icmph->type > NR_ICMP_TYPES) in get_inner_hdr() 242 if (!icmp_is_err(icmph->type)) in get_inner_hdr()
|
A D | nf_conntrack_proto_icmpv6.c | 152 if (rd_msg->icmph.icmp6_code != 0) in nf_conntrack_icmpv6_redirect()
|
/linux-6.3-rc2/drivers/net/ipvlan/ |
A D | ipvlan_core.c | 186 struct icmp6hdr *icmph; in ipvlan_get_L3_hdr() local 188 if (unlikely(!pskb_may_pull(skb, sizeof(*ip6h) + sizeof(*icmph)))) in ipvlan_get_L3_hdr() 192 icmph = (struct icmp6hdr *)(ip6h + 1); in ipvlan_get_L3_hdr() 194 if (icmph->icmp6_type == NDISC_NEIGHBOUR_SOLICITATION) { in ipvlan_get_L3_hdr() 196 if (unlikely(!pskb_may_pull(skb, sizeof(*ip6h) + sizeof(*icmph) in ipvlan_get_L3_hdr() 201 icmph = (struct icmp6hdr *)(ip6h + 1); in ipvlan_get_L3_hdr() 205 lyr3h = icmph; in ipvlan_get_L3_hdr() 377 if (ndmh->icmph.icmp6_type == NDISC_NEIGHBOUR_SOLICITATION) { in ipvlan_addr_lookup()
|
/linux-6.3-rc2/include/net/ |
A D | ndisc.h | 82 struct icmp6hdr icmph; member 88 struct icmp6hdr icmph; member 93 struct icmp6hdr icmph; member 99 struct icmp6hdr icmph; member
|
A D | ping.h | 54 struct icmphdr icmph; member
|
/linux-6.3-rc2/net/netfilter/ipvs/ |
A D | ip_vs_core.c | 87 #define icmp_id(icmph) (((icmph)->un).echo.id) argument 88 #define icmpv6_id(icmph) (icmph->icmp6_dataun.u_echo.identifier) argument 753 struct icmphdr *icmph = (struct icmphdr *)(skb_network_header(skb) + in ip_vs_nat_icmp() local 755 struct iphdr *ciph = (struct iphdr *)(icmph + 1); in ip_vs_nat_icmp() 781 icmph->checksum = 0; in ip_vs_nat_icmp() 782 icmph->checksum = ip_vs_checksum_complete(skb, icmp_offset); in ip_vs_nat_icmp() 801 struct icmp6hdr *icmph; in ip_vs_nat_icmp_v6() local 806 icmph = (struct icmp6hdr *)(skb_network_header(skb) + icmp_offset); in ip_vs_nat_icmp_v6() 835 icmph->icmp6_cksum = ~csum_ipv6_magic(&iph->saddr, &iph->daddr, in ip_vs_nat_icmp_v6()
|
/linux-6.3-rc2/drivers/net/usb/ |
A D | cdc_mbim.c | 362 msg->icmph.icmp6_code == 0 && in is_neigh_solicit() 363 msg->icmph.icmp6_type == NDISC_NEIGHBOUR_SOLICITATION); in is_neigh_solicit()
|
/linux-6.3-rc2/drivers/net/ |
A D | vrf.c | 1318 const struct icmp6hdr *icmph; in ipv6_ndisc_frame() local 1321 icmph = skb_header_pointer(skb, sizeof(*iph), in ipv6_ndisc_frame() 1323 if (!icmph) in ipv6_ndisc_frame() 1326 switch (icmph->icmp6_type) { in ipv6_ndisc_frame()
|