mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2024-12-29 09:12:07 +00:00
netdevsim: copy addresses for both in and out paths
The current code only copies the address for the in path, leaving the out
path address set to 0. This patch corrects the issue by copying the addresses
for both the in and out paths. Before this patch:
# cat /sys/kernel/debug/netdevsim/netdevsim0/ports/0/ipsec
SA count=2 tx=20
sa[0] tx ipaddr=0.0.0.0
sa[0] spi=0x00000100 proto=0x32 salt=0x0adecc3a crypt=1
sa[0] key=0x3167608a ca4f1397 43565909 941fa627
sa[1] rx ipaddr=192.168.0.1
sa[1] spi=0x00000101 proto=0x32 salt=0x0adecc3a crypt=1
sa[1] key=0x3167608a ca4f1397 43565909 941fa627
After this patch:
= cat /sys/kernel/debug/netdevsim/netdevsim0/ports/0/ipsec
SA count=2 tx=20
sa[0] tx ipaddr=192.168.0.2
sa[0] spi=0x00000100 proto=0x32 salt=0x0adecc3a crypt=1
sa[0] key=0x3167608a ca4f1397 43565909 941fa627
sa[1] rx ipaddr=192.168.0.1
sa[1] spi=0x00000101 proto=0x32 salt=0x0adecc3a crypt=1
sa[1] key=0x3167608a ca4f1397 43565909 941fa627
Fixes: 7699353da8
("netdevsim: add ipsec offload testing")
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Link: https://patch.msgid.link/20241010040027.21440-3-liuhangbin@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
c71bc6da61
commit
2cf567f421
@ -180,14 +180,13 @@ static int nsim_ipsec_add_sa(struct xfrm_state *xs,
|
||||
return ret;
|
||||
}
|
||||
|
||||
if (xs->xso.dir == XFRM_DEV_OFFLOAD_IN) {
|
||||
if (xs->xso.dir == XFRM_DEV_OFFLOAD_IN)
|
||||
sa.rx = true;
|
||||
|
||||
if (xs->props.family == AF_INET6)
|
||||
memcpy(sa.ipaddr, &xs->id.daddr.a6, 16);
|
||||
else
|
||||
memcpy(&sa.ipaddr[3], &xs->id.daddr.a4, 4);
|
||||
}
|
||||
if (xs->props.family == AF_INET6)
|
||||
memcpy(sa.ipaddr, &xs->id.daddr.a6, 16);
|
||||
else
|
||||
memcpy(&sa.ipaddr[3], &xs->id.daddr.a4, 4);
|
||||
|
||||
/* the preparations worked, so save the info */
|
||||
memcpy(&ipsec->sa[sa_idx], &sa, sizeof(sa));
|
||||
|
Loading…
Reference in New Issue
Block a user