Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

net: Put fl6_* macros to struct flowi6 and use them again.

Signed-off-by: David S. Miller <davem@davemloft.net>

+58 -61
+7 -10
include/net/flow.h
··· 84 84 struct in6_addr saddr; 85 85 __be32 flowlabel; 86 86 union flowi_uli uli; 87 + #define fl6_sport uli.ports.sport 88 + #define fl6_dport uli.ports.dport 89 + #define fl6_icmp_type uli.icmpt.type 90 + #define fl6_icmp_code uli.icmpt.code 91 + #define fl6_ipsec_spi uli.spi 92 + #define fl6_mh_type uli.mht.type 93 + #define fl6_gre_key uli.gre_key 87 94 }; 88 95 89 96 struct flowidn { ··· 119 112 120 113 #define fld_dst u.dn.daddr 121 114 #define fld_src u.dn.saddr 122 - #define fl6_dst u.ip6.daddr 123 - #define fl6_src u.ip6.saddr 124 - #define fl6_flowlabel u.ip6.flowlabel 125 - #define fl6_sport u.ip6.uli.ports.sport 126 - #define fl6_dport u.ip6.uli.ports.dport 127 - #define fl6_icmp_type u.ip6.uli.icmpt.type 128 - #define fl6_icmp_code u.ip6.uli.icmpt.code 129 - #define fl6_ipsec_spi u.ip6.uli.spi 130 - #define fl6_mh_type u.ip6.uli.mht.type 131 - #define fl6_gre_key u.ip6.uli.gre_key 132 115 } __attribute__((__aligned__(BITS_PER_LONG/8))); 133 116 134 117 static inline struct flowi *flowi4_to_flowi(struct flowi4 *fl4)
+10 -10
net/dccp/ipv6.c
··· 158 158 ipv6_addr_copy(&fl6.daddr, &np->daddr); 159 159 ipv6_addr_copy(&fl6.saddr, &np->saddr); 160 160 fl6.flowi6_oif = sk->sk_bound_dev_if; 161 - fl6.uli.ports.dport = inet->inet_dport; 162 - fl6.uli.ports.sport = inet->inet_sport; 161 + fl6.fl6_dport = inet->inet_dport; 162 + fl6.fl6_sport = inet->inet_sport; 163 163 security_sk_classify_flow(sk, flowi6_to_flowi(&fl6)); 164 164 165 165 dst = ip6_dst_lookup_flow(sk, &fl6, NULL, false); ··· 253 253 ipv6_addr_copy(&fl6.saddr, &ireq6->loc_addr); 254 254 fl6.flowlabel = 0; 255 255 fl6.flowi6_oif = ireq6->iif; 256 - fl6.uli.ports.dport = inet_rsk(req)->rmt_port; 257 - fl6.uli.ports.sport = inet_rsk(req)->loc_port; 256 + fl6.fl6_dport = inet_rsk(req)->rmt_port; 257 + fl6.fl6_sport = inet_rsk(req)->loc_port; 258 258 security_req_classify_flow(req, flowi6_to_flowi(&fl6)); 259 259 260 260 opt = np->opt; ··· 323 323 324 324 fl6.flowi6_proto = IPPROTO_DCCP; 325 325 fl6.flowi6_oif = inet6_iif(rxskb); 326 - fl6.uli.ports.dport = dccp_hdr(skb)->dccph_dport; 327 - fl6.uli.ports.sport = dccp_hdr(skb)->dccph_sport; 326 + fl6.fl6_dport = dccp_hdr(skb)->dccph_dport; 327 + fl6.fl6_sport = dccp_hdr(skb)->dccph_sport; 328 328 security_skb_classify_flow(rxskb, flowi6_to_flowi(&fl6)); 329 329 330 330 /* sk = NULL, but it is safe for now. RST socket required. */ ··· 535 535 final_p = fl6_update_dst(&fl6, opt, &final); 536 536 ipv6_addr_copy(&fl6.saddr, &ireq6->loc_addr); 537 537 fl6.flowi6_oif = sk->sk_bound_dev_if; 538 - fl6.uli.ports.dport = inet_rsk(req)->rmt_port; 539 - fl6.uli.ports.sport = inet_rsk(req)->loc_port; 538 + fl6.fl6_dport = inet_rsk(req)->rmt_port; 539 + fl6.fl6_sport = inet_rsk(req)->loc_port; 540 540 security_sk_classify_flow(sk, flowi6_to_flowi(&fl6)); 541 541 542 542 dst = ip6_dst_lookup_flow(sk, &fl6, final_p, false); ··· 957 957 ipv6_addr_copy(&fl6.daddr, &np->daddr); 958 958 ipv6_addr_copy(&fl6.saddr, saddr ? saddr : &np->saddr); 959 959 fl6.flowi6_oif = sk->sk_bound_dev_if; 960 - fl6.uli.ports.dport = usin->sin6_port; 961 - fl6.uli.ports.sport = inet->inet_sport; 960 + fl6.fl6_dport = usin->sin6_port; 961 + fl6.fl6_sport = inet->inet_sport; 962 962 security_sk_classify_flow(sk, flowi6_to_flowi(&fl6)); 963 963 964 964 final_p = fl6_update_dst(&fl6, np->opt, &final);
+2 -2
net/ipv6/af_inet6.c
··· 661 661 fl6.flowlabel = np->flow_label; 662 662 fl6.flowi6_oif = sk->sk_bound_dev_if; 663 663 fl6.flowi6_mark = sk->sk_mark; 664 - fl6.uli.ports.dport = inet->inet_dport; 665 - fl6.uli.ports.sport = inet->inet_sport; 664 + fl6.fl6_dport = inet->inet_dport; 665 + fl6.fl6_sport = inet->inet_sport; 666 666 security_sk_classify_flow(sk, flowi6_to_flowi(&fl6)); 667 667 668 668 final_p = fl6_update_dst(&fl6, np->opt, &final);
+3 -3
net/ipv6/datagram.c
··· 151 151 ipv6_addr_copy(&fl6.saddr, &np->saddr); 152 152 fl6.flowi6_oif = sk->sk_bound_dev_if; 153 153 fl6.flowi6_mark = sk->sk_mark; 154 - fl6.uli.ports.dport = inet->inet_dport; 155 - fl6.uli.ports.sport = inet->inet_sport; 154 + fl6.fl6_dport = inet->inet_dport; 155 + fl6.fl6_sport = inet->inet_sport; 156 156 157 157 if (!fl6.flowi6_oif && (addr_type&IPV6_ADDR_MULTICAST)) 158 158 fl6.flowi6_oif = np->mcast_oif; ··· 261 261 serr->ee.ee_info = info; 262 262 serr->ee.ee_data = 0; 263 263 serr->addr_offset = (u8 *)&iph->daddr - skb_network_header(skb); 264 - serr->port = fl6->uli.ports.dport; 264 + serr->port = fl6->fl6_dport; 265 265 266 266 __skb_pull(skb, skb_tail_pointer(skb) - skb->data); 267 267 skb_reset_transport_header(skb);
+5 -5
net/ipv6/icmp.c
··· 448 448 if (saddr) 449 449 ipv6_addr_copy(&fl6.saddr, saddr); 450 450 fl6.flowi6_oif = iif; 451 - fl6.uli.icmpt.type = type; 452 - fl6.uli.icmpt.code = code; 451 + fl6.fl6_icmp_type = type; 452 + fl6.fl6_icmp_code = code; 453 453 security_skb_classify_flow(skb, flowi6_to_flowi(&fl6)); 454 454 455 455 sk = icmpv6_xmit_lock(net); ··· 544 544 if (saddr) 545 545 ipv6_addr_copy(&fl6.saddr, saddr); 546 546 fl6.flowi6_oif = skb->dev->ifindex; 547 - fl6.uli.icmpt.type = ICMPV6_ECHO_REPLY; 547 + fl6.fl6_icmp_type = ICMPV6_ECHO_REPLY; 548 548 security_skb_classify_flow(skb, flowi6_to_flowi(&fl6)); 549 549 550 550 sk = icmpv6_xmit_lock(net); ··· 794 794 ipv6_addr_copy(&fl6->saddr, saddr); 795 795 ipv6_addr_copy(&fl6->daddr, daddr); 796 796 fl6->flowi6_proto = IPPROTO_ICMPV6; 797 - fl6->uli.icmpt.type = type; 798 - fl6->uli.icmpt.code = 0; 797 + fl6->fl6_icmp_type = type; 798 + fl6->fl6_icmp_code = 0; 799 799 fl6->flowi6_oif = oif; 800 800 security_sk_classify_flow(sk, flowi6_to_flowi(fl6)); 801 801 }
+4 -4
net/ipv6/inet6_connection_sock.c
··· 70 70 ipv6_addr_copy(&fl6.saddr, &treq->loc_addr); 71 71 fl6.flowi6_oif = sk->sk_bound_dev_if; 72 72 fl6.flowi6_mark = sk->sk_mark; 73 - fl6.uli.ports.dport = inet_rsk(req)->rmt_port; 74 - fl6.uli.ports.sport = inet_rsk(req)->loc_port; 73 + fl6.fl6_dport = inet_rsk(req)->rmt_port; 74 + fl6.fl6_sport = inet_rsk(req)->loc_port; 75 75 security_req_classify_flow(req, flowi6_to_flowi(&fl6)); 76 76 77 77 dst = ip6_dst_lookup_flow(sk, &fl6, final_p, false); ··· 220 220 IP6_ECN_flow_xmit(sk, fl6.flowlabel); 221 221 fl6.flowi6_oif = sk->sk_bound_dev_if; 222 222 fl6.flowi6_mark = sk->sk_mark; 223 - fl6.uli.ports.sport = inet->inet_sport; 224 - fl6.uli.ports.dport = inet->inet_dport; 223 + fl6.fl6_sport = inet->inet_sport; 224 + fl6.fl6_dport = inet->inet_dport; 225 225 security_sk_classify_flow(sk, flowi6_to_flowi(&fl6)); 226 226 227 227 final_p = fl6_update_dst(&fl6, np->opt, &final);
+1 -1
net/ipv6/mip6.c
··· 216 216 int err = 0; 217 217 218 218 if (unlikely(fl6->flowi6_proto == IPPROTO_MH && 219 - fl6->uli.mht.type <= IP6_MH_TYPE_MAX)) 219 + fl6->fl6_mh_type <= IP6_MH_TYPE_MAX)) 220 220 goto out; 221 221 222 222 if (likely(opt->dsthao)) {
+2 -2
net/ipv6/netfilter/ip6t_REJECT.c
··· 93 93 fl6.flowi6_proto = IPPROTO_TCP; 94 94 ipv6_addr_copy(&fl6.saddr, &oip6h->daddr); 95 95 ipv6_addr_copy(&fl6.daddr, &oip6h->saddr); 96 - fl6.uli.ports.sport = otcph.dest; 97 - fl6.uli.ports.dport = otcph.source; 96 + fl6.fl6_sport = otcph.dest; 97 + fl6.fl6_dport = otcph.source; 98 98 security_skb_classify_flow(oldskb, flowi6_to_flowi(&fl6)); 99 99 dst = ip6_route_output(net, NULL, &fl6); 100 100 if (dst == NULL || dst->error) {
+3 -3
net/ipv6/raw.c
··· 693 693 code = iov->iov_base; 694 694 695 695 if (type && code) { 696 - if (get_user(fl6->uli.icmpt.type, type) || 697 - get_user(fl6->uli.icmpt.code, code)) 696 + if (get_user(fl6->fl6_icmp_type, type) || 697 + get_user(fl6->fl6_icmp_code, code)) 698 698 return -EFAULT; 699 699 probed = 1; 700 700 } ··· 705 705 /* check if type field is readable or not. */ 706 706 if (iov->iov_len > 2 - len) { 707 707 u8 __user *p = iov->iov_base; 708 - if (get_user(fl6->uli.mht.type, &p[2 - len])) 708 + if (get_user(fl6->fl6_mh_type, &p[2 - len])) 709 709 return -EFAULT; 710 710 probed = 1; 711 711 } else
+2 -2
net/ipv6/syncookies.c
··· 240 240 ipv6_addr_copy(&fl6.saddr, &ireq6->loc_addr); 241 241 fl6.flowi6_oif = sk->sk_bound_dev_if; 242 242 fl6.flowi6_mark = sk->sk_mark; 243 - fl6.uli.ports.dport = inet_rsk(req)->rmt_port; 244 - fl6.uli.ports.sport = inet_sk(sk)->inet_sport; 243 + fl6.fl6_dport = inet_rsk(req)->rmt_port; 244 + fl6.fl6_sport = inet_sk(sk)->inet_sport; 245 245 security_req_classify_flow(req, flowi6_to_flowi(&fl6)); 246 246 247 247 dst = ip6_dst_lookup_flow(sk, &fl6, final_p, false);
+8 -8
net/ipv6/tcp_ipv6.c
··· 248 248 (saddr ? saddr : &np->saddr)); 249 249 fl6.flowi6_oif = sk->sk_bound_dev_if; 250 250 fl6.flowi6_mark = sk->sk_mark; 251 - fl6.uli.ports.dport = usin->sin6_port; 252 - fl6.uli.ports.sport = inet->inet_sport; 251 + fl6.fl6_dport = usin->sin6_port; 252 + fl6.fl6_sport = inet->inet_sport; 253 253 254 254 final_p = fl6_update_dst(&fl6, np->opt, &final); 255 255 ··· 401 401 ipv6_addr_copy(&fl6.saddr, &np->saddr); 402 402 fl6.flowi6_oif = sk->sk_bound_dev_if; 403 403 fl6.flowi6_mark = sk->sk_mark; 404 - fl6.uli.ports.dport = inet->inet_dport; 405 - fl6.uli.ports.sport = inet->inet_sport; 404 + fl6.fl6_dport = inet->inet_dport; 405 + fl6.fl6_sport = inet->inet_sport; 406 406 security_skb_classify_flow(skb, flowi6_to_flowi(&fl6)); 407 407 408 408 dst = ip6_dst_lookup_flow(sk, &fl6, NULL, false); ··· 493 493 fl6.flowlabel = 0; 494 494 fl6.flowi6_oif = treq->iif; 495 495 fl6.flowi6_mark = sk->sk_mark; 496 - fl6.uli.ports.dport = inet_rsk(req)->rmt_port; 497 - fl6.uli.ports.sport = inet_rsk(req)->loc_port; 496 + fl6.fl6_dport = inet_rsk(req)->rmt_port; 497 + fl6.fl6_sport = inet_rsk(req)->loc_port; 498 498 security_req_classify_flow(req, flowi6_to_flowi(&fl6)); 499 499 500 500 opt = np->opt; ··· 1057 1057 1058 1058 fl6.flowi6_proto = IPPROTO_TCP; 1059 1059 fl6.flowi6_oif = inet6_iif(skb); 1060 - fl6.uli.ports.dport = t1->dest; 1061 - fl6.uli.ports.sport = t1->source; 1060 + fl6.fl6_dport = t1->dest; 1061 + fl6.fl6_sport = t1->source; 1062 1062 security_skb_classify_flow(skb, flowi6_to_flowi(&fl6)); 1063 1063 1064 1064 /* Pass a socket to ip6_dst_lookup either it is for RST
+5 -5
net/ipv6/udp.c
··· 899 899 * Create a UDP header 900 900 */ 901 901 uh = udp_hdr(skb); 902 - uh->source = fl6->uli.ports.sport; 903 - uh->dest = fl6->uli.ports.dport; 902 + uh->source = fl6->fl6_sport; 903 + uh->dest = fl6->fl6_dport; 904 904 uh->len = htons(up->len); 905 905 uh->check = 0; 906 906 ··· 1036 1036 if (sin6->sin6_port == 0) 1037 1037 return -EINVAL; 1038 1038 1039 - fl6.uli.ports.dport = sin6->sin6_port; 1039 + fl6.fl6_dport = sin6->sin6_port; 1040 1040 daddr = &sin6->sin6_addr; 1041 1041 1042 1042 if (np->sndflow) { ··· 1065 1065 if (sk->sk_state != TCP_ESTABLISHED) 1066 1066 return -EDESTADDRREQ; 1067 1067 1068 - fl6.uli.ports.dport = inet->inet_dport; 1068 + fl6.fl6_dport = inet->inet_dport; 1069 1069 daddr = &np->daddr; 1070 1070 fl6.flowlabel = np->flow_label; 1071 1071 connected = 1; ··· 1112 1112 fl6.daddr.s6_addr[15] = 0x1; /* :: means loopback (BSD'ism) */ 1113 1113 if (ipv6_addr_any(&fl6.saddr) && !ipv6_addr_any(&np->saddr)) 1114 1114 ipv6_addr_copy(&fl6.saddr, &np->saddr); 1115 - fl6.uli.ports.sport = inet->inet_sport; 1115 + fl6.fl6_sport = inet->inet_sport; 1116 1116 1117 1117 final_p = fl6_update_dst(&fl6, opt, &final); 1118 1118 if (final_p)
+6 -6
net/ipv6/xfrm6_policy.c
··· 160 160 pskb_may_pull(skb, nh + offset + 4 - skb->data))) { 161 161 __be16 *ports = (__be16 *)exthdr; 162 162 163 - fl6->uli.ports.sport = ports[!!reverse]; 164 - fl6->uli.ports.dport = ports[!reverse]; 163 + fl6->fl6_sport = ports[!!reverse]; 164 + fl6->fl6_dport = ports[!reverse]; 165 165 } 166 166 fl6->flowi6_proto = nexthdr; 167 167 return; ··· 170 170 if (!onlyproto && pskb_may_pull(skb, nh + offset + 2 - skb->data)) { 171 171 u8 *icmp = (u8 *)exthdr; 172 172 173 - fl6->uli.icmpt.type = icmp[0]; 174 - fl6->uli.icmpt.code = icmp[1]; 173 + fl6->fl6_icmp_type = icmp[0]; 174 + fl6->fl6_icmp_code = icmp[1]; 175 175 } 176 176 fl6->flowi6_proto = nexthdr; 177 177 return; ··· 182 182 struct ip6_mh *mh; 183 183 mh = (struct ip6_mh *)exthdr; 184 184 185 - fl6->uli.mht.type = mh->ip6mh_type; 185 + fl6->fl6_mh_type = mh->ip6mh_type; 186 186 } 187 187 fl6->flowi6_proto = nexthdr; 188 188 return; ··· 193 193 case IPPROTO_ESP: 194 194 case IPPROTO_COMP: 195 195 default: 196 - fl6->uli.spi = 0; 196 + fl6->fl6_ipsec_spi = 0; 197 197 fl6->flowi6_proto = nexthdr; 198 198 return; 199 199 }