summary refs log tree commit diff
diff options
context:
space:
mode:
authorMohamad Haj Yahia <mohamad@mellanox.com>2016-12-28 14:58:37 +0200
committerDavid S. Miller <davem@davemloft.net>2016-12-28 14:36:52 -0500
commitccce1700263d8b5b219359d04180492a726cea16 (patch)
treed270bb86d3c14b203d623ef05ed620c25ac369ca
parent9b8c514291a83e53c073b473bdca6267f17a02c2 (diff)
downloadlinux-ccce1700263d8b5b219359d04180492a726cea16.tar.gz
net/mlx5: Prevent setting multicast macs for VFs
Need to check that VF mac address entered by the admin user is either
zero or unicast mac.
Multicast mac addresses are prohibited.

Fixes: 77256579c6b4 ('net/mlx5: E-Switch, Introduce Vport administration functions')
Signed-off-by: Mohamad Haj Yahia <mohamad@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/eswitch.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c b/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
index d6807c3cc461..f14d9c9ba773 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/eswitch.c
@@ -1860,7 +1860,7 @@ int mlx5_eswitch_set_vport_mac(struct mlx5_eswitch *esw,
 
 	if (!ESW_ALLOWED(esw))
 		return -EPERM;
-	if (!LEGAL_VPORT(esw, vport))
+	if (!LEGAL_VPORT(esw, vport) || is_multicast_ether_addr(mac))
 		return -EINVAL;
 
 	mutex_lock(&esw->state_lock);