usb: Replace snprintf with scnprintf in gether_get_ifname

[ Upstream commit 37e444c8296c14cb5768a1197b24cfc07ee8e0cd ]

snprintf returns the actual length of the buffer created; however,
this is not the case if snprintf truncates its parameter.
See https://lwn.net/Articles/69419/ for a detailed explanation.
The current code correctly handles this case at the expense
of extra code in the return statement.

scnprintf does returns the actual length of the buffer created
making the ?: operator unnecessary in the return
statement.

This change does not alter the functionality of the code.

Change-Id: I518abb00c6bd19d60d95a0ba8577a174feaaa3f3
Signed-off-by: Daniel M German <dmg@turingmachine.org>
Signed-off-by: Felipe Balbi <felipe.balbi@linux.intel.com>
This commit is contained in:
Daniel M German
2019-06-19 21:50:38 -07:00
committed by Michael Bestas
parent 1e664bd7b6
commit 5107711a72

View File

@@ -984,9 +984,9 @@ int gether_get_ifname(struct net_device *net, char *name, int len)
int ret;
rtnl_lock();
ret = snprintf(name, len, "%s\n", netdev_name(net));
ret = scnprintf(name, len, "%s\n", netdev_name(net));
rtnl_unlock();
return ret < len ? ret : len;
return ret;
}
EXPORT_SYMBOL_GPL(gether_get_ifname);