arm: ls1021a: Remove the inappropriate use of the function 'sprintf'
PATCH 1/1 arm: ls1021a: Remove the inappropriate use of the function 'sprintf'
As the function 'sprintf' does not check buffer boundaries but outputs to the buffer 'enet' of fixed size (16), this patch removes the function 'sprintf', and uses 'strcpy' instead. It will assign the character arrays 'enet' and 'phy' the corresponding character strings.
--- arch/arm/cpu/armv7/ls102xa/fdt.c | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-)
arch/arm/cpu/armv7/ls102xa/fdt.c +11 -10
@@ -29,29 +29,30 @@ void ft_fixup_enet_phy_connect_type(void *fdt)char phy[16 ];int phy_node;int i =0 ; -int enet_id =0 ;uint32_t ph;while ((dev =eth_get_dev_by_index (i++)) !=NULL ) { -if (strstr (dev->name,"eTSEC1" )) - enet_id =0 ; -else if (strstr (dev->name,"eTSEC2" )) - enet_id =1 ; -else if (strstr (dev->name,"eTSEC3" )) - enet_id =2 ; -else +if (strstr (dev->name,"eTSEC1" )) { +strcpy (enet,"ethernet0" ); +strcpy (phy,"enet0_rgmii_phy" ); + }else if (strstr (dev->name,"eTSEC2" )) { +strcpy (enet,"ethernet1" ); +strcpy (phy,"enet1_rgmii_phy" ); + }else if (strstr (dev->name,"eTSEC3" )) { +strcpy (enet,"ethernet2" ); +strcpy (phy,"enet2_rgmii_phy" ); + }else {continue ; + } priv = dev->priv;if (priv->flags &TSEC_SGMII )continue ; -sprintf (enet,"ethernet%d" , enet_id); enet_path =fdt_get_alias (fdt, enet);if (!enet_path)continue ; -sprintf (phy,"enet%d_rgmii_phy" , enet_id); phy_path =fdt_get_alias (fdt, phy);if (!phy_path)continue ;
Signature · 1 line
2.1.0.27.g96db324
PATCH 1/1 arm: ls1021a: Remove the inappropriate use of the function 'sprintf'
Quoted 7 lines · Alison Wang
As the function 'sprintf' does not check buffer boundaries but outputs to the buffer 'enet' of fixed size (16), this patch removes the function 'sprintf', and uses 'strcpy' instead. It will assign the character arrays 'enet' and 'phy' the corresponding character strings.
Signed-off-by Alison Wang <[email protected]>---
PATCH 1/1 arm: ls1021a: Remove the inappropriate use of the function 'sprintf'
In reply to Alison WangQuoted 7 lines · Alison Wang
As the function 'sprintf' does not check buffer boundaries but outputs to the buffer 'enet' of fixed size (16), this patch removes the function 'sprintf', and uses 'strcpy' instead. It will assign the character arrays 'enet' and 'phy' the corresponding character strings.
Signed-off-by Alison Wang <[email protected]>---
Applied to u-boot-fsl-qoriq master branch.
York