Jiri Benc
63d008a4e9
ipv4: send arp replies to the correct tunnel
...
When using ip lwtunnels, the additional data for xmit (basically, the actual
tunnel to use) are carried in ip_tunnel_info either in dst->lwtstate or in
metadata dst. When replying to ARP requests, we need to send the reply to
the same tunnel the request came from. This means we need to construct
proper metadata dst for ARP replies.
We could perform another route lookup to get a dst entry with the correct
lwtstate. However, this won't always ensure that the outgoing tunnel is the
same as the incoming one, and it won't work anyway for IPv4 duplicate
address detection.
The only thing to do is to "reverse" the ip_tunnel_info.
Signed-off-by: Jiri Benc <jbenc@redhat.com>
Acked-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-09-24 14:31:36 -07:00
..
9p
9p: switch p9_client_read() to passing struct iov_iter *
2015-04-11 22:28:27 -04:00
bluetooth
Bluetooth: add hci_connect_le_scan
2015-08-10 21:36:13 +02:00
caif
caif: fix a signedness bug in cfpkt_iterate()
2015-02-20 17:35:14 -05:00
irda
irda: Convert function pointer arrays and uses to const
2014-12-10 15:33:16 -05:00
iucv
netfilter
Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf
2015-09-05 21:57:42 -07:00
netns
Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf-next
2015-08-04 23:57:45 -07:00
nfc
nfc: netlink: Add capability to reply to vendor_cmd with data
2015-08-20 22:00:11 +02:00
phonet
sctp
sctp: fix ASCONF list handling
2015-06-14 12:55:49 -07:00
tc_act
net_sched: act_bpf: remove spinlock in fast path
2015-08-26 11:01:45 -07:00
6lowpan.h
6lowpan: add generic 6lowpan netdev private data
2015-08-11 22:05:36 +02:00
act_api.h
net_sched: make tcf_hash_destroy() static
2015-08-26 11:01:44 -07:00
addrconf.h
Changes for 4.3
2015-09-09 08:33:31 -07:00
af_ieee802154.h
af_rxrpc.h
af_unix.h
net/unix: support SCM_SECURITY for stream sockets
2015-06-10 22:49:20 -07:00
af_vsock.h
net: Pass kern from net_proto_family.create to sk_alloc
2015-05-11 10:50:17 -04:00
ah.h
arp.h
neigh: Factor out ___neigh_lookup_noref
2015-03-04 00:23:23 -05:00
atmclip.h
ax25.h
ax25: Stop using sock->sk_protinfo.
2015-06-28 16:55:44 -07:00
ax88796.h
bond_3ad.h
bonding: Implement port churn-machine (AD standard 43.4.17).
2015-02-24 16:05:48 -05:00
bond_alb.h
bond_options.h
bonding: convert num_grat_arp to the new bonding option API
2015-07-27 01:05:24 -07:00
bonding.h
net/bonding: Export bond_option_active_slave_get_rcu
2015-08-30 18:08:50 -04:00
busy_poll.h
cfg80211-wext.h
cfg80211.h
Merge branch 'mac80211' into mac80211-next
2015-07-17 15:39:41 +02:00
cfg802154.h
ieee802154: add ack request default handling
2015-08-10 20:43:06 +02:00
checksum.h
net: Add inet_proto_csum_replace_by_diff utility function
2015-08-17 21:33:06 -07:00
cipso_ipv4.h
cipso: don't use IPCB() to locate the CIPSO IP option
2015-02-11 14:46:37 -05:00
cls_cgroup.h
cls_cgroup: factor out classid retrieval
2015-07-20 12:41:30 -07:00
codel.h
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2015-05-13 14:31:43 -04:00
compat.h
net: switch importing msghdr from userland to {compat_,}import_iovec()
2015-04-09 00:02:26 -04:00
datalink.h
dcbevent.h
dcbnl.h
net/dcb: Add IEEE QCN attribute
2015-03-06 21:50:02 -05:00
dn.h
dn_dev.h
dn_fib.h
dn_neigh.h
netfilter: Pass socket pointer down through okfn().
2015-04-07 15:25:55 -04:00
dn_nsp.h
dn_route.h
dsa.h
net: dsa: Add dsa_is_dsa_port() helper
2015-08-18 14:17:21 -07:00
dsfield.h
dst.h
tcp: use dctcp if enabled on the route to the initiator
2015-08-31 12:34:00 -07:00
dst_metadata.h
tun_dst: Remove opts_size
2015-08-31 21:23:42 -07:00
dst_ops.h
net: Remove protocol from struct dst_ops
2015-03-09 16:06:10 -04:00
esp.h
ethoc.h
fib_rules.h
net: ipv6: use common fib_default_rule_pref
2015-09-09 14:19:50 -07:00
firewire.h
flow.h
net: Fix vti use case with oif in dst lookups
2015-09-17 16:36:34 -07:00
flow_dissector.h
flow_dissector: Don't use bit fields.
2015-09-01 16:46:08 -07:00
flowcache.h
fou.h
garp.h
gen_stats.h
genetlink.h
net: Introduce possible_net_t
2015-03-12 14:39:40 -04:00
geneve.h
geneve: Consolidate Geneve functionality in single module.
2015-08-27 15:42:48 -07:00
gre.h
gre: Remove support for sharing GRE protocol hook.
2015-08-10 14:03:54 -07:00
gro_cells.h
gro_cells: remove spinlock protecting receive queues
2015-08-31 15:17:17 -07:00
gue.h
icmp.h
ieee80211_radiotap.h
ieee802154_netdev.h
mac802154: cleanup llsec param flags
2015-06-12 11:42:29 +02:00
if_inet6.h
ipv6: do retries on stable privacy addresses
2015-03-23 22:12:09 -04:00
inet6_connection_sock.h
inet: get rid of central tcp/dccp listener timer
2015-03-20 12:40:25 -04:00
inet6_hashtables.h
ipv6: get rid of __inet6_hash()
2015-03-18 22:00:35 -04:00
inet_common.h
net: Modify sk_alloc to not reference count the netns of kernel sockets.
2015-05-11 10:50:18 -04:00
inet_connection_sock.h
tcp: fix child sockets to use system default congestion control if not set
2015-05-31 21:49:14 -07:00
inet_ecn.h
inet_frag.h
inet: frags: remove INET_FRAG_EVICTED and use list_evictor for the test
2015-07-26 21:00:15 -07:00
inet_hashtables.h
inet: simplify timewait refcounting
2015-07-09 15:12:20 -07:00
inet_sock.h
inet: add IP_BIND_ADDRESS_NO_PORT to overcome bind(0) limitations
2015-06-06 23:57:12 -07:00
inet_timewait_sock.h
tcp/dccp: fix timewait races in timer handling
2015-09-21 16:32:29 -07:00
inetpeer.h
net: Add support for VRFs to inetpeer cache
2015-08-28 13:32:36 -07:00
ip.h
net: Introduce helper functions to get the per cpu data
2015-08-30 21:48:58 -07:00
ip6_checksum.h
ip6_fib.h
ipv6: include NLM_F_REPLACE in route replace notifications
2015-09-17 15:00:27 -07:00
ip6_route.h
ipv6: Add rt6_get_cookie() function
2015-05-25 13:25:34 -04:00
ip6_tunnel.h
ip6tunnel: make rx/tx bytes counters consistent
2015-09-20 22:36:42 -07:00
ip_fib.h
net: Fix behaviour of unreachable, blackhole and prohibit routes
2015-09-20 21:45:08 -07:00
ip_tunnels.h
ipv4: send arp replies to the correct tunnel
2015-09-24 14:31:36 -07:00
ip_vs.h
ipvs: add more mcast parameters for the sync daemon
2015-08-21 09:10:11 -07:00
ipcomp.h
ipconfig.h
ipv6.h
ipv6: Enable auto flow labels by default
2015-07-31 17:07:12 -07:00
ipx.h
iw_handler.h
wext: add checked wrappers for adding events/points to streams
2015-02-28 21:31:12 +01:00
lapb.h
lib80211.h
llc.h
llc_c_ac.h
llc_c_ev.h
llc_c_st.h
llc: Make llc_conn_ev_qfyr_t function pointer arrays const
2014-12-10 15:21:24 -05:00
llc_conn.h
net: Pass kern from net_proto_family.create to sk_alloc
2015-05-11 10:50:17 -04:00
llc_if.h
llc_pdu.h
llc_s_ac.h
llc_s_ev.h
llc_s_st.h
llc: Make llc_sap_action_t function pointer arrays const
2014-12-10 15:21:24 -05:00
llc_sap.h
lwtunnel.h
lwt: Add cfg argument to build_state
2015-08-24 10:34:40 -07:00
mac80211.h
mac80211: protect non-HT BSS when HT TDLS traffic exists
2015-09-04 14:25:46 +02:00
mac802154.h
mac802154: do not export ieee802154_rx()
2015-07-23 17:10:50 +02:00
mip6.h
mld.h
mpls.h
mpls_iptunnel.h
mpls: ip tunnel support
2015-07-21 10:39:05 -07:00
mrp.h
ndisc.h
ipv6: ndisc: inherit metadata dst when creating ndisc requests
2015-08-20 15:42:37 -07:00
neighbour.h
net: add explicit logging and stat for neighbour table overflow
2015-08-10 13:46:21 -07:00
net_namespace.h
netfilter: nfacct: per network namespace support
2015-08-07 11:50:56 +02:00
net_ratelimit.h
netevent.h
netlabel.h
netlink.h
netlink: implement nla_get_in_addr and nla_get_in6_addr
2015-03-31 13:58:35 -04:00
netprio_cgroup.h
netrom.h
nexthop.h
nl802154.h
ieee802154: add ack request default handling
2015-08-10 20:43:06 +02:00
p8022.h
ping.h
net: Remove iocb argument from sendmsg and recvmsg
2015-03-02 13:06:31 -05:00
pkt_cls.h
pkt_sched.h
net: sched: consolidate tc_classify{,_compat}
2015-08-27 14:18:48 -07:00
protocol.h
psnap.h
raw.h
rawv6.h
red.h
regulatory.h
cfg80211: allow wiphy specific regdomain management
2014-12-17 11:49:55 +01:00
request_sock.h
tcp: provide SYN headers for passive connections
2015-05-05 16:02:34 -04:00
rose.h
route.h
net: Fix vti use case with oif in dst lookups
2015-09-17 16:36:34 -07:00
rtnetlink.h
openvswitch: Use regular VXLAN net_device device
2015-07-21 10:39:07 -07:00
sch_generic.h
net: sched: register noqueue qdisc
2015-08-27 17:14:30 -07:00
scm.h
secure_seq.h
slhc_vj.h
snmp.h
sock.h
memcg: move memcg_proto_active from sock.h
2015-09-08 15:35:28 -07:00
Space.h
stp.h
switchdev.h
net: switchdev: support static FDB addresses
2015-08-11 12:03:19 -07:00
tcp.h
tcp: use dctcp if enabled on the route to the initiator
2015-08-31 12:34:00 -07:00
tcp_memcontrol.h
tcp_states.h
inet: add TCP_NEW_SYN_RECV state
2015-03-12 22:58:12 -04:00
timewait_sock.h
inet: remove BUG_ON() in twsk_destructor()
2015-07-09 15:12:20 -07:00
transp_v6.h
tso.h
udp.h
net: Remove iocb argument from sendmsg and recvmsg
2015-03-02 13:06:31 -05:00
udp_tunnel.h
vxlan: do not receive IPv4 packets on IPv6 socket
2015-08-29 13:07:54 -07:00
udplite.h
net: switch memcpy_fromiovec()/memcpy_fromiovecend() users to copy_from_iter()
2015-02-04 01:34:15 -05:00
vrf.h
net: Make table id type u32
2015-09-01 14:32:44 -07:00
vsock_addr.h
vxlan.h
vxlan: fix multiple inclusion of vxlan.h
2015-08-25 14:32:04 -07:00
wext.h
wimax.h
x25.h
x25device.h
xfrm.h
xfrm: Add oif to dst lookups
2015-08-11 12:41:35 +02:00