USB: ffs-test: fix length argument of out function call
Matthias Fend [Mon, 7 May 2012 12:37:30 +0000 (14:37 +0200)]
The out functions should only handle actual available data instead of the complete buffer.
Otherwise for example the ep0_consume function will report ghost events since it tries to decode
the complete buffer - which may contain partly invalid data.

Signed-off-by: Matthias Fend <matthias.fend@wolfvision.net>
Cc: stable <stable@vger.kernel.org>
Acked-by: Michal Nazarewicz <mina86@mina86.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

tools/usb/ffs-test.c

index 4b107b5..8674b9e 100644 (file)
@@ -297,7 +297,7 @@ static void *start_thread_helper(void *arg)
 
                ret = t->in(t, t->buf, t->buf_size);
                if (ret > 0) {
-                       ret = t->out(t, t->buf, t->buf_size);
+                       ret = t->out(t, t->buf, ret);
                        name = out_name;
                        op = "write";
                } else {