From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marek Vasut Date: Wed, 01 Jun 2016 15:20:33 +0200 Subject: [U-Boot] [PATCH] drivers: usb: fsl: Fix NULL terminating issue for usb controller name string In-Reply-To: <1464779851-29744-1-git-send-email-rajesh.bhagat@nxp.com> References: <1464779851-29744-1-git-send-email-rajesh.bhagat@nxp.com> Message-ID: <574EE121.6000809@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 06/01/2016 01:17 PM, Rajesh Bhagat wrote: > Fixes NULL terminating issue for usb controller name string and > performs code cleanup for intializing variables current_usb_controller > and usb_phy. > > Signed-off-by: Rajesh Bhagat > --- > drivers/usb/host/ehci-fsl.c | 10 ++++------ > 1 files changed, 4 insertions(+), 6 deletions(-) > > diff --git a/drivers/usb/host/ehci-fsl.c b/drivers/usb/host/ehci-fsl.c > index a43d37d..a806993 100644 > --- a/drivers/usb/host/ehci-fsl.c > +++ b/drivers/usb/host/ehci-fsl.c > @@ -49,11 +49,9 @@ int ehci_hcd_init(int index, enum usb_init_type init, > struct usb_ehci *ehci = NULL; > const char *phy_type = NULL; > size_t len; > - char current_usb_controller[5]; > + char current_usb_controller[5] = {0}; > #ifdef CONFIG_SYS_FSL_USB_INTERNAL_UTMI_PHY > - char usb_phy[5]; > - > - usb_phy[0] = '\0'; > + char usb_phy[5] = {0}; > #endif > if (has_erratum_a007075()) { > /* > @@ -64,8 +62,8 @@ int ehci_hcd_init(int index, enum usb_init_type init, > */ > mdelay(5); > } > - memset(current_usb_controller, '\0', 5); > - snprintf(current_usb_controller, 4, "usb%d", index+1); > + snprintf(current_usb_controller, sizeof(current_usb_controller), > + "usb%d", index+1); What is the actual problem here ? snprintf() will add the \0 at the end of the string, so I don't see any "null terminating issue" in the code. I can understand using the sizeof() in the snprintf(), which is valid, but that's all. > switch (index) { > case 0: > -- Best regards, Marek Vasut