mirror of https://gitee.com/openkylin/linux.git
rtnetlink: Move ifm in valid_fdb_dump_legacy to closer to use
Move setting of local variable ifm to after the message parsing in
valid_fdb_dump_legacy. Avoid potential future use of unchecked variable.
Fixes: 8dfbda19a2
("rtnetlink: Move input checking for rtnl_fdb_dump to helper")
Reported-by: Christian Brauner <christian@brauner.io>
Signed-off-by: David Ahern <dsahern@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
66077060f8
commit
4565d7e5a3
|
@ -3857,7 +3857,6 @@ static int valid_fdb_dump_legacy(const struct nlmsghdr *nlh,
|
|||
int *br_idx, int *brport_idx,
|
||||
struct netlink_ext_ack *extack)
|
||||
{
|
||||
struct ifinfomsg *ifm = nlmsg_data(nlh);
|
||||
struct nlattr *tb[IFLA_MAX+1];
|
||||
int err;
|
||||
|
||||
|
@ -3871,6 +3870,8 @@ static int valid_fdb_dump_legacy(const struct nlmsghdr *nlh,
|
|||
if (nlmsg_len(nlh) != sizeof(struct ndmsg) &&
|
||||
(nlmsg_len(nlh) != sizeof(struct ndmsg) +
|
||||
nla_attr_size(sizeof(u32)))) {
|
||||
struct ifinfomsg *ifm;
|
||||
|
||||
err = nlmsg_parse(nlh, sizeof(struct ifinfomsg), tb, IFLA_MAX,
|
||||
ifla_policy, extack);
|
||||
if (err < 0) {
|
||||
|
@ -3880,6 +3881,7 @@ static int valid_fdb_dump_legacy(const struct nlmsghdr *nlh,
|
|||
*br_idx = nla_get_u32(tb[IFLA_MASTER]);
|
||||
}
|
||||
|
||||
ifm = nlmsg_data(nlh);
|
||||
*brport_idx = ifm->ifi_index;
|
||||
}
|
||||
return 0;
|
||||
|
|
Loading…
Reference in New Issue