lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 14 Jul 2015 11:46:17 +1000
From:	Stephen Rothwell <sfr@...b.auug.org.au>
To:	David Miller <davem@...emloft.net>, <netdev@...r.kernel.org>
Cc:	linux-next@...r.kernel.org, linux-kernel@...r.kernel.org,
	Nikolay Aleksandrov <nikolay@...ulusnetworks.com>
Subject: linux-next: manual merge of the net-next tree with Linus' tree

Hi all,

Today's linux-next merge of the net-next tree got a conflict in:

  net/bridge/br_mdb.c

between commit:

  f1158b74e54f ("bridge: mdb: zero out the local br_ip variable before use")

from Linus' tree and commit:

  74fe61f17e99 ("bridge: mdb: add vlan support for user entries")

from the net-next tree.

I fixed it up (see below) and can carry the fix as necessary (no action
is required).

-- 
Cheers,
Stephen Rothwell                    sfr@...b.auug.org.au

diff --cc net/bridge/br_mdb.c
index c11cf2611db0,a8d0e93d43f2..000000000000
--- a/net/bridge/br_mdb.c
+++ b/net/bridge/br_mdb.c
@@@ -348,10 -352,8 +353,10 @@@ static int br_mdb_add_group(struct net_
  	if (unlikely(!p))
  		return -ENOMEM;
  	rcu_assign_pointer(*pp, p);
 +	if (state == MDB_TEMPORARY)
 +		mod_timer(&p->timer, now + br->multicast_membership_interval);
  
- 	br_mdb_notify(br->dev, port, group, RTM_NEWMDB);
+ 	br_mdb_notify(br->dev, port, group, RTM_NEWMDB, state);
  	return 0;
  }
  
@@@ -374,7 -376,7 +379,8 @@@ static int __br_mdb_add(struct net *net
  	if (!p || p->br != br || p->state == BR_STATE_DISABLED)
  		return -EINVAL;
  
 +	memset(&ip, 0, sizeof(ip));
+ 	ip.vid = entry->vid;
  	ip.proto = entry->addr.proto;
  	if (ip.proto == htons(ETH_P_IP))
  		ip.u.ip4 = entry->addr.u.ip4;
@@@ -421,14 -423,21 +427,15 @@@ static int __br_mdb_del(struct net_brid
  	if (!netif_running(br->dev) || br->multicast_disabled)
  		return -EINVAL;
  
 +	memset(&ip, 0, sizeof(ip));
+ 	ip.vid = entry->vid;
  	ip.proto = entry->addr.proto;
 -	if (ip.proto == htons(ETH_P_IP)) {
 -		if (timer_pending(&br->ip4_other_query.timer))
 -			return -EBUSY;
 -
 +	if (ip.proto == htons(ETH_P_IP))
  		ip.u.ip4 = entry->addr.u.ip4;
  #if IS_ENABLED(CONFIG_IPV6)
 -	} else {
 -		if (timer_pending(&br->ip6_other_query.timer))
 -			return -EBUSY;
 -
 +	else
  		ip.u.ip6 = entry->addr.u.ip6;
  #endif
 -	}
  
  	spin_lock_bh(&br->multicast_lock);
  	mdb = mlock_dereference(br->mdb, br);

Content of type "application/pgp-signature" skipped

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ