ethtool: fix drvinfo strings set in drivers
Use strlcpy where possible to ensure the string is \0 terminated. Use always sizeof(string) instead of 32, ETHTOOL_BUSINFO_LEN and custom defines. Use snprintf instead of sprint. Remove unnecessary inits of ->fw_version Remove unnecessary inits of drvinfo struct. Signed-off-by: Jiri Pirko <jiri@resnulli.us> Signed-off-by: David S. Miller <davem@davemloft.net>
此提交包含在:
@@ -5444,17 +5444,14 @@ void qeth_core_get_drvinfo(struct net_device *dev,
|
||||
struct ethtool_drvinfo *info)
|
||||
{
|
||||
struct qeth_card *card = dev->ml_priv;
|
||||
if (card->options.layer2)
|
||||
strcpy(info->driver, "qeth_l2");
|
||||
else
|
||||
strcpy(info->driver, "qeth_l3");
|
||||
|
||||
strcpy(info->version, "1.0");
|
||||
strcpy(info->fw_version, card->info.mcl_level);
|
||||
sprintf(info->bus_info, "%s/%s/%s",
|
||||
CARD_RDEV_ID(card),
|
||||
CARD_WDEV_ID(card),
|
||||
CARD_DDEV_ID(card));
|
||||
strlcpy(info->driver, card->options.layer2 ? "qeth_l2" : "qeth_l3",
|
||||
sizeof(info->driver));
|
||||
strlcpy(info->version, "1.0", sizeof(info->version));
|
||||
strlcpy(info->fw_version, card->info.mcl_level,
|
||||
sizeof(info->fw_version));
|
||||
snprintf(info->bus_info, sizeof(info->bus_info), "%s/%s/%s",
|
||||
CARD_RDEV_ID(card), CARD_WDEV_ID(card), CARD_DDEV_ID(card));
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(qeth_core_get_drvinfo);
|
||||
|
||||
|
新增問題並參考
封鎖使用者