Florian Larysch
bbadb9a222
net: ipv4: fix multipath RTM_GETROUTE behavior when iif is given
...
inet_rtm_getroute synthesizes a skeletal ICMP skb, which is passed to
ip_route_input when iif is given. If a multipath route is present for
the designated destination, fib_multipath_hash ends up being called with
that skb. However, as that skb contains no information beyond the
protocol type, the calculated hash does not match the one we would see
for a real packet.
There is currently no way to fix this for layer 4 hashing, as
RTM_GETROUTE doesn't have the necessary information to create layer 4
headers. To fix this for layer 3 hashing, set appropriate saddr/daddrs
in the skb and also change the protocol to UDP to avoid special
treatment for ICMP.
Signed-off-by: Florian Larysch <fl@n621.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-04-07 07:56:14 -07:00
..
netfilter
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2017-04-06 08:24:51 -07:00
af_inet.c
net: Add sysctl to toggle early demux for tcp and udp
2017-03-24 13:17:07 -07:00
ah4.c
IPsec: do not ignore crypto err in ah4 input
2017-01-16 12:57:48 +01:00
arp.c
neighbour: fix nlmsg_pid in notifications
2017-03-22 10:48:49 -07:00
cipso_ipv4.c
netlabel: out of bound access in cipso_v4_validate()
2017-02-04 19:44:22 -05:00
datagram.c
devinet.c
net: devinet: Add support for RTM_DELNETCONF
2017-03-28 22:32:42 -07:00
esp4.c
esp: Introduce a helper to setup the trailer
2017-01-17 10:23:08 +01:00
esp4_offload.c
esp: Add a software GRO codepath
2017-02-15 11:04:11 +01:00
fib_frontend.c
ipv4: provide stronger user input validation in nl_fib_input()
2017-03-22 14:15:49 -07:00
fib_lookup.h
fib_notifier.c
ipv4: fib: Remove redundant argument
2017-03-10 09:45:09 -08:00
fib_rules.c
ipv4: fib_rules: Dump FIB rules when registering FIB notifier
2017-03-16 10:18:34 -07:00
fib_semantics.c
net: ipv4: add support for ECMP hash policy choice
2017-03-21 15:27:19 -07:00
fib_trie.c
ipv4: fib: Remove redundant argument
2017-03-10 09:45:09 -08:00
fou.c
gre_demux.c
gre_offload.c
icmp.c
net: ipv4: add support for ECMP hash policy choice
2017-03-21 15:27:19 -07:00
igmp.c
igmp, mld: Fix memory leak in igmpv3/mld_del_delrec()
2017-02-09 16:43:45 -05:00
inet_connection_sock.c
net: Work around lockdep limitation in sockets that use sockets
2017-03-09 18:23:27 -08:00
inet_diag.c
tcp: remove early retransmit
2017-01-13 22:37:16 -05:00
inet_fragment.c
inet_hashtables.c
inet: kill smallest_size and smallest_port
2017-01-18 13:04:29 -05:00
inet_timewait_sock.c
ipv4: Namespaceify tcp_tw_recycle and tcp_max_tw_buckets knob
2016-12-29 11:38:31 -05:00
inetpeer.c
ip_forward.c
ip_fragment.c
inet: frag: release spinlock before calling icmp_send()
2017-03-22 15:40:45 -07:00
ip_gre.c
Replace <asm/uaccess.h> with <linux/uaccess.h> globally
2016-12-24 11:46:01 -08:00
ip_input.c
net: Add sysctl to toggle early demux for tcp and udp
2017-03-24 13:17:07 -07:00
ip_options.c
Replace <asm/uaccess.h> with <linux/uaccess.h> globally
2016-12-24 11:46:01 -08:00
ip_output.c
udp: avoid ufo handling on IP payload compression packets
2017-03-09 18:28:42 -08:00
ip_sockglue.c
ip: fix IP_CHECKSUM handling
2017-02-21 12:23:53 -05:00
ip_tunnel.c
ip_tunnel_core.c
lwtunnel: remove device arg to lwtunnel_build_state
2017-01-30 15:14:22 -05:00
ip_vti.c
ipcomp.c
ipconfig.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2017-04-06 08:24:51 -07:00
ipip.c
Replace <asm/uaccess.h> with <linux/uaccess.h> globally
2016-12-24 11:46:01 -08:00
ipmr.c
net: devinet: Refactor inet_netconf_notify_devconf to take event
2017-03-28 22:32:42 -07:00
Kconfig
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/klassert/ipsec-next
2017-02-16 21:25:49 -05:00
Makefile
ipv4: fib: Move FIB notification code to a separate file
2017-03-10 09:45:09 -08:00
netfilter.c
netfilter: use skb_to_full_sk in ip_route_me_harder
2017-02-28 12:49:36 +01:00
ping.c
ping: implement proper locking
2017-03-24 20:50:28 -07:00
proc.c
tcp: remove tcp_tw_recycle
2017-03-16 20:33:56 -07:00
protocol.c
net: Add sysctl to toggle early demux for tcp and udp
2017-03-24 13:17:07 -07:00
raw.c
net: use dst_confirm_neigh for UDP, RAW, ICMP, L2TP
2017-02-07 13:07:47 -05:00
raw_diag.c
route.c
net: ipv4: fix multipath RTM_GETROUTE behavior when iif is given
2017-04-07 07:56:14 -07:00
syncookies.c
syncookies: use SipHash in place of SHA1
2017-01-09 13:58:57 -05:00
sysctl_net_ipv4.c
net: Add sysctl to toggle early demux for tcp and udp
2017-03-24 13:17:07 -07:00
tcp.c
net: tcp: Define the TCP_MAX_WSCALE instead of literal number 14
2017-04-05 07:50:32 -07:00
tcp_bbr.c
tcp_bic.c
tcp_cdg.c
sched/headers: Prepare for new header dependencies before moving code to <linux/sched/clock.h>
2017-03-02 08:42:27 +01:00
tcp_cong.c
tcp_cubic.c
tcp_dctcp.c
Revert "dctcp: update cwnd on congestion event"
2016-12-06 11:34:24 -05:00
tcp_diag.c
tcp_fastopen.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2017-01-28 10:33:06 -05:00
tcp_highspeed.c
tcp_htcp.c
tcp_hybla.c
tcp_illinois.c
tcp_input.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2017-04-06 08:24:51 -07:00
tcp_ipv4.c
tcp: Record Rx hash and NAPI ID in tcp_child_process
2017-03-24 20:49:30 -07:00
tcp_lp.c
tcp_metrics.c
tcp: remove per-destination timestamp cache
2017-03-16 20:33:56 -07:00
tcp_minisocks.c
tcp: Record Rx hash and NAPI ID in tcp_child_process
2017-03-24 20:49:30 -07:00
tcp_nv.c
tcp_offload.c
tcp_output.c
net: tcp: Define the TCP_MAX_WSCALE instead of literal number 14
2017-04-05 07:50:32 -07:00
tcp_probe.c
tcp: Revert "tcp: tcp_probe: use spin_lock_bh()"
2017-02-21 13:26:03 -05:00
tcp_rate.c
tcp_recovery.c
tcp: fix lost retransmit SNMP under-counting
2017-04-05 18:41:27 -07:00
tcp_scalable.c
tcp_timer.c
tcp: fix various issues for sockets morphing to listen state
2017-03-07 13:58:33 -08:00
tcp_vegas.c
tcp_vegas.h
tcp_veno.c
tcp_westwood.c
tcp_westwood: fix tcp_westwood_info() style mistakes
2017-03-16 20:23:28 -07:00
tcp_yeah.c
tunnel4.c
udp.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2017-02-07 16:29:30 -05:00
udp_diag.c
udp_impl.h
udplite: call proper backlog handlers
2016-11-24 15:32:14 -05:00
udp_offload.c
udp_tunnel.c
udplite.c
udplite: call proper backlog handlers
2016-11-24 15:32:14 -05:00
xfrm4_input.c
esp: Add a software GRO codepath
2017-02-15 11:04:11 +01:00
xfrm4_mode_beet.c
xfrm4_mode_transport.c
esp: Add a software GRO codepath
2017-02-15 11:04:11 +01:00
xfrm4_mode_tunnel.c
xfrm4_output.c
xfrm4_policy.c
xfrm: policy: make policy backend const
2017-02-09 10:22:19 +01:00
xfrm4_protocol.c
xfrm: input: constify xfrm_input_afinfo
2017-02-09 10:22:17 +01:00
xfrm4_state.c
xfrm: remove unused function
2017-01-10 10:57:12 +01:00
xfrm4_tunnel.c