diff options
author | Sabrina Dubroca <sd@queasysnail.net> | 2024-10-01 18:48:14 +0200 |
---|---|---|
committer | Steffen Klassert <steffen.klassert@secunet.com> | 2024-10-07 09:09:08 +0200 |
commit | 3f0ab59e6537c6a8f9e1b355b48f9c05a76e8563 (patch) | |
tree | 01fa124c72c829c0aa68eb4f6b1c63d18bbf4fb9 /drivers/fpga/tests | |
parent | 645546a05b0370391c0eac0f14f5b9ddf8d00731 (diff) |
xfrm: validate new SA's prefixlen using SA family when sel.family is unset
This expands the validation introduced in commit 07bf7908950a ("xfrm:
Validate address prefix lengths in the xfrm selector.")
syzbot created an SA with
usersa.sel.family = AF_UNSPEC
usersa.sel.prefixlen_s = 128
usersa.family = AF_INET
Because of the AF_UNSPEC selector, verify_newsa_info doesn't put
limits on prefixlen_{s,d}. But then copy_from_user_state sets
x->sel.family to usersa.family (AF_INET). Do the same conversion in
verify_newsa_info before validating prefixlen_{s,d}, since that's how
prefixlen is going to be used later on.
Reported-by: syzbot+cc39f136925517aed571@syzkaller.appspotmail.com
Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
Diffstat (limited to 'drivers/fpga/tests')
0 files changed, 0 insertions, 0 deletions