diff options
author | Geliang Tang <tanggeliang@kylinos.cn> | 2024-03-01 19:18:36 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2024-03-04 13:07:46 +0000 |
commit | d32c8fb1c881478e4af8e6ac3c922d35c8ba3ca8 (patch) | |
tree | 68351234e541cbcfdd63a046c0f3441aee07f55d /net/mptcp/protocol.h | |
parent | 06afe09091ee69dc7ab058b4be9917ae59cc81e5 (diff) |
mptcp: implement mptcp_userspace_pm_get_addr
This patch implements mptcp_userspace_pm_get_addr() to get an address
from userspace pm address list according the given 'token' and 'id'.
Use nla_get_u32() to get the u32 value of 'token', then pass it to
mptcp_token_get_sock() to get the msk. Pass 'msk' and 'id' to the helper
mptcp_userspace_pm_lookup_addr_by_id() to get the address entry. Put
this entry to userspace using mptcp_pm_nl_put_entry_info().
Signed-off-by: Geliang Tang <tanggeliang@kylinos.cn>
Reviewed-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Reviewed-by: Mat Martineau <martineau@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/mptcp/protocol.h')
-rw-r--r-- | net/mptcp/protocol.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/mptcp/protocol.h b/net/mptcp/protocol.h index f23ca7645e96..f848e0203e88 100644 --- a/net/mptcp/protocol.h +++ b/net/mptcp/protocol.h @@ -1069,6 +1069,8 @@ int mptcp_pm_nl_dump_addr(struct sk_buff *msg, struct netlink_callback *cb); int mptcp_userspace_pm_dump_addr(struct sk_buff *msg, struct netlink_callback *cb); +int mptcp_userspace_pm_get_addr(struct sk_buff *skb, + struct genl_info *info); static inline u8 subflow_get_local_id(const struct mptcp_subflow_context *subflow) { |