mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 01:53:29 +02:00
mptcp: pm: change rem type of set_flags
Generally, in the path manager interfaces, the local address is defined
as an mptcp_pm_addr_entry type address, while the remote address is
defined as an mptcp_addr_info type one:
(struct mptcp_pm_addr_entry *local, struct mptcp_addr_info *remote)
But the set_flags() interface uses two mptcp_pm_addr_entry type
parameters.
This patch changes the second one to mptcp_addr_info type and use helper
mptcp_pm_parse_addr() to parse it instead of using mptcp_pm_parse_entry().
Signed-off-by: Geliang Tang <tanggeliang@kylinos.cn>
Reviewed-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
This commit is contained in:
parent
2c8971c04f
commit
ab5723599c
|
|
@ -567,7 +567,7 @@ int mptcp_pm_nl_subflow_destroy_doit(struct sk_buff *skb, struct genl_info *info
|
|||
int mptcp_userspace_pm_set_flags(struct genl_info *info)
|
||||
{
|
||||
struct mptcp_pm_addr_entry loc = { .addr = { .family = AF_UNSPEC }, };
|
||||
struct mptcp_pm_addr_entry rem = { .addr = { .family = AF_UNSPEC }, };
|
||||
struct mptcp_addr_info rem = { .family = AF_UNSPEC, };
|
||||
struct mptcp_pm_addr_entry *entry;
|
||||
struct nlattr *attr, *attr_rem;
|
||||
struct mptcp_sock *msk;
|
||||
|
|
@ -598,11 +598,11 @@ int mptcp_userspace_pm_set_flags(struct genl_info *info)
|
|||
}
|
||||
|
||||
attr_rem = info->attrs[MPTCP_PM_ATTR_ADDR_REMOTE];
|
||||
ret = mptcp_pm_parse_entry(attr_rem, info, false, &rem);
|
||||
ret = mptcp_pm_parse_addr(attr_rem, info, &rem);
|
||||
if (ret < 0)
|
||||
goto set_flags_err;
|
||||
|
||||
if (rem.addr.family == AF_UNSPEC) {
|
||||
if (rem.family == AF_UNSPEC) {
|
||||
NL_SET_ERR_MSG_ATTR(info->extack, attr_rem,
|
||||
"invalid remote address family");
|
||||
ret = -EINVAL;
|
||||
|
|
@ -623,7 +623,7 @@ int mptcp_userspace_pm_set_flags(struct genl_info *info)
|
|||
spin_unlock_bh(&msk->pm.lock);
|
||||
|
||||
lock_sock(sk);
|
||||
ret = mptcp_pm_nl_mp_prio_send_ack(msk, &loc.addr, &rem.addr, bkup);
|
||||
ret = mptcp_pm_nl_mp_prio_send_ack(msk, &loc.addr, &rem, bkup);
|
||||
release_sock(sk);
|
||||
|
||||
/* mptcp_pm_nl_mp_prio_send_ack() only fails in one case */
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user