]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - net/batman-adv/soft-interface.c
batman-adv: Initialize lockdep class keys for hashes
[karo-tx-linux.git] / net / batman-adv / soft-interface.c
index fa388b2c60d780ec85102c47f8f14b922c620b60..f8cc1429942fad671a3cdba36016f8c76422eca6 100644 (file)
@@ -180,7 +180,8 @@ static int batadv_interface_tx(struct sk_buff *skb,
                goto dropped;
 
        /* Register the client MAC in the transtable */
-       batadv_tt_local_add(soft_iface, ethhdr->h_source, skb->skb_iif);
+       if (!is_multicast_ether_addr(ethhdr->h_source))
+               batadv_tt_local_add(soft_iface, ethhdr->h_source, skb->skb_iif);
 
        /* don't accept stp packets. STP does not help in meshes.
         * better use the bridge loop avoidance ...
@@ -580,10 +581,10 @@ static int batadv_get_settings(struct net_device *dev, struct ethtool_cmd *cmd)
 static void batadv_get_drvinfo(struct net_device *dev,
                               struct ethtool_drvinfo *info)
 {
-       strcpy(info->driver, "B.A.T.M.A.N. advanced");
-       strcpy(info->version, BATADV_SOURCE_VERSION);
-       strcpy(info->fw_version, "N/A");
-       strcpy(info->bus_info, "batman");
+       strlcpy(info->driver, "B.A.T.M.A.N. advanced", sizeof(info->driver));
+       strlcpy(info->version, BATADV_SOURCE_VERSION, sizeof(info->version));
+       strlcpy(info->fw_version, "N/A", sizeof(info->fw_version));
+       strlcpy(info->bus_info, "batman", sizeof(info->bus_info));
 }
 
 static u32 batadv_get_msglevel(struct net_device *dev)