net/hns3: fix out of bounds access
authorYunjian Wang <wangyunjian@huawei.com>
Mon, 7 Sep 2020 01:46:33 +0000 (09:46 +0800)
committerFerruh Yigit <ferruh.yigit@intel.com>
Fri, 18 Sep 2020 16:55:07 +0000 (18:55 +0200)
This patch fixes (out-of-bounds access) coverity issue.

Coverity issue: 349932
Fixes: 7d7f9f80bbfb ("net/hns3: support MAC address related operations")
Cc: stable@dpdk.org
Signed-off-by: Yunjian Wang <wangyunjian@huawei.com>
Reviewed-by: Wei Hu (Xavier) <xavier.huwei@huawei.com>
drivers/net/hns3/hns3_ethdev.c

index 4d5fa94..9dd0d9c 100644 (file)
@@ -1410,7 +1410,7 @@ hns3_add_uc_addr_common(struct hns3_hw *hw, struct rte_ether_addr *mac_addr)
        struct hns3_adapter *hns = HNS3_DEV_HW_TO_ADAPTER(hw);
        struct hns3_mac_vlan_tbl_entry_cmd req;
        struct hns3_pf *pf = &hns->pf;
-       struct hns3_cmd_desc desc;
+       struct hns3_cmd_desc desc[3];
        char mac_str[RTE_ETHER_ADDR_FMT_SIZE];
        uint16_t egress_port = 0;
        uint8_t vf_id;
@@ -1444,7 +1444,7 @@ hns3_add_uc_addr_common(struct hns3_hw *hw, struct rte_ether_addr *mac_addr)
         * it if the entry is inexistent. Repeated unicast entry
         * is not allowed in the mac vlan table.
         */
-       ret = hns3_lookup_mac_vlan_tbl(hw, &req, &desc, false);
+       ret = hns3_lookup_mac_vlan_tbl(hw, &req, desc, false);
        if (ret == -ENOENT) {
                if (!hns3_is_umv_space_full(hw)) {
                        ret = hns3_add_mac_vlan_tbl(hw, &req, NULL);