blob: 6c1e312ddadfd119928948028d7ea4de2d208d0e [file] [log] [blame]
Linus Walleije80d6bd2008-06-23 23:11:42 +000012008-06-24 Linus Walleij <triad@df.lth.se>
2
3 * TODO: updates.
4 * src/Makefile.am: bump interface to libmtp.so.8.0.0.
5 It's NOT compatible!
6 * RELEASE libmtp 0.3.0 and let the apps developers have
7 their apps fixed!
8
Linus Walleijea68f1f2008-06-22 21:54:44 +000092008-06-22 Linus Walleij <triad@df.lth.se>
10
11 * src/libmtp.h.in: removed the parenthandle argument from
12 LIBMTP_Send_File_From_File(),
13 LIBMTP_Send_File_From_File_Descriptor(),
14 LIBMTP_Send_Track_From_File(),
15 LIBMTP_Send_Track_From_File_Descriptor(),
16 LIBMTP_Create_New_Playlist() and
17 LIBMTP_Create_New_Album()
18 Now you must pass in parent ID from a metadata or
19 filedata set. Use the respective field of the
20 file, track, playlist or album struct to pass in
21 a parent handle when calling these functions from
22 now on. The bonus for changing your code is that you
23 can now also pass in a storage_id with any metadata
24 set! Consequently LIBMTP_Create_Folder() was
25 altered to accept THREE metadata arguments: name,
26 parent_id and storage_id. All calls to any of these
27 functions in any referring code need to be altered to
28 use this scheme. It should be quite self-evident for
29 most code and easy to perform.
30 * src/libmtp.c: changed outlined above were implemented.
31 * examples/newfolder.c: consequental changes.
32 * examples/sendfile.c: consequental changes.
33 * examples/sendtr.c: consequental changes.
34 * examples/albumart.c: consequental changes.
35 * examples/newplaylist.c: consequental changes.
36 * examples/files.c: consequental changes.
37 * examples/tracks.c: correct misleading strings.
38
Linus Walleij8f7f1aa2008-06-15 19:00:23 +0000392008-06-15 Linus Walleij <triad@df.lth.se>
40
41 * src/libmtp.c: only look for default folders in the
42 root folder on the primary storage, even.
43
Linus Walleijc40c9bf2008-06-13 23:24:17 +0000442008-06-14 Linus Walleij <triad@df.lth.se>
45
46 * src/libmtp.c: only look for default folders in the
47 primary storage, and only try to put files there
48 if they are targetting the primary storage.
49
Linus Walleij56c63952008-06-08 21:55:58 +0000502008-06-08 Linus Walleij <triad@df.lth.se>
51
52 * configure.ac: check for the langinfo.h header.
53 * examples/connect.c: check charset properly.
54 * examples/sendtr.c: dito.
55 * src/music-players.h: new devices galore.
56
Linus Walleij335a81c2008-06-02 23:01:00 +0000572008-06-03 Linus Walleij <triad@df.lth.se>
58
59 * src/device-flags.h: new device flag for devices that
60 always need to have their device descriptor probed.
61 * src/music-players.h: generously add this flag to all
62 SanDisk devices. The e280v2 and Fuze are known to be
63 especially problematic.
64 * src/libusb-glue.h: helper macro.
65 * src/libusb-glue.c: massage "OS Descriptor" on demand
66 when opening the device.
Linus Walleij5e202562008-06-03 11:35:05 +000067 * src/music-players.h: detailed info and flags for the
68 SanDisk Sansa players. More to be done, probably.
Linus Walleij335a81c2008-06-02 23:01:00 +000069
Linus Walleijfec4d562008-06-01 22:30:36 +0000702008-06-02 Linus Walleij <triad@df.lth.se>
71
72 * src/libusb-glue.c: refactor PTP_USB to use the raw
73 device and its contained deviceinfo to store and
74 retrieve the device flags. (This is starting to look
75 object oriented...)
76 * src/libusb-glue.h: accessor functions to simplify
77 switching on the device flags and increase the code
78 readability.
79 * src/libmtp.c: use the new accessor functions.
80
Linus Walleij64691b72008-05-31 22:55:18 +0000812008-06-01 Linus Walleij <triad@df.lth.se>
82
83 * src/libmtp.c: use LIBMTP_Detect_Raw_Devices() and
84 LIBMTP_Open_Raw_Device() inside
Linus Walleij3c643252008-05-31 23:22:28 +000085 LIBMTP_Get_First_Device() refactoring. Move
86 params creation into this file.
87 * src/libusb-glue.c: move params creation away
88 from here.
Linus Walleij64691b72008-05-31 22:55:18 +000089
Linus Walleij9b146182008-05-29 22:42:54 +0000902008-05-30 Linus Walleij <triad@df.lth.se>
91
92 * src/libusb-glue.c: unused variable.
93 * examples/detect.c: switch to using raw device
94 interface for opening devices.
95
Linus Walleij9d22ce02008-05-28 20:39:29 +0000962008-05-28 Linus Walleij <triad@df.lth.se>
97
Linus Walleija700d222008-05-28 23:06:14 +000098 * src/libmtp.c: internally using the raw devices to
99 get a list of devices.
Linus Walleij9d22ce02008-05-28 20:39:29 +0000100 * src/ptp.c: sync to upstream.
101 * src/ptp.h: dito.
102 * src/ptp-pack.c: dito.
Linus Walleija700d222008-05-28 23:06:14 +0000103 * src/libmtp.h.in: move raw device detection to use
Linus Walleijbdb89bd2008-05-28 23:32:35 +0000104 error codes. Add interface to open a raw device!
Linus Walleija700d222008-05-28 23:06:14 +0000105 * src/libusb-glue.h: make the old device list internal,
106 use raw device in interface for configuring USB.
107 * src/libusb-glue.c: fix up error messages. Move the
108 raw device detection interface to use error codes.
109 * examples/detect.c: fix up error messages. Use error
110 codes for raw devices.
Linus Walleij9d22ce02008-05-28 20:39:29 +0000111
Linus Walleij817579a2008-05-23 21:21:40 +00001122008-05-23 Linus Walleij <triad@df.lth.se>
113
114 * src/libmtp.c: after sending a file, look up the
115 resulting file metadata from the cache to make sure
116 that parent_id is identical to that the file actually
117 gets on the device. If root folder (0) is selected, we
118 hardcode thing to 0xffffffffu to be used as parent,
119 but it will probably end up being 0 for example.
Linus Walleijfcb43422008-05-23 21:53:55 +0000120 Also fix an issue with ptp_mtp_getobjectproplist()
121 sometimes returning a NULL pointer while still
122 claiming there are props in the list.
Linus Walleija4e6bdc2008-05-23 22:31:53 +0000123 * src/libusb-glue.h: add a function to get the preferred
124 playlist extension.
Linus Walleij5ba40402008-05-23 21:36:54 +0000125 * src/libusb-glue.c: "written" variable in
126 ptp_usb_sendreq() may end up uninitialized if
127 ptp_write_func() fails. Initialize it to 0.
Linus Walleija4e6bdc2008-05-23 22:31:53 +0000128 Get the prefered playlist extension.
Linus Walleij817579a2008-05-23 21:21:40 +0000129
Richard Lowbb9fb4a2008-05-18 14:49:34 +00001302008-05-18 Richard Low <richard@wentnet.com>
131
132 * src/device-flags.h: added
133 DEVICE_FLAG_BROKEN_SET_SAMPLE_DIMENSIONS device flag
134 * src/music-players.h: ditto. Also set Samsung YH-999 to
135 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL based on users
136 experience.
137 * src/libmtp.c: added
138 DEVICE_FLAG_BROKEN_SET_SAMPLE_DIMENSIONS device flag
139
Linus Walleijf106aa62008-05-04 22:55:51 +00001402008-05-05 Linus Walleij <triad@df.lth.se>
141
142 * src/libusb-glue.c: assign device name and flags to
143 detected raw devices, slowly preparing to move to
144 using the raw device detection internally as well.
145
Linus Walleij10e0ce72008-05-04 19:20:33 +00001462008-05-04 Linus Walleij <triad@df.lth.se>
147
148 * src/libmtp.h.in: move useful filetype macros here so
149 external programs can use them.
150 * src/libmtp.c: consequental changes.
151 * examples/sendtr.c: use the new macro to detect track
152 content.
153
Linus Walleij31b74292008-05-02 23:29:06 +00001542008-05-03 Johannes Huber <johub1180@gmx.at>
155
156 * src/libmtp.h.in: add interface for setting album composer,
157 needed for classical albums, on abstract albums.
158 * src/libmtp.c: implement it.
159 * examples/albums.c: consequental changes.
160 * examples/connect.c: dito.
161 * examples/sendtr.c: dito.
162 * examples/tracks.c: dito.
163 * AUTHORS: new contributor.
164
Linus Walleij46651f32008-04-26 23:30:19 +00001652008-04-27 Linus Walleij <triad@df.lth.se>
166
167 * src/libmtp.c: recognize audio files as tracks, since this
168 is what WMP does. (e.g. it sets playlength on movies
169 to enable skip bar) also define macros for audio/video/both
170 types and tidy up a bit.
171
Linus Walleij63fd1e62008-04-23 23:49:43 +00001722008-04-24 Linus Walleij <triad@df.lth.se>
173
174 * src/libmtp.h.in: added preliminary interface for getting
175 raw devices.
176 * src/libusb-glue.c: the implementation is all here!
177 * src/libusb-glue.h: add some bus and device fields to the
178 internal device list.
179 * examples/detect.c: exercise the raw device detection code.
180
Linus Walleij88feb2e2008-03-26 00:26:20 +00001812008-03-26 Linus Walleij <triad@df.lth.se>
182
183 * examples/pathutils.c: fix a folder identification bug,
184 courtesy of Dr Nicholas Jacobs.
185
Linus Walleij5ce59db2008-03-12 21:22:58 +00001862008-03-12 Linus Walleij <triad@df.lth.se>
187
Linus Walleij161fcce2008-03-12 22:02:59 +0000188 * configure.ac: bad mailing list address. (Marcus) Bump to
189 version 0.3.0.
190 * examples/hotplug.c: switch from using "info.bus" to
191 using "info.subsystem" to identify USB events. (Marcus).
Linus Walleij5ce59db2008-03-12 21:22:58 +0000192 * src/libmtp.c: add parent_id to albums and playlists,
193 based on a patch by Ali Shah.
194 * src/libmtp.h.in: dito.
195 * examples/playlists.c: consequental changes.
196 * examples/albums.c: consequental changes.
197 * This will be a new major revision of the API/ABI no
198 matter what.
199
Linus Walleij1018c162008-03-07 23:11:58 +00002002008-03-08 Linus Walleij <triad@df.lth.se>
201
202 * src/libusb-glue.c: left debug prints on :-(
Linus Walleij907905b2008-03-07 23:33:02 +0000203 * configure.ac: set to 0.2.6.1
Linus Walleij1018c162008-03-07 23:11:58 +0000204 * Release as 0.2.6.1
205
Linus Walleijb8f78c72008-03-02 20:22:56 +00002062008-03-02 Linus Walleij <triad@df.lth.se>
207
208 * configure.ac: prepare 0.2.6 release.
209 * src/Makefile.am: bump to compatible interface,
210 * src/ptp.c: sync in upstream, a Sansa fix!
211 * src/ptp.h: sync in upstream.
212 * doc/Doxyfile.in: retire obsoleted parameters.
213 * Release this as 0.2.6!
214
Richard Low641d1e32008-02-24 20:47:20 +00002152008-02-24 Richard Low <richard@wentnet.com>
216
217 * src/music-players.h: add DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL
218 for a broken Philips player.
219
Linus Walleijc12e1752008-02-18 22:45:45 +00002202008-02-18 Linus Walleij <triad@df.lth.se>
221
222 * examples/pathutils.c: fix up item ID typing to uint32_t,
223 handle file names passed in as arguments at suggestion from
224 anonymous mail list user.
225 * examples/pathutils.h: move a function static.
226
Linus Walleij75fe2bf2008-02-12 07:34:35 +00002272008-02-12 Nicolas Pennequin <nicolas.pennequin@free.fr>
228
229 * examples/sendtr.c: add transferred tracks to albums if possible.
230
Linus Walleij3191bba2008-02-10 21:16:25 +00002312008-02-10 Scott Snyder <snyder@fnal.gov>
232
233 * src/libusb-glue.c: finally fix up the short header detection
234 to skip over zero packets when encountered.
235 * examples/pathutils.c: fix a problem where all files sent has
236 to include a "." (period).
237
Linus Walleijbebc6d52008-02-06 00:17:58 +00002382008-02-06 Linus Walleij <triad@df.lth.se>
239
240 * src/libusb-glue.c: wait for response > 0 instead of > 2.
241
Linus Walleijce245a82008-01-28 10:25:13 +00002422008-01-28 Linus Walleij <triad@df.lth.se>
243
Linus Walleij0801cd52008-01-29 22:19:15 +0000244 * src/libmtp.c: LIBMTP_Get_Filemetadata() return metadata for
245 folders (associations) too. There is really no reason why it
246 shouldn't and it's good for use internally.
247 LIBMTP_Get_Filelisting_With_Callback() will still not return
248 any associations however. We want to use the folder functions
249 for that.
250
2512008-01-28 Linus Walleij <triad@df.lth.se>
252
Linus Walleijce245a82008-01-28 10:25:13 +0000253 * src/libmtp.h.in: withdraw LIBMTP_Set_Object_Parent() function,
254 no known devices will support this.
Linus Walleij8be2c032008-01-28 21:23:47 +0000255 * src/libmtp.c: dito. Fix up some problems with the
256 LIBMTP_Set_Object_Filename() function.
Linus Walleijce245a82008-01-28 10:25:13 +0000257
Linus Walleij399807b2008-01-27 22:05:12 +00002582008-01-27 Linus Walleij <triad@df.lth.se>
259
260 * src/libmtp.c: fix up some minor things and documentation on
261 the object handling functions.
262
Linus Walleijde8193f2008-01-27 14:55:31 +00002632008-01-27 Florent Mertens <flomertens@gmail.com>
264
265 * src/libmtp.h.in: new functions to rename object filenames
266 and change object parents. Good when modifying the device
267 as a file system, LIBMTP_Set_Object_Filename(),
268 LIBMTP_Set_Object_Parent().
269 * src/libmtp.c: implementation.
270
Linus Walleij00411ee2008-01-27 12:24:51 +00002712008-01-27 Linus Walleij <triad@df.lth.se>
272
273 * src/libusb-glue.c: re-read response from device until
274 it atleast exceeds two bytes. This fixes a problem with
275 the Samsung YP-U3 when populated with many, many songs.
276
Richard Lowa11a6ad2008-01-21 17:23:55 +00002772008-01-21 Richard Low <richard@wentnet.com>
278
279 * src/music-players.h: add Thomson Lyrca HC308A, remove
280 incorrect ID for Creative Zen 8GB
281
Richard Low36e447c2008-01-20 15:24:55 +00002822008-01-20 Richard Low <richard@wentnet.com>
283
284 * src/libmtp.c: add LIBMTP_Get_Representative_Sample()
285 * src/libmtp.h.in: ditto
286
2872008-01-14 Linus Walleij <triad@df.lth.se>
Linus Walleij2350b712008-01-14 22:54:37 +0000288
289 * src/libmtp.c: add LIBMTP_Get_Manufacturername(). Remember
290 to bump soname (compatible) in 0.2.6 (or whatever we name it).
291 0.3.0 perhaps?
292 * src/libmtp.h.in: dito.
293 * src/libmtp.c: detect default folders named "Datacasts" and
294 "Texts".
295
Richard Low36e447c2008-01-20 15:24:55 +00002962008-01-11 Linus Walleij <triad@df.lth.se>
Linus Walleij7fcaa372008-01-11 00:48:06 +0000297
298 * examples/pathutils.c: recognize .bin files as firmware,
299 used by e.g. RockBox developers. Doesn't cost anything to
300 add.
301
Richard Low36e447c2008-01-20 15:24:55 +00003022008-01-08 Linus Walleij <triad@df.lth.se>
Linus Walleij89daa092008-01-08 22:35:39 +0000303
304 * configure.ac: bump to 0.2.5.
305 * src/Makefile.am: interface to libmtp.so.7.0.2
306 (compatible).
307 * Release as libmtp 0.2.5. Why not?
308
Linus Walleij0b75ab62007-12-28 00:47:34 +00003092007-12-28 Linus Walleij <triad@df.lth.se>
310
311 * src/libmtp.c: make libmtp use PTP_OPC_AlbumArtist on albums,
312 instead of the (seldom present) PTP_OPC_Artist tag. Use both
313 if both are supported. We're not setting AlbumArtist on regular
314 tracks though, what's the point, and what does it mean if this
315 differs from Artist??
316
Linus Walleija3544f62007-11-30 01:20:04 +00003172007-11-30 Linus Walleij <triad@df.lth.se>
318
319 * src/music-players.h: new flag for the YP-T10.
320 * src/device-flags.h: define the new flag, that is needed
321 to support Ogg files on these devices.
322 * src/libmtp.c: recognize and report Ogg support, set type
323 to unknown when transferring.
324
Linus Walleijcc2cf972007-11-22 20:23:43 +00003252007-11-22 Linus Walleij <triad@df.lth.se>
326
327 * configure.ac: bump to 0.2.4.
328 * src/Makefile.am: bump age of soversion (compatible).
329 * RELEASE 0.2.4 mainly to get some new device support out there.
330
Linus Walleijbc550bc2007-11-08 23:25:09 +00003312007-11-09 Linus Walleij <triad@df.lth.se>
332
333 * src/libusb-glue.c: avoid probing deeper into interfaces
334 that have a string describing them as "MTP" after a
335 suggested patch from Alexander Kanavin <ak@sensi.org>.
Linus Walleij20c3b672007-11-09 19:02:19 +0000336 * examples/albumart.c: patch from Chris Waters <xtifr@debian.org>
337 replacing calls to atoi() with calls to strtoul(). Since
338 object ID:s are unsigned long, atoi() would reject too
339 high object IDs. The patch also fix a few memory leaks.
340 THANKS DEBIAN! We love our downstream!
341 * examples/newplaylist.c: dito.
342 * examples/pathutils.c: dito.
343 * examples/thumb.c: dito.
Linus Walleijbc550bc2007-11-08 23:25:09 +0000344
Linus Walleij5f42ef42007-11-05 22:58:50 +00003452007-11-05 Linus Walleij <triad@df.lth.se>
346
347 * src/libmtp.c: use OPFF codes instead of DPFF codes,
348 we're dealing with objects, not device props.
349 * src/ptp.c: silence some OPFF freeing warnings.
350
Linus Walleij3e4b1142007-11-01 23:54:16 +00003512007-11-02 Linus Walleij <triad@df.lth.se>
352
353 * src/libusb-glue.c: try to repair header here instead of
354 ignoring error in ptp.c.
Linus Walleij1d0e84f2007-11-02 21:05:35 +0000355 * src/music-players.h: flag some more Creative devices as
356 broken getting all files.
357 * src/Makefile.am: reference the 2 new .h files.
Linus Walleij3e4b1142007-11-01 23:54:16 +0000358
Linus Walleij8f4bb042007-10-31 08:59:12 +00003592007-10-31 Linus Walleij <triad@df.lth.se>
360
361 * src/ptp.c: bring cache handling into this file.
362 * src/ptp.h: dito.
363 * src/libmtp.c: consequential changes.
364
Linus Walleij1a673de2007-10-29 23:10:05 +00003652007-10-30 Linus Walleij <triad@df.lth.se>
366
367 * src/music-players.h: split this off as a shared file
368 between us and libgphoto2 so we get out of the syncing
369 nightmare.
Linus Walleij3e667ae2007-10-29 23:29:39 +0000370 * src/device-flags.h: split out this as well, Marcus
371 might want it.
Linus Walleij8f4bb042007-10-31 08:59:12 +0000372 * src/libusb-glue.c: consequential movement.
Linus Walleij3e667ae2007-10-29 23:29:39 +0000373 * src/libmtp.c: reference new flag file.
Linus Walleij0b89a7e2007-10-30 22:21:15 +0000374 * src/ptp.c: sync in upstream.
375 * src/ptp.h: dito.
Linus Walleij1a673de2007-10-29 23:10:05 +0000376
Linus Walleij08c90082007-10-25 20:29:53 +00003772007-10-25 Linus Walleij <triad@df.lth.se>
378
379 * Release 0.2.3. Nice bunch of cleaned-up code, sad we had
380 too bump soversion but such is life.
381
Linus Walleijfb28b632007-10-23 21:56:18 +00003822007-10-23 Linus Walleij <triad@df.lth.se>
383
384 * src/libmtp.c: make LIBMTP_Send_File_From_File_Descriptor()
385 survive the case where device->storage is NULL. This happens
386 on the Nokia 3110c.
387
Linus Walleij7752b952007-10-19 20:11:46 +00003882007-10-19 Linus Walleij <triad@df.lth.se>
389
390 * src/libmtp.c: bring the cache handling code together at the
391 end of the file, refactor so as to avoid code duplication,
Linus Walleij4d0deea2007-10-19 21:27:48 +0000392 do things in one place only and looking good. Get folder
393 list recursively instead, this works better with fast dir
394 retrieveal I think.
Linus Walleij7752b952007-10-19 20:11:46 +0000395
Linus Walleij26d42da2007-10-18 14:02:02 +00003962007-10-18 Linus Walleij <triad@df.lth.se>
397
398 * src/libmtp.c: fix the deletion of cached properties when
399 removing objects. This code was seriously broken.
400
jefferaida9687e2007-10-16 16:44:15 +00004012007-10-16 Jeff Mitchell <kde-dev@emailgoeshere.com>
402
Linus Walleijc5908a02007-10-16 20:42:08 +0000403 * src/libusb-glue.c: remove the previously-concatenated vendor
404 and product string "name" field as it's now redundant
405 * src/Makefile.am: interface to libmtp.so.7.0.0 (incompatible,
406 device_entry_struct members changed)
407 * examples/hotplug.c: port to use vendor and product instead of
408 name, also some useful commenting in the fdi file
jefferaida9687e2007-10-16 16:44:15 +0000409
Linus Walleij06542122007-10-14 22:13:48 +00004102007-10-15 Linus Walleij <triad@df.lth.se>
411
412 * src/libusb-glue.c: repair headers, don't just ignore them.
Linus Walleijf9267e92007-10-15 21:07:37 +0000413 Add support for broken set object proplist devices. Motorola
414 RAZR2 V8 has this problem.
415 * src/libusb-glue.h: flag for broken set object proplist.
416 * libmtp.c: avoid broken set object proplist.
Linus Walleij06542122007-10-14 22:13:48 +0000417
jefferaida9687e2007-10-16 16:44:15 +00004182007-10-09 Jeff Mitchell <kde-dev@emailgoeshere.com>
419
Linus Walleijc5908a02007-10-16 20:42:08 +0000420 * src/libusb-glue.c: add separate vendor and product strings
421 in device entry structs
jefferaida9687e2007-10-16 16:44:15 +0000422 * src/libmtp.h.in: update device entry structs to reflect this
423
Linus Walleija91f8892007-10-04 21:25:22 +00004242007-10-04 Linus Walleij <triad@df.lth.se>
425
426 * src/libusb-glue.c: rm some pointless confusing defines
427 inherited from libgphoto2.
Linus Walleij2ec6ff52007-10-04 22:20:43 +0000428 * configure.ac: bump to 0.2.2
429 * src/Makefile.am: interface to libmtp.so.6.0.2 (compatible)
430 * Release as 0.2.2. Now is as good time as ever. Release
431 early and release often.
Linus Walleija91f8892007-10-04 21:25:22 +0000432
Linus Walleij41e75b22007-10-03 21:58:06 +00004332007-10-03 Linus Walleij <triad@df.lth.se>
434
435 * src/libusb-glue.c: tag the OLD Creative devices with
436 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL, after clear
437 indications that it was broken when retrieveing folders
438 on all those devices. The newer devices (those supporting
439 32bit object size) presumably does not have this limitation.
440
Linus Walleijca2a1702007-10-02 20:41:45 +00004412007-10-02 Linus Walleij <triad@df.lth.se>
442
443 * src/libmtp.c: devices which represented file size with a
444 32bit value (some Creative devices) would return a bananas
Linus Walleij1d877372007-10-02 21:21:57 +0000445 file size. Fixed it up by...
446 * src/libmtp.h.in: recycling the uint8_t "interface"
Linus Walleijddaba2f2007-10-02 21:20:30 +0000447 field in the device struct as a holder of the object size
448 for the device. This will make the new library binary
449 compatible with version 0.2.1 since no-one should *ever*
450 dereference that value (which used to be the USB interface
451 number and is now the object size).
Linus Walleijca2a1702007-10-02 20:41:45 +0000452 * examples/files.c: display 64bit file sizes in hex correctly.
453
Richard Low99a93e82007-09-29 08:16:08 +00004542007-09-29 Richard Low <richard@wentnet.com>
455
456 * src/libmtp.c: avoid crash on failed connect
457
Linus Walleij8e3af002007-09-28 19:21:54 +00004582007-09-28 Linus Walleij <triad@df.lth.se>
459
460 * src/libusb-glue.h: introduce a new device flag for devices that
461 have broken PTP headers, first encountered on the Creative
462 ZEN 8GB.
463 * src/libusb-glue.c: attempt to begin to work around the broken
464 PTP headers.
465
Linus Walleij29f03ba2007-09-25 19:22:12 +00004662007-09-25 Linus Walleij <triad@df.lth.se>
467
468 * src/libusb-glue.h: add a new device flag for devices that don't
469 like it if you release the interface (or try to clear endpoints).
470 * src/libusb-glue.c: dito, implement this flag, tag all SanDisk
471 Sansa devices with it except for the Linux-based Sansa Connect.
472
Richard Low61edc1a2007-09-23 10:35:48 +00004732007-09-23 Richard Low <richard@wentnet.com>
474
475 * src/libusb-glue.c: updated some device flags, removed second
476 call to ptp_getdeviceinfo
477 * src/libmtp.c: property cache fixes
478
Linus Walleij7783b9b2007-09-22 22:10:44 +00004792007-09-23 Linus Walleij <triad@df.lth.se>
480
481 * src/libmtp.c: wrapped updating of playlists and albums into an
482 abstract function so we do it consistently. Added support for
483 tagging on modification date to files, tracks, playlists and
484 albums.
485
Linus Walleij580aff72007-09-21 13:02:19 +00004862007-09-21 Linus Walleij <triad@df.lth.se>
487
488 * src/libusb-glue.c: flag the Samsung YH-820 with
489 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL after tests by Stephan
490 Fabel.
491
Linus Walleijda17cda2007-09-18 21:12:05 +00004922007-09-18 Linus Walleij <triad@df.lth.se>
493
494 * src/libusb-glue.c: stop the endpoint unhalting/unstalling when
495 closing the USB device. It was AYBABTU the Samsungs
496 (and others).
497
Linus Walleij724f0102007-09-17 20:10:12 +00004982007-09-17 Linus Walleij <triad@df.lth.se>
499
500 * src/libusb-glue.c: silenced weirdo error message.
501
Linus Walleijb644b412007-09-16 21:46:02 +00005022007-09-16 Linus Walleij <triad@df.lth.se>
503
504 * src/ptp.c: cancellation working *as it should*
505 * src/ptp.h: dito.
506 * src/libusb-glue.c: dito.
507 * src/libusb-glue.h: dito.
508 * src/libmtp.c: dito.
509 * src/libmtp.h.in: new error code for cancellation.
510
Richard Lowe9f205f2007-09-16 16:25:50 +00005112007-09-16 Richard Low <richard@wentnet.com>
512
513 * src/libusb-glue.c: only read descriptors for devices we
514 don't know since it breaks on some devices
Richard Lowd7bcab52007-09-16 16:30:20 +0000515 * src/libmtp.c: a couple of bugs fixed in metadata retreival
Richard Lowe9f205f2007-09-16 16:25:50 +0000516
Linus Walleij3e418e22007-09-15 20:30:14 +00005172007-09-15 Linus Walleij <triad@df.lth.se>
518
519 * src/ptp.c: get cancellation of xfers working.
520 * src/libusb-glue.c: dito.
521 * src/libusb-glue.h: dito.
522 * src/libmtp.c: dito.
523
Linus Walleijf43558d2007-09-14 17:59:20 +00005242007-09-14 Linus Walleij <triad@df.lth.se>
525
526 * src/ptp.h: sync in upstream to get cancellation prototypes.
Linus Walleijbd3bf9e2007-09-14 19:31:54 +0000527 * src/libusb-glue.c: first try to implement cancellation.
Linus Walleij997d3ec2007-09-14 21:29:54 +0000528 * src/libmtp.c: dito. Bugfix to one of Marcus' realloc():s.
Linus Walleijf43558d2007-09-14 17:59:20 +0000529
Linus Walleij1e9a0332007-09-12 19:35:56 +00005302007-09-12 Marcus Meissner <meissner@suse.de>
531
532 * src/ptp-pack.c: sync to upstream, rewrote packing to use
533 a static array to be qsort():ed when reading in proplists.
534 * src/ptp.c: reflect changes.
535 * src/ptp.h: reflect changes.
536 * src/libmtp.c: reflect changes.
537
Linus Walleij71b8c0f2007-09-06 09:09:14 +00005382007-09-06 Linus Walleij <triad@df.lth.se>
539
540 * examples/hotplug.c: edit up into a udev ruleset that is
541 inexorably complicated but probably compatible with most
542 udev versions out there. Now please DON'T update udev
543 styles again!
544
Richard Low17cec172007-09-05 20:43:51 +00005452007-09-05 Richard Low <richard@wentnet.com>
546
547 * src/libmtp.c: album fixups
548
Linus Walleij50d47a52007-09-05 07:59:40 +00005492007-09-05 Linus Walleij <triad@df.lth.se>
550
551 * examples/hotplug.c: use old udev style by default, use new
552 if requested explicitly by a -U switch.
553
Linus Walleij6bf68b42007-09-03 22:50:02 +00005542007-09-04 Linus Walleij <triad@df.lth.se>
555
556 * src/libmtp.c: make sure we query recursively supplying each
557 storage ID in turn, so we spin over storages. Also check
558 what storage may be available to store a file, if the first
559 one fails, try the next!
560
Linus Walleija0b7d042007-08-31 23:57:31 +00005612007-09-01 Linus Walleij <triad@df.lth.se>
562
563 * src/ptp-pack.c: make the resulting MTP proplist sorted by
564 object ID.
Linus Walleij70ac9772007-09-01 18:59:28 +0000565 * hotplug.sh.in: explicitly call BASH instead of just sh. Warn
566 if script is not run as root.
Linus Walleija0b7d042007-08-31 23:57:31 +0000567
Linus Walleijf4592072007-08-29 10:19:25 +00005682007-08-29 Linus Walleij <triad@df.lth.se>
569
570 * examples/Makefile.am: move include define from AM_CFLAGS to
571 AM_CPPFLAGS (as it should be) bug found by Petar Petrov
572 <pesho.petrov@gmail.com>.
Linus Walleijb0ab5482007-08-29 21:08:54 +0000573 * src/libusb-glue.c: strange misleading message corrected. Fix
574 up the horrid interface passing back-and-forward and confusing.
575 * src/libusb-glue.h: dito.
576 * src/libmtp.c: rid interface references, that's a USB issue!
577 * src/libmtp.h.in: flag interface number in device struct as retired.
Linus Walleijf4592072007-08-29 10:19:25 +0000578
Linus Walleij1b87ea72007-08-28 07:53:09 +00005792007-08-28 Linus Walleij <triad@df.lth.se>
580
581 * src/libmtp.c: retire the horrid, broken, stream send facility that
582 does not work on any device since they all want to know the file
Linus Walleij8533bf72007-08-28 10:03:59 +0000583 size in advance. Add in some code to fall back on the recursive
584 metadata retrieveal if getting the whole long list fails.
Linus Walleij6d0cf972007-08-28 09:48:19 +0000585 * src/libusb-glue.c: tag all Sansas as having broken GetObjectPropList
Linus Walleijc4108242007-08-28 20:38:27 +0000586 when all tags for all objects are requested. Scan each INTERFACE
587 of the device for device descriptors.
Linus Walleij1b87ea72007-08-28 07:53:09 +0000588
Linus Walleijd3b78572007-08-24 21:28:24 +00005892007-08-24 Linus Walleij <triad@df.lth.se>
590
591 * src/libusb-glue.h: new device flag to strip all non-7bit chars from
592 filenames on some lame devices.
593 * src/libusb-glue.c: tag the Philips Shoqbox with this flag.
594 * src/libmtp.c: strip the non-7bit chars from filenames if that
595 flag is set.
596 * src/unicode.h: introduce a 7bit-strip helper function.
597 * src/unicode.c: dito.
598
Linus Walleij29559562007-08-22 21:38:04 +00005992007-08-22 Linus Walleij <triad@df.lth.se>
600
601 * src/libmtp.c: deal with setting of metadata sets for u16/u32:s that
602 are ranges or enums, rounding and twiddling if need be. This is
603 needed because some new devices (like the TrekStor Sweez,
604 has duration defined as a range: MIN 0, MAX 65535000, STEP 1
605 and Sandisk Sansa c240 has duration as range: MIN 0, MAX 2147483000,
606 STEP 1000) whereas old devices would just accept any value.
607
Richard Lowd47b9212007-08-16 21:14:23 +00006082007-08-16 Richard Low <richard@wentnet.com>
609
610 * src/ptp-pack.c: allow packing of NULL strings
611
rreardon21a3a9d2007-08-15 10:56:31 +00006122007-08-15 Robert Reardon <rreardon@monkshatch.vispa.com>
613
614 * src/libmtp.c: return device max values for representative
rreardon65b47322007-08-15 15:17:54 +0000615 samples.
rreardon21a3a9d2007-08-15 10:56:31 +0000616
Richard Low92cb2692007-08-15 09:35:23 +00006172007-08-15 Richard Low <richard@wentnet.com>
618
619 * src/libusb-glue.c: added Philips Shoqbox
620
Linus Walleij53c5f4e2007-08-13 08:27:58 +00006212007-08-13 Linus Walleij <triad@df.lth.se>
622
623 * src/ptp.c: sync to upstream.
624
Linus Walleijdb906232007-08-07 15:59:09 +00006252007-08-07 Linus Walleij <triad@df.lth.se>
626
627 * configure.ac: bump to 0.2.1.
628 * src/Makefile.am: interface to libmtp.so.6.0.1.
629 * Release libmtp 0.2.1!
630
Linus Walleijdbcc8242007-08-05 22:31:26 +00006312007-08-06 Linus Walleij <triad@df.lth.se>
632
Linus Walleije23000a2007-08-06 20:47:17 +0000633 * configure.ac: tag on the large file support compilation flag.
Linus Walleij07795772007-08-06 18:44:06 +0000634 * src/libmtp.c: smack up the data file transfer function so it
635 works again and *finally* should support 64bit sizes!
Linus Walleijd2778d12007-08-06 19:24:58 +0000636 Then wrapped the track sending function around the file
637 sending function so there is no more pointless code duplication
Linus Walleij05358382007-08-06 20:46:35 +0000638 giving rise to ever more bugs. Enable LFS, Large File Support so
639 we can handle 64bit files properly.
640 * examples/sendtr.c: shape up print-outs, LFS support.
Linus Walleijd2778d12007-08-06 19:24:58 +0000641 * examples/sendfile.c: dito.
Linus Walleij07795772007-08-06 18:44:06 +0000642
6432007-08-06 Linus Walleij <triad@df.lth.se>
644
Linus Walleijdbcc8242007-08-05 22:31:26 +0000645 * src/ptp.c: fixed a stray error print bug.
646 * src/libmtp.c: overhaul of all proplist setting to follow the same
647 design pattern. Probably fixed a few opd memory leaks along the road.
648
Richard Lowfd86bd12007-08-05 09:41:06 +00006492007-08-05 Richard Low <richard@wentnet.com>
650
651 * src/libmtp.c: send 64 bit filesize
652
Linus Walleijd9d28d52007-08-04 19:01:18 +00006532007-08-04 Linus Walleij <triad@df.lth.se>
654
655 * src/libmtp.c: fix up the 64bit filesize and tracksize support.
656 There were some bugs...
Linus Walleij529d08f2007-08-04 19:20:00 +0000657 * src/Makefile.am: tweak interface revision so that we produce
658 libmtp.so.6 now.
659 * configure.ac: bump library revision to 0.2.0.
Linus Walleij2f049902007-08-04 20:02:39 +0000660 * examples/hotplug.c: switch to use ATTR{} instead of SYSFS{}
Linus Walleijdbcc8242007-08-05 22:31:26 +0000661 * Release libmtp 0.2.0!
Linus Walleijd9d28d52007-08-04 19:01:18 +0000662
Richard Low25bf8002007-08-04 08:36:53 +00006632007-08-04 Richard Low <richard@wentnet.com>
664
665 * src/libusb-glue.c: add Sansa m240 (a different ID to before)
666 Give the Toshiba Gigabeat S
667 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL.
668
6692007-08-03 Marcus Meissner <meissner@suse.de>
Linus Walleij960ebb62007-08-03 21:38:34 +0000670
671 * m4/byteorder.m4: byteorder fixes.
672
Richard Lowcc265902007-07-30 20:14:12 +00006732007-07-30 Richard Low <richard@wentnet.com>
674
675 * src/ptp-pack.c: fix up array packing
676
Linus Walleijabf54752007-07-30 19:51:54 +00006772007-07-30 Linus Walleij <triad@df.lth.se>
678
679 * src/ptp-pack.c: try to get a uniform 64 bit
680 support, use some old macro code.
681
Richard Lowc3f5fc32007-07-29 09:40:50 +00006822007-07-29 Richard Low <richard@wentnet.com>
683
684 * src/libmtp.c: 64 bit filesize support for tracks
685 * src/ptp-pack.c: ditto
686 * src/ptp.h: ditto
687
Richard Low39a147a2007-07-27 20:18:01 +00006882007-07-27 Richard Low <richard@wentnet.com>
689
690 * src/libmtp.c: Some better NULL checks
691
Linus Walleijc51a4312007-07-27 06:28:39 +00006922007-07-27 Linus Walleij <triad@df.lth.se>
693
694 * examples/hotplug.c: changed subsystem from "usb_device"
695 to "usb". Presumably a change in the kernel some time ago.
696
Richard Lowbd14bf42007-07-21 11:25:11 +00006972007-07-21 Richard Low <richard@wentnet.com>
698
699 * src/libmtp.c: Correctly bail out of LIBMTP_Get_Storage
700
Linus Walleij5d533bb2007-07-17 21:48:57 +00007012007-07-17 Linus Walleij <triad@df.lth.se>
702
703 * examples/reset.c: Add a device reset program.
704 * src/libmtp.c: Add reset command.
705 * src/ptp.c: dito, and sync in upstream changes.
706 * src/ptp.h: dito, and sync in upstream changes.
707 * src/ptp-pack.c: sync in upstream changes.
708
Richard Low0fa83522007-07-17 20:05:08 +00007092007-07-17 Richard Low <richard@wentnet.com>
710
711 * src/libmtp.c: Added some more (paranoid) NULL checks
712
Richard Low8e8d9d42007-07-14 10:36:50 +00007132007-07-14 Richard Low <richard@wentnet.com>
714
715 * src/libmtp.c: Add a NULL check
716
7172007-07-13 Richard Low <richard@wentnet.com>
Richard Low14afeb72007-07-13 19:11:56 +0000718
719 * src/libusb-glue.c: add Disney MixMax
720
Linus Walleij9521e2b2007-07-10 21:50:42 +00007212007-07-11 Linus Walleij <triad@df.lth.se>
722
723 * src/libmtp.c: put in Tero's name in the preamble.
724 * src/libusb-glue.c: make the dump function sump out the zuper zecret
725 devize dezcriptorz in clear text hex.
726
Linus Walleij3e13dda2007-07-09 22:42:17 +00007272007-07-10 Linus Walleij <triad@df.lth.se>
728
Linus Walleijc51a4312007-07-27 06:28:39 +0000729 * examples/hotplug.c: force HAL OGG support on iriver devices.
730 They all have it! Also force for two other devices that does
731 this.
Linus Walleij3e13dda2007-07-09 22:42:17 +0000732
Linus Walleij2b218852007-07-07 20:16:36 +00007332007-07-07 Linus Walleij <triad@df.lth.se>
734
735 * src/libusb-glue.h: new flag for the case when getting the object
736 property list of all metadata for all objects is broken.
737 * src/libusb-glue.c: tentatively tag a Philips device with this flag.
738 * src/libmtp.c: fixed usage of returned pointers from realloc(),
739 introduce new flag.
740
tsaarnia3eb60a2007-07-06 17:41:30 +00007412007-07-05 Tero Saarni <tero.saarni@gmail.com>
742
743 * src/libmtp.c: update cache when manipulating objects instead of
744 always flushing the whole cache.
745
Linus Walleij338ade42007-07-03 20:44:08 +00007462007-07-03 Linus Walleij <triad@df.lth.se>
747
748 * src/libmtp.c: use the params->proplist metadata cache. Help
749 rid all flush_handles() you can in order to add even more to
750 the efficiency of the cache.
751
Linus Walleijf0bf4372007-07-01 21:47:38 +00007522007-07-01 Linus Walleij <triad@df.lth.se>
753
754 * src/ptp.c: sync to upstream gPhoto source.
755 * src/ptp.h: dito.
756 * src/ptp-pack.c: dito.
757 * src/libmtp.c: use the params->objectinfo object info cache to
758 speed things up considerably. This is exactly what libgphoto2
759 does so now we move closer to upstream. I believe this also
760 fixes quite a few memory leaks because we weren't freeing the
761 strings inside the objectinfo previously.
762
Linus Walleije60d56b2007-05-28 22:13:12 +00007632007-05-29 Linus Walleij <triad@df.lth.se>
764
765 * src/libmtp.c: use the set object prop list command to set album
766 props if available. Follow metadata set design pattern used for
767 tracks; check first if the object type can set name/artist/genre.
768
jefferaida9687e2007-10-16 16:44:15 +00007692007-05-24 Jeff Mitchell <kde-dev@emailgoeshere.com>
jefferaif28f2a12007-05-24 23:07:41 +0000770
Linus Walleije60d56b2007-05-28 22:13:12 +0000771 * hotplug.sh.in: Properly install the HAL FDI rules if
jefferaie3f1bba2007-05-24 23:27:13 +0000772 the user so chooses to when prompted.
773
jefferaida9687e2007-10-16 16:44:15 +00007742007-05-24 Jeff Mitchell <kde-dev@emailgoeshere.com>
jefferaie3f1bba2007-05-24 23:27:13 +0000775
Linus Walleije60d56b2007-05-28 22:13:12 +0000776 * examples/hotplug.c: Fix/update HAL output to conform
jefferaif28f2a12007-05-24 23:07:41 +0000777 to new specs. Fix whitespacing to be consistent.
778
Richard Low34a624a2007-05-17 12:32:35 +00007792007-05-17 Richard Low <richard@wentnet.com>
780
781 * src/libusb-glue.c: added Samsung YH-920
782
Linus Walleij99466e32007-05-11 21:42:53 +00007832007-05-11 Linus Walleij <triad@df.lth.se>
784
785 * examples/hotplug.c: output a usb.ids map if need be.
786 * sync-usbids.sh: script to assist in comparing our device
787 database to the linux-usb database so we can submit new
788 entries to it more easily. Please extend this until it
789 creates automated diff:s if you can!
790
Linus Walleij229b24b2007-05-09 22:10:55 +00007912007-05-10 Linus Walleij <triad@df.lth.se>
792
793 * src/libusb-glue.c: some new devices, some rewording etc.
794
Linus Walleij4fa9d5e2007-05-05 20:35:56 +00007952007-05-05 Linus Walleij <triad@df.lth.se>
796
797 * src/libusb-glue.h: removed the DUALMODE flag, it's pointless and
798 equal to the problem solved by the UNLOAD_DRIVER flag.
799 * src/libusb-glue.c: dito, move the only DUALMODE flag into an
Linus Walleij1327a852007-05-06 19:47:38 +0000800 UNLOAD_DRIVER flag. Added Archos Gmini.
Linus Walleij4fa9d5e2007-05-05 20:35:56 +0000801
Richard Low6711f442007-05-05 19:00:59 +00008022007-05-05 Richard Low <richard@wentnet.com>
803
804 * src/libusb-glue.c: added Philips PSA610
805 * src/libmtp.c: code to recursively get object handles for each
806 assoc.
Linus Walleij4fa9d5e2007-05-05 20:35:56 +0000807 * src/ptp.h: ditto
Richard Low6711f442007-05-05 19:00:59 +0000808
Richard Low1869d272007-04-28 13:55:17 +00008092007-04-28 Richard Low <richard@wentnet.com>
810
811 * src/libusb-glue.c: new device
812
Linus Walleijeccaae02007-04-26 08:19:03 +00008132007-04-26 Linus Walleij <triad@df.lth.se>
814
Linus Walleij4fa9d5e2007-05-05 20:35:56 +0000815 * src/libusb-glue.c: memory leak: dangling, unused pointer killed.
Linus Walleijeccaae02007-04-26 08:19:03 +0000816
Linus Walleijadce4a52007-04-23 07:28:11 +00008172007-04-23 Linus Walleij <triad@df.lth.se>
818
819 * src/libmtp.h.in: extend LIBMTP_album_t to include fields for
820 artist and genre. This is sort of required so we must change
821 the API to have it working properly.
822 * src/libmtp.c: dito. Reflect changes in implementation.
823
Linus Walleij953504f2007-04-18 19:01:11 +00008242007-04-18 Linus Walleij <triad@df.lth.se>
825
826 * src/ptp.c: sync to upstream gPhoto source.
827 * src/ptp.h: dito.
828
Richard Low3637e1a2007-04-17 21:25:10 +00008292007-04-17 Richard Low <richard@wentnet.com>
830
831 * src/libusb-glue.c: new device
832
Richard Low856f3452007-04-13 11:21:26 +00008332007-04-13 Richard Low <richard@wentnet.com>
834
835 * src/libusb-glue.c: new devices
836
Linus Walleijfd531632007-04-12 19:49:58 +00008372007-04-12 Linus Walleij <triad@df.lth.se>
838
839 * examples/hotplug.c: fix GOTO style in udev map.
840
Linus Walleije73f74a2007-04-02 08:51:35 +00008412007-04-02 Linus Walleij <triad@df.lth.se>
842
843 * examples/files.c: some WIN32 64bit prefix fixup.
844 * examples/tracks.c: dito.
845
tedbullockcd9f4992007-03-29 06:00:40 +00008462007-03-28 Ted Bullock <tbullock@canada.com>
847
Linus Walleije73f74a2007-04-02 08:51:35 +0000848 * examples/*.c: Print library version number on execution of examples.
849 * src/libmtp.h.in: New version number string to aid version echoing.
tedbullockcd9f4992007-03-29 06:00:40 +0000850
Linus Walleij3968f362007-03-26 19:50:05 +00008512007-03-26 Linus Walleij <triad@df.lth.se>
852
853 * configure.ac: bump version to 0.1.5, release 0.1.5!
854 * src/Makefile.am: bump lib interface revision to libmtp.so.5.2.1,
855 backwards compatible to libmtp.so.5.
856
Richard Low057ea772007-03-24 13:37:38 +00008572007-03-24 Richard Low <richard@wentnet.com>
858
859 * src/libusb-glue.c: fixed bug in zero read code
860
Linus Walleije7df6532007-03-23 08:20:06 +00008612007-03-23 Linus Walleij <triad@df.lth.se>
862
863 * src/libmtp.c: refactored MTP property list handling code to make
864 things simple. Removed the flag for MTP enhanced: there are devices
Linus Walleij3968f362007-03-26 19:50:05 +0000865 that will not work without MTP enhanced (for example the Samsung
866 YP-K5 will only support setting object property lists, not
867 individual object properties, leaving out parts of the MTP basic
868 subset), thus we are allowed to reverse-engineer and implement this
869 for interoperability. I also made the output from
870 LIBMTP_Dump_Device_Info() considerably more verbose, plotting out
871 the ranges and possible enumerated values of all object properties.
872 For example you can see that the secret values associated with
873 Audible.com property 0xda01 is an enumerated value that can be
874 2, 3 or 4 (etc).
Linus Walleije7df6532007-03-23 08:20:06 +0000875
Richard Low15731fe2007-03-22 20:27:20 +00008762007-03-22 Richard Low <richard@wentnet.com>
877
878 * src/ptp.c: PTP_OC_MTP_SetObjPropList implementation
879 * src/ptp.h: ditto
880 * src/libmtp.c: Use PTP_OC_MTP_SetObjPropList when updating track
881 metadata.
882
Richard Lowbf2675c2007-03-18 18:20:26 +00008832007-03-18 Richard Low <richard@wentnet.com>
884
885 * src/libusb-glue.c: new devices. Some of the Samsung players may
Richard Low6c8fea42007-03-18 19:11:52 +0000886 need DEVICE_FLAG_NO_ZERO_READS to be set - I only know the YP-K5
887 needs it.
Richard Lowbf2675c2007-03-18 18:20:26 +0000888
Linus Walleij2be40c72007-03-16 15:19:44 +00008892007-03-16 Linus Walleij <triad@df.lth.se>
890
891 * src/libusb-glue.h: introducing yet another device flag for the
892 irivers bugged firmwares, this is for the Alzheimer disease that
893 cause irivers to forget that OGG files are OGG files.
894 * src/libmtp.c: dito.
895 * src/libusb-glue.c: introduce this flag for all iriver devices.
896 * examples/pathutils.c: found a (small) bug.
897
Linus Walleijd1292842007-03-12 11:52:00 +00008982007-03-12 Linus Walleij <triad@df.lth.se>
899
900 * Makefile.am: cleanup patch from Rafael Laboissiere.
Linus Walleija4942fc2007-03-12 19:23:21 +0000901 * src/libusb-glue.c: refactored device detection code to
902 immediately test if the device is in the known devices list if it
903 does not feature a MTP device descriptor. This fixes the problem
904 of not being able to mix devices with proper descriptors and
905 non-detected devices.
Linus Walleijd1292842007-03-12 11:52:00 +0000906
Linus Walleijc2c96972007-03-07 08:12:31 +00009072007-03-07 Linus Walleij <triad@df.lth.se>
908
909 * src/libusb-glue.c: remove libgphoto2 functions that we
910 don't use.
Linus Walleij45a86372007-03-07 09:36:19 +0000911 * src/libusb-glue.h: export the free_mtpdevice_list() function,
912 new signature of find_usb_devices().
913 * src/libmtp.c: shrink code, pass as list of devices instead of
914 several huge arrays between libmtp.c and USB glue layer in
915 libusb-glue.c using the nifty list struct defined in libusb-glue.h.
Linus Walleijd24a7ab2007-03-07 21:48:43 +0000916 * Eventually release libmtp 0.1.4.
Linus Walleijc2c96972007-03-07 08:12:31 +0000917
Linus Walleijbfcb7922007-03-06 20:14:04 +00009182007-03-06 Linus Walleij <triad@df.lth.se>
919
920 * src/libusb-glue.c: rewrote one more function to be
921 non-recursive, perhaps I found the remaining bug, just
922 cannot see that right now, will test tomorrow.
923
Linus Walleijf27d1cd2007-03-05 14:23:00 +00009242007-03-05 Linus Walleij <triad@df.lth.se>
925
926 * src/libmtp.c: rewrite recursive function to linear.
927 * src/libusb-glue.h: create a wrapper type for the
928 device list instead of abusing the libusb device "next"
929 field in our code.
930 * src/libusb-glue.c: rewrite all recursive functions to
931 linear, use wrapper objects, don't copy the libusb device
932 struct, instead just store a pointer to it. This magically
933 solved a bug...
934
Linus Walleij82265222007-03-04 19:47:08 +00009352007-03-04 Linus Walleij <triad@df.lth.se>
936
937 * src/Makefile.am: bump library interface to libmtp.so.5.2.0
938 backwards compatible with any libmtp.so.5 interface, for
939 imminent libmtp 0.1.4 release.
940
tedbullock848009b2007-03-03 23:20:12 +00009412007-03-03 Ted Bullock <tbullock@canada.com>
tedbullock36f2afb2007-03-03 22:16:44 +0000942
943 * src/libusb-glue.c: Don't echo warnings about reading a single
Linus Walleij82265222007-03-04 19:47:08 +0000944 extra byte on devices in which DEVICE_FLAG_NO_ZERO_READS has
945 been set
tedbullock848009b2007-03-03 23:20:12 +0000946 * src/libmtp.c: New API function to retrieve the number of devices
Linus Walleij82265222007-03-04 19:47:08 +0000947 in a list of connected devices
tedbullock848009b2007-03-03 23:20:12 +0000948 * src/libmtp.h: New API function to retrieve the number of devices
Linus Walleij82265222007-03-04 19:47:08 +0000949 in a list of connected devices
tedbullock848009b2007-03-03 23:20:12 +0000950 * examples/detect.c: Use new API function to count number of devices
Linus Walleij82265222007-03-04 19:47:08 +0000951 that were detected
tedbullock36f2afb2007-03-03 22:16:44 +0000952
tedbullock848009b2007-03-03 23:20:12 +00009532007-03-03 Linus Walleij <triad@df.lth.se>
Linus Walleij049f50c2007-03-03 20:30:43 +0000954
955 * src/libusb-glue.h: Tiresome ramblings to explain exactly what
tedbullock848009b2007-03-03 23:20:12 +0000956 the (now renamed) device flag DEVICE_FLAG_NO_ZERO_READS really
Linus Walleij049f50c2007-03-03 20:30:43 +0000957 means.
958 * src/libusb-glue.c: Renamed flag. Indent code :-) Reading the code
959 and being impressed by our ability to iron out the root cause
Linus Walleij4cec9872007-03-03 21:00:53 +0000960 of this kinda weird thing... Fix a few compile warnings.
Linus Walleij049f50c2007-03-03 20:30:43 +0000961
Richard Low4fd59d62007-03-03 16:34:37 +00009622007-03-03 Richard Low <richard@wentnet.com>
963
964 * src/libusb-glue.c: (hopefully) fixed iRiver read errors. Enabled
965 get object prop lists for Clix since it appears to work.
966 * src/libusb-glue.h: ditto
967 * src/ptp.h: ditto
968
Linus Walleij8a5b8852007-02-28 14:25:39 +00009692007-02-28 Linus Walleij <triad@df.lth.se>
970
971 * src/ptp.h: Upstream accepted our patch so synced it in.
972
Linus Walleij07fde342007-02-27 06:09:46 +00009732007-02-27 Linus Walleij <triad@df.lth.se>
974
975 * src/ptp.c: Synced in upstream version which removes the
976 offending line.
Linus Walleij56b037f2007-02-27 08:04:01 +0000977 * src/libmtp.c: replaces strcmp() for strcasecmp() in folder
978 detection since Windows and some devices (such as iRivers)
979 ignore case and user capital letters for default folders.
Linus Walleij07fde342007-02-27 06:09:46 +0000980
tedbullock6c060952007-02-26 19:07:23 +00009812007-02-22 Ted Bullock <tbullock@canada.com>
982
Linus Walleij07fde342007-02-27 06:09:46 +0000983 * src/ptp.c: Comment out line in ptp_exit_fd_handler that was
984 closing a file descriptor. This is not the responsibility of
985 the PTP Layer. Defect and solution found by Rob Reardon
tedbullock6c060952007-02-26 19:07:23 +0000986
Linus Walleij304433d2007-02-26 08:02:47 +00009872007-02-26 Linus Walleij <triad@df.lth.se>
988
Linus Walleij07fde342007-02-27 06:09:46 +0000989 * src/libmtp.c: Implement a check for PTP_OC_MTP_SetObjectPropValue
990 in the LIBMTP_Update_Track_Metadata() function, there are
991 obviously devices that do not support this, but only
992 PTP_OC_MTP_SetObjPropList instead (such as the Samsung YH 925-GS),
993 but we haven't implemented that yet. Problems are
Linus Walleij304433d2007-02-26 08:02:47 +0000994 atleast reported correctly now.
995
Richard Low4eb01122007-02-24 10:11:32 +00009962007-02-24 Richard Low <richard@wentnet.com>
997
998 * src/libusb-glue.c: Fix incorrect transfer sizes causing zero
999 write issues
1000
Linus Walleij039d1dd2007-02-23 22:34:07 +000010012007-02-23 Linus Walleij <triad@df.lth.se>
1002
1003 * src/libmtp.c: Undeprecate getting first device code.
1004
Richard Low0f794762007-02-23 22:06:27 +000010052007-02-23 Richard Low <richard@wentnet.com>
1006
1007 * src/libmtp.c: Fix crash when no devices connected
1008
tedbullock2b45f2e2007-02-23 20:16:37 +000010092007-02-23 Ted Bullock <tbullock@canada.com>
1010
1011 * examples/detect.c: Stub out probe functionality
Richard Low0f794762007-02-23 22:06:27 +00001012 * src/libusb-glue.c: Remove old uni-device cruft code
1013 * src/libusb-glue.h: Remove old uni-device cruft code
tedbullock433d2172007-02-23 22:39:12 +00001014 * Replace LIBMTP_ERROR_N0_DEVICE_ATTACHED with
1015 LIBMTP_ERROR_NO_DEVICE_ATTACHED across entire project
tedbullock2b45f2e2007-02-23 20:16:37 +00001016
tedbullock20eb8202007-02-23 00:33:36 +000010172007-02-22 Ted Bullock <tbullock@canada.com>
1018
1019 * examples/albums.c: Updated to use new multi device code
tedbullock51649202007-02-23 03:04:33 +00001020 * examples/tracks.c: Updated to use new multi device code
1021 * examples/files.c: Updated to use new multi device code
tedbullock20eb8202007-02-23 00:33:36 +00001022
tedbullocke7713642007-02-18 23:10:09 +000010232007-02-18 Ted Bullock <tbullock@canada.com>
1024
1025 * src/libmtp.c: Altered the function LIBMTP_Get_First_Device
Linus Walleij039d1dd2007-02-23 22:34:07 +00001026 to wrap around the multi device API. Also added deprecation
1027 warnings to avoid using this function
tedbullocke7713642007-02-18 23:10:09 +00001028
Richard Lowd284f072007-02-17 08:52:41 +000010292007-02-17 Richard Low <richard@wentnet.com>
1030
Richard Low02724f62007-02-17 09:47:26 +00001031 * src/libusb-glue.c: Debug output fixes and read/write sizes changed
Richard Low507e7fe2007-02-17 09:04:42 +00001032 * src/libmtp.c: memset params to 0 to avoid freeing unalloced
1033 memory
Richard Low02724f62007-02-17 09:47:26 +00001034 * src/ptp.h: read/write sizes changed
Richard Lowd284f072007-02-17 08:52:41 +00001035
rreardonbc730092007-02-15 14:32:20 +000010362007-02-15 Robert Reardon <rreardon@monkshatch.vispa.com>
rreardon34511b12007-02-15 14:27:56 +00001037
1038 * src/libmtp.c: Fix a segfault in new error handling code.
1039
Linus Walleij68b19c02007-02-15 11:50:37 +000010402007-02-15 Linus Walleij <triad@df.lth.se>
1041
1042 * src/libmtp.c: Adding some sanity checks to error stack code.
Linus Walleij3d78c4c2007-02-15 12:18:12 +00001043 * examples/newplaylist.c: LGPL boilerplate, crediting Robert.
1044 * examples/playlists.c: LGPL boilerplate.
1045 * examples/sendfile.c: LGPL boilerplate, crediting me and Chris.
1046 * examples/sendtr.c: LGPL boilerplate, crediting me, Chris,
1047 Shaun, Enrique.
1048 * examples/thumb.c: LGPL boilerplate, crediting Robert.
1049 * examples/tracks.c: LGPL boilerplate.
1050 * examples/trexist.c: LGPL boilerplate, crediting noone.
Linus Walleij68b19c02007-02-15 11:50:37 +00001051
tedbullock69a445b2007-02-15 07:41:04 +000010522007-02-15 Ted Bullock <tbullock@canada.com>
1053
1054 * examples/folders.c: Updated to use new multi device code
1055 * src/libmtp.c: Fixed potential memory leaks
Linus Walleij57c2eff2007-02-15 12:02:04 +00001056 * src/libusb-glue.c: Fixed potential memory leaks and fixed device
1057 release segfault for multiple devices
tedbullock69a445b2007-02-15 07:41:04 +00001058
tedbullock0f033cb2007-02-14 20:56:54 +000010592007-02-14 Ted Bullock <tbullock@canada.com>
1060
Linus Walleij57c2eff2007-02-15 12:02:04 +00001061 * src/libusb-glue.c: Wrote three new recursive functions to avoid
1062 extreme levels of multiple indirection and to clean the code up
1063 a bit for multiple devices.
1064 * examples/detect.c: Adjusted function calls to use new multiple
1065 device code.
tedbullock0f033cb2007-02-14 20:56:54 +00001066 * src/libmtp.h.in: Added prototype for LIBMTP_Release_Device_List
1067
Linus Walleij2d3f7b82007-02-14 09:24:20 +000010682007-02-12 Ted Bullock <tbullock@canada.com>
1069
1070 * src/libmtp.c: Two new functions (create_usb_mtp_devices and
Linus Walleij57c2eff2007-02-15 12:02:04 +00001071 LIBMTP_Get_Connected_Devices) to add support for multiple devices
1072 to client applications
Linus Walleij2d3f7b82007-02-14 09:24:20 +00001073 * src/libmtp.h: Added LIBMTP_Get_Connected_Devices as a publicly
Linus Walleij57c2eff2007-02-15 12:02:04 +00001074 accessible function
Linus Walleij2d3f7b82007-02-14 09:24:20 +00001075 *libusb-glue.c: Renamed connect_mtp_devices to find_usb_devices
1076 *libusb-glue.h: Renamed connect_mtp_devices to find_usb_devices
1077
Linus Walleij2a1e3a42007-02-12 08:18:31 +000010782007-02-09 Ted Bullock <tbullock@canada.com>
1079
1080 * src/libusb-glue.c: Addressed a number of potential memory leaks in
Linus Walleij57c2eff2007-02-15 12:02:04 +00001081 the new multiple device code
Linus Walleij2a1e3a42007-02-12 08:18:31 +00001082
Linus Walleij7b7a0e22007-02-05 18:22:27 +000010832007-02-05 Linus Walleij <triad@df.lth.se>
1084
1085 * src/libmtp.h.in: LGPL boilerplate.
1086 * src/libusb-glue.h: LGPL boilerplate.
1087 * src/unicode.h: LGPL boilerplate.
1088 * src/util.h: LGPL boilerplate.
Linus Walleij543badf2007-02-05 19:07:38 +00001089 * examples/albumart.c: LGPL boilerplate, crediting Andy.
1090 * examples/pathutils.h: LGPL boilerplate, crediting Chris.
1091 * examples/pathutils.c: LGPL boilerplate, crediting me and Chris.
1092 * examples/common.h: LGPL boilerplate.
1093 * examples/albums.c: LGPL boilerplate, crediting Chris.
1094 * examples/connect.c: LGPL boilerplate, crediting Chris.
1095 * examples/delfile.c: LGPL boilerplate, crediting me and Chris.
1096 * examples/detect.c: LGPL boilerplate.
1097 * examples/emptyfolders.c: LGPL boilerplate, crediting Andy.
1098 * examples/files.c: LGPL boilerplate.
1099 * examples/folders.c: LGPL boilerplate.
1100 * examples/format.c: LGPL boilerplate.
1101 * examples/getfile.c: LGPL boilerplate, crediting me and Chris.
1102 * examples/getplaylist.c: LGPL boilerplate.
1103 * examples/hotplug.c: LGPL boilerplate, crediting me and Marcus.
1104 * examples/newfolder.c: LGPL boilerplate, crediting me and Chris.
Linus Walleij7b7a0e22007-02-05 18:22:27 +00001105
Linus Walleija8a19cc2007-02-02 22:13:17 +000011062007-02-02 Linus Walleij <triad@df.lth.se>
1107
1108 * src/ptp.c: sync upstream.
1109 * src/ptp.h: dito.
1110 * src/ptp-pack.c: dito.
1111 * src/libmtp.c: make changes necessary to handle
1112 the new iconv(3) code in ptp-pack.c. People will have to
Linus Walleij073c4172007-02-02 22:26:33 +00001113 use recent stdlibc, glibc or libiconv. Also call new memory
Linus Walleij2f45d222007-02-02 22:47:39 +00001114 clean-up functions. Fix LGPL boilerplate text.
1115 * src/unicode.c: Fix LGPL boilerplate text.
1116 * src/utils.c: Fix LGPL boilerplate text.
1117 * src/libusb-glue.c: Fix LGPL boilerplate text.
Linus Walleija8a19cc2007-02-02 22:13:17 +00001118
Linus Walleij550d6d52007-01-24 14:32:51 +000011192007-01-24 Ted Bullock <tbullock@canada.com>
1120
1121 * src/libusb-glue.c: new function to retrieve multiple device
1122 instances.
1123 * src/libusb-glue.h: dito.
1124 * src/libmtp.h.in: new error codes.
1125
Linus Walleij070e9b42007-01-22 08:49:28 +000011262007-01-22 Linus Walleij <triad@df.lth.se>
1127
1128 * examples/albumart.c: use the new errostack.
1129 * examples/delfile.c: dito.
1130 * examples/detect.c: dito.
1131 * examples/emptyfolders.c: dito.
1132 * examples/format.c: dito.
1133 * examples/getfile.c: dito.
1134 * examples/getplaylist.c: dito.
1135 * examples/newfolder.c: dito.
1136 * examples/newplaylist.c: dito.
1137 * examples/playlists.c: dito.
1138 * examples/sendfile.c: dito.
1139 * examples/sendtr.c: dito.
1140 * examples/thumb.c: dito.
1141 * src/libmtp.c: add some errors to the stack so we can
1142 see how it's to be used. (Just a first try...)
Linus Walleij552ba322007-01-22 11:49:59 +00001143 * src/libusb-glue.c: move the LIBMTP_Get_Supported_Devices()
1144 function into this file cause it only return USB devices
1145 anyway and could be renamed LIBMTP_Get_Supported_USB_Devices()
1146 (but let's not do that renaming since it would break the API).
1147 For now let's understand this is a USB-only function by
1148 simply putting it in the libusb-glue.c file.
Linus Walleij070e9b42007-01-22 08:49:28 +00001149
11502007-01-22 Ted Bullock <tbullock@canada.com>
1151
1152 * src/libusb-glue.c: first hack at creating an interface
1153 to retrieve multiple devices.
1154 * src/libmtp.h.in: new error codes related to multiple devices.
1155
Richard Low7059ed42007-01-21 09:33:34 +000011562007-01-21 Richard Low <richard@wentnet.com>
1157
1158 * src/libusb-glue.c: more new devices
1159
Linus Walleij2715c442007-01-20 22:35:29 +000011602007-01-20 Linus Walleij <triad@df.lth.se>
1161
1162 * src/libmtp.h.in: error stack handling like in libnjb.
1163 just bare bones implementation as of now but the idea
1164 should be clearly visible. TODO: add a plethora of
1165 errors and adjust examples to make use of the error
1166 stack.
1167 * src/libmtp.c: dito.
1168
Richard Lowa98d0542007-01-20 12:31:07 +000011692007-01-20 Richard Low <richard@wentnet.com>
1170
1171 * src/libusb-glue.c: new device 'Philips PSA235'
1172
Linus Walleij85a4c032007-01-16 20:42:18 +000011732007-01-16 Linus Walleij <triad@df.lth.se>
1174
1175 * configure.ac: bump and release 0.1.3.
1176 * src/Makefile.am: bump interface REVISION. Nothing changed
1177 externally really.
1178
Linus Walleijd85d2bb2007-01-11 21:32:48 +000011792007-01-11 Linus Walleij <triad@df.lth.se>
1180
1181 * src/libmtp.sym: updated symbol table for mingw32 but does
1182 anyone use this? Also I believe one could auto-generate
1183 this some way, just haven't figured out how... Perhaps with
1184 a funky script that massage libmtp.h if nothing else.
1185
Richard Low4df32f82007-01-11 20:04:39 +000011862007-01-11 Richard Low <richard@wentnet.com>
1187
1188 * src/libusb-glue.c: a zero read fix
1189 * src/libmtp.c: fix spelling mistake
1190
Linus Walleijc49c6372007-01-09 00:18:51 +000011912007-01-09 Linus Walleij <triad@df.lth.se>
1192
1193 * src/libusb-glue.c: repair callbacks, structure the code just
1194 a little bit.
1195 * src/libmtp.c: don't assign values to writes or reads, use the
1196 PTP transport intrinsics instead.
1197
Linus Walleij15af8532007-01-07 12:45:20 +000011982007-01-07 Orson Teodoro <orsonteodoro@yahoo.com>
1199
1200 * src/ptp.h: Encoding profile.
1201 * src/ptp.c: Dito.
1202
Linus Walleij58b62792007-01-07 12:38:59 +000012032006-01-07 Linus Walleij <triad@df.lth.se>
1204
1205 * src/libusb-glue.c: (re)introduce de-halting of endpoints
1206 as this is needed by VMWare emulation. Must check whether
Linus Walleijb97379b2007-01-07 12:42:20 +00001207 this causes problems for other archs! Problem was reported
1208 by Orson Teodoro under i686 Gentoo, with a suggested patch.
Linus Walleij58b62792007-01-07 12:38:59 +00001209
Linus Walleija0323272007-01-07 12:21:30 +000012102006-01-07 Marcus Meissner <meissner@suse.de>
1211
1212 * src/ptp.c: sync to upstream libgphoto2.
1213 * src/ptp.h: dito.
1214 * src/ptp-pack.c: dito.
1215 * libusb-glue.c: fixes to move low-level functions
1216 out of ptp.c and into this libmtp-specific portion.
1217 libgphoto2 has been similarly altered to use a usb.c
1218 file for the low-level stuff. (This was a long needed
1219 split anyway.)
1220
Linus Walleij58b62792007-01-07 12:38:59 +000012212007-01-03 Richard Low <richard@wentnet.com>
Richard Low68f45882007-01-03 10:08:31 +00001222
1223 * src/libusb-glue.c: fix zero write bug
Richard Lowef05b892007-01-03 21:18:56 +00001224 * src/ptp.c: ditto
Richard Low68f45882007-01-03 10:08:31 +00001225
Linus Walleij99ed83c2007-01-02 18:46:02 +000012262007-01-02 Linus Walleij <triad@df.lth.se>
1227
1228 * src/libusb-glue.c: fix up comments, remove things
1229 refering to stuff we don't have.
1230
Richard Lowb89ea942007-01-02 11:47:19 +000012312007-01-02 Richard Low <richard@wentnet.com>
1232
1233 * src/libmtp.c: another try at split headers/packet sizes
1234 * src/ptp.c: ditto
1235 * src/libusb-glue.c: ditto
1236
Linus Walleijc70a6df2007-01-01 22:19:08 +000012372007-01-01 Linus Walleij <triad@df.lth.se>
1238
1239 * src/libmtp.c: move default setting of split headers
1240 off to ptp.c open session.
1241 * src/ptp.c: dito.
1242
Richard Low021421e2007-01-01 18:08:57 +000012432007-01-01 Richard Low <richard@wentnet.com>
1244
1245 * src/libmtp.c: split headers/packet size fix
1246 * src/ptp.c: ditto
1247 * src/ptp.h: ditto
1248 * src/libusb-glue.c: ditto
1249
Linus Walleijfa2d1d12007-01-01 17:08:13 +000012502007-01-01 Orson Teodoro <orsonteodoro@yahoo.com>
1251
1252 * src/ptp.h: changed some WMDRMND def codes to AAVT def codes.
1253 addition of AAVT error codes.
1254 * src/ptp.c: changes to reflect modifications done in ptp.h
1255
Linus Walleija5ab8c42006-12-31 09:25:36 +000012562006-12-31 Linus Walleij <triad@df.lth.se>
1257
1258 * configure.ac: bump to 0.1.2.
1259 * src/Makefile.am: bump interface revision. (Compatible.)
1260 * RELEASE 0.1.2.
1261
Linus Walleij02ee8802006-12-30 17:27:58 +000012622006-12-30 Linus Walleij <triad@df.lth.se>
1263
1264 * examples/pathutils.c: reflect new filetypes.
1265 * examples/sendtr.c: dito.
1266
Linus Walleij5fb47132006-12-30 15:35:48 +000012672006-12-30 Orson Teodoro <orsonteodoro@yahoo.com>
1268
1269 * src/ptp.h: added WMDRMPD, WMDRMND, WMPPD, WPDWCN extension
1270 codes. added more format object codes flac, m4a, 3gp, aac,
1271 xml, xls, ppt, etc. 0x9101-0x910B identfiers are infixed
1272 with WMDRMPD. Added more object properties codes (0xDCD3-0xDD72).
1273 Added more device property codes.
1274 Changed PTP_OFC_MTP_WindowsImageFormat to 0xb881 reflect spec.
1275 * src/ptp.c: added changes to reflect new extensions, object
1276 codes, device property codes.
1277 * src/libmtp.c: modified mp4 to reflect it is a container format
1278 not a codec. Added more descriptions in init_filemap(). mp4
1279 container format is ambiguous in
1280 LIBMTP_Send_File_From_File_Descriptor(). Audio? video? both?.
1281 mp4 searched in video by default. Added comments about this.
1282 Added support for the new format object types.
1283 * src/libmtp.h.in: added constants to reflect changes to
1284 init_filemap().
1285
Richard Lowedd61832006-12-30 12:38:18 +000012862006-12-30 Richard Low <richard@wentnet.com>
1287
1288 * src/libusb-glue.c: fixed bug in debug printing
1289
Richard Lowa6c924c2006-12-29 17:44:28 +000012902006-12-29 Richard Low <richard@wentnet.com>
1291
1292 * src/libmtp.c: Made abstract list creation to be more
1293 WMP like
1294 * src/libusb-glue.c: added Philips GoGear SA9200
Richard Lowa679b1c2006-12-29 20:08:14 +00001295 * src/ptp-pack.c: fixed packing bug in ptp_pack_OI
Richard Lowa6c924c2006-12-29 17:44:28 +00001296
Linus Walleij784ac3f2006-12-29 10:36:51 +000012972006-12-29 Marcus Meissner <meissner@suse.de>
1298
1299 * src/ptp.h: API changes for libgphoto2 to use the file
1300 retrieveal functions.
1301 * src/ptp.c: dito.
1302 * src/libusb-glue.c: changes in libmtp reflecting the new
1303 API for libgphoto2.
1304
Linus Walleij8609af32006-12-28 21:25:17 +000013052006-12-28 Linus Walleij <triad@df.lth.se>
1306
Linus Walleije2e21182006-12-28 22:36:59 +00001307 * configure.ac: making older autotools happy. Bump to 0.1.1.
Linus Walleij3a3d24d2006-12-28 22:35:58 +00001308 * src/Makefile.am: bump interface for release, also autotools.
1309 * RELEASE libmtp 0.1.1.
Linus Walleij8609af32006-12-28 21:25:17 +00001310
Linus Walleijd6735f72006-12-19 13:38:29 +000013112006-12-19 Matthew Wilcox <matthew@wil.cx>
1312
1313 * src/ptp.c: fix a (serious) short file bug.
1314
Richard Lowaf20b5d2006-12-17 18:00:59 +000013152006-12-17 Richard Low <richard@wentnet.com>
1316
1317 * src/libmtp.c: don't bail out on failures when setting
1318 metadata.
1319
Linus Walleij037a1252006-12-16 20:36:52 +000013202006-12-16 Linus Walleij <triad@df.lth.se>
1321
1322 * src/ptp.c: sync to upstream.
1323 * src/ptp.h: dito.
1324 * src/ptp-pack.c: dito.
1325
Linus Walleijf8491912006-12-15 10:23:30 +000013262006-12-15 Linus Walleij <triad@df.lth.se>
1327
1328 * src/libmtp.h.in: make the format function take a storage as
1329 parameter. Add comments to device storage.
1330 * src/libmtp.c: dito, fix up some code and docs.
1331 * examples/format.c: make the format command comply with
1332 the new API.
1333
Linus Walleije1ac07e2006-12-14 19:38:59 +000013342006-12-14 Linus Walleij <triad@df.lth.se>
1335
1336 * src/libmtp.c: make get_first_storage_freespace() always query
1337 the first storage when the space is requested. And some other
1338 janitorial stuff.
1339
Linus Walleijb01d18b2006-12-13 12:49:15 +000013402006-12-13 Linus Walleij <triad@df.lth.se>
1341
1342 * src/libusb-glue.c: one more device.
1343 * examples/detect.c: compilation warnings fixed.
1344
rreardon3d583062006-12-13 10:10:27 +000013452006-12-13 Robert Reardon <rreardon@monkshatch.vispa.com>
1346
1347 * src/ptp.c: add 0xD901 flag as BuyNow property of objects.
1348 * src/ptp.h: ditto.
1349
Linus Walleijcd849362006-12-13 12:37:58 +000013502006-12-12 Daniel Williams <danielw@iinet.net.au>
Linus Walleij9e1b0812006-12-12 19:22:02 +00001351
1352 * src/libmtp.h.in: revamped storage API.
1353 * src/libmtp.c: dito.
1354 * examples/detect.c: dito.
1355
rreardon73d02c92006-12-12 16:45:30 +000013562006-12-12 Robert Reardon <rreardon@monkshatch.vispa.com>
rreardond2ddb632006-12-12 12:13:21 +00001357
1358 * src/libmtp.c: Send_Representative_Sample() updated to
1359 set image height and width, or audio duration and size.
1360
Linus Walleijd0f67702006-12-07 09:56:46 +000013612006-12-07 Linus Walleij <triad@df.lth.se>
1362
Linus Walleija05b9802006-12-08 08:50:30 +00001363 * src/libmtp.h.in: support firmware object type. (Dangerous.)
1364 * src/libmtp.c: dito.
1365
13662006-12-07 Linus Walleij <triad@df.lth.se>
1367
Linus Walleijd0f67702006-12-07 09:56:46 +00001368 * src/libmtp.c: default text folder detection (used in Samsung
1369 Yepp T9) also add a few "My Foo" folder strings, remove the
1370 "remaining directories" kludge.
1371 * src/libmtp.h.in: default text folder.
1372
Linus Walleijf1b02f22006-12-06 09:03:23 +000013732006-12-06 Linus Walleij <triad@df.lth.se>
1374
1375 * src/libmtp.h.in: extend the respresentative sample API a bit.
1376 * src/libmtp.c: dito.
1377 * examples/albumart.c: free memory after use.
1378 * examples/thumb.c: dito.
Linus Walleij8a08c212006-12-06 20:12:30 +00001379 * RELEASE this as libmtp 0.1.0!
Linus Walleijf1b02f22006-12-06 09:03:23 +00001380
Linus Walleijfdef4ae2006-12-05 16:15:51 +000013812006-12-04 Linus Walleij <triad@df.lth.se>
1382
1383 * src/ptp.c: enable split headers on sending object lists again.
1384
13852006-12-04 Robert Reardon <rreardon@monkshatch.vispa.com>
rreardond11473f2006-12-05 10:18:46 +00001386
1387 * src/libmtp.c: abstract Send_Representative_Sample() so
1388 it can send samples for any format that supports it
1389 * src/libmtp.h.in: same as above
1390 * examples/albumart.c: altered to use new abstract function above
1391 * example/thumb.c: sample program to upload thumbnails
1392 * example/Makefile.am: add sample thumbnail program
1393
Linus Walleijbdfaac22006-12-03 22:32:19 +000013942006-12-03 Linus Walleij <triad@df.lth.se>
1395
1396 * src/libmtp.c: check space on disk before sending
1397 tracks or files.
Linus Walleij7e3f2762006-12-03 22:52:05 +00001398 * src/libmtp.h.in: refactor LIBMTP_Send_Album_Art()
1399 into LIBMTP_Send_Representative_Sample().
1400 * src/libmtp.c: dito.
1401 * examples/albumart.c: dito.
Linus Walleijbdfaac22006-12-03 22:32:19 +00001402
Linus Walleijfa3fbe32006-12-02 20:47:32 +000014032006-12-02 Marcus Meissner <meissner@suse.de>
1404
1405 * examples/Makefile.am: make sure symlinks really end
1406 up in the correct dir.
1407
Linus Walleij6eab3b32006-11-30 22:58:21 +000014082006-11-30 Linus Walleij <triad@df.lth.se>
1409
1410 * src/ptp.c: make Matthews patch thread-safe and fix it
1411 so it will handle more than one surplus packet.
1412 * src/ptp.h: dito.
1413
Richard Lowab0d22d2006-11-30 22:17:49 +000014142006-11-30 Richard Low <richard@wentent.com>
1415
1416 * src/libmtp.c: memset PTPObjectInfo structs to 0
1417
Linus Walleij4bf38dd2006-11-30 21:27:29 +000014182006-11-30 Matthew Wilcox <matthew@wil.cx>
1419
1420 * src/ptp.c: on some devices, surplus packet data is
1421 sometimes returned during read, i.e. a header of the
1422 next package is typically attacked to the incoming
1423 data, as if someone was sending several packets at
1424 once. If this happens we buffer the surplus packet.
Linus Walleijef1e6352006-11-30 22:07:16 +00001425 * src/libusb-glue.c: revert my own mistakes by making
1426 them Windows-only.
Linus Walleij4bf38dd2006-11-30 21:27:29 +00001427
Linus Walleij9901e222006-11-30 12:28:19 +000014282006-11-30 Linus Walleij <triad@df.lth.se>
1429
Linus Walleij2978f1a2006-11-30 14:00:26 +00001430 * configure.ac: this *is* gonna be libmtp 0.1.0!
1431 * src/Makefile.am: age interface to 4-0-0 to indicate that
1432 intefaces have been removed.
Linus Walleij9901e222006-11-30 12:28:19 +00001433 * src/libmtp.h.in: removed external object interface.
1434 * src/libmtp.c: dito. Made all object manipulation functions
1435 static.
1436
Richard Lowc7d48d22006-11-29 18:24:55 +000014372006-11-29 Richard Low <richard@wentnet.com>
1438
1439 * src/libusb-glue.c: added new devices
1440
Linus Walleij7beba572006-11-29 08:56:12 +000014412006-11-29 Linus Walleij <triad@df.lth.se>
1442
1443 * src/libusb-glue.c: remove some pointless #include <>
1444 clutter, call usb_set_configuration() as needed by
1445 Windows.
1446 * src/libmtp.c: various fixups to enable use of Windows
1447 <io.h> include file.
1448 * README.windows.txt: added a quick porting guide for
1449 MSVC by Farooq Zaman.
1450
Linus Walleijcf42f452006-11-28 08:32:49 +000014512006-11-28 Linus Walleij <triad@df.lth.se>
1452
1453 * src/libmtp.h.in: removed filetype mapping API. We can handle
1454 everything inside of libmtp now so no need for this.
1455 * src/libmtp.c: dito.
1456
Linus Walleij72e9c2b2006-11-28 08:14:00 +000014572006-11-27 Linus Walleij <triad@df.lth.se>
Linus Walleij64ad9ae2006-11-27 11:23:26 +00001458
1459 * examples/files.c: unsigned int sized printout.
1460 * examples/tracks.c: sort of the same.
Linus Walleij72e9c2b2006-11-28 08:14:00 +00001461 * Makefile.am: HAL style map output by default.
Linus Walleij64ad9ae2006-11-27 11:23:26 +00001462
Richard Low6c0a6ce2006-11-26 10:42:08 +000014632006-11-26 Richard Low <richard@wentnet.com>
Linus Walleijb7426d12006-11-25 23:19:11 +00001464
Richard Low6c0a6ce2006-11-26 10:42:08 +00001465 * src/libmtp.c: object handles for proplists
1466 * src/ptp-pack.c: ditto
1467 * src/ptp.c: ditto
1468 * src/ptp.h: ditto
1469
Linus Walleijf73de152006-11-25 21:44:44 +000014702006-11-25 Marcus Meissner <marcus@jet.franken.de>
1471
1472 * examples/hotplug.c: adding HAL style XML output for
1473 the devices.
1474 * examples/Makefile.am: fixing a bug in the automake
1475 file (pathutils.h missing!)
1476 * Makefile.am: fix the problem with re-making sources
1477 (you had to run ./autogen.sh before!)
1478
Linus Walleijfe677ac2006-11-23 13:35:00 +000014792006-11-23 Linus Walleij <triad@df.lth.se>
1480
1481 * src/libusb-glue.h: add a new bug flag for devices that
1482 have broken PTP_OC_MTP_GetObjPropList implementations.
1483 * src/libusb-glue.c: state that all iRivers have this problem.
1484 * src/libmtp.c: disable the user of ptp_mtp_getobjectproplist()
1485 for these devices.
1486
14872006-11-21 Robert Reardon <rreardon@monkshatch.vispa.com>
rreardonbddc0f82006-11-21 13:44:42 +00001488
1489 * src/libmtp.c: set handle ids for new objects to 0 when
1490 creating new albums and playlists.
1491
Linus Walleij2f5ed5c2006-11-21 07:40:29 +000014922006-11-21 Linus Walleij <triad@df.lth.se>
1493
1494 * src/libmtp.c: enabled enhanced mode for metadata retrieval
1495 by default.
Linus Walleij9be685b2006-11-21 09:44:53 +00001496 * src/libmtp.c: fixed the problem with sending files using
1497 enhanced commands.
Linus Walleij2f5ed5c2006-11-21 07:40:29 +00001498
Linus Walleij277cd532006-11-20 14:57:46 +000014992006-11-20 Linus Walleij <triad@df.lth.se>
1500
1501 * src/ptp.h: sync to upstream libgphoto2
1502 * src/ptp.c: dito.
1503 * src/ptp-pack.c: dito.
Linus Walleij8ae78bb2006-11-20 21:45:52 +00001504 * src/libmtp.c: check for zerolength files/tracks.
Linus Walleij277cd532006-11-20 14:57:46 +00001505
15062006-11-20 Andy Kelk <andy@mopoke.co.uk>
mopoke31364442006-11-20 04:53:04 +00001507
1508 * src/libmtp.h.in: add "parent_id" property to LIBMTP_track_struct.
1509 * src/libmtp.c: get "parent_id" property when reading tracks.
mopoke33744bb2006-11-20 04:55:32 +00001510 * examples/emptyfolders.c: new example program for pruning empty
1511 folders. (does a dummy run by default).
mopoke31364442006-11-20 04:53:04 +00001512
Linus Walleij277cd532006-11-20 14:57:46 +000015132006-11-19 Robert Reardon <rreardon@monkshatch.vispa.com>
rreardon508705f2006-11-19 21:27:22 +00001514
rreardonbbb4e562006-11-19 22:16:11 +00001515 * src/libmtp.c: use enhanced MTP commands to create playlists and
1516 send files
rreardon508705f2006-11-19 21:27:22 +00001517 * examples/newplaylist.c: demo program for creating new playlists
rreardona7220ad2006-11-19 21:36:46 +00001518 * examples/Makefile.am: add demo newplaylists program
rreardon508705f2006-11-19 21:27:22 +00001519
Linus Walleijcd849362006-12-13 12:37:58 +000015202006-11-19 Daniel Williams <danielw@iinet.net.au>
Linus Walleij48a2d462006-11-19 14:07:59 +00001521
1522 * src/libusb-glue.c: fix error on reconnect.
1523
Linus Walleij277cd532006-11-20 14:57:46 +000015242006-11-18 Richard Low <richard@wentnet.com>
Richard Lowef925022006-11-18 09:06:10 +00001525
1526 * src/ptp.c: tidy up ptp_usb_getdata
1527
Linus Walleij277cd532006-11-20 14:57:46 +000015282006-11-17 Richard Low <richard@wentnet.com>
Richard Low91354812006-11-17 22:44:05 +00001529
1530 * src/libmtp.c: fixed parent handle for uploaded tracks
1531
Linus Walleij277cd532006-11-20 14:57:46 +000015322006-11-17 Robert Reardon <rreardon@monkshatch.vispa.com>
Linus Walleije6605692006-11-17 09:18:52 +00001533
1534 * src/libmtp.c: fixed up album art using enhanced commands.
1535
Linus Walleij277cd532006-11-20 14:57:46 +000015362006-11-16 Richard Low <richard@wentnet.com>
Richard Low8d82d2f2006-11-16 20:37:43 +00001537
1538 * src/libmtp.c: a crude implementation of ptp_mtp_getobjectproplist
1539 * src/ptp.c: ditto
1540 * src/ptp.h: ditto
1541 * src/ptp-pack.c: ditto
1542
Linus Walleij277cd532006-11-20 14:57:46 +000015432006-11-16 Robert Reardon <rreardon@monkshatch.vispa.com>
Linus Walleij9e68bc12006-11-16 15:59:18 +00001544
Linus Walleijccf28ce2006-11-16 16:06:38 +00001545 * src/libmtp.c: use enhanced MTP commands to create albums and
1546 add detection of the default album folder.
1547 * src/libmtp.h.in: add a holder for album default folder.
Linus Walleij9e68bc12006-11-16 15:59:18 +00001548
Linus Walleij277cd532006-11-20 14:57:46 +000015492006-11-15 Richard Low <richard@wentnet.com>
Richard Low8b42ca32006-11-15 08:52:17 +00001550
1551 * src/ptp-pack.c: set string buffer to correct size.
1552
Linus Walleij277cd532006-11-20 14:57:46 +000015532006-11-14 Richard Low <richard@wentnet.com>
Richard Lowe1ab2642006-11-14 08:34:49 +00001554
1555 * examples/tracks.c: really use undeprecated API entry.
1556
Linus Walleij277cd532006-11-20 14:57:46 +000015572006-11-13 Richard Low <richard@wentnet.com>, Linus Walleij <triad@df.lth.se>
Linus Walleij3fcfea52006-11-13 07:07:36 +00001558
1559 * src/libmtp.h.in: add LIBMTP_Get_Tracklisting_With_Callback()
Richard Lowdc0b6c72006-11-13 09:22:23 +00001560 and LIBMTP_Get_Filelisting_With_Callback()
Linus Walleij3fcfea52006-11-13 07:07:36 +00001561 * src/libmtp.c: dito, deprecate LIBMTP_Get_Tracklisting()
Richard Lowdc0b6c72006-11-13 09:22:23 +00001562 and LIBMTP_Get_Filelisting()
Linus Walleij3fcfea52006-11-13 07:07:36 +00001563 * examples/tracks.c: use undeprecated API entry.
Richard Lowdc0b6c72006-11-13 09:22:23 +00001564 * examples/connect.c: ditto.
1565 * examples/detect.c: ditto.
1566 * examples/files.c: ditto.
Linus Walleij3fcfea52006-11-13 07:07:36 +00001567 * src/ptp.c: working on getting object prop lists.
1568 * src/ptp.h: dito.
1569
Linus Walleij277cd532006-11-20 14:57:46 +000015702006-11-12 Richard Low <richard@wentnet.com>
Richard Lowe1f06922006-11-12 16:38:39 +00001571
1572 * src/libusb-glue.c: added Zen Vision W to devices
1573
Linus Walleij277cd532006-11-20 14:57:46 +000015742006-11-07 Richard Low <richard@wentnet.com>
Richard Low4c60f6e2006-11-07 20:36:42 +00001575
1576 * src/libmtp.c: added checks for supported properties
1577
Linus Walleij277cd532006-11-20 14:57:46 +000015782006-11-06 Richard Low <richard@wentnet.com>
Richard Low64fa3992006-11-06 21:24:11 +00001579
1580 * src/libmtp.c: added a check for NULL filenames in
1581 LIBMTP_Get_Folder_List.
1582
Linus Walleij99310d42006-11-01 08:29:39 +000015832006-11-01 Linus Walleij <triad@df.lth.se>
1584
1585 * src/libmtp.h.in: set/get uint8 to/from objects
1586 * src/libmtp.c: send object property list.
1587 * src/ptp.c: dito.
1588 * src/ptp.h: dito.
1589 * src/ptp-pack.c: dito.
1590
mopoke90be30e2006-10-30 08:47:41 +000015912006-10-29 Andy Kelk <andy@mopoke.co.uk>
1592
1593 * examples/albumart.c: simple tool for adding album art.
1594 * src/libmtp.c: graceful handling of players not supporting
1595 abstract album objects.
1596
Linus Walleij0c33ec02006-10-27 10:15:40 +000015972006-10-27 Linus Walleij <triad@df.lth.se>
1598
1599 * src/Makefile.am: bump library interface to reflect the new
1600 album methods.
1601 * configure.ac: bump to 0.0.22 for the next release.
1602
16032006-10-27 Andy Kelk <andy@mopoke.co.uk>
1604
1605 * src/libmtp.c: add support form abstract audio/video albums.
1606 * src/libmtp.h.in: dito.
1607
Linus Walleij7347d0f2006-10-23 07:23:39 +000016082006-10-23 Linus Walleij <triad@df.lth.se>
1609
1610 * src/libmtp.c: retire opcode rendering (moved to ptp.c)
1611 * src/ptp.c: sync to upstream.
1612 * src/ptp.h: dito.
1613 * src/ptp-pack.c: dito.
1614
Linus Walleij9efe75f2006-10-20 09:09:45 +000016152006-10-20 Linus Walleij <triad@df.lth.se>
1616
1617 * Release 0.0.21 to get all the new device support out.
1618
Linus Walleij501ba4d2006-10-16 06:17:04 +000016192006-10-16 Linus Walleij <triad@df.lth.se>
1620
1621 * configure.ac: bump to 0.0.21.
1622 * src/libusb-glue.c: add code to unload a kernel driver for
1623 the primary interface if it is already in use under Linux.
1624 * src/libusb-glue.h: add a device flag to make this possible.
1625
Linus Walleij37253292006-10-11 08:38:14 +000016262006-10-11 Linus Walleij <triad@df.lth.se>
1627
1628 * examples/delfile.c: patch from Chris Debenham
1629 straingtening out the command-line interface a bit
1630 more.
1631
Linus Walleij43ff8fc2006-10-10 11:16:53 +000016322006-10-10 Linus Walleij <triad@df.lth.se>
1633
Linus Walleij37253292006-10-11 08:38:14 +00001634 * examples/delfile.c: patch from Chris Debenham to make
1635 this command take an optional filename as parameter
1636 instead of file ID.
Linus Walleij43ff8fc2006-10-10 11:16:53 +00001637
Linus Walleij955e6ba2006-09-26 16:55:10 +000016382006-09-26 Linus Walleij <triad@df.lth.se>
1639
1640 * libmtp.pc.in: require libusb instead of just linking it.
1641 * configure.ac: bump release to 0.0.20 and release.
1642
Linus Walleijb1318d12006-09-25 14:59:26 +000016432006-09-25 Linus Walleij <triad@df.lth.se>
1644
1645 * examples/evolution-sync.sh: example script to illustrate
1646 to to transfer calendar, task and contact information
1647 to a device supporting this.
1648
Linus Walleij4ef39e62006-09-19 14:11:52 +000016492006-09-19 Linus Walleij <triad@df.lth.se>
1650
1651 * src/libmtp.h.in: fixed attribute IDs to be 16bit.
1652 * src/libmtp.c: dito.
1653 * examples/sendfile.c: support vcard3.
1654
Linus Walleijf248fdd2006-09-16 20:11:40 +000016552006-09-16 Linus Walleij <triad@df.lth.se>
1656
1657 * configure.ac: bump to 0.0.19 and release. There are some
1658 new devices as well.
Linus Walleij5b5c7852006-09-16 20:23:37 +00001659 * src/unicode.c: retire unused code.
Linus Walleijf248fdd2006-09-16 20:11:40 +00001660
Linus Walleijb8bfcb22006-09-13 12:14:28 +000016612006-09-13 Linus Walleij <triad@df.lth.se>
1662
1663 * examples/format.c: formatting test program.
1664 * examples.Makefile.am: added format.
1665
Linus Walleij13374a42006-09-13 11:55:30 +000016662006-09-13 Andy Kelk <andy@mopoke.co.uk>
1667
1668 * src/libmtp.h.in: added interface to format storage.
1669 * src/libmtp.c: dito.
1670 * src/ptp.c: dito.
1671 * src/ptp.h: dito.
1672
Linus Walleijd31e6192006-09-12 07:55:27 +000016732006-09-12 Linus Walleij <triad@df.lth.se>
1674
1675 * configure.ac: bump release. Released 0.0.18 yesterday.
1676 * src/libmtp.c: do not try to read battery max level unless
1677 the device supports it. (Bug occurred on Toshiba Gigabeat
1678 P10.)
1679
Linus Walleijd5d51c82006-09-11 06:57:50 +000016802006-09-11 Linus Walleij <triad@df.lth.se>
1681
1682 * src/libusb-glue.c: messed around a bit with device descriptor
1683 detection so as to bring closer to libgphoto2 detection algorithm.
1684 I've seen things that might be false positives, possibly USB mass
1685 storage devices with additional MSFT descriptors to indicate they
1686 have Janus DRM.
1687 * src/libmtp.c: use UCS-2-INTERNAL if we're not on glibc. glibc
1688 knows that UCS-2 is in machine endianness but Darwin and *BSD does
1689 not. Detect C library and switch accordingly.
1690 * src/unicode.c: retire old unicode code only keep things we cannot
1691 live without. Remove the own internal UCS-2 conversion engine and
1692 the internal iconv() engine and use the one already available in
1693 PTPParams.
1694 * src/unicode.h: dito.
1695
Linus Walleij0558ac52006-09-07 06:55:03 +000016962006-09-07 Linus Walleij <triad@df.lth.se>
1697
1698 * src/libusb-glue.h: added device flags so we can make
1699 the code behave differently on certain devices.
1700 * src/libusb-glue.c: dito, plus removed some debug prints.
1701 * src/libmtp.c: docs.
1702 * src/libmtp.h.in: added device_flags to device list struct.
1703 * src/Makefile.am: bumped to compatible library interface.
1704 * configure.ac: bump version to 0.0.18 (0.0.17 released
1705 yesterday).
1706
Richard Low6ec2cc12006-09-06 16:59:16 +000017072006-09-06 Richard Low <richard@wentnet.com>
1708
1709 * src/libusb-glue.c: changed packet sizes to improve
1710 transfer speeds.
1711 * src/libmtp.c: changed packet sizes to improve transfer
1712 transfer speeds. Also stopped extra ptp_getobjectinfo
1713 calls when getting directories on connect.
1714
Linus Walleij7f0c72e2006-09-06 13:01:58 +000017152006-09-06 Linus Walleij <triad@df.lth.se>
1716
1717 * src/libusb-glue.c: fixed some endpoint size detection
1718 and sending special file sizes stuff. Real hairy bug...
1719 Also messed around a bit with the callbacks.
1720 * src/libmtp.c: changes for callback size detection.
1721
Linus Walleija9310fa2006-09-04 06:47:42 +000017222006-09-04 Linus Walleij <triad@df.lth.se>
1723
1724 * src/libmtp.c: bug in streaming code, use defined USB_BULK_HDR_SIZE
1725 instead of magic values.
1726
Linus Walleijd7aa5b22006-09-02 11:52:31 +000017272006-09-02 Linus Walleij <triad@df.lth.se>
1728
Linus Walleijcd3eb3d2006-09-02 21:33:22 +00001729 * src/libmtp.c: add some code to have
1730 LIBMTP_Send_File_From_File_Descriptor() accept a stream
1731 if size is set to (uint64_t) -1, plus documentation fixes.
1732 I don't think the streaming code will work but whoever want
1733 to experiment with it has a place to start.
1734 * examples/refactortest.c: removed. Who uses this?
Linus Walleijd7aa5b22006-09-02 11:52:31 +00001735
Linus Walleijda9500d2006-08-30 13:17:06 +000017362006-08-30 Linus Walleij <triad@df.lth.se>
1737
1738 * configure.ac: version bump.
1739 * src/libmtp.c: more debug prints.
1740 * src/libusb-glue.c: new iRiver device called Clix. By
1741 the way I released libmtp 0.0.16 yesterday.
1742
Linus Walleija823a702006-08-27 21:27:46 +000017432006-08-28 Linus Walleij <triad@df.lth.se>
1744
1745 * configure.ac: version bump.
1746 * src/ptp-pack.c: upstream has committed my patch giving full
1747 unicode support in libgphoto2 ptp2 camlib. No need for
1748 any more ugly workarounds, plus we now have full unicode
1749 filenames!
1750 * src/ptp.c: dito.
1751 * src/ptp.h: dito.
1752 * src/libmtp.c: revamp to use the new unicode support in
1753 libgphoto2.
1754 * src/unicode.c: remove unused functionality.
1755 * src/unicode.h: dito.
1756
Linus Walleijee73ef22006-08-27 19:56:00 +000017572006-08-27 Linus Walleij <triad@df.lth.se>
1758
1759 * configure.ac: version bump. Release all these fixes
1760 as 0.0.15.
1761 * src/libusb-glue.c: fixed sucky errors. Added callback
1762 code when reading files.
1763 * src/libusb-glue.h: const correctness.
1764 * src/libmtp.h.in: finally fixup the type on the callbacks.
1765 * src/libmtp.c: more accurate sending callbacks. Callbacks
1766 when getting files also, working correctly. Typeing of
1767 callbacks now OK.
1768 * examples/getfile.c: some display bar cosmetic fixup.
1769 * TODO: lots of the things todo are now done.
1770
Linus Walleijd214b9b2006-08-26 22:08:37 +000017712006-08-26 Linus Walleij <triad@df.lth.se>
1772
1773 * configure.ac: version bump.
1774 * src/libmtp.c: fix bug and reinstate callbacks.
1775 * src/libusb-glue.h: dito.
1776 * src/libusb-glue.c: dito.
1777
Linus Walleije7f44be2006-08-25 19:32:29 +000017782006-08-25 Linus Walleij <triad@df.lth.se>
1779
1780 * src/libmtp.c: use the new file descriptor sender function.
1781 Going to release this as 0.0.13.
1782 * src/ptp.c: upstream accepted patches synced in.
1783 * src/ptp.h: dito.
1784
Linus Walleijeab650b2006-08-21 23:26:37 +000017852006-08-22 Linus Walleij <triad@df.lth.se>
1786
Linus Walleij80d134a2006-08-22 21:41:37 +00001787 * src/libusb-glue.c: found a real nasty endpoint bug,
1788 code from libgphoto2 was assuming max packet size of
1789 512 bytes while it is 64 when a USB 2.0 device is
1790 plugged into an UHCI hub.
1791
17922006-08-22 Linus Walleij <triad@df.lth.se>
1793
Linus Walleijeab650b2006-08-21 23:26:37 +00001794 * configure.ac: bump to 0.0.13, also released 0.0.12 now.
1795
Linus Walleij924236a2006-08-20 22:17:58 +000017962006-08-21 Linus Walleij <triad@df.lth.se>
1797
1798 * src/libmtp.c: fixup mmap() usage and add madvise()
Linus Walleij96c62432006-08-21 10:04:02 +00001799 as result of experiments by Gavin McCullagh. Upstream
1800 accept patch to get files directly to file descriptor.
Linus Walleij3ec86312006-08-21 13:25:24 +00001801 Move iconv() converters into device struct for thread
1802 safety.
Linus Walleij96c62432006-08-21 10:04:02 +00001803 * src/ptp.c: sync to upstream which merges patch to get
1804 file directly to file descriptor.
1805 * src/ptp.h: dito.
Linus Walleij3ec86312006-08-21 13:25:24 +00001806 * src/unicode.c: move iconv() converters into the device
1807 struct for thread safety.
1808 * src/unicode.h: dito.
Linus Walleij924236a2006-08-20 22:17:58 +00001809
Linus Walleij30658792006-08-19 22:18:55 +000018102006-08-20 Linus Walleij <triad@df.lth.se>
1811
1812 * src/libmtp.h.in: set friendly name and sync partner,
1813 rename ownername to friendlyname.
1814 * src/libmtp.c: dito.
1815 * examples/detect.c: reflect changes.
1816 * src/Makefile.am: interface is incompatible so age it.
1817
Linus Walleijfae27482006-08-19 20:13:25 +000018182006-08-19 Linus Walleij <triad@df.lth.se>
1819
1820 * src/libmtp.h.in: add function to get syncronization
1821 partner for the device.
1822 * src/libmtp.c: dito.
1823 * examples/detect.c: use that function.
1824 * src/Makefile.am: backward-compatible interface bump.
1825
Linus Walleij16571dc2006-08-17 20:27:46 +000018262006-08-17 Linus Walleij <triad@df.lth.se>
1827
1828 * configure.ac: bump to 0.0.12 and require iconv.h.
1829
18302006-08-16 Linus Walleij <triad@df.lth.se>
1831
1832 * src/unicode.c: remove bigendian weirdness and switch
1833 to using iconv() instead.
1834 * src/unicode.h: dito.
1835 * src/libmtp.c: reflect changes.
1836
Linus Walleij3e188f12006-08-09 20:46:05 +000018372006-08-09 Linus Walleij <triad@df.lth.se>
1838
1839 * Release libmtp 0.0.11.
1840
Linus Walleij2eb884b2006-08-04 19:17:36 +000018412006-08-04 Linus Walleij <triad@df.lth.se>
1842
1843 * src/libmtp.c: patch from Dan Aloni to make sendfile
1844 use mmap and avoid memory drainage.
Linus Walleij9eb3d312006-08-04 19:25:59 +00001845 * src/libusb-glue.c: patch from Andy Kelk to avoid
1846 exit():ing when the interface cannot be claimed.
Linus Walleij232943d2006-08-04 19:26:53 +00001847 * configure.ac: version bump.
Linus Walleij2eb884b2006-08-04 19:17:36 +00001848
Linus Walleijaa4b0752006-07-26 22:21:04 +000018492006-07-27 Linus Walleij <triad@df.lth.se>
1850
1851 * Release libmtp 0.0.10.
1852
Linus Walleij17b55ea2006-07-26 13:54:00 +000018532006-07-26 Linus Walleij <triad@df.lth.se>
1854
1855 * src/libusb-glue.c: new SanDisk devices.
Linus Walleij00cf0642006-07-26 20:40:59 +00001856 * src/libmtp.c: only set metdata properties supported by
1857 the device, duh.
Linus Walleijaa4b0752006-07-26 22:21:04 +00001858 * src/ptp.c: sync to upstream.
1859 * src/ptp.h: sync to upstream.
1860 * configure.ac: bump to 0.0.10.
Linus Walleij17b55ea2006-07-26 13:54:00 +00001861
Linus Walleijc187cb92006-06-22 17:58:13 +000018622006-06-22 Linus Walleij <triad@df.lth.se>
1863
1864 * Release libmtp 0.0.9.
1865
Linus Walleij8ab54262006-06-21 07:12:28 +000018662006-06-21 Linus Walleij <triad@df.lth.se>
1867
1868 * src/libmtp.h.in: added function to retrieve supported
1869 filetypes.
1870 * src/libmtp.c: ditto.
1871 * examples/detect.c: use that function.
1872
Linus Walleijcf223e62006-06-19 09:31:53 +000018732006-06-19 Linus Walleij <triad@df.lth.se>
1874
1875 * src/unicode.c: support all endianness, detect
1876 byte-order-mark
1877 * src/unicode.h: ditto.
1878 * src/libmtp.c: ditto.
1879 * examples/detect.c: use proper tempfile function.
1880 * src/libmtp.h.in: add some more track properties.
1881 * src/libmtp.c: ditto.
1882 * examples/tracks.c: ditto.
1883
Linus Walleij2e4b5f92006-06-16 14:00:49 +000018842006-06-16 Linus Walleij <triad@df.lth.se>
1885
1886 * src/libmtp.h.in: new interfaces for single metadata post
1887 retrieveal.
1888 * src/libmtp.c: ditto.
1889 * examples/playlists.c: display track info using the new
1890 individual track metadata retrieveal method.
1891 * examples/getplaylist.c: ditto.
1892
Linus Walleij05ccbe72006-06-13 07:46:58 +000018932006-06-13 Linus Walleij <triad@df.lth.se>
1894
1895 * src/libmtp.h.in: added default folders to device struct.
Linus Walleij545c7792006-06-13 15:22:30 +00001896 Add some new function prototypes.
Linus Walleij05ccbe72006-06-13 07:46:58 +00001897 * src/libmtp.c: discover and use the default folders if
Linus Walleij545c7792006-06-13 15:22:30 +00001898 we can find them. Retrieve device secure time and cert
1899 out of sheer curiosity.
1900 * src/ptp.c: sync to libgphoto2 with my patches.
1901 * src/ptp.h: ditto.
Linus Walleij05ccbe72006-06-13 07:46:58 +00001902
Linus Walleij438bd7f2006-06-08 11:35:44 +000019032006-06-07 Linus Walleij <triad@df.lth.se>
1904
1905 * src/libmtp.h.in: new playlist API and refactorings.
1906 * src/libmtp.c: ditto, and refactorings.
1907 * src/unicode.h: const correctness.
1908 * src/unicode.c: ditto.
1909 * examples/playlists.c: new example program.
1910 * configure.ac: bump to 0.0.9
1911 * src/Makefile.am: bump library interface.
1912
Linus Walleij52e3ac52006-06-05 10:30:00 +000019132006-06-05 Linus Walleij <triad@df.lth.se>
1914
1915 * examples/sendtr.c: fixed annoying bug that made this
1916 program totally useless.
1917 * src/libmtp.c: cosmetics.
1918 * configure.ac: bump to 0.0.8.
1919
Linus Walleij345a3372006-06-03 20:55:25 +000019202006-06-03 Linus Walleij <triad@df.lth.se>
1921
1922 * src/libmtp.c: metadata bugs, album name and genre
1923 confused. Fixe it and released libmtp 0.0.7.
1924
Linus Walleijdc09dc02006-06-01 14:23:41 +000019252006-06-01 Linus Walleij <triad@df.lth.se>
1926
1927 * Released libmtp 0.0.6.
1928
Linus Walleij549ec4d2006-05-31 19:59:52 +000019292006-05-31 Linus Walleij <triad@df.lth.se>
1930
1931 * src/libmtp.c: fixed mapping for JPEG vs JFIF
1932 * src/libmtp.h.in: added proper type for JPEG
1933 * examples/sendfile.c: send proper JPEG type
1934
Linus Walleijd3fdd972006-05-30 15:51:37 +000019352006-05-30 Flavien Lebarbe <flavien+libmtp@lebarbe.net>
1936
1937 * src/libmtp.c: fixed a bug in update metadata due to
1938 bad use of return code.
1939 * src/libusb-glue.c: fixed a loop exiting problem with
1940 good 'ol GOTO.
1941
Linus Walleij9b1fcd92006-05-29 08:35:29 +000019422006-05-29 Linus Walleij <triad@df.lth.se>
1943
1944 * src/libusb-glue.c: one more device.
1945 * doc/examples.h: produce correct documentation.
1946 * configure.ac: bump to 0.0.6.
Linus Walleijf67bca92006-05-29 09:33:39 +00001947 * src/ptp.c: sync to libgphoto2.
1948 * src/ptp.h: ditto.
1949 * src/ptp-pack.c: ditto.
Linus Walleijf0f3d482006-05-29 14:10:21 +00001950 * src/libmtp.c: fixed all filetype API related functions
1951 not to use any PTP intrinsic defines at all, made all
1952 parameters to functions use the internal libmtp interface
1953 enumerations and definitions. Removed LIBMTP_Release():
1954 we can live with the memory lost during init. You're not
1955 supposed to re-initialize the device. Consequently removed
1956 the delete function that cleaned the filetype assoc list.
1957 * examples/refactortest.c: reflect changes.
Linus Walleij9b1fcd92006-05-29 08:35:29 +00001958
ravelox088180b2006-05-26 23:55:40 +000019592006-05-26 Dave Kelly <libmtp@ravelox.co.uk>
1960
1961 * src/libmtp.c: refactored object handling to be more generic
1962 * src/libmtp.h.in: ditto
1963 * examples/refactortest.c: Added simple example to use refactoring
1964 * examples/getplaylist.c: Added example to extract playlist data
Linus Walleij9b1fcd92006-05-29 08:35:29 +00001965 * src/ptp.c: Re-added ptp_get/set_objectreferences to allow
1966 for playlist handling
1967 * src/ptp.h: ditto
ravelox088180b2006-05-26 23:55:40 +00001968
Linus Walleij1fd2d272006-05-08 09:22:01 +000019692006-05-08 Linus Walleij <triad@df.lth.se>
1970
1971 * src/libmtp.h.in: add simple detection function.
1972 * src/libusb-glue.c: implement MTP "OS descriptor" for
1973 looking for MTP devices.
1974 * examples/detect.c: make it possible to do very
1975 rudimentary detection with "detect -p".
1976 * configure.ac: bump to 0.0.5.
1977
Linus Walleij685137f2006-05-07 18:09:02 +000019782006-05-07 Linus Walleij <triad@df.lth.se>
1979
1980 * COPYING: since we no longer use any parts of libptp2
1981 and only files from libgphoto2, we switch to the GNU
1982 Lesser General Public License (GNU LGPL). libptp2 is
1983 a derived work from libgphoto2, and so is libmtp, there
1984 are no remnants of libptp2 in libmtp anymore.
1985
Linus Walleij16c51f02006-05-04 13:20:22 +000019862006-05-04 Linus Walleij <triad@df.lth.se>
1987
1988 * examples/sendfile.c: fixes some more filetypes.
Linus Walleij453813c2006-05-04 19:46:43 +00001989 * src/libmtp.c: respectfully rearranged to use a filetype mapping
1990 table.
1991 * src/ptp-pack.c: real nasty unicode packing bug.
1992 * Release libmtp 0.0.4.
Linus Walleij16c51f02006-05-04 13:20:22 +00001993
Linus Walleijd6a49972006-05-02 08:24:54 +000019942006-05-02 Linus Walleij <triad@df.lth.se>
1995
1996 * src/libmtp.c: general shaping up for release. All track
1997 and file sending functions now respects a parent ID to be
1998 sent along with files and tracks.
1999 * src/libmtp.h.in: dito.
2000 * src/libusb-glue.c: dito.
2001 * examples/sendfile.c: interface dependency changes.
2002 * examples/sendtr.c: dito.
2003
Linus Walleijc60275a2006-04-30 10:58:11 +000020042006-04-30 Linus Walleij <triad@df.lth.se>
2005
2006 * src/ptp.c: sync upstream.
2007 * src/ptp.h: dito.
2008
Linus Walleij370c68d2006-04-27 14:19:01 +000020092006-04-27 Linus Walleij <triad@df.lth.se>
2010
2011 * examples/sendfile.c: first file sender program based
2012 on API implementation and changes by Chris Allegretta.
2013 * examples/Makefile.am: new program, new entry.
2014 * src/libmtp.c: reflect this new functionality.
2015 * src/libmtp.h.in: dito.
2016
Linus Walleijb02a0662006-04-25 08:05:09 +000020172006-04-25 Linus Walleij <triad@df.lth.se>
2018
2019 * Rebased the sources around libgphoto2 instead.
2020 This was a major revision...
2021 * src/ptp.c: imported libgphoto2 version verbatim.
2022 * src/ptp.h: imported libgphoto2 version, minor patch.
2023 * src/ptp-pack.c: imported libgphoto2 version, minor patch.
Linus Walleij9a96f0b2006-04-25 08:46:59 +00002024 * src/ptp-pack.h: dropped, libgphoto2 does not use it.
Linus Walleijb02a0662006-04-25 08:05:09 +00002025 * src/mtp.c: dropped, since all functions are now in ptp.c
2026 * src/mtp-pack.c: dropped, same reason.
2027 * src/mtp.h: dropped, same reason.
2028 * src/mtp-pack.h: dropped, same reason.
2029
Linus Walleije5f3ad42006-04-21 07:44:36 +000020302006-04-21 Linus Walleij <triad@df.lth.se>
2031
Linus Walleij902c0b92006-04-21 10:52:48 +00002032 * Released libmtp 0.0.3
2033 * Bumped source to 0.0.4
2034
20352006-04-21 Linus Walleij <triad@df.lth.se>
2036
Linus Walleije5f3ad42006-04-21 07:44:36 +00002037 * src/ptp-pack.c: GCC 4.x compilation patch from
2038 Diego Pettenò.
Linus Walleija06a2792006-04-21 07:52:26 +00002039 * src/libusb-glue.c: New Samsung device and some
2040 from libgphoto2.
Linus Walleij9c6ca022006-04-21 10:24:15 +00002041 * src/ptp.h: some defines from libgphoto2 to get
2042 a bit more compatible.
2043 * src/libmtp.c: Added a folder API implementation by
2044 Dave "ravelox" Kelly.
2045 * src/libmtp.h.in: dito.
2046 * examples/folders.c: dito.
2047 * examples/newfolder.c: dito.
2048 * examples/trexist.c: dito.
Linus Walleije5f3ad42006-04-21 07:44:36 +00002049
Linus Walleij6fd2f082006-03-28 07:19:22 +000020502006-03-28 Linus Walleij <triad@df.lth.se>
2051
2052 * m4/*: updated macros to work with GCC 4.1.0.
2053 * examples/hotplug.c: new program to create device
2054 ID lists.
2055 * libmtp.rules: now an auto-generated file.
2056 * libmtp.usermap: now an auto-generated file.
2057
Linus Walleijf6bc1782006-03-24 15:12:47 +000020582006-03-24 Linus Walleij <triad@df.lth.se>
2059
2060 * Beginning a file API, fixed some example program
2061 names and such.
2062
Linus Walleij6946ac52006-03-21 06:51:22 +000020632006-03-18 Linus Walleij <triad@df.lth.se>
2064
2065 * Fixed up callback interface to a simpler version,
2066 the old one was bloated stuff from libnjb anyway.
2067 Bump to 0.0.2.
2068
Linus Walleij9b28da32006-03-16 13:47:58 +000020692006-03-16 Linus Walleij <triad@df.lth.se>
2070
2071 * Fixed the .h file and implementation so you really only
2072 need this one .h file to interface the library.
2073
Linus Walleij80124062006-03-15 10:26:09 +000020742006-03-15 Linus Walleij <triad@df.lth.se>
2075
2076 * Added three device information retrieval functions.
2077
Linus Walleij15e344f2006-03-06 15:15:00 +000020782006-03-06 Linus Walleij <triad@df.lth.se>
2079
2080 * Moving some things around to structure the source. More
2081 will be needed...
2082
Linus Walleij93218602006-02-27 08:53:38 +000020832006-02-27 Linus Walleij <triad@df.lth.se>
2084
2085 * Release libmtp 0.0.1 so people have something to play with,
2086 what the heck. Probably saves someones day.
2087
Linus Walleij95698cd2006-02-24 10:40:40 +000020882006-02-24 Linus Walleij <triad@df.lth.se>
2089
2090 * Deltr example program to delete tracks, plus corresponding
2091 interface call.
2092
Linus Walleij17e39f72006-02-23 15:54:28 +000020932006-02-23 Linus Walleij <triad@df.lth.se>
2094
2095 * Fixed up sendtr program and metadata tagging function that is
2096 used after sending files.
2097
Linus Walleij394bbbe2006-02-22 16:10:53 +000020982006-02-22 Linus Walleij <triad@df.lth.se>
Linus Walleijeb8c6fe2006-02-03 09:46:22 +00002099
Linus Walleij394bbbe2006-02-22 16:10:53 +00002100 * Untested gettr.c and sendtr.c programs to get and send tracks
2101 created.
2102
Linus Walleijeb8c6fe2006-02-03 09:46:22 +000021032006-01-30 Linus Walleij <triad@df.lth.se>
2104
2105 * Created the initial GNU source directory structure.
2106 * Added the most basic files.