xref: /dflybsd-src/usr.sbin/usbdump/usbdump.8 (revision c7a1b66b46cb7ed3db43d69b2d1881eea44d2639)
1934bccebSSascha Wildner.\"
2934bccebSSascha Wildner.\" Copyright (c) 2010 Weongyo Jeong.
3934bccebSSascha Wildner.\" All rights reserved.
4934bccebSSascha Wildner.\"
5934bccebSSascha Wildner.\" Redistribution and use in source and binary forms, with or without
6934bccebSSascha Wildner.\" modification, are permitted provided that the following conditions
7934bccebSSascha Wildner.\" are met:
8934bccebSSascha Wildner.\" 1. Redistributions of source code must retain the above copyright
9934bccebSSascha Wildner.\"    notice, this list of conditions and the following disclaimer.
10934bccebSSascha Wildner.\" 2. Redistributions in binary form must reproduce the above copyright
11934bccebSSascha Wildner.\"    notice, this list of conditions and the following disclaimer in the
12934bccebSSascha Wildner.\"    documentation and/or other materials provided with the distribution.
13934bccebSSascha Wildner.\"
14934bccebSSascha Wildner.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15934bccebSSascha Wildner.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16934bccebSSascha Wildner.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17934bccebSSascha Wildner.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
18934bccebSSascha Wildner.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19934bccebSSascha Wildner.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20934bccebSSascha Wildner.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21934bccebSSascha Wildner.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22934bccebSSascha Wildner.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23934bccebSSascha Wildner.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24934bccebSSascha Wildner.\" SUCH DAMAGE.
25934bccebSSascha Wildner.\"
26934bccebSSascha Wildner.\" $FreeBSD: head/usr.sbin/usbdump/usbdump.8 234655 2012-04-24 14:06:07Z hselasky $
27934bccebSSascha Wildner.\"
28934bccebSSascha Wildner.Dd March 10, 2014
29934bccebSSascha Wildner.Dt USBDUMP 8
30934bccebSSascha Wildner.Os
31934bccebSSascha Wildner.Sh NAME
32934bccebSSascha Wildner.Nm usbdump
33934bccebSSascha Wildner.Nd "dump traffic on USB host controller"
34934bccebSSascha Wildner.Sh SYNOPSIS
35934bccebSSascha Wildner.Nm
36934bccebSSascha Wildner.Op Fl i Ar ifname
37934bccebSSascha Wildner.Op Fl r Ar file
38934bccebSSascha Wildner.Op Fl s Ar snaplen
39934bccebSSascha Wildner.Op Fl v
40934bccebSSascha Wildner.Op Fl w Ar file
41934bccebSSascha Wildner.Op Fl f Ar filter
42934bccebSSascha Wildner.Op Fl b Ar file
43934bccebSSascha Wildner.Op Fl h
44934bccebSSascha Wildner.Sh DESCRIPTION
45934bccebSSascha WildnerThe
46934bccebSSascha Wildner.Nm
47934bccebSSascha Wildnerutility provides a way to dump USB packets on host controllers.
48934bccebSSascha Wildner.Pp
49934bccebSSascha WildnerThe following options are accepted:
50934bccebSSascha Wildner.Bl -tag -width ".Fl f Ar file"
51934bccebSSascha Wildner.It Fl b Ar file
52934bccebSSascha WildnerStore data part of the USB trace in binary format to the given
53934bccebSSascha Wildner.Ar file .
54934bccebSSascha WildnerThis option also works with the -r and -f options.
55934bccebSSascha Wildner.It Fl i Ar ifname
56934bccebSSascha WildnerListen on USB bus interface
57934bccebSSascha Wildner.Ar ifname .
58934bccebSSascha Wildner.It Fl r Ar file
59934bccebSSascha WildnerRead the raw packets from
60934bccebSSascha Wildner.Ar file .
61934bccebSSascha WildnerThis option also works with the -f option.
62934bccebSSascha Wildner.It Fl s Ar snaplen
63934bccebSSascha WildnerSnapshot
64934bccebSSascha Wildner.Ar snaplen
65934bccebSSascha Wildnerbytes from each packet.
66934bccebSSascha Wildner.It Fl v
67934bccebSSascha WildnerEnable debugging messages.
68934bccebSSascha WildnerWhen defined multiple times the verbosity level increases.
69934bccebSSascha Wildner.It Fl w Ar file
70934bccebSSascha WildnerWrite the raw packets to
71934bccebSSascha Wildner.Ar file .
72934bccebSSascha WildnerThis option also works with the -s and -v options.
73934bccebSSascha Wildner.It Fl f Ar filter
74934bccebSSascha WildnerThe filter argument consists of either one or two numbers separated by a dot.
75934bccebSSascha WildnerThe first indicates the device unit number which should be traced.
76934bccebSSascha WildnerThe second number which is optional indicates the endpoint which should be traced.
77934bccebSSascha WildnerTo get all traffic for the control endpoint, two filters should be
78934bccebSSascha Wildnercreated, one for endpoint 0 and one for endpoint 128.
79934bccebSSascha WildnerIf 128 is added to the endpoint number that means IN direction, else OUT direction is implied.
80934bccebSSascha WildnerA device unit or endpoint value of -1 means ignore this field.
81934bccebSSascha WildnerIf no filters are specified, all packets are passed through using the default -1,-1 filter.
82934bccebSSascha WildnerThis option can be specified multiple times.
83934bccebSSascha Wildner.It Fl h
84934bccebSSascha WildnerThis option displays a summary of the command line options.
85934bccebSSascha Wildner.El
86934bccebSSascha Wildner.Sh EXAMPLES
87934bccebSSascha WildnerCapture the USB raw packets on usbus2:
88934bccebSSascha Wildner.Pp
89934bccebSSascha Wildner.Dl "usbdump -i usbus2 -s 256 -v"
90934bccebSSascha Wildner.Pp
91934bccebSSascha WildnerDump the USB raw packets of usbus2 into the file without packet
92934bccebSSascha Wildnersize limit:
93934bccebSSascha Wildner.Pp
94934bccebSSascha Wildner.Dl "usbdump -i usbus2 -s 0 -w /tmp/dump_pkts"
95934bccebSSascha Wildner.Pp
96934bccebSSascha WildnerDump the USB raw packets of usbus2, but only the control endpoint traffic
97934bccebSSascha Wildnerof device unit number 3:
98934bccebSSascha Wildner.Pp
99934bccebSSascha Wildner.Dl "usbdump -i usbus2 -s 0 -f 3.0 -f 3.128 -w /tmp/dump_pkts"
100934bccebSSascha Wildner.Pp
101934bccebSSascha WildnerRead and display the USB raw packets from previous file:
102934bccebSSascha Wildner.Pp
103934bccebSSascha Wildner.Dl "usbdump -r /tmp/dump_pkts -v"
104934bccebSSascha Wildner.Sh OUTPUT FORMAT
105934bccebSSascha WildnerThe output format of
106934bccebSSascha Wildner.Nm
107934bccebSSascha Wildneris as follows:
108934bccebSSascha Wildner.Pp
109934bccebSSascha Wildner.Dl "<time> <bus>.<addr> <ep> <xfertype> <S/D> (<frames>/<length>) <...>"
110934bccebSSascha Wildner.Pp
111934bccebSSascha WildnerThe meaning of the output format elements is as follows:
112934bccebSSascha Wildner.Bl -tag -width "<xfertype>"
113934bccebSSascha Wildner.It <time>
114934bccebSSascha WildnerA timestamp preceding all output lines.
115934bccebSSascha WildnerThe timestamp has the format "hh:mm:ss.frac" and is as accurate as
116934bccebSSascha Wildnerthe kernel's clock.
117934bccebSSascha Wildner.It <bus>
118934bccebSSascha WildnerThe USB host controller's bus unit number.
119934bccebSSascha Wildner.It <addr>
120934bccebSSascha WildnerThe unique number of the USB device as allocated by the host controller driver.
121934bccebSSascha Wildner.It <ep>
122934bccebSSascha WildnerThe USB endpoint address that indicates whether the address is
123934bccebSSascha Wildner.Dv OUT
124934bccebSSascha Wildneror
125934bccebSSascha Wildner.Dv IN .
126934bccebSSascha Wildner.It <xfertype>
127934bccebSSascha WildnerThe USB transfer type.
128934bccebSSascha WildnerCan be
129934bccebSSascha Wildner.Dv CTRL ,
130934bccebSSascha Wildner.Dv ISOC ,
131934bccebSSascha Wildner.Dv BULK
132934bccebSSascha Wildneror
133934bccebSSascha Wildner.Dv INTR .
134934bccebSSascha Wildner.It <S/D>
135934bccebSSascha Wildner`S' indicates a USB submit.
136934bccebSSascha Wildner`D' indicates a USB transfer done.
137934bccebSSascha Wildner.It <frames>
138934bccebSSascha WildnerNumbers of frames in this packets.
139934bccebSSascha WildnerIf this is a USB submit, its value is
140934bccebSSascha Wildner.Li xfer->nframes
141934bccebSSascha Wildnerwhich means how many frames are acceptable or registered to transfer.
142934bccebSSascha WildnerIf this is a USB done,
143934bccebSSascha Wildner.Li xfer->aframes
144934bccebSSascha Wildneris the actual number of frames.
145934bccebSSascha Wildner.It <length>
146934bccebSSascha WildnerTotal packet size.
147934bccebSSascha WildnerIf this is a USB submit, its value is
148934bccebSSascha Wildner.Li xfer->sumlen .
149934bccebSSascha WildnerIf this is a USB done, its value is
150934bccebSSascha Wildner.Li xfer->actlen .
151934bccebSSascha Wildner.It <...>
152934bccebSSascha WildnerOptional field used for printing an error string if the packet is from USB done.
153934bccebSSascha Wildner.El
154934bccebSSascha Wildner.Sh SEE ALSO
155934bccebSSascha Wildner.Xr usbconfig 8
156934bccebSSascha Wildner.Sh AUTHORS
157*c7a1b66bSFranco Fichtner.An Weongyo Jeong Aq Mt weongyo@FreeBSD.org
158