]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - glsdk/meta-ti-glsdk.git/blob - recipes-kernel/linux/linux-ti33x-psp-3.2/3.2.14/0017-usb-dwc3-use-proper-function-for-setting-endpoint-na.patch
linux-ti335x-psp 3.2: update to 3.2.14
[glsdk/meta-ti-glsdk.git] / recipes-kernel / linux / linux-ti33x-psp-3.2 / 3.2.14 / 0017-usb-dwc3-use-proper-function-for-setting-endpoint-na.patch
1 From cdbcc2f017a258caca6390e7353709a6603bc452 Mon Sep 17 00:00:00 2001
2 From: Anton Tikhomirov <av.tikhomirov@samsung.com>
3 Date: Thu, 23 Feb 2012 15:38:46 +0900
4 Subject: [PATCH 017/147] usb: dwc3: use proper function for setting endpoint
5  name
7 commit 27a78d6a283d6782438f72306746afe4bf44c215 upstream.
9 It's wrong to use the size of array as an argument for strncat.
10 Memory corruption is possible. strlcat is exactly what we need here.
12 Signed-off-by: Anton Tikhomirov <av.tikhomirov@samsung.com>
13 Signed-off-by: Felipe Balbi <balbi@ti.com>
14 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
15 ---
16  drivers/usb/dwc3/gadget.c |    8 ++++----
17  1 file changed, 4 insertions(+), 4 deletions(-)
19 diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
20 index 41a2ea6..dfcda94 100644
21 --- a/drivers/usb/dwc3/gadget.c
22 +++ b/drivers/usb/dwc3/gadget.c
23 @@ -449,16 +449,16 @@ static int dwc3_gadget_ep_enable(struct usb_ep *ep,
24  
25         switch (usb_endpoint_type(desc)) {
26         case USB_ENDPOINT_XFER_CONTROL:
27 -               strncat(dep->name, "-control", sizeof(dep->name));
28 +               strlcat(dep->name, "-control", sizeof(dep->name));
29                 break;
30         case USB_ENDPOINT_XFER_ISOC:
31 -               strncat(dep->name, "-isoc", sizeof(dep->name));
32 +               strlcat(dep->name, "-isoc", sizeof(dep->name));
33                 break;
34         case USB_ENDPOINT_XFER_BULK:
35 -               strncat(dep->name, "-bulk", sizeof(dep->name));
36 +               strlcat(dep->name, "-bulk", sizeof(dep->name));
37                 break;
38         case USB_ENDPOINT_XFER_INT:
39 -               strncat(dep->name, "-int", sizeof(dep->name));
40 +               strlcat(dep->name, "-int", sizeof(dep->name));
41                 break;
42         default:
43                 dev_err(dwc->dev, "invalid endpoint transfer type\n");
44 -- 
45 1.7.9.4