summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorDenys Fedoryshchenko <denys.f@collabora.com>2026-08-08 17:45:35 +0300
committerDenys Fedoryshchenko <denys.f@collabora.com>2026-08-08 17:45:35 +0300
commitaf009c87b41ea1bb594d68e53d46ca050057e2db (patch)
treee3098d9b83c0b904bc585c664b3b857f653b04ea /tests
parent59124bbc26bf0211723b3eb5b5186d3dc7b72b0c (diff)
downloadaccel-ppp-af009c87b41ea1bb594d68e53d46ca050057e2db.tar.gz
accel-ppp-af009c87b41ea1bb594d68e53d46ca050057e2db.zip
ipoe: zero generic netlink requests before filling them in
The request buffers are plain stack variables and only the nlmsghdr fields and genlmsghdr.cmd were ever assigned, so genlmsghdr.version and genlmsghdr.reserved reached the kernel holding whatever happened to be on the stack. Since 6.1 genetlink validates the reserved header fields of every command whose id is >= genl_family.resv_start_op, and ipoe sets that field to CTRL_CMD_GETPOLICY + 1, i.e. 11. IPOE_CMD_DEL_NET is 11, so ipoe_nl_del_net(), which runs on startup and on every config reload, is already rejected with EINVAL whenever that garbage is nonzero, and any command added after it is affected as well.
Diffstat (limited to 'tests')
0 files changed, 0 insertions, 0 deletions