mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-21 06:31:31 +00:00
miiphy: use strncpy() not sprintf()
In miiphy_register() the new device's name was initialised by passing a string parameter as the format string to sprintf(). As this would cause problems if it ever contained a '%' symbol, switch to using strncpy() instead. Signed-off-by: Laurence Withers <lwithers@guralp.com> Cc: Andy Fleming <afleming@freescale.com>
This commit is contained in:
parent
9e9579bbf9
commit
07c07635b4
1 changed files with 4 additions and 10 deletions
|
@ -111,7 +111,8 @@ void miiphy_register(const char *name,
|
|||
{
|
||||
struct mii_dev *new_dev;
|
||||
struct legacy_mii_dev *ldev;
|
||||
unsigned int name_len;
|
||||
|
||||
BUG_ON(strlen(name) >= MDIO_NAME_LEN);
|
||||
|
||||
/* check if we have unique name */
|
||||
new_dev = miiphy_get_dev_by_name(name);
|
||||
|
@ -121,14 +122,6 @@ void miiphy_register(const char *name,
|
|||
}
|
||||
|
||||
/* allocate memory */
|
||||
name_len = strlen(name);
|
||||
if (name_len > MDIO_NAME_LEN - 1) {
|
||||
/* Hopefully this won't happen, but if it does, we'll know */
|
||||
printf("miiphy_register: MDIO name was longer than %d\n",
|
||||
MDIO_NAME_LEN);
|
||||
return;
|
||||
}
|
||||
|
||||
new_dev = mdio_alloc();
|
||||
ldev = malloc(sizeof(*ldev));
|
||||
|
||||
|
@ -141,7 +134,8 @@ void miiphy_register(const char *name,
|
|||
/* initalize mii_dev struct fields */
|
||||
new_dev->read = legacy_miiphy_read;
|
||||
new_dev->write = legacy_miiphy_write;
|
||||
sprintf(new_dev->name, name);
|
||||
strncpy(new_dev->name, name, MDIO_NAME_LEN);
|
||||
new_dev->name[MDIO_NAME_LEN - 1] = 0;
|
||||
ldev->read = read;
|
||||
ldev->write = write;
|
||||
new_dev->priv = ldev;
|
||||
|
|
Loading…
Add table
Reference in a new issue