usbip: prevent leaking socket pointer address in messages
authorShuah Khan <shuahkh@osg.samsung.com>
Fri, 15 Dec 2017 17:50:09 +0000 (10:50 -0700)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 2 Jan 2018 19:35:15 +0000 (20:35 +0100)
commit 90120d15f4c397272aaf41077960a157fc4212bf upstream.

usbip driver is leaking socket pointer address in messages. Remove
the messages that aren't useful and print sockfd in the ones that
are useful for debugging.

Signed-off-by: Shuah Khan <shuahkh@osg.samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/usbip/stub_dev.c
drivers/usb/usbip/usbip_common.c
drivers/usb/usbip/vhci_hcd.c

index c653ce5..1886d8e 100644 (file)
@@ -163,8 +163,7 @@ static void stub_shutdown_connection(struct usbip_device *ud)
         * step 1?
         */
        if (ud->tcp_socket) {
-               dev_dbg(&sdev->udev->dev, "shutdown tcp_socket %p\n",
-                       ud->tcp_socket);
+               dev_dbg(&sdev->udev->dev, "shutdown sockfd\n");
                kernel_sock_shutdown(ud->tcp_socket, SHUT_RDWR);
        }
 
index 8b23229..e24b24f 100644 (file)
@@ -335,13 +335,10 @@ int usbip_recv(struct socket *sock, void *buf, int size)
        char *bp = buf;
        int osize = size;
 
-       usbip_dbg_xmit("enter\n");
-
-       if (!sock || !buf || !size) {
-               pr_err("invalid arg, sock %p buff %p size %d\n", sock, buf,
-                      size);
+       if (!sock || !buf || !size)
                return -EINVAL;
-       }
+
+       usbip_dbg_xmit("enter\n");
 
        do {
                sock->sk->sk_allocation = GFP_NOIO;
@@ -354,11 +351,8 @@ int usbip_recv(struct socket *sock, void *buf, int size)
                msg.msg_flags      = MSG_NOSIGNAL;
 
                result = kernel_recvmsg(sock, &msg, &iov, 1, size, MSG_WAITALL);
-               if (result <= 0) {
-                       pr_debug("receive sock %p buf %p size %u ret %d total %d\n",
-                                sock, buf, size, result, total);
+               if (result <= 0)
                        goto err;
-               }
 
                size -= result;
                buf += result;
index d6dc165..ab148cf 100644 (file)
@@ -823,7 +823,7 @@ static void vhci_shutdown_connection(struct usbip_device *ud)
 
        /* need this? see stub_dev.c */
        if (ud->tcp_socket) {
-               pr_debug("shutdown tcp_socket %p\n", ud->tcp_socket);
+               pr_debug("shutdown tcp_socket\n");
                kernel_sock_shutdown(ud->tcp_socket, SHUT_RDWR);
        }