Codebase list libmtp / 72c9fa1
Import Debian changes 1.1.3-35-g0ece104-1 libmtp (1.1.3-35-g0ece104-1) unstable; urgency=low * Imported Upstream version 1.1.3-35-g0ece104: - Some new players: + SonyEricsson SK17i Xperia mini pro + SONY Xperia U ST25i + Viewpia DR + Archos 101 G9 (v2) + Asus TF300 Transformer + Asus TF101 Eeepad Slider + HTC Zopo ZP100 + HTC EVO 4G LTE + Medion Lifetab P9514 - Fix typo in libmtp.h, VCARD v2 and v3 now properly detected. - Blacklist Atmel JTAG programmers. Alessio Treglia authored 11 years ago Dylan Aïssi committed 5 years ago
12 changed file(s) with 129 addition(s) and 58 deletion(s). Raw diff Collapse all Expand all
195195 If this bug in your device annoys you, contact your device
196196 manufacturer and ask them to test their product with some libmtp
197197 program.
198
199 * Android locked screen: some devices just report zero files
200 and no storages when the device is locked, probably so as not
201 to allow the MTP access to be used as a "backdoor" into the
202 device. Unlock the device before listing files, set the autolock
203 to some large value or disabled if it disturbs you, you are
204 causing this to yourself.
198205
199206 * Samsung Android 2.3.x devices: these have a special MTP stack
200207 with some specific bugs that we have maybe nailed down now.
0 libmtp (1.1.3-35-g0ece104-1) unstable; urgency=low
1
2 * Imported Upstream version 1.1.3-35-g0ece104:
3 - Some new players:
4 + SonyEricsson SK17i Xperia mini pro
5 + SONY Xperia U ST25i
6 + Viewpia DR
7 + Archos 101 G9 (v2)
8 + Asus TF300 Transformer
9 + Asus TF101 Eeepad Slider
10 + HTC Zopo ZP100
11 + HTC EVO 4G LTE
12 + Medion Lifetab P9514
13 - Fix typo in libmtp.h, VCARD v2 and v3 now properly detected.
14 - Blacklist Atmel JTAG programmers.
15
16 -- Alessio Treglia <alessio@debian.org> Fri, 29 Jun 2012 08:40:07 +0200
17
018 libmtp (1.1.3-24-g9aca343-3) unstable; urgency=low
119
220 * Upload to unstable.
+0
-4
doc/.gitignore less more
0 Doxyfile
1 html
2 latex
3 man
+0
-3
examples/.gitignore less more
0 .deps
1 .libs
2 mtp-*
+0
-5
m4/.gitignore less more
0 libtool.m4
1 ltoptions.m4
2 ltsugar.m4
3 ltversion.m4
4 lt~obsolete.m4
+0
-5
src/.gitignore less more
0 .deps
1 .libs
2 _stdint.h
3 gphoto2-endian.h
4 libmtp.h
22 * Special device flags to deal with bugs in specific devices.
33 *
44 * Copyright (C) 2005-2007 Richard A. Low <richard@wentnet.com>
5 * Copyright (C) 2005-2011 Linus Walleij <triad@df.lth.se>
5 * Copyright (C) 2005-2012 Linus Walleij <triad@df.lth.se>
66 * Copyright (C) 2006-2007 Marcus Meissner
77 * Copyright (C) 2007 Ted Bullock
88 *
128128 * on Windows anyway, probably because the Windows implementation
129129 * does not check that these bytes are valid. To interoperate
130130 * with devices like this, we need this flag to emulate the
131 * Windows bug.
131 * Windows bug. Broken headers has also been found in the
132 * Aricent MTP stack.
132133 */
133134 #define DEVICE_FLAG_IGNORE_HEADER_ERRORS 0x00000080
134135 /**
307308 DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST | \
308309 DEVICE_FLAG_UNLOAD_DRIVER | \
309310 DEVICE_FLAG_LONG_TIMEOUT )
311 /**
312 * All these bug flags appear on a number of SonyEricsson
313 * devices including Android devices not using the stock
314 * Android 4.0+ (Ice Cream Sandwich) MTP stack. It is highly
315 * supected that these bugs comes from an MTP implementation
316 * from Aricent, so it is called the Aricent bug flags as a
317 * shorthand. Especially the header errors that need to be
318 * ignored is typical for this stack. It would be good if we
319 * could auto-detect this.
320 */
321 #define DEVICE_FLAGS_ARICENT_BUGS \
322 (DEVICE_FLAG_IGNORE_HEADER_ERRORS | \
323 DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST | \
324 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST )
11 * \file libmtp.h
22 * Interface to the Media Transfer Protocol library.
33 *
4 * Copyright (C) 2005-2011 Linus Walleij <triad@df.lth.se>
4 * Copyright (C) 2005-2012 Linus Walleij <triad@df.lth.se>
55 * Copyright (C) 2005-2008 Richard A. Low <richard@wentnet.com>
66 * Copyright (C) 2007 Ted Bullock <tbullock@canada.com>
77 * Copyright (C) 2008 Florent Mertens <flomertens@gmail.com>
200200 */
201201 #define LIBMTP_FILETYPE_IS_ADDRESSBOOK(a)\
202202 (a == LIBMTP_FILETYPE_VCARD2 ||\
203 a == LIBMTP_FILETYPE_VCARD2)
203 a == LIBMTP_FILETYPE_VCARD3)
204204
205205 /**
206206 * \def LIBMTP_FILETYPE_IS_CALENDAR
850850 { "Archos", 0x0e79, "80G9", 0x1518, DEVICE_FLAGS_ANDROID_BUGS },
851851 // Reported by Till <Till@users.sourceforge.net>
852852 { "Archos", 0x0e79, "101 G9", 0x1528, DEVICE_FLAGS_ANDROID_BUGS },
853 // Reported by anonymous sourceforge user
854 { "Archos", 0x0e79, "101 G9 (v2)", 0x1529, DEVICE_FLAGS_ANDROID_BUGS },
853855 // Reported by anonymous sourceforge user
854856 { "Archos", 0x0e79, "101 G9 Turbo 250 HD", 0x1538,
855857 DEVICE_FLAGS_ANDROID_BUGS },
11001102 // Guessing on device flags
11011103 { "Medion", 0x0408, "MD99000 (P9514)/Olivetti Olipad 110", 0xb009,
11021104 DEVICE_FLAG_UNLOAD_DRIVER | DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
1105 // Reported by Richard Eigenmann <richieigenmann@users.sourceforge.net>
1106 { "Medion", 0x0408, "Lifetab P9514", 0xb00a,
1107 DEVICE_FLAG_UNLOAD_DRIVER | DEVICE_FLAGS_ANDROID_BUGS },
11031108 // Reported by anonymous SourceForge user
11041109 { "Maxfield", 0x066f, "G-Flash NG 1GB", 0x846c,
11051110 DEVICE_FLAG_UNLOAD_DRIVER | DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
13851390 // Reported by Serge Chirik <schirik@users.sourceforge.net>
13861391 { "SonyEricsson", 0x0fce, "j108i (Cedar)", 0x014e,
13871392 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
1393 /*
1394 * SonyEricsson/SONY Android devices usually have three personalities due to
1395 * using composite descriptors and the fact that Windows cannot distinguish
1396 * the device unless each composite descriptor is unique.
1397 *
1398 * 0x0nnn = MTP
1399 * 0x4nnn = MTP + mass storage (for CD-ROM)
1400 * 0x5nnn = MTP + ADB (Android debug bridge)
1401 *
1402 */
13881403 // Reported by Jonas Salling <>
13891404 // Erroneous MTP implementation seems to be from Aricent, returns
13901405 // broken transaction ID.
1391 { "SonyEricsson", 0x0fce, "LT15i (Xperia arc S)", 0x14f,
1392 DEVICE_FLAG_IGNORE_HEADER_ERRORS |
1393 DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST |
1394 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
1406 { "SonyEricsson", 0x0fce, "LT15i (Xperia arc S)", 0x014f,
1407 DEVICE_FLAGS_ARICENT_BUGS },
13951408 // Reported by Eamonn Webster <eweb@users.sourceforge.net>
13961409 // Guessing on the ignore errors flag
1397 { "SonyEricsson", 0x0fce, "Xperia Neo", 0x0156,
1398 DEVICE_FLAG_IGNORE_HEADER_ERRORS |
1399 DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST |
1400 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
1410 { "SonyEricsson", 0x0fce, "MT11i Xperia Neo", 0x0156,
1411 DEVICE_FLAGS_ARICENT_BUGS },
14011412 // Reported by Alejandro DC <Alejandro_DC@users.sourceforge.ne>
1402 { "SonyEricsson", 0x0fce, "Xperia MK16i", 0x015a,
1403 DEVICE_FLAG_IGNORE_HEADER_ERRORS |
1404 DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST |
1405 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
1413 { "SonyEricsson", 0x0fce, "MK16i Xperia", 0x015a,
1414 DEVICE_FLAGS_ARICENT_BUGS },
14061415 // Reported by <wealas@users.sourceforge.net>
14071416 // Android with homebrew MTP stack, possibly Aricent
14081417 { "SonyEricsson", 0x0fce, "ST18a Xperia Ray", 0x0161,
1409 DEVICE_FLAG_IGNORE_HEADER_ERRORS |
1410 DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST |
1411 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
1418 DEVICE_FLAGS_ARICENT_BUGS },
1419 // Reported by StehpanKa <stehp@users.sourceforge.net>
1420 // Android with homebrew MTP stack, possibly Aricent
1421 { "SonyEricsson", 0x0fce, "SK17i Xperia mini pro", 0x0166,
1422 DEVICE_FLAGS_ARICENT_BUGS },
14121423 // Reported by hdhoang <hdhoang@users.sourceforge.net>
14131424 // Android with homebrew MTP stack, possibly Aricent
14141425 { "SonyEricsson", 0x0fce, "ST15i Xperia Mini", 0x0167,
1415 DEVICE_FLAG_IGNORE_HEADER_ERRORS |
1416 DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST |
1417 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
1426 DEVICE_FLAGS_ARICENT_BUGS },
14181427 // Reported by Paul Taylor
14191428 { "SONY", 0x0fce, "Xperia S", 0x0169,
14201429 DEVICE_FLAG_NO_ZERO_READS | DEVICE_FLAGS_ANDROID_BUGS },
1421 // Reported by Ondra Lengal (blindly copied from Xperia S)
1430 // Reported by equaeghe <equaeghe@users.sourceforge.net>
1431 { "SONY", 0x0fce, "ST15i Xperia U", 0x0171,
1432 DEVICE_FLAGS_ANDROID_BUGS },
1433 // Reported by Ondra Lengal
14221434 { "SONY", 0x0fce, "Xperia P", 0x0172,
1423 DEVICE_FLAG_NO_ZERO_READS | DEVICE_FLAGS_ANDROID_BUGS },
1435 DEVICE_FLAGS_ANDROID_BUGS },
14241436 // Reported by Jonas Nyrén <spectralmks@users.sourceforge.net>
14251437 { "SonyEricsson", 0x0fce, "W302", 0x10c8,
14261438 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
1439 /*
1440 * MTP+MSC personalities of MTP devices (see above)
1441 */
1442 // Reported by equaeghe <equaeghe@users.sourceforge.net>
1443 { "SONY", 0x0fce, "ST25i Xperia U (MTP+MSC mode)", 0x4171,
1444 DEVICE_FLAGS_ANDROID_BUGS },
1445 // Guessing on this one
1446 { "SONY", 0x0fce, "Xperia P (MTP+MSC mode)", 0x4172,
1447 DEVICE_FLAGS_ANDROID_BUGS },
1448 /*
1449 * MTP+ADB personalities of MTP devices (see above)
1450 */
14271451 // Reported by anonymous sourceforge user
14281452 // Suspect Aricent stack, guessing on these bug flags
1429 { "SonyEricsson", 0x0fce, "Xperia Arc LT15i", 0x514f,
1430 DEVICE_FLAG_IGNORE_HEADER_ERRORS |
1431 DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST |
1432 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
1453 { "SonyEricsson", 0x0fce, "LT15i Xperia Arc (MTP+ADB mode)", 0x514f,
1454 DEVICE_FLAGS_ARICENT_BUGS },
1455 // Reported by Michael K. <kmike@users.sourceforge.net>
1456 { "SonyEricsson", 0x0fce, "MT11i Xperia Neo (MTP+ADB mode)", 0x5156,
1457 DEVICE_FLAGS_ARICENT_BUGS },
1458 { "SonyEricsson", 0x0fce, "MK16i Xperia (MTP+ADB mode)", 0x515a,
1459 DEVICE_FLAGS_ARICENT_BUGS },
14331460 // Reported by Eduard Bloch <blade@debian.org>
14341461 // Xperia Ray (2012), SE Android 2.3.4, flags from ST18a
1435 { "SonyEricsson", 0x0fce, "ST18i Xperia Ray", 0x5161,
1436 DEVICE_FLAG_IGNORE_HEADER_ERRORS |
1437 DEVICE_FLAG_BROKEN_SEND_OBJECT_PROPLIST |
1438 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
1462 { "SonyEricsson", 0x0fce, "ST18i Xperia Ray (MTP+ADB mode)", 0x5161,
1463 DEVICE_FLAGS_ARICENT_BUGS },
1464 // Reported by StehpanKa <stehp@users.sourceforge.net>
1465 // Android with homebrew MTP stack, possibly Aricent
1466 { "SonyEricsson", 0x0fce, "SK17i Xperia mini pro (MTP+ADB mode)", 0x5166,
1467 DEVICE_FLAGS_ARICENT_BUGS },
1468 // Android with homebrew MTP stack, possibly Aricent
1469 { "SonyEricsson", 0x0fce, "ST15i Xperia Mini (MTP+ADB mode)", 0x5167,
1470 DEVICE_FLAGS_ARICENT_BUGS },
1471 // Reported by equaeghe <equaeghe@users.sourceforge.net>
1472 { "SONY", 0x0fce, "Xperia U ST25i (MTP+ADB mode)", 0x5171,
1473 DEVICE_FLAGS_ANDROID_BUGS },
14391474 // Reported by Anonymous Sourceforge user
14401475 { "SonyEricsson", 0x0fce, "j10i (Elm)", 0xd144,
14411476 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
14421477 // Reported by Thomas Schweitzer <thomas_-_s@users.sourceforge.net>
14431478 { "SonyEricsson", 0x0fce, "K550i", 0xe000,
14441479 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST },
1445
14461480
14471481 /*
14481482 * Motorola
16321666 // Reported by Glen Overby
16331667 { "Asus", 0x0b05, "TF300 Transformer", 0x4c80,
16341668 DEVICE_FLAGS_ANDROID_BUGS },
1669 // Reported by jaile <jaile@users.sourceforge.net>
1670 { "Asus", 0x0b05, "TF300 Transformer (USB debug mode)", 0x4c81,
1671 DEVICE_FLAGS_ANDROID_BUGS },
16351672 // Reported by anonymous Sourceforge user
16361673 { "Asus", 0x0b05, "TF201 Transformer Prime (keyboard dock)", 0x4d00,
16371674 DEVICE_FLAGS_ANDROID_BUGS },
16381675 { "Asus", 0x0b05, "TF201 Transformer Prime (tablet only)", 0x4d01,
16391676 DEVICE_FLAGS_ANDROID_BUGS },
16401677 { "Asus", 0x0b05, "TFXXX Transformer Prime (unknown version)", 0x4d04,
1678 DEVICE_FLAGS_ANDROID_BUGS },
1679 // Reported by anonymous Sourceforge user
1680 { "Asus", 0x0b05, "TF101 Eeepad Slider", 0x4e01,
16411681 DEVICE_FLAGS_ANDROID_BUGS },
16421682 { "Asus", 0x0b05, "TF101 Eeepad Transformer", 0x4e0f,
16431683 DEVICE_FLAGS_ANDROID_BUGS },
16721712 { "ZTE", 0x19d2, "V55 ID 2", 0x0245, DEVICE_FLAGS_ANDROID_BUGS },
16731713
16741714 /*
1675 * Hewlett-Packard (HP)
1676 */
1715 * HTC (High Tech Computer Corp)
1716 */
1717 { "HTC", 0x0bb4, "Zopo ZP100", 0x0c02,
1718 DEVICE_FLAGS_ANDROID_BUGS },
1719 // Reported by Steven Eastland <grassmonk@users.sourceforge.net>
1720 { "HTC", 0x0bb4, "EVO 4G LTE", 0x0ca8,
1721 DEVICE_FLAGS_ANDROID_BUGS },
16771722 // These identify themselves as "cm_tenderloin", fun...
1723 // Done by HTC for HP I guess.
16781724 { "Hewlett-Packard", 0x0bb4, "HP Touchpad", 0x685c,
16791725 DEVICE_FLAGS_ANDROID_BUGS },
16801726 { "Hewlett-Packard", 0x0bb4, "HP Touchpad (debug mode)",
16981744 { "Vizio", 0x0489, "VTAB1008", 0xe040, DEVICE_FLAGS_ANDROID_BUGS },
16991745
17001746 /*
1747 * Viewpia
1748 */
1749 { "Viewpia", 0x2207, "DR", 0x0001, DEVICE_FLAGS_ANDROID_BUGS },
1750
1751 /*
17011752 * Other strange stuff.
17021753 */
17031754 { "Isabella", 0x0b20, "Her Prototype", 0xddee, DEVICE_FLAG_NONE }
+0
-4
util/.gitignore less more
0 .deps
1 .libs
2 mtp-hotplug
3 mtp-probe
149149 printf("ATTR{idVendor}==\"04a9\", ATTR{idProduct}==\"22*\", GOTO=\"libmtp_rules_end\"\n");
150150 printf("# Sensitive Atheros devices that look like MTP devices\n");
151151 printf("ATTR{idVendor}==\"0cf3\", GOTO=\"libmtp_rules_end\"\n");
152 printf("\n");
152 printf("# Sensitive Atmel JTAG programmers\n");
153 printf("ATTR{idVendor}==\"03eb\", GOTO=\"libmtp_rules_end\"\n");
153154 break;
154155 case style_udev_old:
155156 printf("# UDEV-style hotplug map for libmtp\n");
1818 * Exits with status code 1 if the device is an MTP device,
1919 * else exits with 0.
2020 *
21 * Copyright (C) 2011 Linus Walleij <triad@df.lth.se>
21 * Copyright (C) 2011-2012 Linus Walleij <triad@df.lth.se>
2222 *
2323 * This library is free software; you can redistribute it and/or
2424 * modify it under the terms of the GNU Lesser General Public