The show() method should use scnprintf() not snprintf() because snprintf()
may returns a value that exceeds its second argument.

Signed-off-by: Jaejoong Kim <climbbb....@gmail.com>
---
 drivers/usb/gadget/udc/core.c      | 4 ++--
 drivers/usb/gadget/udc/dummy_hcd.c | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/usb/gadget/udc/core.c b/drivers/usb/gadget/udc/core.c
index 93eff7de..306d72d 100644
--- a/drivers/usb/gadget/udc/core.c
+++ b/drivers/usb/gadget/udc/core.c
@@ -1484,7 +1484,7 @@ ssize_t name##_show(struct device *dev,                   
                \
                struct device_attribute *attr, char *buf)               \
 {                                                                      \
        struct usb_udc *udc = container_of(dev, struct usb_udc, dev);   \
-       return snprintf(buf, PAGE_SIZE, "%s\n",                         \
+       return scnprintf(buf, PAGE_SIZE, "%s\n",                        \
                        usb_speed_string(udc->gadget->param));          \
 }                                                                      \
 static DEVICE_ATTR_RO(name)
@@ -1499,7 +1499,7 @@ ssize_t name##_show(struct device *dev,                   
        \
        struct usb_udc          *udc = container_of(dev, struct usb_udc, dev); \
        struct usb_gadget       *gadget = udc->gadget;          \
                                                                \
-       return snprintf(buf, PAGE_SIZE, "%d\n", gadget->name);  \
+       return scnprintf(buf, PAGE_SIZE, "%d\n", gadget->name); \
 }                                                              \
 static DEVICE_ATTR_RO(name)
 
diff --git a/drivers/usb/gadget/udc/dummy_hcd.c 
b/drivers/usb/gadget/udc/dummy_hcd.c
index d0128f9..a09ce9b 100644
--- a/drivers/usb/gadget/udc/dummy_hcd.c
+++ b/drivers/usb/gadget/udc/dummy_hcd.c
@@ -2380,7 +2380,7 @@ static inline ssize_t show_urb(char *buf, size_t size, 
struct urb *urb)
 {
        int ep = usb_pipeendpoint(urb->pipe);
 
-       return snprintf(buf, size,
+       return scnprintf(buf, size,
                "urb/%p %s ep%d%s%s len %d/%d\n",
                urb,
                ({ char *s;
-- 
2.7.4

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to