diff options
author | Mathieu Xhonneux | 2018-01-10 13:35:49 +0000 |
---|---|---|
committer | David S. Miller | 2018-01-10 16:03:55 -0500 |
commit | ccc12b11c5332c84442ef120dcd631523be75089 (patch) | |
tree | aecd1d2d0621e3fa203ccffaa71afe42893daa08 /drivers | |
parent | 862c03ee1deb7e19e0f9931682e0294ecd1fcaf9 (diff) |
ipv6: sr: fix TLVs not being copied using setsockopt
Function ipv6_push_rthdr4 allows to add an IPv6 Segment Routing Header
to a socket through setsockopt, but the current implementation doesn't
copy possible TLVs at the end of the SRH received from userspace.
Therefore, the execution of the following branch if (sr_has_hmac(sr_phdr))
{ ... } will never complete since the len and type fields of a possible
HMAC TLV are not copied, hence seg6_get_tlv_hmac will return an error,
and the HMAC will not be computed.
This commit adds a memcpy in case TLVs have been appended to the SRH.
Fixes: a149e7c7ce81 ("ipv6: sr: add support for SRH injection through setsockopt")
Acked-by: David Lebrun <dlebrun@google.com>
Signed-off-by: Mathieu Xhonneux <m.xhonneux@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
0 files changed, 0 insertions, 0 deletions