mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 01:53:29 +02:00
RDMA/uverbs: Check CAP_NET_RAW in user namespace for RAW QP create
Currently, the capability check is done in the default
init_user_ns user namespace. When a process runs in a
non default user namespace, such check fails. Due to this
when a process is running using Podman, it fails to create
the QP.
Since the RDMA device is a resource within a network namespace,
use the network namespace associated with the RDMA device to
determine its owning user namespace.
Fixes: 6d1e7ba241 ("IB/uverbs: Introduce create/destroy QP commands over ioctl")
Signed-off-by: Parav Pandit <parav@nvidia.com>
Link: https://patch.msgid.link/7b6b87505ccc28a1f7b4255af94d898d2df0fff5.1750963874.git.leon@kernel.org
Signed-off-by: Leon Romanovsky <leon@kernel.org>
This commit is contained in:
parent
0498c2d998
commit
a6dca091ba
|
|
@ -133,7 +133,7 @@ static int UVERBS_HANDLER(UVERBS_METHOD_QP_CREATE)(
|
|||
device = xrcd->device;
|
||||
break;
|
||||
case IB_UVERBS_QPT_RAW_PACKET:
|
||||
if (!capable(CAP_NET_RAW))
|
||||
if (!rdma_uattrs_has_raw_cap(attrs))
|
||||
return -EPERM;
|
||||
fallthrough;
|
||||
case IB_UVERBS_QPT_RC:
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user