Qt: Support search without a selected packet
[metze/wireshark/wip.git] / doc / androiddump.pod
1
2 =head1 NAME
3
4 androiddump - Provide interfaces to capture from Android devices
5
6 =head1 SYNOPSIS
7
8 B<androiddump>
9 S<[ B<--help> ]>
10 S<[ B<--version> ]>
11 S<[ B<--extcap-version> ]>
12 S<[ B<--debug> ]>
13 S<[ B<--extcap-interfaces> ]>
14 S<[ B<--extcap-dlts> ]>
15 S<[ B<--extcap-interface>=E<lt>interfaceE<gt> ]>
16 S<[ B<--extcap-config> ]>
17 S<[ B<--capture> ]>
18 S<[ B<--fifo>=E<lt>path to file or pipeE<gt> ]>
19 S<[ B<--adb-server-ip>=E<lt>IP addressE<gt> ]>
20 S<[ B<--adb-server-tcp-port>=E<lt>TCP portE<gt> ]>
21 S<[ B<--logcat-text>=E<lt>TRUE or FALSEE<gt> ]>
22 S<[ B<--bt-server-tcp-port>=E<lt>TCP portE<gt> ]>
23 S<[ B<--bt-forward-socket>=E<lt>TRUE or FALSEE<gt> ]>
24 S<[ B<--bt-local-ip>=E<lt>IP addressE<gt> ]>
25 S<[ B<--bt-local-tcp-port>=E<lt>TCP portE<gt> ]>
26
27 B<androiddump>
28 S< B<--extcap-interfaces> >
29 S<[ B<--adb-server-ip>=E<lt>IP addressE<gt> ]>
30 S<[ B<--adb-server-tcp-port>=E<lt>TCP portE<gt> ]>
31
32 B<androiddump>
33 S< B<--extcap-interface>=E<lt>interfaceE<gt> >
34 S<[ B<--extcap-dlts> ]>
35
36 B<androiddump>
37 S< B<--extcap-interface>=E<lt>interfaceE<gt> >
38 S<[ B<--extcap-config> ]>
39
40 B<androiddump>
41 S< B<--extcap-interface>=E<lt>interfaceE<gt> >
42 S< B<--fifo>=E<lt>path to file or pipeE<gt> >
43 S< B<--capture> >
44
45 =head1 DESCRIPTION
46
47 B<Androiddump> is a extcap tool that provide interfaces to capture from
48 Android device. There is only two requirements:
49
50 1. You must have Android SDK and add it PATH environment variable.
51 PATH should contain directory with tools like "adb" and "android".
52 Android SDK for various platform are available on:
53 https://developer.android.com/sdk/index.html#Other
54
55 2. You must have permission to Android devices. Some Android devices requires
56 on-screen authentication.
57
58
59 Supported interfaces:
60
61 =over 4
62
63 =item 1. Logcat Main (binary [<=Jelly Bean] or text)
64
65 =item 2. Logcat System (binary [<=Jelly Bean] or text)
66
67 =item 3. Logcat Events (binary [<=Jelly Bean] or text)
68
69 =item 4. Logcat Radio (binary [<=Jelly Bean] or text)
70
71 =item 5. Logcat Crash (text; from Lollipop)
72
73 =item 6. Bluetooth Hcidump [<=Jelly Bean]
74
75 =item 7. Bluetooth Bluedroid External Parser [Kitkat]
76
77 =item 8. Bluetooth BtsnoopNet [>=Lollipop]
78
79 =item 9. WiFi tcpdump [need tcpdump on phone]
80
81 =back
82
83 Please note that it will work also for FirefoxOS or other Android-based stuffs.
84
85 =head1 OPTIONS
86
87 =over 4
88
89 =item --help
90
91 Print program arguments.
92
93 =item --version
94
95 Print program version.
96
97 =item --extcap-version
98
99 Print extcapized version.
100
101 =item --debug
102
103 Print additional messages.
104
105 =item --extcap-interfaces
106
107 List available interfaces.
108
109 =item --extcap-interface=E<lt>interfaceE<gt>
110
111 Use specified interfaces.
112
113 =item --extcap-dlts
114
115 List DLTs of specified interface.
116
117 =item --extcap-config
118
119 List configuration options of specified interface.
120
121 =item --capture
122
123 Start capturing from specified interface save saved it in place specified by --fifo.
124
125 =item --fifo=E<lt>path to file or pipeE<gt>
126
127 Save captured packet to file or send it through pipe.
128
129 =item --adb-server-ip=E<lt>IP addressE<gt>
130
131 Use other then default (127.0.0.1) ADB daemon's IP address.
132
133 =item --adb-server-tcp-port=E<lt>TCP portE<gt>
134
135 Use other then default (5037) ADB daemon's TCP port.
136
137 =item --logcat-text=E<lt>TRUE or FALSEE<gt>
138
139 If TRUE then use text logcat rather then binary. This option has effect only on
140 Logcat interfaces. This have no effect from Lollipop where is no binary Logcat
141 available.
142
143 Defaults to FALSE.
144
145 =item --bt-server-tcp-port=E<lt>TCP portE<gt>
146
147 Use other then default Bluetooth server TCP port on Android side.
148 On Lollipop defaults is 8872, earlier 4330.
149
150 =item --bt-forward-socket=E<lt>TRUE or FALSEE<gt>
151
152 If TRUE then socket from Android side is forwarded to host side.
153
154 Defaults to FALSE.
155
156 =item --bt-local-ip=E<lt>IP addressE<gt>
157
158 Use other then default (127.0.0.1) IP address on host side for forwarded socket.
159
160 =item --bt-local-tcp-port=E<lt>TCP portE<gt>
161
162 Specify port to be used on host side for forwarded socket.
163
164 =back
165
166 =head1 EXAMPLES
167
168 To see program arguments:
169
170     androiddump --help
171
172 To see program version:
173
174     androiddump --version
175
176 To see interfaces:
177
178     androiddump --extcap-interfaces
179
180   Example output:
181     interface {display=Android Logcat Main unknown MSM7627A}{value=android-logcat-main-MSM7627A}
182     interface {display=Android Logcat System unknown MSM7627A}{value=android-logcat-system-MSM7627A}
183     interface {display=Android Logcat Radio unknown MSM7627A}{value=android-logcat-radio-MSM7627A}
184     interface {display=Android Logcat Events unknown MSM7627A}{value=android-logcat-events-MSM7627A}
185     interface {display=Android Bluetooth Hcidump unknown MSM7627A}{value=android-bluetooth-hcidump-MSM7627A}
186
187     Human-readable display name of interfaces contains interface type, one of:
188         android-logcat-main (Android Logcat Main)
189         android-logcat-system (Android Logcat System)
190         android-logcat-radio (Android Logcat Radio)
191         android-logcat-events (Android Logcat Events)
192         android-logcat-text-main (Android Logcat Main)
193         android-logcat-text-system (Android Logcat System)
194         android-logcat-text-radio (Android Logcat Radio)
195         android-logcat-text-events (Android Logcat Events)
196         android-logcat-text-crash (Android Logcat Crash)
197         android-bluetooth-hcidump (Android Bluetooth Hcidump)
198         android-bluetooth-external-parser (Android Bluetooth External Parser)
199         android-bluetooth-btsnoop-net (Android Bluetooth Btsnoop Net)
200         android-wifi-tcpdump (Android WiFi)
201     Then Android Device's name if available, otherwise "unknown".
202     Last part of it is DeviceID - the identificator of the device provided by Android SDK (see "adb devices").
203
204     For example:
205     "Android Logcat Main unknown MSM7627A"
206
207     "Android Logcat Main" - user-friendly type of interface
208     "unknown" - name of Android Device
209     "MSM7627A" - device ID
210
211 To see interface DLTs:
212
213     androiddump --extcap-interface=android-bluetooth-hcidump-MSM7627A --extcap-dlts
214
215   Example output:
216     dlt {number=99}{name=BluetoothH4}{display=Bluetooth HCI UART transport layer plus pseudo-header}
217
218
219 To see interface configuration options:
220
221     androiddump --extcap-interface=android-bluetooth-hcidump-MSM7627A --extcap-config
222
223   Example output:
224     arg {number=0}{call=--adb-server-ip}{display=ADB Server IP Address}{type=string}{default=127.0.0.1}
225     arg {number=1}{call=--adb-server-tcp-port}{display=ADB Server TCP Port}{type=integer}{range=0,65535}{default=5037}
226
227
228 To capture:
229
230     androiddump --extcap-interface=android-bluetooth-hcidump-MSM7627A --fifo=/tmp/bluetooth.pcapng --capture
231
232 NOTE: To stop capturing CTRL+C/kill/terminate application.
233
234 =head1 SEE ALSO
235
236 wireshark(1), tshark(1), dumpcap(1), extcap(4)
237
238 =head1 NOTES
239
240 B<Androiddump> is part of the B<Wireshark> distribution.  The latest version
241 of B<Wireshark> can be found at L<https://www.wireshark.org>.
242
243 HTML versions of the Wireshark project man pages are available at:
244 L<https://www.wireshark.org/docs/man-pages>.
245
246 =head1 AUTHORS
247
248   Original Author
249   -------- ------
250   Michal Labedzki             <michal.labedzki[AT]tieto.com>
251
252
253   Contributors
254   ------------
255   Roland Knall              <rknall[AT]gmail.com>