Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7b99a993 authored by Hong zhi guo's avatar Hong zhi guo Committed by David S. Miller
Browse files

bridge: avoid br_ifinfo_notify when nothing changed



When neither IFF_BRIDGE nor IFF_BRIDGE_PORT is set,
and afspec == NULL but  protinfo != NULL, we run into
"if (err == 0) br_ifinfo_notify(RTM_NEWLINK, p);" with
random value in ret.

Thanks to Sergei for pointing out the error in commit comments.

Signed-off-by: default avatarHong Zhiguo <honkiko@gmail.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 5e95329b
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -357,7 +357,7 @@ int br_setlink(struct net_device *dev, struct nlmsghdr *nlh)
	struct nlattr *afspec;
	struct net_bridge_port *p;
	struct nlattr *tb[IFLA_BRPORT_MAX + 1];
	int err;
	int err = 0;

	ifm = nlmsg_data(nlh);

@@ -370,7 +370,7 @@ int br_setlink(struct net_device *dev, struct nlmsghdr *nlh)
	/* We want to accept dev as bridge itself if the AF_SPEC
	 * is set to see if someone is setting vlan info on the brigde
	 */
	if (!p && ((dev->priv_flags & IFF_EBRIDGE) && !afspec))
	if (!p && !afspec)
		return -EINVAL;

	if (p && protinfo) {