/kernel/linux/linux-5.10/net/mac80211/ |
H A D | status.c | 298 struct ieee80211_radiotap_header *rthdr; in ieee80211_add_tx_radiotap_header() local 303 rthdr = skb_push(skb, rtap_len); in ieee80211_add_tx_radiotap_header() 305 memset(rthdr, 0, rtap_len); in ieee80211_add_tx_radiotap_header() 306 rthdr->it_len = cpu_to_le16(rtap_len); in ieee80211_add_tx_radiotap_header() 307 rthdr->it_present = in ieee80211_add_tx_radiotap_header() 310 pos = (unsigned char *)(rthdr + 1); in ieee80211_add_tx_radiotap_header() 334 rthdr->it_present |= cpu_to_le32(1 << IEEE80211_RADIOTAP_RATE); in ieee80211_add_tx_radiotap_header() 361 rthdr->it_present |= cpu_to_le32(1 << IEEE80211_RADIOTAP_MCS); in ieee80211_add_tx_radiotap_header() 377 rthdr->it_present |= cpu_to_le32(1 << IEEE80211_RADIOTAP_VHT); in ieee80211_add_tx_radiotap_header() 379 /* required alignment from rthdr */ in ieee80211_add_tx_radiotap_header() [all...] |
H A D | rx.c | 282 struct ieee80211_radiotap_header *rthdr; in ieee80211_add_rx_radiotap_header() local 321 rthdr = skb_push(skb, rtap_len); in ieee80211_add_rx_radiotap_header() 322 memset(rthdr, 0, rtap_len - rtap.len - rtap.pad); in ieee80211_add_rx_radiotap_header() 323 it_present = &rthdr->it_present; in ieee80211_add_rx_radiotap_header() 326 rthdr->it_len = cpu_to_le16(rtap_len); in ieee80211_add_rx_radiotap_header() 361 while ((pos - (u8 *)rthdr) & 7) in ieee80211_add_rx_radiotap_header() 367 rthdr->it_present |= cpu_to_le32(1 << IEEE80211_RADIOTAP_TSFT); in ieee80211_add_rx_radiotap_header() 391 rthdr->it_present |= cpu_to_le32(1 << IEEE80211_RADIOTAP_RATE); in ieee80211_add_rx_radiotap_header() 427 rthdr->it_present |= in ieee80211_add_rx_radiotap_header() 444 if ((pos - (u8 *)rthdr) in ieee80211_add_rx_radiotap_header() [all...] |
H A D | tx.c | 2036 struct ieee80211_radiotap_header *rthdr = in ieee80211_validate_radiotap_len() local 2044 if (unlikely(rthdr->it_version)) in ieee80211_validate_radiotap_len() 2059 struct ieee80211_radiotap_header *rthdr = in ieee80211_parse_tx_radiotap() local 2062 int ret = ieee80211_radiotap_iterator_init(&iterator, rthdr, skb->len, in ieee80211_parse_tx_radiotap()
|
/kernel/linux/linux-6.6/net/mac80211/ |
H A D | status.c | 299 struct ieee80211_radiotap_header *rthdr; in ieee80211_add_tx_radiotap_header() local 308 rthdr = skb_push(skb, rtap_len); in ieee80211_add_tx_radiotap_header() 310 memset(rthdr, 0, rtap_len); in ieee80211_add_tx_radiotap_header() 311 rthdr->it_len = cpu_to_le16(rtap_len); in ieee80211_add_tx_radiotap_header() 312 rthdr->it_present = in ieee80211_add_tx_radiotap_header() 315 pos = (unsigned char *)(rthdr + 1); in ieee80211_add_tx_radiotap_header() 344 rthdr->it_present |= cpu_to_le32(BIT(IEEE80211_RADIOTAP_RATE)); in ieee80211_add_tx_radiotap_header() 371 rthdr->it_present |= cpu_to_le32(BIT(IEEE80211_RADIOTAP_MCS)); in ieee80211_add_tx_radiotap_header() 388 rthdr->it_present |= cpu_to_le32(BIT(IEEE80211_RADIOTAP_VHT)); in ieee80211_add_tx_radiotap_header() 390 /* required alignment from rthdr */ in ieee80211_add_tx_radiotap_header() [all...] |
H A D | rx.c | 301 struct ieee80211_radiotap_header *rthdr; in ieee80211_add_rx_radiotap_header() local 339 rthdr = skb_push(skb, rtap_len - tlvs_len); in ieee80211_add_rx_radiotap_header() 340 memset(rthdr, 0, rtap_len - tlvs_len); in ieee80211_add_rx_radiotap_header() 341 it_present = &rthdr->it_present; in ieee80211_add_rx_radiotap_header() 344 rthdr->it_len = cpu_to_le16(rtap_len); in ieee80211_add_rx_radiotap_header() 372 pos = (void *)&rthdr->it_optional[it_present + 1 - rthdr->it_optional]; in ieee80211_add_rx_radiotap_header() 379 while ((pos - (u8 *)rthdr) & 7) in ieee80211_add_rx_radiotap_header() 385 rthdr->it_present |= cpu_to_le32(BIT(IEEE80211_RADIOTAP_TSFT)); in ieee80211_add_rx_radiotap_header() 409 rthdr in ieee80211_add_rx_radiotap_header() [all...] |
H A D | tx.c | 2069 struct ieee80211_radiotap_header *rthdr = in ieee80211_validate_radiotap_len() local 2077 if (unlikely(rthdr->it_version)) in ieee80211_validate_radiotap_len() 2092 struct ieee80211_radiotap_header *rthdr = in ieee80211_parse_tx_radiotap() local 2095 int ret = ieee80211_radiotap_iterator_init(&iterator, rthdr, skb->len, in ieee80211_parse_tx_radiotap()
|
/kernel/linux/linux-5.10/net/ipv6/ |
H A D | datagram.c | 709 struct ipv6_rt_hdr *rthdr = (struct ipv6_rt_hdr *)(nh + opt->srcrt); in ip6_datagram_recv_specific_ctl() local 710 put_cmsg(msg, SOL_IPV6, IPV6_2292RTHDR, (rthdr->hdrlen+1) << 3, rthdr); in ip6_datagram_recv_specific_ctl() 759 struct ipv6_rt_hdr *rthdr; in ip6_datagram_send_ctl() local 935 rthdr = (struct ipv6_rt_hdr *)CMSG_DATA(cmsg); in ip6_datagram_send_ctl() 937 switch (rthdr->type) { in ip6_datagram_send_ctl() 940 if (rthdr->hdrlen != 2 || in ip6_datagram_send_ctl() 941 rthdr->segments_left != 1) { in ip6_datagram_send_ctl() 952 len = ((rthdr->hdrlen + 1) << 3); in ip6_datagram_send_ctl() 960 if ((rthdr in ip6_datagram_send_ctl() [all...] |
H A D | ah6.c | 208 * @rthdr: routing header 210 * Rearrange the destination address in @iph and the addresses in @rthdr 214 static void ipv6_rearrange_rthdr(struct ipv6hdr *iph, struct ipv6_rt_hdr *rthdr) in ipv6_rearrange_rthdr() argument 220 segments_left = rthdr->segments_left; in ipv6_rearrange_rthdr() 223 rthdr->segments_left = 0; in ipv6_rearrange_rthdr() 225 /* The value of rthdr->hdrlen has been verified either by the system in ipv6_rearrange_rthdr() 232 segments = rthdr->hdrlen >> 1; in ipv6_rearrange_rthdr() 234 addrs = ((struct rt0_hdr *)rthdr)->addr; in ipv6_rearrange_rthdr()
|
H A D | ipv6_sockglue.c | 360 struct ipv6_rt_hdr *rthdr = opt->srcrt; in ipv6_set_opt_hdr() local 361 switch (rthdr->type) { in ipv6_set_opt_hdr() 364 if (rthdr->hdrlen != 2 || rthdr->segments_left != 1) in ipv6_set_opt_hdr()
|
H A D | exthdrs.c | 666 struct rt0_hdr *rthdr; in ipv6_rthdr_rcv() local 781 rthdr = (struct rt0_hdr *) hdr; in ipv6_rthdr_rcv() 782 addr = rthdr->addr; in ipv6_rthdr_rcv()
|
/kernel/linux/linux-6.6/net/ipv6/ |
H A D | datagram.c | 716 struct ipv6_rt_hdr *rthdr = (struct ipv6_rt_hdr *)(nh + opt->srcrt); in ip6_datagram_recv_specific_ctl() local 717 put_cmsg(msg, SOL_IPV6, IPV6_2292RTHDR, (rthdr->hdrlen+1) << 3, rthdr); in ip6_datagram_recv_specific_ctl() 766 struct ipv6_rt_hdr *rthdr; in ip6_datagram_send_ctl() local 942 rthdr = (struct ipv6_rt_hdr *)CMSG_DATA(cmsg); in ip6_datagram_send_ctl() 944 switch (rthdr->type) { in ip6_datagram_send_ctl() 947 if (rthdr->hdrlen != 2 || in ip6_datagram_send_ctl() 948 rthdr->segments_left != 1) { in ip6_datagram_send_ctl() 959 len = ((rthdr->hdrlen + 1) << 3); in ip6_datagram_send_ctl() 967 if ((rthdr in ip6_datagram_send_ctl() [all...] |
H A D | ah6.c | 205 * @rthdr: routing header 207 * Rearrange the destination address in @iph and the addresses in @rthdr 211 static void ipv6_rearrange_rthdr(struct ipv6hdr *iph, struct ipv6_rt_hdr *rthdr) in ipv6_rearrange_rthdr() argument 217 segments_left = rthdr->segments_left; in ipv6_rearrange_rthdr() 220 rthdr->segments_left = 0; in ipv6_rearrange_rthdr() 222 /* The value of rthdr->hdrlen has been verified either by the system in ipv6_rearrange_rthdr() 229 segments = rthdr->hdrlen >> 1; in ipv6_rearrange_rthdr() 231 addrs = ((struct rt0_hdr *)rthdr)->addr; in ipv6_rearrange_rthdr()
|
H A D | ipv6_sockglue.c | 362 struct ipv6_rt_hdr *rthdr = opt->srcrt; in ipv6_set_opt_hdr() local 363 switch (rthdr->type) { in ipv6_set_opt_hdr() 366 if (rthdr->hdrlen != 2 || rthdr->segments_left != 1) in ipv6_set_opt_hdr()
|
H A D | exthdrs.c | 655 struct rt0_hdr *rthdr; in ipv6_rthdr_rcv() local 769 rthdr = (struct rt0_hdr *) hdr; in ipv6_rthdr_rcv() 770 addr = rthdr->addr; in ipv6_rthdr_rcv()
|
/kernel/linux/linux-5.10/drivers/net/wireless/ath/wil6210/ |
H A D | txrx.c | 309 struct ieee80211_radiotap_header rthdr; in wil_rx_add_radiotap_header() member 310 /* fields should be in the order of bits in rthdr.it_present */ in wil_rx_add_radiotap_header() 335 rtap->rthdr.it_version = PKTHDR_RADIOTAP_VERSION; in wil_rx_add_radiotap_header() 336 rtap->rthdr.it_len = cpu_to_le16(rtap_len); in wil_rx_add_radiotap_header() 337 rtap->rthdr.it_present = cpu_to_le32((1 << IEEE80211_RADIOTAP_FLAGS) | in wil_rx_add_radiotap_header()
|
/kernel/linux/linux-6.6/drivers/net/wireless/ath/wil6210/ |
H A D | txrx.c | 309 struct ieee80211_radiotap_header rthdr; in wil_rx_add_radiotap_header() member 310 /* fields should be in the order of bits in rthdr.it_present */ in wil_rx_add_radiotap_header() 335 rtap->rthdr.it_version = PKTHDR_RADIOTAP_VERSION; in wil_rx_add_radiotap_header() 336 rtap->rthdr.it_len = cpu_to_le16(rtap_len); in wil_rx_add_radiotap_header() 337 rtap->rthdr.it_present = cpu_to_le32((1 << IEEE80211_RADIOTAP_FLAGS) | in wil_rx_add_radiotap_header()
|