blob: 4d02e65d138a24e517f60a3335dc7bb945caef68 [file] [log] [blame]
Linus Walleijb84b3852009-03-04 15:11:08 +000012009-03-04 Linus Walleij <triad@df.lth.se>
2
3 * src/libusb-glue.c: patch from Marcus to fix an issue
4 with retransmit originally reported by Florent Pillet.
5
Linus Walleij5c1499e2009-02-21 06:54:29 +000062009-02-21 Linus Walleij <triad@df.lth.se>
7
8 * src/libmtp.c: some additional NULL checks from
9 Florent Pillet.
10
Linus Walleij30b3e022009-02-18 22:41:20 +0000112009-02-18 Linus Walleij <triad@df.lth.se>
12
13 * src/libmtp.c: error report from RedHat BZ
14 http://bugzilla.redhat.com/show_bug.cgi?id=485627
15 led to strange code for detecting anonymous OGG files
16 being rewritten to handle NULL filenames and filenames
17 that do not exceed 4 chars.
18
Linus Walleijafac36b2009-01-30 20:39:13 +0000192009-01-30 Linus Walleij <triad@df.lth.se>
20
21 * src/libmtp.c: store albums and playlists in the default
22 music folder if no default folder for albums resp.
23 playlists has been detected.
24
Linus Walleijb17b9f12009-01-21 23:59:40 +0000252009-01-22 Linus Walleij <triad@df.lth.se>
26
27 * configure.ac: bump to 0.3.6 and release.
28 * src/Makefile.am: interface bump to libmtp.so.8.0.1
29
Linus Walleij7e3b3072009-01-19 22:51:17 +0000302009-01-16 Linus Walleij <triad@df.lth.se>
31
32 * src/ptp.c: sync to upstream.
33 * src/ptp.h: dito.
34
Linus Walleij2eaaff02009-01-15 21:30:36 +0000352009-01-15 Linus Walleij <triad@df.lth.se>
36
37 * src/libmtp.c: include fixes from Yuri Pankov for *BSD.
38 * src/playlist-spl.c: dito.
39 * examples/*.c: (more or less) dito.
40
Linus Walleijf67c1ad2009-01-14 21:39:50 +0000412009-01-14 Linus Walleij <triad@df.lth.se>
42
43 * src/device-flags.h: new device flag for broken
44 SendObjectPropList, as found broken in MEU202
45 * src/music-players.h: use the new flag.
46 * src/libmtp.c: implement this device flag.
47 * src/libusb-glue.h: dito.
48
Linus Walleij5b4a4d22009-01-10 12:18:14 +0000492009-01-10 Linus Walleij <triad@df.lth.se>
50
51 * src/libmtp.h.in: mingw32 fixes from James Ravenscroft.
Linus Walleija0e863b2009-01-10 22:15:57 +000052 * src/libmtp.c: dito. Replaced "rindex" with "strrchr"
Linus Walleij5b4a4d22009-01-10 12:18:14 +000053 * src/Makefile.am: dito.
54 * examples/albumart.c: dito.
55
Linus Walleijdd987c32009-01-06 00:35:05 +0000562009-01-06 Linus Walleij <triad@df.lth.se>
57
58 * src/Makefile.am: patch from Rafael Laboissiere removing a
59 build artifact in distclean.
60
Linus Walleij2242b022009-01-02 01:44:00 +0000612009-01-02 Linus Walleij <triad@df.lth.se>
62
63 * examples/connect.c: usage patch from Riley Patterson.
64 * examples/sendtr.c: dito. Plus only try to add track to an
65 album if and only if an album name was given.
66 * examples/newfolder.c: real bad bug fixed, didn't even work
67 due to bad args check.
68 * examples/sendfile.c: another bad bug...
69 * examples/common.h: include <config.h> not "config.h"
70 * src/unicode.h: no reason for this to include config.h!
71
Linus Walleijcb229572008-12-21 13:17:59 +0000722008-12-21 Linus Walleij <triad@df.lth.se>
73
74 * Release libmtp 0.3.5.
75
Linus Walleija89a7942008-12-14 23:19:34 +0000762008-12-15 Nathan Bullock <nathanbullock@gmail.com>
77
78 * src/libmtp.c: get folders to a flat list and we get O(n) searching
79 instead of the previous O(n^2) algorithm!
80
Linus Walleijb9255212008-12-13 22:26:26 +0000812008-12-13 Linus Walleij <triad@df.lth.se>
82
83 * examples/detect.c: make mtp-detect dump out default-capabilities.xml
84 if such a file exists on the device.
Linus Walleij2a84ca42008-12-14 00:00:23 +000085 * m4/stdint.m4: update to newer macro from libgphoto2.
86 * m4/byteorder.m4: update to newer macro from libgphoto2.
87 We find these here:
88 http://gphoto.svn.sourceforge.net/viewvc/gphoto/trunk/m4/
89 * configure.ac: fix the renamed _stdint.h too.
90 * Doxyfile.in: some config option got obsolete.
Linus Walleijfc973122008-12-14 01:10:26 +000091 * libmtp.c: start to use PTP error redirection to the libmtp error
92 stack. This also makes it possible to stop the annoying debug prints.
Linus Walleijd1e14e02008-12-14 01:07:30 +000093 * libusb-glue.c: dito.
Linus Walleijfc973122008-12-14 01:10:26 +000094 * ptp.c: sync to upstream.
95 * ptp.h: sync to upstream.
Linus Walleijb9255212008-12-13 22:26:26 +000096
Linus Walleijd8a2fae2008-12-02 12:20:17 +0000972008-12-02 Linus Walleij <triad@df.lth.se>
98
99 * examples/util.c: another NULL check.
100
Linus Walleij73fecc42008-11-25 21:17:22 +00001012008-11-25 Linus Walleij <triad@df.lth.se>
102
103 * src/libmtp.c: fix a bug on handling folder children with an illegal
104 ID of 0. Occured in the ZEN Xi-Fi in the "Recordings" folder, when
105 that is created on the device.
106
alistair_boyle5e5fcb72008-11-17 14:38:19 +00001072008-11-17 Alistair Boyle <alistair.js.boyle@gmail.com>
108
alistair_boyle5e5fcb72008-11-17 14:38:19 +0000109 * configure.ac: change release to 0.3.5.
110 * libmtp.c: change metadata const*const to *const to allow playlist_id
111 to be modified by LIBMTP_Update_Playlist. (Samsung playlists)
112 * libmtp.h.in: match libmtp.c
113
Linus Walleij1ccd5862008-11-11 12:33:01 +00001142008-11-11 Linus Walleij <triad@df.lth.se>
115
116 * src/libmtp.c: allow for playlists with zero tracks on them,
117 also in update.
118
Linus Walleijd49955b2008-11-09 17:20:00 +00001192008-11-09 Linus Walleij <triad@df.lth.se>
120
121 * src/ptp.h: sync from upstream.
122 * src/ptp.c: sync from upstream.
123 * src/ptp-pack.c: sync from upstream.
124
Linus Walleij54c468c2008-11-07 22:36:15 +00001252008-11-07 Linus Walleij <triad@df.lth.se>
126
127 * Release libmtp 0.3.4.
128 * configure.ac: let's release 0.3.4.
129 * src/Makefile.am: compatible API and ABI.
130
Linus Walleij753a46a2008-11-05 09:10:52 +00001312008-11-05 Linus Walleij <triad@df.lth.se>
132
133 * src/libmtp.c: fix the association type problem on
134 LIBMTP_Create_Folder(). This causes folders not to
135 work properly on some devices!!
136
Linus Walleij3bc0d7f2008-11-01 23:06:24 +00001372008-11-01 Linus Walleij <triad@df.lth.se>
138
139 * src/ptp.h: sync to upstream.
140 * src/ptp.c: sync to upstream.
141 * src/ptp-pack.c: introduce Richards bugfix on top of
142 upstream and take advantage of the ptp_debug() function.
143 * src/libusb-glue.c: make ptp_debug() non-static since
144 ptp-pack.c needs it.
145
Linus Walleijcf8dc2b2008-10-21 13:58:36 +00001462008-10-21 Linus Walleij <triad@df.lth.se>
147
148 * src/device-flags.h: actually the SanDisks cannot handle
149 PTP_OPC_DateModified at ALL, not even as part of the
150 initial update so rename the flag to something sensible.
151 * src/music-players.h: consequental changes.
152 * src/libmtp.c: disable all use of PTP_OPC_DateModified if
153 flag is set, not just updates.
154
Linus Walleij37588142008-10-16 19:10:47 +00001552008-10-16 Linus Walleij <triad@df.lth.se>
156
157 * src/device-flags.h: new flag for broken updates of
158 PTP_OPC_DateModified.
159 * src/music-players.h: tag all SanDisk devices with this
160 flag. Bug appeared in them.
161 * libmtp.c: avoid updating PTP_OPC_DateModified on broken
162 devices.
163
Linus Walleijc8abc922008-09-28 18:38:42 +00001642008-09-28 Alvin <alvinbeach@gmail.com>
165
166 * src/libmtp.c: fix several bugs in Ogg filetype support.
167
Richard Lowff16bfa2008-09-26 19:23:08 +00001682008-09-26 Richard Low <richard@wentnet.com>
169
170 * src/libmtp.c: check propdesc before setting props in
171 create_new_abstract_list()
172
Linus Walleijf12e3052008-09-25 22:00:40 +00001732008-09-25 Linus Walleij <triad@df.lth.se>
174
175 * configure.ac: bump to 0.3.3.
176 * src/Makefile.am: interface to .so.8.1.0
177 * Release as 0.3.3.
178
Linus Walleij8d8c4352008-09-23 23:04:16 +00001792008-09-24 Linus Walleij <triad@df.lth.se>
180
181 * src/libmtp.h.in: add new filename setting functions, patch
182 from Florent Mertens <flomertens@gmail.com>.
183 * src/libmtp.c: implementation.
184 * src/playlist-spl.c: consequental changes.
185 * src/libmtp.sym: consequental changes.
Linus Walleijfb7212f2008-09-24 20:30:13 +0000186 * Fixup patch from Alvin later this day.
Linus Walleij8d8c4352008-09-23 23:04:16 +0000187 * Note to self: remember to bump soname to .so.8.1.0.
188
Richard Low4d9165f2008-09-23 20:13:17 +00001892008-09-23 Richard Low <richard@wentnet.com>
190
191 * src/libmtp.c: check for NULL storage
192 * src/libusb-glue.c: return PTP_RC_OK on zero read
193 * src/music-players.h: give Samsung YP-10 DEVICE_FLAG_NO_ZERO_READS
194
Linus Walleij97c351b2008-09-22 08:22:20 +00001952008-09-22 Linus Walleij <triad@df.lth.se>
196
197 * src/libmtp.c: make sure we don't try to fit a new file onto
198 a ROM storage. Add some pretty-print to FourCC codecs so
199 you can actually understand the enumerations.
200
Linus Walleij4347fda2008-09-19 22:28:45 +00002012008-09-20 Joe Nahmias <joe@nahmias.net>
202
203 * examples/sendtr.c: added option to specify which
204 storage_id the track should be copied.
205
Linus Walleijeb5d5fe2008-09-19 22:01:48 +00002062008-09-20 Linus Walleij <triad@df.lth.se>
207
208 * configure.ac: bump to 0.3.2.
209 * src/Makefile.am: bump to libmtp.so.8.0.2, compatible
210 interface.
211 * Release this as 0.3.2 mainly to get the Creative fixes out.
212
Linus Walleij2832a202008-09-17 18:58:20 +00002132008-09-17 Linus Walleij <triad@df.lth.se>
214
215 * src/libmtp.h.in: new helper macros from
216 Alvin <alvinbeach@gmail.com> plus some docs.
217
Linus Walleij780b3902008-09-11 22:17:00 +00002182008-09-12 Linus Walleij <triad@df.lth.se>
219
220 * src/music-players.h: drop bug flags off the Creative devices.
221 I am confident that the bugs they were masking have been
222 fixed now.
223
Richard Low4d93a992008-09-07 12:52:14 +00002242008-09-07 Richard Low <richard@wentnet.com>
225
226 * src/music-players.h: added Panasonic P905i
227
Linus Walleijb67fecc2008-09-05 10:41:30 +00002282008-09-05 Marcus Meissner <meissner@suse.de>
229
230 * src/libmtp.sym: update symbol export table.
231 * src/Makefile.am: fix up some magic for symbol export.
232
Linus Walleijf3296622008-09-04 20:53:56 +00002332008-09-04 Linus Walleij <triad@df.lth.se>
234
235 * src/libmtp.c: look up the filename for playlists if the name is
236 missing or not properly set. Not doing the same for albums -
237 these must have proper metadata.
238 * src/music-players.h: more players as usual.
239 * examples/sendtr.c: more warnings.
240
Linus Walleij9d00c1b2008-08-31 18:17:08 +00002412008-08-31 Linus Walleij <triad@df.lth.se>
242
243 * src/ptp.h: sync to upstream.
244 * src/ptp.c: sync to upstream.
245
Linus Walleij2f622812008-08-30 22:06:58 +00002462008-08-30 Chris Bagwell <chris@cnpbagwell.com>
247
248 * src/libusb-glue.c: make it possible to have per-command
249 or otherwise altered timeout values for different PTP
250 request/response sequences.
251 * src/libusb-glue.h: dito.
252 * src/libmtp.c: increase USB timeout to 30s when getting
253 a complete track listing off the device.
254 * src/music-players.h: as a consequence, the Sirus Stiletto
255 no longer needs any brokenness flag.
256
2572008-08-30 Linus Walleij <triad@df.lth.se>
258
259 * src/ptp.c: sync to upstream.
260
Linus Walleijeb144392008-08-28 14:43:38 +00002612008-08-28 Linus Walleij <triad@df.lth.se>
262
263 * examples/sendtr.c: fix non-strdup():ed strings to be
264 copied, patch courtesy of Juanan Pereira.
265
Linus Walleij5b17d8f2008-08-25 20:55:15 +00002662008-08-25 Linus Walleij <triad@df.lth.se>
267
268 * src/Makefile.am: bump interface a patchlevel. (Fully
269 compatible.)
270 * configure.ac: bump version to 0.3.1.
271 * Release as libmtp 0.3.1.
272
Linus Walleije1be4b92008-08-18 08:49:22 +00002732008-08-18 Linus Walleij <triad@df.lth.se>
274
275 * src/libusb-glue.c: some vartype and return flunkies.
Linus Walleij8b8c8502008-08-18 19:58:36 +0000276 * configure.ac: check for locale.h
277 * examples/util.c: set locale to pick up environment.
Linus Walleije1be4b92008-08-18 08:49:22 +0000278
Linus Walleij06e42322008-08-16 23:34:32 +00002792008-08-17 Linus Walleij <triad@df.lth.se>
280
281 * src/libusb-glue.c: some handling of ptp_usb_getdata()
282 when passed in data size was 0xffffffffU, data
283 sent in first transaction was ignored, fix by
284 Rob Woolley.
Linus Walleijdeddc342008-08-16 23:52:06 +0000285 * src/ptp-pack.c: sync in from upstream libgphoto2.
286 * src/README: move relevant stuff to README.
287 * README: see above.
Linus Walleij06e42322008-08-16 23:34:32 +0000288
Linus Walleijf3c44052008-08-16 21:14:56 +00002892008-08-15 Alistair Boyle <alistair.js.boyle@gmail.com>
290
291 * src/playlist-spl.c: added handling of Samsung's
292 proprietary .spl playlist format.
293 * src/playlist-spl.h: dito.
294 * src/device-flags.h: new flags for Samsung playlists.
295 * src/music-players.h: assign flags.
296 * src/libusb-glue.h: convenience macros.
297 * src/libmtp.c: integrate Samsung playlists.
298
Linus Walleij59765e82008-08-15 07:17:12 +00002992008-08-15 Linus Walleij <triad@df.lth.se>
300
301 * examples/Makefile.am: break out utility functions
302 (currently only checklang()) to a separate file.
303 * examples/util.h: dito.
304 * examples/util.c: dito.
305 * examples/detect.c: dito.
306 * examples/sendtr.c: dito.
307 * examples/connect.c: dito.
308
Linus Walleij25d5c212008-08-14 06:49:13 +00003092008-08-14 Linus Walleij <triad@df.lth.se>
310
311 * src/libmtp.c: add some documentation to file and track
312 listing functions to that it's clear that you have to
313 inspect storage_id and parent_id in order to group files
314 into storages and/or folders.
315
Linus Walleij07bb5382008-07-31 20:21:09 +00003162008-07-31 Linus Walleij <triad@df.lth.se>
317
318 * src/music-players.h: several new devices and flags.
319
Linus Walleije80d6bd2008-06-23 23:11:42 +00003202008-06-24 Linus Walleij <triad@df.lth.se>
321
322 * TODO: updates.
323 * src/Makefile.am: bump interface to libmtp.so.8.0.0.
324 It's NOT compatible!
325 * RELEASE libmtp 0.3.0 and let the apps developers have
326 their apps fixed!
327
Linus Walleijea68f1f2008-06-22 21:54:44 +00003282008-06-22 Linus Walleij <triad@df.lth.se>
329
330 * src/libmtp.h.in: removed the parenthandle argument from
331 LIBMTP_Send_File_From_File(),
332 LIBMTP_Send_File_From_File_Descriptor(),
333 LIBMTP_Send_Track_From_File(),
334 LIBMTP_Send_Track_From_File_Descriptor(),
335 LIBMTP_Create_New_Playlist() and
336 LIBMTP_Create_New_Album()
337 Now you must pass in parent ID from a metadata or
338 filedata set. Use the respective field of the
339 file, track, playlist or album struct to pass in
340 a parent handle when calling these functions from
341 now on. The bonus for changing your code is that you
342 can now also pass in a storage_id with any metadata
343 set! Consequently LIBMTP_Create_Folder() was
344 altered to accept THREE metadata arguments: name,
345 parent_id and storage_id. All calls to any of these
346 functions in any referring code need to be altered to
347 use this scheme. It should be quite self-evident for
348 most code and easy to perform.
349 * src/libmtp.c: changed outlined above were implemented.
350 * examples/newfolder.c: consequental changes.
351 * examples/sendfile.c: consequental changes.
352 * examples/sendtr.c: consequental changes.
353 * examples/albumart.c: consequental changes.
354 * examples/newplaylist.c: consequental changes.
355 * examples/files.c: consequental changes.
356 * examples/tracks.c: correct misleading strings.
357
Linus Walleij8f7f1aa2008-06-15 19:00:23 +00003582008-06-15 Linus Walleij <triad@df.lth.se>
359
360 * src/libmtp.c: only look for default folders in the
361 root folder on the primary storage, even.
362
Linus Walleijc40c9bf2008-06-13 23:24:17 +00003632008-06-14 Linus Walleij <triad@df.lth.se>
364
365 * src/libmtp.c: only look for default folders in the
366 primary storage, and only try to put files there
367 if they are targetting the primary storage.
368
Linus Walleij56c63952008-06-08 21:55:58 +00003692008-06-08 Linus Walleij <triad@df.lth.se>
370
371 * configure.ac: check for the langinfo.h header.
372 * examples/connect.c: check charset properly.
373 * examples/sendtr.c: dito.
374 * src/music-players.h: new devices galore.
375
Linus Walleij335a81c2008-06-02 23:01:00 +00003762008-06-03 Linus Walleij <triad@df.lth.se>
377
378 * src/device-flags.h: new device flag for devices that
379 always need to have their device descriptor probed.
380 * src/music-players.h: generously add this flag to all
381 SanDisk devices. The e280v2 and Fuze are known to be
382 especially problematic.
383 * src/libusb-glue.h: helper macro.
384 * src/libusb-glue.c: massage "OS Descriptor" on demand
385 when opening the device.
Linus Walleij5e202562008-06-03 11:35:05 +0000386 * src/music-players.h: detailed info and flags for the
387 SanDisk Sansa players. More to be done, probably.
Linus Walleij335a81c2008-06-02 23:01:00 +0000388
Linus Walleijfec4d562008-06-01 22:30:36 +00003892008-06-02 Linus Walleij <triad@df.lth.se>
390
391 * src/libusb-glue.c: refactor PTP_USB to use the raw
392 device and its contained deviceinfo to store and
393 retrieve the device flags. (This is starting to look
394 object oriented...)
395 * src/libusb-glue.h: accessor functions to simplify
396 switching on the device flags and increase the code
397 readability.
398 * src/libmtp.c: use the new accessor functions.
399
Linus Walleij64691b72008-05-31 22:55:18 +00004002008-06-01 Linus Walleij <triad@df.lth.se>
401
402 * src/libmtp.c: use LIBMTP_Detect_Raw_Devices() and
403 LIBMTP_Open_Raw_Device() inside
Linus Walleij3c643252008-05-31 23:22:28 +0000404 LIBMTP_Get_First_Device() refactoring. Move
405 params creation into this file.
406 * src/libusb-glue.c: move params creation away
407 from here.
Linus Walleij64691b72008-05-31 22:55:18 +0000408
Linus Walleij9b146182008-05-29 22:42:54 +00004092008-05-30 Linus Walleij <triad@df.lth.se>
410
411 * src/libusb-glue.c: unused variable.
412 * examples/detect.c: switch to using raw device
413 interface for opening devices.
414
Linus Walleij9d22ce02008-05-28 20:39:29 +00004152008-05-28 Linus Walleij <triad@df.lth.se>
416
Linus Walleija700d222008-05-28 23:06:14 +0000417 * src/libmtp.c: internally using the raw devices to
418 get a list of devices.
Linus Walleij9d22ce02008-05-28 20:39:29 +0000419 * src/ptp.c: sync to upstream.
420 * src/ptp.h: dito.
421 * src/ptp-pack.c: dito.
Linus Walleija700d222008-05-28 23:06:14 +0000422 * src/libmtp.h.in: move raw device detection to use
Linus Walleijbdb89bd2008-05-28 23:32:35 +0000423 error codes. Add interface to open a raw device!
Linus Walleija700d222008-05-28 23:06:14 +0000424 * src/libusb-glue.h: make the old device list internal,
425 use raw device in interface for configuring USB.
426 * src/libusb-glue.c: fix up error messages. Move the
427 raw device detection interface to use error codes.
428 * examples/detect.c: fix up error messages. Use error
429 codes for raw devices.
Linus Walleij9d22ce02008-05-28 20:39:29 +0000430
Linus Walleij817579a2008-05-23 21:21:40 +00004312008-05-23 Linus Walleij <triad@df.lth.se>
432
433 * src/libmtp.c: after sending a file, look up the
434 resulting file metadata from the cache to make sure
435 that parent_id is identical to that the file actually
436 gets on the device. If root folder (0) is selected, we
437 hardcode thing to 0xffffffffu to be used as parent,
438 but it will probably end up being 0 for example.
Linus Walleijfcb43422008-05-23 21:53:55 +0000439 Also fix an issue with ptp_mtp_getobjectproplist()
440 sometimes returning a NULL pointer while still
441 claiming there are props in the list.
Linus Walleija4e6bdc2008-05-23 22:31:53 +0000442 * src/libusb-glue.h: add a function to get the preferred
443 playlist extension.
Linus Walleij5ba40402008-05-23 21:36:54 +0000444 * src/libusb-glue.c: "written" variable in
445 ptp_usb_sendreq() may end up uninitialized if
446 ptp_write_func() fails. Initialize it to 0.
Linus Walleija4e6bdc2008-05-23 22:31:53 +0000447 Get the prefered playlist extension.
Linus Walleij817579a2008-05-23 21:21:40 +0000448
Richard Lowbb9fb4a2008-05-18 14:49:34 +00004492008-05-18 Richard Low <richard@wentnet.com>
450
451 * src/device-flags.h: added
452 DEVICE_FLAG_BROKEN_SET_SAMPLE_DIMENSIONS device flag
453 * src/music-players.h: ditto. Also set Samsung YH-999 to
454 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL based on users
455 experience.
456 * src/libmtp.c: added
457 DEVICE_FLAG_BROKEN_SET_SAMPLE_DIMENSIONS device flag
458
Linus Walleijf106aa62008-05-04 22:55:51 +00004592008-05-05 Linus Walleij <triad@df.lth.se>
460
461 * src/libusb-glue.c: assign device name and flags to
462 detected raw devices, slowly preparing to move to
463 using the raw device detection internally as well.
464
Linus Walleij10e0ce72008-05-04 19:20:33 +00004652008-05-04 Linus Walleij <triad@df.lth.se>
466
467 * src/libmtp.h.in: move useful filetype macros here so
468 external programs can use them.
469 * src/libmtp.c: consequental changes.
470 * examples/sendtr.c: use the new macro to detect track
471 content.
472
Linus Walleij31b74292008-05-02 23:29:06 +00004732008-05-03 Johannes Huber <johub1180@gmx.at>
474
475 * src/libmtp.h.in: add interface for setting album composer,
476 needed for classical albums, on abstract albums.
477 * src/libmtp.c: implement it.
478 * examples/albums.c: consequental changes.
479 * examples/connect.c: dito.
480 * examples/sendtr.c: dito.
481 * examples/tracks.c: dito.
482 * AUTHORS: new contributor.
483
Linus Walleij46651f32008-04-26 23:30:19 +00004842008-04-27 Linus Walleij <triad@df.lth.se>
485
486 * src/libmtp.c: recognize audio files as tracks, since this
487 is what WMP does. (e.g. it sets playlength on movies
488 to enable skip bar) also define macros for audio/video/both
489 types and tidy up a bit.
490
Linus Walleij63fd1e62008-04-23 23:49:43 +00004912008-04-24 Linus Walleij <triad@df.lth.se>
492
493 * src/libmtp.h.in: added preliminary interface for getting
494 raw devices.
495 * src/libusb-glue.c: the implementation is all here!
496 * src/libusb-glue.h: add some bus and device fields to the
497 internal device list.
498 * examples/detect.c: exercise the raw device detection code.
499
Linus Walleij88feb2e2008-03-26 00:26:20 +00005002008-03-26 Linus Walleij <triad@df.lth.se>
501
502 * examples/pathutils.c: fix a folder identification bug,
503 courtesy of Dr Nicholas Jacobs.
504
Linus Walleij5ce59db2008-03-12 21:22:58 +00005052008-03-12 Linus Walleij <triad@df.lth.se>
506
Linus Walleij161fcce2008-03-12 22:02:59 +0000507 * configure.ac: bad mailing list address. (Marcus) Bump to
508 version 0.3.0.
509 * examples/hotplug.c: switch from using "info.bus" to
510 using "info.subsystem" to identify USB events. (Marcus).
Linus Walleij5ce59db2008-03-12 21:22:58 +0000511 * src/libmtp.c: add parent_id to albums and playlists,
512 based on a patch by Ali Shah.
513 * src/libmtp.h.in: dito.
514 * examples/playlists.c: consequental changes.
515 * examples/albums.c: consequental changes.
516 * This will be a new major revision of the API/ABI no
517 matter what.
518
Linus Walleij1018c162008-03-07 23:11:58 +00005192008-03-08 Linus Walleij <triad@df.lth.se>
520
521 * src/libusb-glue.c: left debug prints on :-(
Linus Walleij907905b2008-03-07 23:33:02 +0000522 * configure.ac: set to 0.2.6.1
Linus Walleij1018c162008-03-07 23:11:58 +0000523 * Release as 0.2.6.1
524
Linus Walleijb8f78c72008-03-02 20:22:56 +00005252008-03-02 Linus Walleij <triad@df.lth.se>
526
527 * configure.ac: prepare 0.2.6 release.
528 * src/Makefile.am: bump to compatible interface,
529 * src/ptp.c: sync in upstream, a Sansa fix!
530 * src/ptp.h: sync in upstream.
531 * doc/Doxyfile.in: retire obsoleted parameters.
532 * Release this as 0.2.6!
533
Richard Low641d1e32008-02-24 20:47:20 +00005342008-02-24 Richard Low <richard@wentnet.com>
535
536 * src/music-players.h: add DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL
537 for a broken Philips player.
538
Linus Walleijc12e1752008-02-18 22:45:45 +00005392008-02-18 Linus Walleij <triad@df.lth.se>
540
541 * examples/pathutils.c: fix up item ID typing to uint32_t,
542 handle file names passed in as arguments at suggestion from
543 anonymous mail list user.
544 * examples/pathutils.h: move a function static.
545
Linus Walleij75fe2bf2008-02-12 07:34:35 +00005462008-02-12 Nicolas Pennequin <nicolas.pennequin@free.fr>
547
548 * examples/sendtr.c: add transferred tracks to albums if possible.
549
Linus Walleij3191bba2008-02-10 21:16:25 +00005502008-02-10 Scott Snyder <snyder@fnal.gov>
551
552 * src/libusb-glue.c: finally fix up the short header detection
553 to skip over zero packets when encountered.
554 * examples/pathutils.c: fix a problem where all files sent has
555 to include a "." (period).
556
Linus Walleijbebc6d52008-02-06 00:17:58 +00005572008-02-06 Linus Walleij <triad@df.lth.se>
558
559 * src/libusb-glue.c: wait for response > 0 instead of > 2.
560
Linus Walleijce245a82008-01-28 10:25:13 +00005612008-01-28 Linus Walleij <triad@df.lth.se>
562
Linus Walleij0801cd52008-01-29 22:19:15 +0000563 * src/libmtp.c: LIBMTP_Get_Filemetadata() return metadata for
564 folders (associations) too. There is really no reason why it
565 shouldn't and it's good for use internally.
566 LIBMTP_Get_Filelisting_With_Callback() will still not return
567 any associations however. We want to use the folder functions
568 for that.
569
5702008-01-28 Linus Walleij <triad@df.lth.se>
571
Linus Walleijce245a82008-01-28 10:25:13 +0000572 * src/libmtp.h.in: withdraw LIBMTP_Set_Object_Parent() function,
573 no known devices will support this.
Linus Walleij8be2c032008-01-28 21:23:47 +0000574 * src/libmtp.c: dito. Fix up some problems with the
575 LIBMTP_Set_Object_Filename() function.
Linus Walleijce245a82008-01-28 10:25:13 +0000576
Linus Walleij399807b2008-01-27 22:05:12 +00005772008-01-27 Linus Walleij <triad@df.lth.se>
578
579 * src/libmtp.c: fix up some minor things and documentation on
580 the object handling functions.
581
Linus Walleijde8193f2008-01-27 14:55:31 +00005822008-01-27 Florent Mertens <flomertens@gmail.com>
583
584 * src/libmtp.h.in: new functions to rename object filenames
585 and change object parents. Good when modifying the device
586 as a file system, LIBMTP_Set_Object_Filename(),
587 LIBMTP_Set_Object_Parent().
588 * src/libmtp.c: implementation.
589
Linus Walleij00411ee2008-01-27 12:24:51 +00005902008-01-27 Linus Walleij <triad@df.lth.se>
591
592 * src/libusb-glue.c: re-read response from device until
593 it atleast exceeds two bytes. This fixes a problem with
594 the Samsung YP-U3 when populated with many, many songs.
595
Richard Lowa11a6ad2008-01-21 17:23:55 +00005962008-01-21 Richard Low <richard@wentnet.com>
597
598 * src/music-players.h: add Thomson Lyrca HC308A, remove
599 incorrect ID for Creative Zen 8GB
600
Richard Low36e447c2008-01-20 15:24:55 +00006012008-01-20 Richard Low <richard@wentnet.com>
602
603 * src/libmtp.c: add LIBMTP_Get_Representative_Sample()
604 * src/libmtp.h.in: ditto
605
6062008-01-14 Linus Walleij <triad@df.lth.se>
Linus Walleij2350b712008-01-14 22:54:37 +0000607
608 * src/libmtp.c: add LIBMTP_Get_Manufacturername(). Remember
609 to bump soname (compatible) in 0.2.6 (or whatever we name it).
610 0.3.0 perhaps?
611 * src/libmtp.h.in: dito.
612 * src/libmtp.c: detect default folders named "Datacasts" and
613 "Texts".
614
Richard Low36e447c2008-01-20 15:24:55 +00006152008-01-11 Linus Walleij <triad@df.lth.se>
Linus Walleij7fcaa372008-01-11 00:48:06 +0000616
617 * examples/pathutils.c: recognize .bin files as firmware,
618 used by e.g. RockBox developers. Doesn't cost anything to
619 add.
620
Richard Low36e447c2008-01-20 15:24:55 +00006212008-01-08 Linus Walleij <triad@df.lth.se>
Linus Walleij89daa092008-01-08 22:35:39 +0000622
623 * configure.ac: bump to 0.2.5.
624 * src/Makefile.am: interface to libmtp.so.7.0.2
625 (compatible).
626 * Release as libmtp 0.2.5. Why not?
627
Linus Walleij0b75ab62007-12-28 00:47:34 +00006282007-12-28 Linus Walleij <triad@df.lth.se>
629
630 * src/libmtp.c: make libmtp use PTP_OPC_AlbumArtist on albums,
631 instead of the (seldom present) PTP_OPC_Artist tag. Use both
632 if both are supported. We're not setting AlbumArtist on regular
633 tracks though, what's the point, and what does it mean if this
634 differs from Artist??
635
Linus Walleija3544f62007-11-30 01:20:04 +00006362007-11-30 Linus Walleij <triad@df.lth.se>
637
638 * src/music-players.h: new flag for the YP-T10.
639 * src/device-flags.h: define the new flag, that is needed
640 to support Ogg files on these devices.
641 * src/libmtp.c: recognize and report Ogg support, set type
642 to unknown when transferring.
643
Linus Walleijcc2cf972007-11-22 20:23:43 +00006442007-11-22 Linus Walleij <triad@df.lth.se>
645
646 * configure.ac: bump to 0.2.4.
647 * src/Makefile.am: bump age of soversion (compatible).
648 * RELEASE 0.2.4 mainly to get some new device support out there.
649
Linus Walleijbc550bc2007-11-08 23:25:09 +00006502007-11-09 Linus Walleij <triad@df.lth.se>
651
652 * src/libusb-glue.c: avoid probing deeper into interfaces
653 that have a string describing them as "MTP" after a
654 suggested patch from Alexander Kanavin <ak@sensi.org>.
Linus Walleij20c3b672007-11-09 19:02:19 +0000655 * examples/albumart.c: patch from Chris Waters <xtifr@debian.org>
656 replacing calls to atoi() with calls to strtoul(). Since
657 object ID:s are unsigned long, atoi() would reject too
658 high object IDs. The patch also fix a few memory leaks.
659 THANKS DEBIAN! We love our downstream!
660 * examples/newplaylist.c: dito.
661 * examples/pathutils.c: dito.
662 * examples/thumb.c: dito.
Linus Walleijbc550bc2007-11-08 23:25:09 +0000663
Linus Walleij5f42ef42007-11-05 22:58:50 +00006642007-11-05 Linus Walleij <triad@df.lth.se>
665
666 * src/libmtp.c: use OPFF codes instead of DPFF codes,
667 we're dealing with objects, not device props.
668 * src/ptp.c: silence some OPFF freeing warnings.
669
Linus Walleij3e4b1142007-11-01 23:54:16 +00006702007-11-02 Linus Walleij <triad@df.lth.se>
671
672 * src/libusb-glue.c: try to repair header here instead of
673 ignoring error in ptp.c.
Linus Walleij1d0e84f2007-11-02 21:05:35 +0000674 * src/music-players.h: flag some more Creative devices as
675 broken getting all files.
676 * src/Makefile.am: reference the 2 new .h files.
Linus Walleij3e4b1142007-11-01 23:54:16 +0000677
Linus Walleij8f4bb042007-10-31 08:59:12 +00006782007-10-31 Linus Walleij <triad@df.lth.se>
679
680 * src/ptp.c: bring cache handling into this file.
681 * src/ptp.h: dito.
682 * src/libmtp.c: consequential changes.
683
Linus Walleij1a673de2007-10-29 23:10:05 +00006842007-10-30 Linus Walleij <triad@df.lth.se>
685
686 * src/music-players.h: split this off as a shared file
687 between us and libgphoto2 so we get out of the syncing
688 nightmare.
Linus Walleij3e667ae2007-10-29 23:29:39 +0000689 * src/device-flags.h: split out this as well, Marcus
690 might want it.
Linus Walleij8f4bb042007-10-31 08:59:12 +0000691 * src/libusb-glue.c: consequential movement.
Linus Walleij3e667ae2007-10-29 23:29:39 +0000692 * src/libmtp.c: reference new flag file.
Linus Walleij0b89a7e2007-10-30 22:21:15 +0000693 * src/ptp.c: sync in upstream.
694 * src/ptp.h: dito.
Linus Walleij1a673de2007-10-29 23:10:05 +0000695
Linus Walleij08c90082007-10-25 20:29:53 +00006962007-10-25 Linus Walleij <triad@df.lth.se>
697
698 * Release 0.2.3. Nice bunch of cleaned-up code, sad we had
699 too bump soversion but such is life.
700
Linus Walleijfb28b632007-10-23 21:56:18 +00007012007-10-23 Linus Walleij <triad@df.lth.se>
702
703 * src/libmtp.c: make LIBMTP_Send_File_From_File_Descriptor()
704 survive the case where device->storage is NULL. This happens
705 on the Nokia 3110c.
706
Linus Walleij7752b952007-10-19 20:11:46 +00007072007-10-19 Linus Walleij <triad@df.lth.se>
708
709 * src/libmtp.c: bring the cache handling code together at the
710 end of the file, refactor so as to avoid code duplication,
Linus Walleij4d0deea2007-10-19 21:27:48 +0000711 do things in one place only and looking good. Get folder
712 list recursively instead, this works better with fast dir
713 retrieveal I think.
Linus Walleij7752b952007-10-19 20:11:46 +0000714
Linus Walleij26d42da2007-10-18 14:02:02 +00007152007-10-18 Linus Walleij <triad@df.lth.se>
716
717 * src/libmtp.c: fix the deletion of cached properties when
718 removing objects. This code was seriously broken.
719
jefferaida9687e2007-10-16 16:44:15 +00007202007-10-16 Jeff Mitchell <kde-dev@emailgoeshere.com>
721
Linus Walleijc5908a02007-10-16 20:42:08 +0000722 * src/libusb-glue.c: remove the previously-concatenated vendor
723 and product string "name" field as it's now redundant
724 * src/Makefile.am: interface to libmtp.so.7.0.0 (incompatible,
725 device_entry_struct members changed)
726 * examples/hotplug.c: port to use vendor and product instead of
727 name, also some useful commenting in the fdi file
jefferaida9687e2007-10-16 16:44:15 +0000728
Linus Walleij06542122007-10-14 22:13:48 +00007292007-10-15 Linus Walleij <triad@df.lth.se>
730
731 * src/libusb-glue.c: repair headers, don't just ignore them.
Linus Walleijf9267e92007-10-15 21:07:37 +0000732 Add support for broken set object proplist devices. Motorola
733 RAZR2 V8 has this problem.
734 * src/libusb-glue.h: flag for broken set object proplist.
735 * libmtp.c: avoid broken set object proplist.
Linus Walleij06542122007-10-14 22:13:48 +0000736
jefferaida9687e2007-10-16 16:44:15 +00007372007-10-09 Jeff Mitchell <kde-dev@emailgoeshere.com>
738
Linus Walleijc5908a02007-10-16 20:42:08 +0000739 * src/libusb-glue.c: add separate vendor and product strings
740 in device entry structs
jefferaida9687e2007-10-16 16:44:15 +0000741 * src/libmtp.h.in: update device entry structs to reflect this
742
Linus Walleija91f8892007-10-04 21:25:22 +00007432007-10-04 Linus Walleij <triad@df.lth.se>
744
745 * src/libusb-glue.c: rm some pointless confusing defines
746 inherited from libgphoto2.
Linus Walleij2ec6ff52007-10-04 22:20:43 +0000747 * configure.ac: bump to 0.2.2
748 * src/Makefile.am: interface to libmtp.so.6.0.2 (compatible)
749 * Release as 0.2.2. Now is as good time as ever. Release
750 early and release often.
Linus Walleija91f8892007-10-04 21:25:22 +0000751
Linus Walleij41e75b22007-10-03 21:58:06 +00007522007-10-03 Linus Walleij <triad@df.lth.se>
753
754 * src/libusb-glue.c: tag the OLD Creative devices with
755 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL, after clear
756 indications that it was broken when retrieveing folders
757 on all those devices. The newer devices (those supporting
758 32bit object size) presumably does not have this limitation.
759
Linus Walleijca2a1702007-10-02 20:41:45 +00007602007-10-02 Linus Walleij <triad@df.lth.se>
761
762 * src/libmtp.c: devices which represented file size with a
763 32bit value (some Creative devices) would return a bananas
Linus Walleij1d877372007-10-02 21:21:57 +0000764 file size. Fixed it up by...
765 * src/libmtp.h.in: recycling the uint8_t "interface"
Linus Walleijddaba2f2007-10-02 21:20:30 +0000766 field in the device struct as a holder of the object size
767 for the device. This will make the new library binary
768 compatible with version 0.2.1 since no-one should *ever*
769 dereference that value (which used to be the USB interface
770 number and is now the object size).
Linus Walleijca2a1702007-10-02 20:41:45 +0000771 * examples/files.c: display 64bit file sizes in hex correctly.
772
Richard Low99a93e82007-09-29 08:16:08 +00007732007-09-29 Richard Low <richard@wentnet.com>
774
775 * src/libmtp.c: avoid crash on failed connect
776
Linus Walleij8e3af002007-09-28 19:21:54 +00007772007-09-28 Linus Walleij <triad@df.lth.se>
778
779 * src/libusb-glue.h: introduce a new device flag for devices that
780 have broken PTP headers, first encountered on the Creative
781 ZEN 8GB.
782 * src/libusb-glue.c: attempt to begin to work around the broken
783 PTP headers.
784
Linus Walleij29f03ba2007-09-25 19:22:12 +00007852007-09-25 Linus Walleij <triad@df.lth.se>
786
787 * src/libusb-glue.h: add a new device flag for devices that don't
788 like it if you release the interface (or try to clear endpoints).
789 * src/libusb-glue.c: dito, implement this flag, tag all SanDisk
790 Sansa devices with it except for the Linux-based Sansa Connect.
791
Richard Low61edc1a2007-09-23 10:35:48 +00007922007-09-23 Richard Low <richard@wentnet.com>
793
794 * src/libusb-glue.c: updated some device flags, removed second
795 call to ptp_getdeviceinfo
796 * src/libmtp.c: property cache fixes
797
Linus Walleij7783b9b2007-09-22 22:10:44 +00007982007-09-23 Linus Walleij <triad@df.lth.se>
799
800 * src/libmtp.c: wrapped updating of playlists and albums into an
801 abstract function so we do it consistently. Added support for
802 tagging on modification date to files, tracks, playlists and
803 albums.
804
Linus Walleij580aff72007-09-21 13:02:19 +00008052007-09-21 Linus Walleij <triad@df.lth.se>
806
807 * src/libusb-glue.c: flag the Samsung YH-820 with
808 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL after tests by Stephan
809 Fabel.
810
Linus Walleijda17cda2007-09-18 21:12:05 +00008112007-09-18 Linus Walleij <triad@df.lth.se>
812
813 * src/libusb-glue.c: stop the endpoint unhalting/unstalling when
814 closing the USB device. It was AYBABTU the Samsungs
815 (and others).
816
Linus Walleij724f0102007-09-17 20:10:12 +00008172007-09-17 Linus Walleij <triad@df.lth.se>
818
819 * src/libusb-glue.c: silenced weirdo error message.
820
Linus Walleijb644b412007-09-16 21:46:02 +00008212007-09-16 Linus Walleij <triad@df.lth.se>
822
823 * src/ptp.c: cancellation working *as it should*
824 * src/ptp.h: dito.
825 * src/libusb-glue.c: dito.
826 * src/libusb-glue.h: dito.
827 * src/libmtp.c: dito.
828 * src/libmtp.h.in: new error code for cancellation.
829
Richard Lowe9f205f2007-09-16 16:25:50 +00008302007-09-16 Richard Low <richard@wentnet.com>
831
832 * src/libusb-glue.c: only read descriptors for devices we
833 don't know since it breaks on some devices
Richard Lowd7bcab52007-09-16 16:30:20 +0000834 * src/libmtp.c: a couple of bugs fixed in metadata retreival
Richard Lowe9f205f2007-09-16 16:25:50 +0000835
Linus Walleij3e418e22007-09-15 20:30:14 +00008362007-09-15 Linus Walleij <triad@df.lth.se>
837
838 * src/ptp.c: get cancellation of xfers working.
839 * src/libusb-glue.c: dito.
840 * src/libusb-glue.h: dito.
841 * src/libmtp.c: dito.
842
Linus Walleijf43558d2007-09-14 17:59:20 +00008432007-09-14 Linus Walleij <triad@df.lth.se>
844
845 * src/ptp.h: sync in upstream to get cancellation prototypes.
Linus Walleijbd3bf9e2007-09-14 19:31:54 +0000846 * src/libusb-glue.c: first try to implement cancellation.
Linus Walleij997d3ec2007-09-14 21:29:54 +0000847 * src/libmtp.c: dito. Bugfix to one of Marcus' realloc():s.
Linus Walleijf43558d2007-09-14 17:59:20 +0000848
Linus Walleij1e9a0332007-09-12 19:35:56 +00008492007-09-12 Marcus Meissner <meissner@suse.de>
850
851 * src/ptp-pack.c: sync to upstream, rewrote packing to use
852 a static array to be qsort():ed when reading in proplists.
853 * src/ptp.c: reflect changes.
854 * src/ptp.h: reflect changes.
855 * src/libmtp.c: reflect changes.
856
Linus Walleij71b8c0f2007-09-06 09:09:14 +00008572007-09-06 Linus Walleij <triad@df.lth.se>
858
859 * examples/hotplug.c: edit up into a udev ruleset that is
860 inexorably complicated but probably compatible with most
861 udev versions out there. Now please DON'T update udev
862 styles again!
863
Richard Low17cec172007-09-05 20:43:51 +00008642007-09-05 Richard Low <richard@wentnet.com>
865
866 * src/libmtp.c: album fixups
867
Linus Walleij50d47a52007-09-05 07:59:40 +00008682007-09-05 Linus Walleij <triad@df.lth.se>
869
870 * examples/hotplug.c: use old udev style by default, use new
871 if requested explicitly by a -U switch.
872
Linus Walleij6bf68b42007-09-03 22:50:02 +00008732007-09-04 Linus Walleij <triad@df.lth.se>
874
875 * src/libmtp.c: make sure we query recursively supplying each
876 storage ID in turn, so we spin over storages. Also check
877 what storage may be available to store a file, if the first
878 one fails, try the next!
879
Linus Walleija0b7d042007-08-31 23:57:31 +00008802007-09-01 Linus Walleij <triad@df.lth.se>
881
882 * src/ptp-pack.c: make the resulting MTP proplist sorted by
883 object ID.
Linus Walleij70ac9772007-09-01 18:59:28 +0000884 * hotplug.sh.in: explicitly call BASH instead of just sh. Warn
885 if script is not run as root.
Linus Walleija0b7d042007-08-31 23:57:31 +0000886
Linus Walleijf4592072007-08-29 10:19:25 +00008872007-08-29 Linus Walleij <triad@df.lth.se>
888
889 * examples/Makefile.am: move include define from AM_CFLAGS to
890 AM_CPPFLAGS (as it should be) bug found by Petar Petrov
891 <pesho.petrov@gmail.com>.
Linus Walleijb0ab5482007-08-29 21:08:54 +0000892 * src/libusb-glue.c: strange misleading message corrected. Fix
893 up the horrid interface passing back-and-forward and confusing.
894 * src/libusb-glue.h: dito.
895 * src/libmtp.c: rid interface references, that's a USB issue!
896 * src/libmtp.h.in: flag interface number in device struct as retired.
Linus Walleijf4592072007-08-29 10:19:25 +0000897
Linus Walleij1b87ea72007-08-28 07:53:09 +00008982007-08-28 Linus Walleij <triad@df.lth.se>
899
900 * src/libmtp.c: retire the horrid, broken, stream send facility that
901 does not work on any device since they all want to know the file
Linus Walleij8533bf72007-08-28 10:03:59 +0000902 size in advance. Add in some code to fall back on the recursive
903 metadata retrieveal if getting the whole long list fails.
Linus Walleij6d0cf972007-08-28 09:48:19 +0000904 * src/libusb-glue.c: tag all Sansas as having broken GetObjectPropList
Linus Walleijc4108242007-08-28 20:38:27 +0000905 when all tags for all objects are requested. Scan each INTERFACE
906 of the device for device descriptors.
Linus Walleij1b87ea72007-08-28 07:53:09 +0000907
Linus Walleijd3b78572007-08-24 21:28:24 +00009082007-08-24 Linus Walleij <triad@df.lth.se>
909
910 * src/libusb-glue.h: new device flag to strip all non-7bit chars from
911 filenames on some lame devices.
912 * src/libusb-glue.c: tag the Philips Shoqbox with this flag.
913 * src/libmtp.c: strip the non-7bit chars from filenames if that
914 flag is set.
915 * src/unicode.h: introduce a 7bit-strip helper function.
916 * src/unicode.c: dito.
917
Linus Walleij29559562007-08-22 21:38:04 +00009182007-08-22 Linus Walleij <triad@df.lth.se>
919
920 * src/libmtp.c: deal with setting of metadata sets for u16/u32:s that
921 are ranges or enums, rounding and twiddling if need be. This is
922 needed because some new devices (like the TrekStor Sweez,
923 has duration defined as a range: MIN 0, MAX 65535000, STEP 1
924 and Sandisk Sansa c240 has duration as range: MIN 0, MAX 2147483000,
925 STEP 1000) whereas old devices would just accept any value.
926
Richard Lowd47b9212007-08-16 21:14:23 +00009272007-08-16 Richard Low <richard@wentnet.com>
928
929 * src/ptp-pack.c: allow packing of NULL strings
930
rreardon21a3a9d2007-08-15 10:56:31 +00009312007-08-15 Robert Reardon <rreardon@monkshatch.vispa.com>
932
933 * src/libmtp.c: return device max values for representative
rreardon65b47322007-08-15 15:17:54 +0000934 samples.
rreardon21a3a9d2007-08-15 10:56:31 +0000935
Richard Low92cb2692007-08-15 09:35:23 +00009362007-08-15 Richard Low <richard@wentnet.com>
937
938 * src/libusb-glue.c: added Philips Shoqbox
939
Linus Walleij53c5f4e2007-08-13 08:27:58 +00009402007-08-13 Linus Walleij <triad@df.lth.se>
941
942 * src/ptp.c: sync to upstream.
943
Linus Walleijdb906232007-08-07 15:59:09 +00009442007-08-07 Linus Walleij <triad@df.lth.se>
945
946 * configure.ac: bump to 0.2.1.
947 * src/Makefile.am: interface to libmtp.so.6.0.1.
948 * Release libmtp 0.2.1!
949
Linus Walleijdbcc8242007-08-05 22:31:26 +00009502007-08-06 Linus Walleij <triad@df.lth.se>
951
Linus Walleije23000a2007-08-06 20:47:17 +0000952 * configure.ac: tag on the large file support compilation flag.
Linus Walleij07795772007-08-06 18:44:06 +0000953 * src/libmtp.c: smack up the data file transfer function so it
954 works again and *finally* should support 64bit sizes!
Linus Walleijd2778d12007-08-06 19:24:58 +0000955 Then wrapped the track sending function around the file
956 sending function so there is no more pointless code duplication
Linus Walleij05358382007-08-06 20:46:35 +0000957 giving rise to ever more bugs. Enable LFS, Large File Support so
958 we can handle 64bit files properly.
959 * examples/sendtr.c: shape up print-outs, LFS support.
Linus Walleijd2778d12007-08-06 19:24:58 +0000960 * examples/sendfile.c: dito.
Linus Walleij07795772007-08-06 18:44:06 +0000961
9622007-08-06 Linus Walleij <triad@df.lth.se>
963
Linus Walleijdbcc8242007-08-05 22:31:26 +0000964 * src/ptp.c: fixed a stray error print bug.
965 * src/libmtp.c: overhaul of all proplist setting to follow the same
966 design pattern. Probably fixed a few opd memory leaks along the road.
967
Richard Lowfd86bd12007-08-05 09:41:06 +00009682007-08-05 Richard Low <richard@wentnet.com>
969
970 * src/libmtp.c: send 64 bit filesize
971
Linus Walleijd9d28d52007-08-04 19:01:18 +00009722007-08-04 Linus Walleij <triad@df.lth.se>
973
974 * src/libmtp.c: fix up the 64bit filesize and tracksize support.
975 There were some bugs...
Linus Walleij529d08f2007-08-04 19:20:00 +0000976 * src/Makefile.am: tweak interface revision so that we produce
977 libmtp.so.6 now.
978 * configure.ac: bump library revision to 0.2.0.
Linus Walleij2f049902007-08-04 20:02:39 +0000979 * examples/hotplug.c: switch to use ATTR{} instead of SYSFS{}
Linus Walleijdbcc8242007-08-05 22:31:26 +0000980 * Release libmtp 0.2.0!
Linus Walleijd9d28d52007-08-04 19:01:18 +0000981
Richard Low25bf8002007-08-04 08:36:53 +00009822007-08-04 Richard Low <richard@wentnet.com>
983
984 * src/libusb-glue.c: add Sansa m240 (a different ID to before)
985 Give the Toshiba Gigabeat S
986 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL.
987
9882007-08-03 Marcus Meissner <meissner@suse.de>
Linus Walleij960ebb62007-08-03 21:38:34 +0000989
990 * m4/byteorder.m4: byteorder fixes.
991
Richard Lowcc265902007-07-30 20:14:12 +00009922007-07-30 Richard Low <richard@wentnet.com>
993
994 * src/ptp-pack.c: fix up array packing
995
Linus Walleijabf54752007-07-30 19:51:54 +00009962007-07-30 Linus Walleij <triad@df.lth.se>
997
998 * src/ptp-pack.c: try to get a uniform 64 bit
999 support, use some old macro code.
1000
Richard Lowc3f5fc32007-07-29 09:40:50 +000010012007-07-29 Richard Low <richard@wentnet.com>
1002
1003 * src/libmtp.c: 64 bit filesize support for tracks
1004 * src/ptp-pack.c: ditto
1005 * src/ptp.h: ditto
1006
Richard Low39a147a2007-07-27 20:18:01 +000010072007-07-27 Richard Low <richard@wentnet.com>
1008
1009 * src/libmtp.c: Some better NULL checks
1010
Linus Walleijc51a4312007-07-27 06:28:39 +000010112007-07-27 Linus Walleij <triad@df.lth.se>
1012
1013 * examples/hotplug.c: changed subsystem from "usb_device"
1014 to "usb". Presumably a change in the kernel some time ago.
1015
Richard Lowbd14bf42007-07-21 11:25:11 +000010162007-07-21 Richard Low <richard@wentnet.com>
1017
1018 * src/libmtp.c: Correctly bail out of LIBMTP_Get_Storage
1019
Linus Walleij5d533bb2007-07-17 21:48:57 +000010202007-07-17 Linus Walleij <triad@df.lth.se>
1021
1022 * examples/reset.c: Add a device reset program.
1023 * src/libmtp.c: Add reset command.
1024 * src/ptp.c: dito, and sync in upstream changes.
1025 * src/ptp.h: dito, and sync in upstream changes.
1026 * src/ptp-pack.c: sync in upstream changes.
1027
Richard Low0fa83522007-07-17 20:05:08 +000010282007-07-17 Richard Low <richard@wentnet.com>
1029
1030 * src/libmtp.c: Added some more (paranoid) NULL checks
1031
Richard Low8e8d9d42007-07-14 10:36:50 +000010322007-07-14 Richard Low <richard@wentnet.com>
1033
1034 * src/libmtp.c: Add a NULL check
1035
10362007-07-13 Richard Low <richard@wentnet.com>
Richard Low14afeb72007-07-13 19:11:56 +00001037
1038 * src/libusb-glue.c: add Disney MixMax
1039
Linus Walleij9521e2b2007-07-10 21:50:42 +000010402007-07-11 Linus Walleij <triad@df.lth.se>
1041
1042 * src/libmtp.c: put in Tero's name in the preamble.
1043 * src/libusb-glue.c: make the dump function sump out the zuper zecret
1044 devize dezcriptorz in clear text hex.
1045
Linus Walleij3e13dda2007-07-09 22:42:17 +000010462007-07-10 Linus Walleij <triad@df.lth.se>
1047
Linus Walleijc51a4312007-07-27 06:28:39 +00001048 * examples/hotplug.c: force HAL OGG support on iriver devices.
1049 They all have it! Also force for two other devices that does
1050 this.
Linus Walleij3e13dda2007-07-09 22:42:17 +00001051
Linus Walleij2b218852007-07-07 20:16:36 +000010522007-07-07 Linus Walleij <triad@df.lth.se>
1053
1054 * src/libusb-glue.h: new flag for the case when getting the object
1055 property list of all metadata for all objects is broken.
1056 * src/libusb-glue.c: tentatively tag a Philips device with this flag.
1057 * src/libmtp.c: fixed usage of returned pointers from realloc(),
1058 introduce new flag.
1059
tsaarnia3eb60a2007-07-06 17:41:30 +000010602007-07-05 Tero Saarni <tero.saarni@gmail.com>
1061
1062 * src/libmtp.c: update cache when manipulating objects instead of
1063 always flushing the whole cache.
1064
Linus Walleij338ade42007-07-03 20:44:08 +000010652007-07-03 Linus Walleij <triad@df.lth.se>
1066
1067 * src/libmtp.c: use the params->proplist metadata cache. Help
1068 rid all flush_handles() you can in order to add even more to
1069 the efficiency of the cache.
1070
Linus Walleijf0bf4372007-07-01 21:47:38 +000010712007-07-01 Linus Walleij <triad@df.lth.se>
1072
1073 * src/ptp.c: sync to upstream gPhoto source.
1074 * src/ptp.h: dito.
1075 * src/ptp-pack.c: dito.
1076 * src/libmtp.c: use the params->objectinfo object info cache to
1077 speed things up considerably. This is exactly what libgphoto2
1078 does so now we move closer to upstream. I believe this also
1079 fixes quite a few memory leaks because we weren't freeing the
1080 strings inside the objectinfo previously.
1081
Linus Walleije60d56b2007-05-28 22:13:12 +000010822007-05-29 Linus Walleij <triad@df.lth.se>
1083
1084 * src/libmtp.c: use the set object prop list command to set album
1085 props if available. Follow metadata set design pattern used for
1086 tracks; check first if the object type can set name/artist/genre.
1087
jefferaida9687e2007-10-16 16:44:15 +000010882007-05-24 Jeff Mitchell <kde-dev@emailgoeshere.com>
jefferaif28f2a12007-05-24 23:07:41 +00001089
Linus Walleije60d56b2007-05-28 22:13:12 +00001090 * hotplug.sh.in: Properly install the HAL FDI rules if
jefferaie3f1bba2007-05-24 23:27:13 +00001091 the user so chooses to when prompted.
1092
jefferaida9687e2007-10-16 16:44:15 +000010932007-05-24 Jeff Mitchell <kde-dev@emailgoeshere.com>
jefferaie3f1bba2007-05-24 23:27:13 +00001094
Linus Walleije60d56b2007-05-28 22:13:12 +00001095 * examples/hotplug.c: Fix/update HAL output to conform
jefferaif28f2a12007-05-24 23:07:41 +00001096 to new specs. Fix whitespacing to be consistent.
1097
Richard Low34a624a2007-05-17 12:32:35 +000010982007-05-17 Richard Low <richard@wentnet.com>
1099
1100 * src/libusb-glue.c: added Samsung YH-920
1101
Linus Walleij99466e32007-05-11 21:42:53 +000011022007-05-11 Linus Walleij <triad@df.lth.se>
1103
1104 * examples/hotplug.c: output a usb.ids map if need be.
1105 * sync-usbids.sh: script to assist in comparing our device
1106 database to the linux-usb database so we can submit new
1107 entries to it more easily. Please extend this until it
1108 creates automated diff:s if you can!
1109
Linus Walleij229b24b2007-05-09 22:10:55 +000011102007-05-10 Linus Walleij <triad@df.lth.se>
1111
1112 * src/libusb-glue.c: some new devices, some rewording etc.
1113
Linus Walleij4fa9d5e2007-05-05 20:35:56 +000011142007-05-05 Linus Walleij <triad@df.lth.se>
1115
1116 * src/libusb-glue.h: removed the DUALMODE flag, it's pointless and
1117 equal to the problem solved by the UNLOAD_DRIVER flag.
1118 * src/libusb-glue.c: dito, move the only DUALMODE flag into an
Linus Walleij1327a852007-05-06 19:47:38 +00001119 UNLOAD_DRIVER flag. Added Archos Gmini.
Linus Walleij4fa9d5e2007-05-05 20:35:56 +00001120
Richard Low6711f442007-05-05 19:00:59 +000011212007-05-05 Richard Low <richard@wentnet.com>
1122
1123 * src/libusb-glue.c: added Philips PSA610
1124 * src/libmtp.c: code to recursively get object handles for each
1125 assoc.
Linus Walleij4fa9d5e2007-05-05 20:35:56 +00001126 * src/ptp.h: ditto
Richard Low6711f442007-05-05 19:00:59 +00001127
Richard Low1869d272007-04-28 13:55:17 +000011282007-04-28 Richard Low <richard@wentnet.com>
1129
1130 * src/libusb-glue.c: new device
1131
Linus Walleijeccaae02007-04-26 08:19:03 +000011322007-04-26 Linus Walleij <triad@df.lth.se>
1133
Linus Walleij4fa9d5e2007-05-05 20:35:56 +00001134 * src/libusb-glue.c: memory leak: dangling, unused pointer killed.
Linus Walleijeccaae02007-04-26 08:19:03 +00001135
Linus Walleijadce4a52007-04-23 07:28:11 +000011362007-04-23 Linus Walleij <triad@df.lth.se>
1137
1138 * src/libmtp.h.in: extend LIBMTP_album_t to include fields for
1139 artist and genre. This is sort of required so we must change
1140 the API to have it working properly.
1141 * src/libmtp.c: dito. Reflect changes in implementation.
1142
Linus Walleij953504f2007-04-18 19:01:11 +000011432007-04-18 Linus Walleij <triad@df.lth.se>
1144
1145 * src/ptp.c: sync to upstream gPhoto source.
1146 * src/ptp.h: dito.
1147
Richard Low3637e1a2007-04-17 21:25:10 +000011482007-04-17 Richard Low <richard@wentnet.com>
1149
1150 * src/libusb-glue.c: new device
1151
Richard Low856f3452007-04-13 11:21:26 +000011522007-04-13 Richard Low <richard@wentnet.com>
1153
1154 * src/libusb-glue.c: new devices
1155
Linus Walleijfd531632007-04-12 19:49:58 +000011562007-04-12 Linus Walleij <triad@df.lth.se>
1157
1158 * examples/hotplug.c: fix GOTO style in udev map.
1159
Linus Walleije73f74a2007-04-02 08:51:35 +000011602007-04-02 Linus Walleij <triad@df.lth.se>
1161
1162 * examples/files.c: some WIN32 64bit prefix fixup.
1163 * examples/tracks.c: dito.
1164
tedbullockcd9f4992007-03-29 06:00:40 +000011652007-03-28 Ted Bullock <tbullock@canada.com>
1166
Linus Walleije73f74a2007-04-02 08:51:35 +00001167 * examples/*.c: Print library version number on execution of examples.
1168 * src/libmtp.h.in: New version number string to aid version echoing.
tedbullockcd9f4992007-03-29 06:00:40 +00001169
Linus Walleij3968f362007-03-26 19:50:05 +000011702007-03-26 Linus Walleij <triad@df.lth.se>
1171
1172 * configure.ac: bump version to 0.1.5, release 0.1.5!
1173 * src/Makefile.am: bump lib interface revision to libmtp.so.5.2.1,
1174 backwards compatible to libmtp.so.5.
1175
Richard Low057ea772007-03-24 13:37:38 +000011762007-03-24 Richard Low <richard@wentnet.com>
1177
1178 * src/libusb-glue.c: fixed bug in zero read code
1179
Linus Walleije7df6532007-03-23 08:20:06 +000011802007-03-23 Linus Walleij <triad@df.lth.se>
1181
1182 * src/libmtp.c: refactored MTP property list handling code to make
1183 things simple. Removed the flag for MTP enhanced: there are devices
Linus Walleij3968f362007-03-26 19:50:05 +00001184 that will not work without MTP enhanced (for example the Samsung
1185 YP-K5 will only support setting object property lists, not
1186 individual object properties, leaving out parts of the MTP basic
1187 subset), thus we are allowed to reverse-engineer and implement this
1188 for interoperability. I also made the output from
1189 LIBMTP_Dump_Device_Info() considerably more verbose, plotting out
1190 the ranges and possible enumerated values of all object properties.
1191 For example you can see that the secret values associated with
1192 Audible.com property 0xda01 is an enumerated value that can be
1193 2, 3 or 4 (etc).
Linus Walleije7df6532007-03-23 08:20:06 +00001194
Richard Low15731fe2007-03-22 20:27:20 +000011952007-03-22 Richard Low <richard@wentnet.com>
1196
1197 * src/ptp.c: PTP_OC_MTP_SetObjPropList implementation
1198 * src/ptp.h: ditto
1199 * src/libmtp.c: Use PTP_OC_MTP_SetObjPropList when updating track
1200 metadata.
1201
Richard Lowbf2675c2007-03-18 18:20:26 +000012022007-03-18 Richard Low <richard@wentnet.com>
1203
1204 * src/libusb-glue.c: new devices. Some of the Samsung players may
Richard Low6c8fea42007-03-18 19:11:52 +00001205 need DEVICE_FLAG_NO_ZERO_READS to be set - I only know the YP-K5
1206 needs it.
Richard Lowbf2675c2007-03-18 18:20:26 +00001207
Linus Walleij2be40c72007-03-16 15:19:44 +000012082007-03-16 Linus Walleij <triad@df.lth.se>
1209
1210 * src/libusb-glue.h: introducing yet another device flag for the
1211 irivers bugged firmwares, this is for the Alzheimer disease that
1212 cause irivers to forget that OGG files are OGG files.
1213 * src/libmtp.c: dito.
1214 * src/libusb-glue.c: introduce this flag for all iriver devices.
1215 * examples/pathutils.c: found a (small) bug.
1216
Linus Walleijd1292842007-03-12 11:52:00 +000012172007-03-12 Linus Walleij <triad@df.lth.se>
1218
1219 * Makefile.am: cleanup patch from Rafael Laboissiere.
Linus Walleija4942fc2007-03-12 19:23:21 +00001220 * src/libusb-glue.c: refactored device detection code to
1221 immediately test if the device is in the known devices list if it
1222 does not feature a MTP device descriptor. This fixes the problem
1223 of not being able to mix devices with proper descriptors and
1224 non-detected devices.
Linus Walleijd1292842007-03-12 11:52:00 +00001225
Linus Walleijc2c96972007-03-07 08:12:31 +000012262007-03-07 Linus Walleij <triad@df.lth.se>
1227
1228 * src/libusb-glue.c: remove libgphoto2 functions that we
1229 don't use.
Linus Walleij45a86372007-03-07 09:36:19 +00001230 * src/libusb-glue.h: export the free_mtpdevice_list() function,
1231 new signature of find_usb_devices().
1232 * src/libmtp.c: shrink code, pass as list of devices instead of
1233 several huge arrays between libmtp.c and USB glue layer in
1234 libusb-glue.c using the nifty list struct defined in libusb-glue.h.
Linus Walleijd24a7ab2007-03-07 21:48:43 +00001235 * Eventually release libmtp 0.1.4.
Linus Walleijc2c96972007-03-07 08:12:31 +00001236
Linus Walleijbfcb7922007-03-06 20:14:04 +000012372007-03-06 Linus Walleij <triad@df.lth.se>
1238
1239 * src/libusb-glue.c: rewrote one more function to be
1240 non-recursive, perhaps I found the remaining bug, just
1241 cannot see that right now, will test tomorrow.
1242
Linus Walleijf27d1cd2007-03-05 14:23:00 +000012432007-03-05 Linus Walleij <triad@df.lth.se>
1244
1245 * src/libmtp.c: rewrite recursive function to linear.
1246 * src/libusb-glue.h: create a wrapper type for the
1247 device list instead of abusing the libusb device "next"
1248 field in our code.
1249 * src/libusb-glue.c: rewrite all recursive functions to
1250 linear, use wrapper objects, don't copy the libusb device
1251 struct, instead just store a pointer to it. This magically
1252 solved a bug...
1253
Linus Walleij82265222007-03-04 19:47:08 +000012542007-03-04 Linus Walleij <triad@df.lth.se>
1255
1256 * src/Makefile.am: bump library interface to libmtp.so.5.2.0
1257 backwards compatible with any libmtp.so.5 interface, for
1258 imminent libmtp 0.1.4 release.
1259
tedbullock848009b2007-03-03 23:20:12 +000012602007-03-03 Ted Bullock <tbullock@canada.com>
tedbullock36f2afb2007-03-03 22:16:44 +00001261
1262 * src/libusb-glue.c: Don't echo warnings about reading a single
Linus Walleij82265222007-03-04 19:47:08 +00001263 extra byte on devices in which DEVICE_FLAG_NO_ZERO_READS has
1264 been set
tedbullock848009b2007-03-03 23:20:12 +00001265 * src/libmtp.c: New API function to retrieve the number of devices
Linus Walleij82265222007-03-04 19:47:08 +00001266 in a list of connected devices
tedbullock848009b2007-03-03 23:20:12 +00001267 * src/libmtp.h: New API function to retrieve the number of devices
Linus Walleij82265222007-03-04 19:47:08 +00001268 in a list of connected devices
tedbullock848009b2007-03-03 23:20:12 +00001269 * examples/detect.c: Use new API function to count number of devices
Linus Walleij82265222007-03-04 19:47:08 +00001270 that were detected
tedbullock36f2afb2007-03-03 22:16:44 +00001271
tedbullock848009b2007-03-03 23:20:12 +000012722007-03-03 Linus Walleij <triad@df.lth.se>
Linus Walleij049f50c2007-03-03 20:30:43 +00001273
1274 * src/libusb-glue.h: Tiresome ramblings to explain exactly what
tedbullock848009b2007-03-03 23:20:12 +00001275 the (now renamed) device flag DEVICE_FLAG_NO_ZERO_READS really
Linus Walleij049f50c2007-03-03 20:30:43 +00001276 means.
1277 * src/libusb-glue.c: Renamed flag. Indent code :-) Reading the code
1278 and being impressed by our ability to iron out the root cause
Linus Walleij4cec9872007-03-03 21:00:53 +00001279 of this kinda weird thing... Fix a few compile warnings.
Linus Walleij049f50c2007-03-03 20:30:43 +00001280
Richard Low4fd59d62007-03-03 16:34:37 +000012812007-03-03 Richard Low <richard@wentnet.com>
1282
1283 * src/libusb-glue.c: (hopefully) fixed iRiver read errors. Enabled
1284 get object prop lists for Clix since it appears to work.
1285 * src/libusb-glue.h: ditto
1286 * src/ptp.h: ditto
1287
Linus Walleij8a5b8852007-02-28 14:25:39 +000012882007-02-28 Linus Walleij <triad@df.lth.se>
1289
1290 * src/ptp.h: Upstream accepted our patch so synced it in.
1291
Linus Walleij07fde342007-02-27 06:09:46 +000012922007-02-27 Linus Walleij <triad@df.lth.se>
1293
1294 * src/ptp.c: Synced in upstream version which removes the
1295 offending line.
Linus Walleij56b037f2007-02-27 08:04:01 +00001296 * src/libmtp.c: replaces strcmp() for strcasecmp() in folder
1297 detection since Windows and some devices (such as iRivers)
1298 ignore case and user capital letters for default folders.
Linus Walleij07fde342007-02-27 06:09:46 +00001299
tedbullock6c060952007-02-26 19:07:23 +000013002007-02-22 Ted Bullock <tbullock@canada.com>
1301
Linus Walleij07fde342007-02-27 06:09:46 +00001302 * src/ptp.c: Comment out line in ptp_exit_fd_handler that was
1303 closing a file descriptor. This is not the responsibility of
1304 the PTP Layer. Defect and solution found by Rob Reardon
tedbullock6c060952007-02-26 19:07:23 +00001305
Linus Walleij304433d2007-02-26 08:02:47 +000013062007-02-26 Linus Walleij <triad@df.lth.se>
1307
Linus Walleij07fde342007-02-27 06:09:46 +00001308 * src/libmtp.c: Implement a check for PTP_OC_MTP_SetObjectPropValue
1309 in the LIBMTP_Update_Track_Metadata() function, there are
1310 obviously devices that do not support this, but only
1311 PTP_OC_MTP_SetObjPropList instead (such as the Samsung YH 925-GS),
1312 but we haven't implemented that yet. Problems are
Linus Walleij304433d2007-02-26 08:02:47 +00001313 atleast reported correctly now.
1314
Richard Low4eb01122007-02-24 10:11:32 +000013152007-02-24 Richard Low <richard@wentnet.com>
1316
1317 * src/libusb-glue.c: Fix incorrect transfer sizes causing zero
1318 write issues
1319
Linus Walleij039d1dd2007-02-23 22:34:07 +000013202007-02-23 Linus Walleij <triad@df.lth.se>
1321
1322 * src/libmtp.c: Undeprecate getting first device code.
1323
Richard Low0f794762007-02-23 22:06:27 +000013242007-02-23 Richard Low <richard@wentnet.com>
1325
1326 * src/libmtp.c: Fix crash when no devices connected
1327
tedbullock2b45f2e2007-02-23 20:16:37 +000013282007-02-23 Ted Bullock <tbullock@canada.com>
1329
1330 * examples/detect.c: Stub out probe functionality
Richard Low0f794762007-02-23 22:06:27 +00001331 * src/libusb-glue.c: Remove old uni-device cruft code
1332 * src/libusb-glue.h: Remove old uni-device cruft code
tedbullock433d2172007-02-23 22:39:12 +00001333 * Replace LIBMTP_ERROR_N0_DEVICE_ATTACHED with
1334 LIBMTP_ERROR_NO_DEVICE_ATTACHED across entire project
tedbullock2b45f2e2007-02-23 20:16:37 +00001335
tedbullock20eb8202007-02-23 00:33:36 +000013362007-02-22 Ted Bullock <tbullock@canada.com>
1337
1338 * examples/albums.c: Updated to use new multi device code
tedbullock51649202007-02-23 03:04:33 +00001339 * examples/tracks.c: Updated to use new multi device code
1340 * examples/files.c: Updated to use new multi device code
tedbullock20eb8202007-02-23 00:33:36 +00001341
tedbullocke7713642007-02-18 23:10:09 +000013422007-02-18 Ted Bullock <tbullock@canada.com>
1343
1344 * src/libmtp.c: Altered the function LIBMTP_Get_First_Device
Linus Walleij039d1dd2007-02-23 22:34:07 +00001345 to wrap around the multi device API. Also added deprecation
1346 warnings to avoid using this function
tedbullocke7713642007-02-18 23:10:09 +00001347
Richard Lowd284f072007-02-17 08:52:41 +000013482007-02-17 Richard Low <richard@wentnet.com>
1349
Richard Low02724f62007-02-17 09:47:26 +00001350 * src/libusb-glue.c: Debug output fixes and read/write sizes changed
Richard Low507e7fe2007-02-17 09:04:42 +00001351 * src/libmtp.c: memset params to 0 to avoid freeing unalloced
1352 memory
Richard Low02724f62007-02-17 09:47:26 +00001353 * src/ptp.h: read/write sizes changed
Richard Lowd284f072007-02-17 08:52:41 +00001354
rreardonbc730092007-02-15 14:32:20 +000013552007-02-15 Robert Reardon <rreardon@monkshatch.vispa.com>
rreardon34511b12007-02-15 14:27:56 +00001356
1357 * src/libmtp.c: Fix a segfault in new error handling code.
1358
Linus Walleij68b19c02007-02-15 11:50:37 +000013592007-02-15 Linus Walleij <triad@df.lth.se>
1360
1361 * src/libmtp.c: Adding some sanity checks to error stack code.
Linus Walleij3d78c4c2007-02-15 12:18:12 +00001362 * examples/newplaylist.c: LGPL boilerplate, crediting Robert.
1363 * examples/playlists.c: LGPL boilerplate.
1364 * examples/sendfile.c: LGPL boilerplate, crediting me and Chris.
1365 * examples/sendtr.c: LGPL boilerplate, crediting me, Chris,
1366 Shaun, Enrique.
1367 * examples/thumb.c: LGPL boilerplate, crediting Robert.
1368 * examples/tracks.c: LGPL boilerplate.
1369 * examples/trexist.c: LGPL boilerplate, crediting noone.
Linus Walleij68b19c02007-02-15 11:50:37 +00001370
tedbullock69a445b2007-02-15 07:41:04 +000013712007-02-15 Ted Bullock <tbullock@canada.com>
1372
1373 * examples/folders.c: Updated to use new multi device code
1374 * src/libmtp.c: Fixed potential memory leaks
Linus Walleij57c2eff2007-02-15 12:02:04 +00001375 * src/libusb-glue.c: Fixed potential memory leaks and fixed device
1376 release segfault for multiple devices
tedbullock69a445b2007-02-15 07:41:04 +00001377
tedbullock0f033cb2007-02-14 20:56:54 +000013782007-02-14 Ted Bullock <tbullock@canada.com>
1379
Linus Walleij57c2eff2007-02-15 12:02:04 +00001380 * src/libusb-glue.c: Wrote three new recursive functions to avoid
1381 extreme levels of multiple indirection and to clean the code up
1382 a bit for multiple devices.
1383 * examples/detect.c: Adjusted function calls to use new multiple
1384 device code.
tedbullock0f033cb2007-02-14 20:56:54 +00001385 * src/libmtp.h.in: Added prototype for LIBMTP_Release_Device_List
1386
Linus Walleij2d3f7b82007-02-14 09:24:20 +000013872007-02-12 Ted Bullock <tbullock@canada.com>
1388
1389 * src/libmtp.c: Two new functions (create_usb_mtp_devices and
Linus Walleij57c2eff2007-02-15 12:02:04 +00001390 LIBMTP_Get_Connected_Devices) to add support for multiple devices
1391 to client applications
Linus Walleij2d3f7b82007-02-14 09:24:20 +00001392 * src/libmtp.h: Added LIBMTP_Get_Connected_Devices as a publicly
Linus Walleij57c2eff2007-02-15 12:02:04 +00001393 accessible function
Linus Walleij2d3f7b82007-02-14 09:24:20 +00001394 *libusb-glue.c: Renamed connect_mtp_devices to find_usb_devices
1395 *libusb-glue.h: Renamed connect_mtp_devices to find_usb_devices
1396
Linus Walleij2a1e3a42007-02-12 08:18:31 +000013972007-02-09 Ted Bullock <tbullock@canada.com>
1398
1399 * src/libusb-glue.c: Addressed a number of potential memory leaks in
Linus Walleij57c2eff2007-02-15 12:02:04 +00001400 the new multiple device code
Linus Walleij2a1e3a42007-02-12 08:18:31 +00001401
Linus Walleij7b7a0e22007-02-05 18:22:27 +000014022007-02-05 Linus Walleij <triad@df.lth.se>
1403
1404 * src/libmtp.h.in: LGPL boilerplate.
1405 * src/libusb-glue.h: LGPL boilerplate.
1406 * src/unicode.h: LGPL boilerplate.
1407 * src/util.h: LGPL boilerplate.
Linus Walleij543badf2007-02-05 19:07:38 +00001408 * examples/albumart.c: LGPL boilerplate, crediting Andy.
1409 * examples/pathutils.h: LGPL boilerplate, crediting Chris.
1410 * examples/pathutils.c: LGPL boilerplate, crediting me and Chris.
1411 * examples/common.h: LGPL boilerplate.
1412 * examples/albums.c: LGPL boilerplate, crediting Chris.
1413 * examples/connect.c: LGPL boilerplate, crediting Chris.
1414 * examples/delfile.c: LGPL boilerplate, crediting me and Chris.
1415 * examples/detect.c: LGPL boilerplate.
1416 * examples/emptyfolders.c: LGPL boilerplate, crediting Andy.
1417 * examples/files.c: LGPL boilerplate.
1418 * examples/folders.c: LGPL boilerplate.
1419 * examples/format.c: LGPL boilerplate.
1420 * examples/getfile.c: LGPL boilerplate, crediting me and Chris.
1421 * examples/getplaylist.c: LGPL boilerplate.
1422 * examples/hotplug.c: LGPL boilerplate, crediting me and Marcus.
1423 * examples/newfolder.c: LGPL boilerplate, crediting me and Chris.
Linus Walleij7b7a0e22007-02-05 18:22:27 +00001424
Linus Walleija8a19cc2007-02-02 22:13:17 +000014252007-02-02 Linus Walleij <triad@df.lth.se>
1426
1427 * src/ptp.c: sync upstream.
1428 * src/ptp.h: dito.
1429 * src/ptp-pack.c: dito.
1430 * src/libmtp.c: make changes necessary to handle
1431 the new iconv(3) code in ptp-pack.c. People will have to
Linus Walleij073c4172007-02-02 22:26:33 +00001432 use recent stdlibc, glibc or libiconv. Also call new memory
Linus Walleij2f45d222007-02-02 22:47:39 +00001433 clean-up functions. Fix LGPL boilerplate text.
1434 * src/unicode.c: Fix LGPL boilerplate text.
1435 * src/utils.c: Fix LGPL boilerplate text.
1436 * src/libusb-glue.c: Fix LGPL boilerplate text.
Linus Walleija8a19cc2007-02-02 22:13:17 +00001437
Linus Walleij550d6d52007-01-24 14:32:51 +000014382007-01-24 Ted Bullock <tbullock@canada.com>
1439
1440 * src/libusb-glue.c: new function to retrieve multiple device
1441 instances.
1442 * src/libusb-glue.h: dito.
1443 * src/libmtp.h.in: new error codes.
1444
Linus Walleij070e9b42007-01-22 08:49:28 +000014452007-01-22 Linus Walleij <triad@df.lth.se>
1446
1447 * examples/albumart.c: use the new errostack.
1448 * examples/delfile.c: dito.
1449 * examples/detect.c: dito.
1450 * examples/emptyfolders.c: dito.
1451 * examples/format.c: dito.
1452 * examples/getfile.c: dito.
1453 * examples/getplaylist.c: dito.
1454 * examples/newfolder.c: dito.
1455 * examples/newplaylist.c: dito.
1456 * examples/playlists.c: dito.
1457 * examples/sendfile.c: dito.
1458 * examples/sendtr.c: dito.
1459 * examples/thumb.c: dito.
1460 * src/libmtp.c: add some errors to the stack so we can
1461 see how it's to be used. (Just a first try...)
Linus Walleij552ba322007-01-22 11:49:59 +00001462 * src/libusb-glue.c: move the LIBMTP_Get_Supported_Devices()
1463 function into this file cause it only return USB devices
1464 anyway and could be renamed LIBMTP_Get_Supported_USB_Devices()
1465 (but let's not do that renaming since it would break the API).
1466 For now let's understand this is a USB-only function by
1467 simply putting it in the libusb-glue.c file.
Linus Walleij070e9b42007-01-22 08:49:28 +00001468
14692007-01-22 Ted Bullock <tbullock@canada.com>
1470
1471 * src/libusb-glue.c: first hack at creating an interface
1472 to retrieve multiple devices.
1473 * src/libmtp.h.in: new error codes related to multiple devices.
1474
Richard Low7059ed42007-01-21 09:33:34 +000014752007-01-21 Richard Low <richard@wentnet.com>
1476
1477 * src/libusb-glue.c: more new devices
1478
Linus Walleij2715c442007-01-20 22:35:29 +000014792007-01-20 Linus Walleij <triad@df.lth.se>
1480
1481 * src/libmtp.h.in: error stack handling like in libnjb.
1482 just bare bones implementation as of now but the idea
1483 should be clearly visible. TODO: add a plethora of
1484 errors and adjust examples to make use of the error
1485 stack.
1486 * src/libmtp.c: dito.
1487
Richard Lowa98d0542007-01-20 12:31:07 +000014882007-01-20 Richard Low <richard@wentnet.com>
1489
1490 * src/libusb-glue.c: new device 'Philips PSA235'
1491
Linus Walleij85a4c032007-01-16 20:42:18 +000014922007-01-16 Linus Walleij <triad@df.lth.se>
1493
1494 * configure.ac: bump and release 0.1.3.
1495 * src/Makefile.am: bump interface REVISION. Nothing changed
1496 externally really.
1497
Linus Walleijd85d2bb2007-01-11 21:32:48 +000014982007-01-11 Linus Walleij <triad@df.lth.se>
1499
1500 * src/libmtp.sym: updated symbol table for mingw32 but does
1501 anyone use this? Also I believe one could auto-generate
1502 this some way, just haven't figured out how... Perhaps with
1503 a funky script that massage libmtp.h if nothing else.
1504
Richard Low4df32f82007-01-11 20:04:39 +000015052007-01-11 Richard Low <richard@wentnet.com>
1506
1507 * src/libusb-glue.c: a zero read fix
1508 * src/libmtp.c: fix spelling mistake
1509
Linus Walleijc49c6372007-01-09 00:18:51 +000015102007-01-09 Linus Walleij <triad@df.lth.se>
1511
1512 * src/libusb-glue.c: repair callbacks, structure the code just
1513 a little bit.
1514 * src/libmtp.c: don't assign values to writes or reads, use the
1515 PTP transport intrinsics instead.
1516
Linus Walleij15af8532007-01-07 12:45:20 +000015172007-01-07 Orson Teodoro <orsonteodoro@yahoo.com>
1518
1519 * src/ptp.h: Encoding profile.
1520 * src/ptp.c: Dito.
1521
Linus Walleij58b62792007-01-07 12:38:59 +000015222006-01-07 Linus Walleij <triad@df.lth.se>
1523
1524 * src/libusb-glue.c: (re)introduce de-halting of endpoints
1525 as this is needed by VMWare emulation. Must check whether
Linus Walleijb97379b2007-01-07 12:42:20 +00001526 this causes problems for other archs! Problem was reported
1527 by Orson Teodoro under i686 Gentoo, with a suggested patch.
Linus Walleij58b62792007-01-07 12:38:59 +00001528
Linus Walleija0323272007-01-07 12:21:30 +000015292006-01-07 Marcus Meissner <meissner@suse.de>
1530
1531 * src/ptp.c: sync to upstream libgphoto2.
1532 * src/ptp.h: dito.
1533 * src/ptp-pack.c: dito.
1534 * libusb-glue.c: fixes to move low-level functions
1535 out of ptp.c and into this libmtp-specific portion.
1536 libgphoto2 has been similarly altered to use a usb.c
1537 file for the low-level stuff. (This was a long needed
1538 split anyway.)
1539
Linus Walleij58b62792007-01-07 12:38:59 +000015402007-01-03 Richard Low <richard@wentnet.com>
Richard Low68f45882007-01-03 10:08:31 +00001541
1542 * src/libusb-glue.c: fix zero write bug
Richard Lowef05b892007-01-03 21:18:56 +00001543 * src/ptp.c: ditto
Richard Low68f45882007-01-03 10:08:31 +00001544
Linus Walleij99ed83c2007-01-02 18:46:02 +000015452007-01-02 Linus Walleij <triad@df.lth.se>
1546
1547 * src/libusb-glue.c: fix up comments, remove things
1548 refering to stuff we don't have.
1549
Richard Lowb89ea942007-01-02 11:47:19 +000015502007-01-02 Richard Low <richard@wentnet.com>
1551
1552 * src/libmtp.c: another try at split headers/packet sizes
1553 * src/ptp.c: ditto
1554 * src/libusb-glue.c: ditto
1555
Linus Walleijc70a6df2007-01-01 22:19:08 +000015562007-01-01 Linus Walleij <triad@df.lth.se>
1557
1558 * src/libmtp.c: move default setting of split headers
1559 off to ptp.c open session.
1560 * src/ptp.c: dito.
1561
Richard Low021421e2007-01-01 18:08:57 +000015622007-01-01 Richard Low <richard@wentnet.com>
1563
1564 * src/libmtp.c: split headers/packet size fix
1565 * src/ptp.c: ditto
1566 * src/ptp.h: ditto
1567 * src/libusb-glue.c: ditto
1568
Linus Walleijfa2d1d12007-01-01 17:08:13 +000015692007-01-01 Orson Teodoro <orsonteodoro@yahoo.com>
1570
1571 * src/ptp.h: changed some WMDRMND def codes to AAVT def codes.
1572 addition of AAVT error codes.
1573 * src/ptp.c: changes to reflect modifications done in ptp.h
1574
Linus Walleija5ab8c42006-12-31 09:25:36 +000015752006-12-31 Linus Walleij <triad@df.lth.se>
1576
1577 * configure.ac: bump to 0.1.2.
1578 * src/Makefile.am: bump interface revision. (Compatible.)
1579 * RELEASE 0.1.2.
1580
Linus Walleij02ee8802006-12-30 17:27:58 +000015812006-12-30 Linus Walleij <triad@df.lth.se>
1582
1583 * examples/pathutils.c: reflect new filetypes.
1584 * examples/sendtr.c: dito.
1585
Linus Walleij5fb47132006-12-30 15:35:48 +000015862006-12-30 Orson Teodoro <orsonteodoro@yahoo.com>
1587
1588 * src/ptp.h: added WMDRMPD, WMDRMND, WMPPD, WPDWCN extension
1589 codes. added more format object codes flac, m4a, 3gp, aac,
1590 xml, xls, ppt, etc. 0x9101-0x910B identfiers are infixed
1591 with WMDRMPD. Added more object properties codes (0xDCD3-0xDD72).
1592 Added more device property codes.
1593 Changed PTP_OFC_MTP_WindowsImageFormat to 0xb881 reflect spec.
1594 * src/ptp.c: added changes to reflect new extensions, object
1595 codes, device property codes.
1596 * src/libmtp.c: modified mp4 to reflect it is a container format
1597 not a codec. Added more descriptions in init_filemap(). mp4
1598 container format is ambiguous in
1599 LIBMTP_Send_File_From_File_Descriptor(). Audio? video? both?.
1600 mp4 searched in video by default. Added comments about this.
1601 Added support for the new format object types.
1602 * src/libmtp.h.in: added constants to reflect changes to
1603 init_filemap().
1604
Richard Lowedd61832006-12-30 12:38:18 +000016052006-12-30 Richard Low <richard@wentnet.com>
1606
1607 * src/libusb-glue.c: fixed bug in debug printing
1608
Richard Lowa6c924c2006-12-29 17:44:28 +000016092006-12-29 Richard Low <richard@wentnet.com>
1610
1611 * src/libmtp.c: Made abstract list creation to be more
1612 WMP like
1613 * src/libusb-glue.c: added Philips GoGear SA9200
Richard Lowa679b1c2006-12-29 20:08:14 +00001614 * src/ptp-pack.c: fixed packing bug in ptp_pack_OI
Richard Lowa6c924c2006-12-29 17:44:28 +00001615
Linus Walleij784ac3f2006-12-29 10:36:51 +000016162006-12-29 Marcus Meissner <meissner@suse.de>
1617
1618 * src/ptp.h: API changes for libgphoto2 to use the file
1619 retrieveal functions.
1620 * src/ptp.c: dito.
1621 * src/libusb-glue.c: changes in libmtp reflecting the new
1622 API for libgphoto2.
1623
Linus Walleij8609af32006-12-28 21:25:17 +000016242006-12-28 Linus Walleij <triad@df.lth.se>
1625
Linus Walleije2e21182006-12-28 22:36:59 +00001626 * configure.ac: making older autotools happy. Bump to 0.1.1.
Linus Walleij3a3d24d2006-12-28 22:35:58 +00001627 * src/Makefile.am: bump interface for release, also autotools.
1628 * RELEASE libmtp 0.1.1.
Linus Walleij8609af32006-12-28 21:25:17 +00001629
Linus Walleijd6735f72006-12-19 13:38:29 +000016302006-12-19 Matthew Wilcox <matthew@wil.cx>
1631
1632 * src/ptp.c: fix a (serious) short file bug.
1633
Richard Lowaf20b5d2006-12-17 18:00:59 +000016342006-12-17 Richard Low <richard@wentnet.com>
1635
1636 * src/libmtp.c: don't bail out on failures when setting
1637 metadata.
1638
Linus Walleij037a1252006-12-16 20:36:52 +000016392006-12-16 Linus Walleij <triad@df.lth.se>
1640
1641 * src/ptp.c: sync to upstream.
1642 * src/ptp.h: dito.
1643 * src/ptp-pack.c: dito.
1644
Linus Walleijf8491912006-12-15 10:23:30 +000016452006-12-15 Linus Walleij <triad@df.lth.se>
1646
1647 * src/libmtp.h.in: make the format function take a storage as
1648 parameter. Add comments to device storage.
1649 * src/libmtp.c: dito, fix up some code and docs.
1650 * examples/format.c: make the format command comply with
1651 the new API.
1652
Linus Walleije1ac07e2006-12-14 19:38:59 +000016532006-12-14 Linus Walleij <triad@df.lth.se>
1654
1655 * src/libmtp.c: make get_first_storage_freespace() always query
1656 the first storage when the space is requested. And some other
1657 janitorial stuff.
1658
Linus Walleijb01d18b2006-12-13 12:49:15 +000016592006-12-13 Linus Walleij <triad@df.lth.se>
1660
1661 * src/libusb-glue.c: one more device.
1662 * examples/detect.c: compilation warnings fixed.
1663
rreardon3d583062006-12-13 10:10:27 +000016642006-12-13 Robert Reardon <rreardon@monkshatch.vispa.com>
1665
1666 * src/ptp.c: add 0xD901 flag as BuyNow property of objects.
1667 * src/ptp.h: ditto.
1668
Linus Walleijcd849362006-12-13 12:37:58 +000016692006-12-12 Daniel Williams <danielw@iinet.net.au>
Linus Walleij9e1b0812006-12-12 19:22:02 +00001670
1671 * src/libmtp.h.in: revamped storage API.
1672 * src/libmtp.c: dito.
1673 * examples/detect.c: dito.
1674
rreardon73d02c92006-12-12 16:45:30 +000016752006-12-12 Robert Reardon <rreardon@monkshatch.vispa.com>
rreardond2ddb632006-12-12 12:13:21 +00001676
1677 * src/libmtp.c: Send_Representative_Sample() updated to
1678 set image height and width, or audio duration and size.
1679
Linus Walleijd0f67702006-12-07 09:56:46 +000016802006-12-07 Linus Walleij <triad@df.lth.se>
1681
Linus Walleija05b9802006-12-08 08:50:30 +00001682 * src/libmtp.h.in: support firmware object type. (Dangerous.)
1683 * src/libmtp.c: dito.
1684
16852006-12-07 Linus Walleij <triad@df.lth.se>
1686
Linus Walleijd0f67702006-12-07 09:56:46 +00001687 * src/libmtp.c: default text folder detection (used in Samsung
1688 Yepp T9) also add a few "My Foo" folder strings, remove the
1689 "remaining directories" kludge.
1690 * src/libmtp.h.in: default text folder.
1691
Linus Walleijf1b02f22006-12-06 09:03:23 +000016922006-12-06 Linus Walleij <triad@df.lth.se>
1693
1694 * src/libmtp.h.in: extend the respresentative sample API a bit.
1695 * src/libmtp.c: dito.
1696 * examples/albumart.c: free memory after use.
1697 * examples/thumb.c: dito.
Linus Walleij8a08c212006-12-06 20:12:30 +00001698 * RELEASE this as libmtp 0.1.0!
Linus Walleijf1b02f22006-12-06 09:03:23 +00001699
Linus Walleijfdef4ae2006-12-05 16:15:51 +000017002006-12-04 Linus Walleij <triad@df.lth.se>
1701
1702 * src/ptp.c: enable split headers on sending object lists again.
1703
17042006-12-04 Robert Reardon <rreardon@monkshatch.vispa.com>
rreardond11473f2006-12-05 10:18:46 +00001705
1706 * src/libmtp.c: abstract Send_Representative_Sample() so
1707 it can send samples for any format that supports it
1708 * src/libmtp.h.in: same as above
1709 * examples/albumart.c: altered to use new abstract function above
1710 * example/thumb.c: sample program to upload thumbnails
1711 * example/Makefile.am: add sample thumbnail program
1712
Linus Walleijbdfaac22006-12-03 22:32:19 +000017132006-12-03 Linus Walleij <triad@df.lth.se>
1714
1715 * src/libmtp.c: check space on disk before sending
1716 tracks or files.
Linus Walleij7e3f2762006-12-03 22:52:05 +00001717 * src/libmtp.h.in: refactor LIBMTP_Send_Album_Art()
1718 into LIBMTP_Send_Representative_Sample().
1719 * src/libmtp.c: dito.
1720 * examples/albumart.c: dito.
Linus Walleijbdfaac22006-12-03 22:32:19 +00001721
Linus Walleijfa3fbe32006-12-02 20:47:32 +000017222006-12-02 Marcus Meissner <meissner@suse.de>
1723
1724 * examples/Makefile.am: make sure symlinks really end
1725 up in the correct dir.
1726
Linus Walleij6eab3b32006-11-30 22:58:21 +000017272006-11-30 Linus Walleij <triad@df.lth.se>
1728
1729 * src/ptp.c: make Matthews patch thread-safe and fix it
1730 so it will handle more than one surplus packet.
1731 * src/ptp.h: dito.
1732
Richard Lowab0d22d2006-11-30 22:17:49 +000017332006-11-30 Richard Low <richard@wentent.com>
1734
1735 * src/libmtp.c: memset PTPObjectInfo structs to 0
1736
Linus Walleij4bf38dd2006-11-30 21:27:29 +000017372006-11-30 Matthew Wilcox <matthew@wil.cx>
1738
1739 * src/ptp.c: on some devices, surplus packet data is
1740 sometimes returned during read, i.e. a header of the
1741 next package is typically attacked to the incoming
1742 data, as if someone was sending several packets at
1743 once. If this happens we buffer the surplus packet.
Linus Walleijef1e6352006-11-30 22:07:16 +00001744 * src/libusb-glue.c: revert my own mistakes by making
1745 them Windows-only.
Linus Walleij4bf38dd2006-11-30 21:27:29 +00001746
Linus Walleij9901e222006-11-30 12:28:19 +000017472006-11-30 Linus Walleij <triad@df.lth.se>
1748
Linus Walleij2978f1a2006-11-30 14:00:26 +00001749 * configure.ac: this *is* gonna be libmtp 0.1.0!
1750 * src/Makefile.am: age interface to 4-0-0 to indicate that
1751 intefaces have been removed.
Linus Walleij9901e222006-11-30 12:28:19 +00001752 * src/libmtp.h.in: removed external object interface.
1753 * src/libmtp.c: dito. Made all object manipulation functions
1754 static.
1755
Richard Lowc7d48d22006-11-29 18:24:55 +000017562006-11-29 Richard Low <richard@wentnet.com>
1757
1758 * src/libusb-glue.c: added new devices
1759
Linus Walleij7beba572006-11-29 08:56:12 +000017602006-11-29 Linus Walleij <triad@df.lth.se>
1761
1762 * src/libusb-glue.c: remove some pointless #include <>
1763 clutter, call usb_set_configuration() as needed by
1764 Windows.
1765 * src/libmtp.c: various fixups to enable use of Windows
1766 <io.h> include file.
1767 * README.windows.txt: added a quick porting guide for
1768 MSVC by Farooq Zaman.
1769
Linus Walleijcf42f452006-11-28 08:32:49 +000017702006-11-28 Linus Walleij <triad@df.lth.se>
1771
1772 * src/libmtp.h.in: removed filetype mapping API. We can handle
1773 everything inside of libmtp now so no need for this.
1774 * src/libmtp.c: dito.
1775
Linus Walleij72e9c2b2006-11-28 08:14:00 +000017762006-11-27 Linus Walleij <triad@df.lth.se>
Linus Walleij64ad9ae2006-11-27 11:23:26 +00001777
1778 * examples/files.c: unsigned int sized printout.
1779 * examples/tracks.c: sort of the same.
Linus Walleij72e9c2b2006-11-28 08:14:00 +00001780 * Makefile.am: HAL style map output by default.
Linus Walleij64ad9ae2006-11-27 11:23:26 +00001781
Richard Low6c0a6ce2006-11-26 10:42:08 +000017822006-11-26 Richard Low <richard@wentnet.com>
Linus Walleijb7426d12006-11-25 23:19:11 +00001783
Richard Low6c0a6ce2006-11-26 10:42:08 +00001784 * src/libmtp.c: object handles for proplists
1785 * src/ptp-pack.c: ditto
1786 * src/ptp.c: ditto
1787 * src/ptp.h: ditto
1788
Linus Walleijf73de152006-11-25 21:44:44 +000017892006-11-25 Marcus Meissner <marcus@jet.franken.de>
1790
1791 * examples/hotplug.c: adding HAL style XML output for
1792 the devices.
1793 * examples/Makefile.am: fixing a bug in the automake
1794 file (pathutils.h missing!)
1795 * Makefile.am: fix the problem with re-making sources
1796 (you had to run ./autogen.sh before!)
1797
Linus Walleijfe677ac2006-11-23 13:35:00 +000017982006-11-23 Linus Walleij <triad@df.lth.se>
1799
1800 * src/libusb-glue.h: add a new bug flag for devices that
1801 have broken PTP_OC_MTP_GetObjPropList implementations.
1802 * src/libusb-glue.c: state that all iRivers have this problem.
1803 * src/libmtp.c: disable the user of ptp_mtp_getobjectproplist()
1804 for these devices.
1805
18062006-11-21 Robert Reardon <rreardon@monkshatch.vispa.com>
rreardonbddc0f82006-11-21 13:44:42 +00001807
1808 * src/libmtp.c: set handle ids for new objects to 0 when
1809 creating new albums and playlists.
1810
Linus Walleij2f5ed5c2006-11-21 07:40:29 +000018112006-11-21 Linus Walleij <triad@df.lth.se>
1812
1813 * src/libmtp.c: enabled enhanced mode for metadata retrieval
1814 by default.
Linus Walleij9be685b2006-11-21 09:44:53 +00001815 * src/libmtp.c: fixed the problem with sending files using
1816 enhanced commands.
Linus Walleij2f5ed5c2006-11-21 07:40:29 +00001817
Linus Walleij277cd532006-11-20 14:57:46 +000018182006-11-20 Linus Walleij <triad@df.lth.se>
1819
1820 * src/ptp.h: sync to upstream libgphoto2
1821 * src/ptp.c: dito.
1822 * src/ptp-pack.c: dito.
Linus Walleij8ae78bb2006-11-20 21:45:52 +00001823 * src/libmtp.c: check for zerolength files/tracks.
Linus Walleij277cd532006-11-20 14:57:46 +00001824
18252006-11-20 Andy Kelk <andy@mopoke.co.uk>
mopoke31364442006-11-20 04:53:04 +00001826
1827 * src/libmtp.h.in: add "parent_id" property to LIBMTP_track_struct.
1828 * src/libmtp.c: get "parent_id" property when reading tracks.
mopoke33744bb2006-11-20 04:55:32 +00001829 * examples/emptyfolders.c: new example program for pruning empty
1830 folders. (does a dummy run by default).
mopoke31364442006-11-20 04:53:04 +00001831
Linus Walleij277cd532006-11-20 14:57:46 +000018322006-11-19 Robert Reardon <rreardon@monkshatch.vispa.com>
rreardon508705f2006-11-19 21:27:22 +00001833
rreardonbbb4e562006-11-19 22:16:11 +00001834 * src/libmtp.c: use enhanced MTP commands to create playlists and
1835 send files
rreardon508705f2006-11-19 21:27:22 +00001836 * examples/newplaylist.c: demo program for creating new playlists
rreardona7220ad2006-11-19 21:36:46 +00001837 * examples/Makefile.am: add demo newplaylists program
rreardon508705f2006-11-19 21:27:22 +00001838
Linus Walleijcd849362006-12-13 12:37:58 +000018392006-11-19 Daniel Williams <danielw@iinet.net.au>
Linus Walleij48a2d462006-11-19 14:07:59 +00001840
1841 * src/libusb-glue.c: fix error on reconnect.
1842
Linus Walleij277cd532006-11-20 14:57:46 +000018432006-11-18 Richard Low <richard@wentnet.com>
Richard Lowef925022006-11-18 09:06:10 +00001844
1845 * src/ptp.c: tidy up ptp_usb_getdata
1846
Linus Walleij277cd532006-11-20 14:57:46 +000018472006-11-17 Richard Low <richard@wentnet.com>
Richard Low91354812006-11-17 22:44:05 +00001848
1849 * src/libmtp.c: fixed parent handle for uploaded tracks
1850
Linus Walleij277cd532006-11-20 14:57:46 +000018512006-11-17 Robert Reardon <rreardon@monkshatch.vispa.com>
Linus Walleije6605692006-11-17 09:18:52 +00001852
1853 * src/libmtp.c: fixed up album art using enhanced commands.
1854
Linus Walleij277cd532006-11-20 14:57:46 +000018552006-11-16 Richard Low <richard@wentnet.com>
Richard Low8d82d2f2006-11-16 20:37:43 +00001856
1857 * src/libmtp.c: a crude implementation of ptp_mtp_getobjectproplist
1858 * src/ptp.c: ditto
1859 * src/ptp.h: ditto
1860 * src/ptp-pack.c: ditto
1861
Linus Walleij277cd532006-11-20 14:57:46 +000018622006-11-16 Robert Reardon <rreardon@monkshatch.vispa.com>
Linus Walleij9e68bc12006-11-16 15:59:18 +00001863
Linus Walleijccf28ce2006-11-16 16:06:38 +00001864 * src/libmtp.c: use enhanced MTP commands to create albums and
1865 add detection of the default album folder.
1866 * src/libmtp.h.in: add a holder for album default folder.
Linus Walleij9e68bc12006-11-16 15:59:18 +00001867
Linus Walleij277cd532006-11-20 14:57:46 +000018682006-11-15 Richard Low <richard@wentnet.com>
Richard Low8b42ca32006-11-15 08:52:17 +00001869
1870 * src/ptp-pack.c: set string buffer to correct size.
1871
Linus Walleij277cd532006-11-20 14:57:46 +000018722006-11-14 Richard Low <richard@wentnet.com>
Richard Lowe1ab2642006-11-14 08:34:49 +00001873
1874 * examples/tracks.c: really use undeprecated API entry.
1875
Linus Walleij277cd532006-11-20 14:57:46 +000018762006-11-13 Richard Low <richard@wentnet.com>, Linus Walleij <triad@df.lth.se>
Linus Walleij3fcfea52006-11-13 07:07:36 +00001877
1878 * src/libmtp.h.in: add LIBMTP_Get_Tracklisting_With_Callback()
Richard Lowdc0b6c72006-11-13 09:22:23 +00001879 and LIBMTP_Get_Filelisting_With_Callback()
Linus Walleij3fcfea52006-11-13 07:07:36 +00001880 * src/libmtp.c: dito, deprecate LIBMTP_Get_Tracklisting()
Richard Lowdc0b6c72006-11-13 09:22:23 +00001881 and LIBMTP_Get_Filelisting()
Linus Walleij3fcfea52006-11-13 07:07:36 +00001882 * examples/tracks.c: use undeprecated API entry.
Richard Lowdc0b6c72006-11-13 09:22:23 +00001883 * examples/connect.c: ditto.
1884 * examples/detect.c: ditto.
1885 * examples/files.c: ditto.
Linus Walleij3fcfea52006-11-13 07:07:36 +00001886 * src/ptp.c: working on getting object prop lists.
1887 * src/ptp.h: dito.
1888
Linus Walleij277cd532006-11-20 14:57:46 +000018892006-11-12 Richard Low <richard@wentnet.com>
Richard Lowe1f06922006-11-12 16:38:39 +00001890
1891 * src/libusb-glue.c: added Zen Vision W to devices
1892
Linus Walleij277cd532006-11-20 14:57:46 +000018932006-11-07 Richard Low <richard@wentnet.com>
Richard Low4c60f6e2006-11-07 20:36:42 +00001894
1895 * src/libmtp.c: added checks for supported properties
1896
Linus Walleij277cd532006-11-20 14:57:46 +000018972006-11-06 Richard Low <richard@wentnet.com>
Richard Low64fa3992006-11-06 21:24:11 +00001898
1899 * src/libmtp.c: added a check for NULL filenames in
1900 LIBMTP_Get_Folder_List.
1901
Linus Walleij99310d42006-11-01 08:29:39 +000019022006-11-01 Linus Walleij <triad@df.lth.se>
1903
1904 * src/libmtp.h.in: set/get uint8 to/from objects
1905 * src/libmtp.c: send object property list.
1906 * src/ptp.c: dito.
1907 * src/ptp.h: dito.
1908 * src/ptp-pack.c: dito.
1909
mopoke90be30e2006-10-30 08:47:41 +000019102006-10-29 Andy Kelk <andy@mopoke.co.uk>
1911
1912 * examples/albumart.c: simple tool for adding album art.
1913 * src/libmtp.c: graceful handling of players not supporting
1914 abstract album objects.
1915
Linus Walleij0c33ec02006-10-27 10:15:40 +000019162006-10-27 Linus Walleij <triad@df.lth.se>
1917
1918 * src/Makefile.am: bump library interface to reflect the new
1919 album methods.
1920 * configure.ac: bump to 0.0.22 for the next release.
1921
19222006-10-27 Andy Kelk <andy@mopoke.co.uk>
1923
1924 * src/libmtp.c: add support form abstract audio/video albums.
1925 * src/libmtp.h.in: dito.
1926
Linus Walleij7347d0f2006-10-23 07:23:39 +000019272006-10-23 Linus Walleij <triad@df.lth.se>
1928
1929 * src/libmtp.c: retire opcode rendering (moved to ptp.c)
1930 * src/ptp.c: sync to upstream.
1931 * src/ptp.h: dito.
1932 * src/ptp-pack.c: dito.
1933
Linus Walleij9efe75f2006-10-20 09:09:45 +000019342006-10-20 Linus Walleij <triad@df.lth.se>
1935
1936 * Release 0.0.21 to get all the new device support out.
1937
Linus Walleij501ba4d2006-10-16 06:17:04 +000019382006-10-16 Linus Walleij <triad@df.lth.se>
1939
1940 * configure.ac: bump to 0.0.21.
1941 * src/libusb-glue.c: add code to unload a kernel driver for
1942 the primary interface if it is already in use under Linux.
1943 * src/libusb-glue.h: add a device flag to make this possible.
1944
Linus Walleij37253292006-10-11 08:38:14 +000019452006-10-11 Linus Walleij <triad@df.lth.se>
1946
1947 * examples/delfile.c: patch from Chris Debenham
1948 straingtening out the command-line interface a bit
1949 more.
1950
Linus Walleij43ff8fc2006-10-10 11:16:53 +000019512006-10-10 Linus Walleij <triad@df.lth.se>
1952
Linus Walleij37253292006-10-11 08:38:14 +00001953 * examples/delfile.c: patch from Chris Debenham to make
1954 this command take an optional filename as parameter
1955 instead of file ID.
Linus Walleij43ff8fc2006-10-10 11:16:53 +00001956
Linus Walleij955e6ba2006-09-26 16:55:10 +000019572006-09-26 Linus Walleij <triad@df.lth.se>
1958
1959 * libmtp.pc.in: require libusb instead of just linking it.
1960 * configure.ac: bump release to 0.0.20 and release.
1961
Linus Walleijb1318d12006-09-25 14:59:26 +000019622006-09-25 Linus Walleij <triad@df.lth.se>
1963
1964 * examples/evolution-sync.sh: example script to illustrate
1965 to to transfer calendar, task and contact information
1966 to a device supporting this.
1967
Linus Walleij4ef39e62006-09-19 14:11:52 +000019682006-09-19 Linus Walleij <triad@df.lth.se>
1969
1970 * src/libmtp.h.in: fixed attribute IDs to be 16bit.
1971 * src/libmtp.c: dito.
1972 * examples/sendfile.c: support vcard3.
1973
Linus Walleijf248fdd2006-09-16 20:11:40 +000019742006-09-16 Linus Walleij <triad@df.lth.se>
1975
1976 * configure.ac: bump to 0.0.19 and release. There are some
1977 new devices as well.
Linus Walleij5b5c7852006-09-16 20:23:37 +00001978 * src/unicode.c: retire unused code.
Linus Walleijf248fdd2006-09-16 20:11:40 +00001979
Linus Walleijb8bfcb22006-09-13 12:14:28 +000019802006-09-13 Linus Walleij <triad@df.lth.se>
1981
1982 * examples/format.c: formatting test program.
1983 * examples.Makefile.am: added format.
1984
Linus Walleij13374a42006-09-13 11:55:30 +000019852006-09-13 Andy Kelk <andy@mopoke.co.uk>
1986
1987 * src/libmtp.h.in: added interface to format storage.
1988 * src/libmtp.c: dito.
1989 * src/ptp.c: dito.
1990 * src/ptp.h: dito.
1991
Linus Walleijd31e6192006-09-12 07:55:27 +000019922006-09-12 Linus Walleij <triad@df.lth.se>
1993
1994 * configure.ac: bump release. Released 0.0.18 yesterday.
1995 * src/libmtp.c: do not try to read battery max level unless
1996 the device supports it. (Bug occurred on Toshiba Gigabeat
1997 P10.)
1998
Linus Walleijd5d51c82006-09-11 06:57:50 +000019992006-09-11 Linus Walleij <triad@df.lth.se>
2000
2001 * src/libusb-glue.c: messed around a bit with device descriptor
2002 detection so as to bring closer to libgphoto2 detection algorithm.
2003 I've seen things that might be false positives, possibly USB mass
2004 storage devices with additional MSFT descriptors to indicate they
2005 have Janus DRM.
2006 * src/libmtp.c: use UCS-2-INTERNAL if we're not on glibc. glibc
2007 knows that UCS-2 is in machine endianness but Darwin and *BSD does
2008 not. Detect C library and switch accordingly.
2009 * src/unicode.c: retire old unicode code only keep things we cannot
2010 live without. Remove the own internal UCS-2 conversion engine and
2011 the internal iconv() engine and use the one already available in
2012 PTPParams.
2013 * src/unicode.h: dito.
2014
Linus Walleij0558ac52006-09-07 06:55:03 +000020152006-09-07 Linus Walleij <triad@df.lth.se>
2016
2017 * src/libusb-glue.h: added device flags so we can make
2018 the code behave differently on certain devices.
2019 * src/libusb-glue.c: dito, plus removed some debug prints.
2020 * src/libmtp.c: docs.
2021 * src/libmtp.h.in: added device_flags to device list struct.
2022 * src/Makefile.am: bumped to compatible library interface.
2023 * configure.ac: bump version to 0.0.18 (0.0.17 released
2024 yesterday).
2025
Richard Low6ec2cc12006-09-06 16:59:16 +000020262006-09-06 Richard Low <richard@wentnet.com>
2027
2028 * src/libusb-glue.c: changed packet sizes to improve
2029 transfer speeds.
2030 * src/libmtp.c: changed packet sizes to improve transfer
2031 transfer speeds. Also stopped extra ptp_getobjectinfo
2032 calls when getting directories on connect.
2033
Linus Walleij7f0c72e2006-09-06 13:01:58 +000020342006-09-06 Linus Walleij <triad@df.lth.se>
2035
2036 * src/libusb-glue.c: fixed some endpoint size detection
2037 and sending special file sizes stuff. Real hairy bug...
2038 Also messed around a bit with the callbacks.
2039 * src/libmtp.c: changes for callback size detection.
2040
Linus Walleija9310fa2006-09-04 06:47:42 +000020412006-09-04 Linus Walleij <triad@df.lth.se>
2042
2043 * src/libmtp.c: bug in streaming code, use defined USB_BULK_HDR_SIZE
2044 instead of magic values.
2045
Linus Walleijd7aa5b22006-09-02 11:52:31 +000020462006-09-02 Linus Walleij <triad@df.lth.se>
2047
Linus Walleijcd3eb3d2006-09-02 21:33:22 +00002048 * src/libmtp.c: add some code to have
2049 LIBMTP_Send_File_From_File_Descriptor() accept a stream
2050 if size is set to (uint64_t) -1, plus documentation fixes.
2051 I don't think the streaming code will work but whoever want
2052 to experiment with it has a place to start.
2053 * examples/refactortest.c: removed. Who uses this?
Linus Walleijd7aa5b22006-09-02 11:52:31 +00002054
Linus Walleijda9500d2006-08-30 13:17:06 +000020552006-08-30 Linus Walleij <triad@df.lth.se>
2056
2057 * configure.ac: version bump.
2058 * src/libmtp.c: more debug prints.
2059 * src/libusb-glue.c: new iRiver device called Clix. By
2060 the way I released libmtp 0.0.16 yesterday.
2061
Linus Walleija823a702006-08-27 21:27:46 +000020622006-08-28 Linus Walleij <triad@df.lth.se>
2063
2064 * configure.ac: version bump.
2065 * src/ptp-pack.c: upstream has committed my patch giving full
2066 unicode support in libgphoto2 ptp2 camlib. No need for
2067 any more ugly workarounds, plus we now have full unicode
2068 filenames!
2069 * src/ptp.c: dito.
2070 * src/ptp.h: dito.
2071 * src/libmtp.c: revamp to use the new unicode support in
2072 libgphoto2.
2073 * src/unicode.c: remove unused functionality.
2074 * src/unicode.h: dito.
2075
Linus Walleijee73ef22006-08-27 19:56:00 +000020762006-08-27 Linus Walleij <triad@df.lth.se>
2077
2078 * configure.ac: version bump. Release all these fixes
2079 as 0.0.15.
2080 * src/libusb-glue.c: fixed sucky errors. Added callback
2081 code when reading files.
2082 * src/libusb-glue.h: const correctness.
2083 * src/libmtp.h.in: finally fixup the type on the callbacks.
2084 * src/libmtp.c: more accurate sending callbacks. Callbacks
2085 when getting files also, working correctly. Typeing of
2086 callbacks now OK.
2087 * examples/getfile.c: some display bar cosmetic fixup.
2088 * TODO: lots of the things todo are now done.
2089
Linus Walleijd214b9b2006-08-26 22:08:37 +000020902006-08-26 Linus Walleij <triad@df.lth.se>
2091
2092 * configure.ac: version bump.
2093 * src/libmtp.c: fix bug and reinstate callbacks.
2094 * src/libusb-glue.h: dito.
2095 * src/libusb-glue.c: dito.
2096
Linus Walleije7f44be2006-08-25 19:32:29 +000020972006-08-25 Linus Walleij <triad@df.lth.se>
2098
2099 * src/libmtp.c: use the new file descriptor sender function.
2100 Going to release this as 0.0.13.
2101 * src/ptp.c: upstream accepted patches synced in.
2102 * src/ptp.h: dito.
2103
Linus Walleijeab650b2006-08-21 23:26:37 +000021042006-08-22 Linus Walleij <triad@df.lth.se>
2105
Linus Walleij80d134a2006-08-22 21:41:37 +00002106 * src/libusb-glue.c: found a real nasty endpoint bug,
2107 code from libgphoto2 was assuming max packet size of
2108 512 bytes while it is 64 when a USB 2.0 device is
2109 plugged into an UHCI hub.
2110
21112006-08-22 Linus Walleij <triad@df.lth.se>
2112
Linus Walleijeab650b2006-08-21 23:26:37 +00002113 * configure.ac: bump to 0.0.13, also released 0.0.12 now.
2114
Linus Walleij924236a2006-08-20 22:17:58 +000021152006-08-21 Linus Walleij <triad@df.lth.se>
2116
2117 * src/libmtp.c: fixup mmap() usage and add madvise()
Linus Walleij96c62432006-08-21 10:04:02 +00002118 as result of experiments by Gavin McCullagh. Upstream
2119 accept patch to get files directly to file descriptor.
Linus Walleij3ec86312006-08-21 13:25:24 +00002120 Move iconv() converters into device struct for thread
2121 safety.
Linus Walleij96c62432006-08-21 10:04:02 +00002122 * src/ptp.c: sync to upstream which merges patch to get
2123 file directly to file descriptor.
2124 * src/ptp.h: dito.
Linus Walleij3ec86312006-08-21 13:25:24 +00002125 * src/unicode.c: move iconv() converters into the device
2126 struct for thread safety.
2127 * src/unicode.h: dito.
Linus Walleij924236a2006-08-20 22:17:58 +00002128
Linus Walleij30658792006-08-19 22:18:55 +000021292006-08-20 Linus Walleij <triad@df.lth.se>
2130
2131 * src/libmtp.h.in: set friendly name and sync partner,
2132 rename ownername to friendlyname.
2133 * src/libmtp.c: dito.
2134 * examples/detect.c: reflect changes.
2135 * src/Makefile.am: interface is incompatible so age it.
2136
Linus Walleijfae27482006-08-19 20:13:25 +000021372006-08-19 Linus Walleij <triad@df.lth.se>
2138
2139 * src/libmtp.h.in: add function to get syncronization
2140 partner for the device.
2141 * src/libmtp.c: dito.
2142 * examples/detect.c: use that function.
2143 * src/Makefile.am: backward-compatible interface bump.
2144
Linus Walleij16571dc2006-08-17 20:27:46 +000021452006-08-17 Linus Walleij <triad@df.lth.se>
2146
2147 * configure.ac: bump to 0.0.12 and require iconv.h.
2148
21492006-08-16 Linus Walleij <triad@df.lth.se>
2150
2151 * src/unicode.c: remove bigendian weirdness and switch
2152 to using iconv() instead.
2153 * src/unicode.h: dito.
2154 * src/libmtp.c: reflect changes.
2155
Linus Walleij3e188f12006-08-09 20:46:05 +000021562006-08-09 Linus Walleij <triad@df.lth.se>
2157
2158 * Release libmtp 0.0.11.
2159
Linus Walleij2eb884b2006-08-04 19:17:36 +000021602006-08-04 Linus Walleij <triad@df.lth.se>
2161
2162 * src/libmtp.c: patch from Dan Aloni to make sendfile
2163 use mmap and avoid memory drainage.
Linus Walleij9eb3d312006-08-04 19:25:59 +00002164 * src/libusb-glue.c: patch from Andy Kelk to avoid
2165 exit():ing when the interface cannot be claimed.
Linus Walleij232943d2006-08-04 19:26:53 +00002166 * configure.ac: version bump.
Linus Walleij2eb884b2006-08-04 19:17:36 +00002167
Linus Walleijaa4b0752006-07-26 22:21:04 +000021682006-07-27 Linus Walleij <triad@df.lth.se>
2169
2170 * Release libmtp 0.0.10.
2171
Linus Walleij17b55ea2006-07-26 13:54:00 +000021722006-07-26 Linus Walleij <triad@df.lth.se>
2173
2174 * src/libusb-glue.c: new SanDisk devices.
Linus Walleij00cf0642006-07-26 20:40:59 +00002175 * src/libmtp.c: only set metdata properties supported by
2176 the device, duh.
Linus Walleijaa4b0752006-07-26 22:21:04 +00002177 * src/ptp.c: sync to upstream.
2178 * src/ptp.h: sync to upstream.
2179 * configure.ac: bump to 0.0.10.
Linus Walleij17b55ea2006-07-26 13:54:00 +00002180
Linus Walleijc187cb92006-06-22 17:58:13 +000021812006-06-22 Linus Walleij <triad@df.lth.se>
2182
2183 * Release libmtp 0.0.9.
2184
Linus Walleij8ab54262006-06-21 07:12:28 +000021852006-06-21 Linus Walleij <triad@df.lth.se>
2186
2187 * src/libmtp.h.in: added function to retrieve supported
2188 filetypes.
2189 * src/libmtp.c: ditto.
2190 * examples/detect.c: use that function.
2191
Linus Walleijcf223e62006-06-19 09:31:53 +000021922006-06-19 Linus Walleij <triad@df.lth.se>
2193
2194 * src/unicode.c: support all endianness, detect
2195 byte-order-mark
2196 * src/unicode.h: ditto.
2197 * src/libmtp.c: ditto.
2198 * examples/detect.c: use proper tempfile function.
2199 * src/libmtp.h.in: add some more track properties.
2200 * src/libmtp.c: ditto.
2201 * examples/tracks.c: ditto.
2202
Linus Walleij2e4b5f92006-06-16 14:00:49 +000022032006-06-16 Linus Walleij <triad@df.lth.se>
2204
2205 * src/libmtp.h.in: new interfaces for single metadata post
2206 retrieveal.
2207 * src/libmtp.c: ditto.
2208 * examples/playlists.c: display track info using the new
2209 individual track metadata retrieveal method.
2210 * examples/getplaylist.c: ditto.
2211
Linus Walleij05ccbe72006-06-13 07:46:58 +000022122006-06-13 Linus Walleij <triad@df.lth.se>
2213
2214 * src/libmtp.h.in: added default folders to device struct.
Linus Walleij545c7792006-06-13 15:22:30 +00002215 Add some new function prototypes.
Linus Walleij05ccbe72006-06-13 07:46:58 +00002216 * src/libmtp.c: discover and use the default folders if
Linus Walleij545c7792006-06-13 15:22:30 +00002217 we can find them. Retrieve device secure time and cert
2218 out of sheer curiosity.
2219 * src/ptp.c: sync to libgphoto2 with my patches.
2220 * src/ptp.h: ditto.
Linus Walleij05ccbe72006-06-13 07:46:58 +00002221
Linus Walleij438bd7f2006-06-08 11:35:44 +000022222006-06-07 Linus Walleij <triad@df.lth.se>
2223
2224 * src/libmtp.h.in: new playlist API and refactorings.
2225 * src/libmtp.c: ditto, and refactorings.
2226 * src/unicode.h: const correctness.
2227 * src/unicode.c: ditto.
2228 * examples/playlists.c: new example program.
2229 * configure.ac: bump to 0.0.9
2230 * src/Makefile.am: bump library interface.
2231
Linus Walleij52e3ac52006-06-05 10:30:00 +000022322006-06-05 Linus Walleij <triad@df.lth.se>
2233
2234 * examples/sendtr.c: fixed annoying bug that made this
2235 program totally useless.
2236 * src/libmtp.c: cosmetics.
2237 * configure.ac: bump to 0.0.8.
2238
Linus Walleij345a3372006-06-03 20:55:25 +000022392006-06-03 Linus Walleij <triad@df.lth.se>
2240
2241 * src/libmtp.c: metadata bugs, album name and genre
2242 confused. Fixe it and released libmtp 0.0.7.
2243
Linus Walleijdc09dc02006-06-01 14:23:41 +000022442006-06-01 Linus Walleij <triad@df.lth.se>
2245
2246 * Released libmtp 0.0.6.
2247
Linus Walleij549ec4d2006-05-31 19:59:52 +000022482006-05-31 Linus Walleij <triad@df.lth.se>
2249
2250 * src/libmtp.c: fixed mapping for JPEG vs JFIF
2251 * src/libmtp.h.in: added proper type for JPEG
2252 * examples/sendfile.c: send proper JPEG type
2253
Linus Walleijd3fdd972006-05-30 15:51:37 +000022542006-05-30 Flavien Lebarbe <flavien+libmtp@lebarbe.net>
2255
2256 * src/libmtp.c: fixed a bug in update metadata due to
2257 bad use of return code.
2258 * src/libusb-glue.c: fixed a loop exiting problem with
2259 good 'ol GOTO.
2260
Linus Walleij9b1fcd92006-05-29 08:35:29 +000022612006-05-29 Linus Walleij <triad@df.lth.se>
2262
2263 * src/libusb-glue.c: one more device.
2264 * doc/examples.h: produce correct documentation.
2265 * configure.ac: bump to 0.0.6.
Linus Walleijf67bca92006-05-29 09:33:39 +00002266 * src/ptp.c: sync to libgphoto2.
2267 * src/ptp.h: ditto.
2268 * src/ptp-pack.c: ditto.
Linus Walleijf0f3d482006-05-29 14:10:21 +00002269 * src/libmtp.c: fixed all filetype API related functions
2270 not to use any PTP intrinsic defines at all, made all
2271 parameters to functions use the internal libmtp interface
2272 enumerations and definitions. Removed LIBMTP_Release():
2273 we can live with the memory lost during init. You're not
2274 supposed to re-initialize the device. Consequently removed
2275 the delete function that cleaned the filetype assoc list.
2276 * examples/refactortest.c: reflect changes.
Linus Walleij9b1fcd92006-05-29 08:35:29 +00002277
ravelox088180b2006-05-26 23:55:40 +000022782006-05-26 Dave Kelly <libmtp@ravelox.co.uk>
2279
2280 * src/libmtp.c: refactored object handling to be more generic
2281 * src/libmtp.h.in: ditto
2282 * examples/refactortest.c: Added simple example to use refactoring
2283 * examples/getplaylist.c: Added example to extract playlist data
Linus Walleij9b1fcd92006-05-29 08:35:29 +00002284 * src/ptp.c: Re-added ptp_get/set_objectreferences to allow
2285 for playlist handling
2286 * src/ptp.h: ditto
ravelox088180b2006-05-26 23:55:40 +00002287
Linus Walleij1fd2d272006-05-08 09:22:01 +000022882006-05-08 Linus Walleij <triad@df.lth.se>
2289
2290 * src/libmtp.h.in: add simple detection function.
2291 * src/libusb-glue.c: implement MTP "OS descriptor" for
2292 looking for MTP devices.
2293 * examples/detect.c: make it possible to do very
2294 rudimentary detection with "detect -p".
2295 * configure.ac: bump to 0.0.5.
2296
Linus Walleij685137f2006-05-07 18:09:02 +000022972006-05-07 Linus Walleij <triad@df.lth.se>
2298
2299 * COPYING: since we no longer use any parts of libptp2
2300 and only files from libgphoto2, we switch to the GNU
2301 Lesser General Public License (GNU LGPL). libptp2 is
2302 a derived work from libgphoto2, and so is libmtp, there
2303 are no remnants of libptp2 in libmtp anymore.
2304
Linus Walleij16c51f02006-05-04 13:20:22 +000023052006-05-04 Linus Walleij <triad@df.lth.se>
2306
2307 * examples/sendfile.c: fixes some more filetypes.
Linus Walleij453813c2006-05-04 19:46:43 +00002308 * src/libmtp.c: respectfully rearranged to use a filetype mapping
2309 table.
2310 * src/ptp-pack.c: real nasty unicode packing bug.
2311 * Release libmtp 0.0.4.
Linus Walleij16c51f02006-05-04 13:20:22 +00002312
Linus Walleijd6a49972006-05-02 08:24:54 +000023132006-05-02 Linus Walleij <triad@df.lth.se>
2314
2315 * src/libmtp.c: general shaping up for release. All track
2316 and file sending functions now respects a parent ID to be
2317 sent along with files and tracks.
2318 * src/libmtp.h.in: dito.
2319 * src/libusb-glue.c: dito.
2320 * examples/sendfile.c: interface dependency changes.
2321 * examples/sendtr.c: dito.
2322
Linus Walleijc60275a2006-04-30 10:58:11 +000023232006-04-30 Linus Walleij <triad@df.lth.se>
2324
2325 * src/ptp.c: sync upstream.
2326 * src/ptp.h: dito.
2327
Linus Walleij370c68d2006-04-27 14:19:01 +000023282006-04-27 Linus Walleij <triad@df.lth.se>
2329
2330 * examples/sendfile.c: first file sender program based
2331 on API implementation and changes by Chris Allegretta.
2332 * examples/Makefile.am: new program, new entry.
2333 * src/libmtp.c: reflect this new functionality.
2334 * src/libmtp.h.in: dito.
2335
Linus Walleijb02a0662006-04-25 08:05:09 +000023362006-04-25 Linus Walleij <triad@df.lth.se>
2337
2338 * Rebased the sources around libgphoto2 instead.
2339 This was a major revision...
2340 * src/ptp.c: imported libgphoto2 version verbatim.
2341 * src/ptp.h: imported libgphoto2 version, minor patch.
2342 * src/ptp-pack.c: imported libgphoto2 version, minor patch.
Linus Walleij9a96f0b2006-04-25 08:46:59 +00002343 * src/ptp-pack.h: dropped, libgphoto2 does not use it.
Linus Walleijb02a0662006-04-25 08:05:09 +00002344 * src/mtp.c: dropped, since all functions are now in ptp.c
2345 * src/mtp-pack.c: dropped, same reason.
2346 * src/mtp.h: dropped, same reason.
2347 * src/mtp-pack.h: dropped, same reason.
2348
Linus Walleije5f3ad42006-04-21 07:44:36 +000023492006-04-21 Linus Walleij <triad@df.lth.se>
2350
Linus Walleij902c0b92006-04-21 10:52:48 +00002351 * Released libmtp 0.0.3
2352 * Bumped source to 0.0.4
2353
23542006-04-21 Linus Walleij <triad@df.lth.se>
2355
Linus Walleije5f3ad42006-04-21 07:44:36 +00002356 * src/ptp-pack.c: GCC 4.x compilation patch from
2357 Diego Pettenò.
Linus Walleija06a2792006-04-21 07:52:26 +00002358 * src/libusb-glue.c: New Samsung device and some
2359 from libgphoto2.
Linus Walleij9c6ca022006-04-21 10:24:15 +00002360 * src/ptp.h: some defines from libgphoto2 to get
2361 a bit more compatible.
2362 * src/libmtp.c: Added a folder API implementation by
2363 Dave "ravelox" Kelly.
2364 * src/libmtp.h.in: dito.
2365 * examples/folders.c: dito.
2366 * examples/newfolder.c: dito.
2367 * examples/trexist.c: dito.
Linus Walleije5f3ad42006-04-21 07:44:36 +00002368
Linus Walleij6fd2f082006-03-28 07:19:22 +000023692006-03-28 Linus Walleij <triad@df.lth.se>
2370
2371 * m4/*: updated macros to work with GCC 4.1.0.
2372 * examples/hotplug.c: new program to create device
2373 ID lists.
2374 * libmtp.rules: now an auto-generated file.
2375 * libmtp.usermap: now an auto-generated file.
2376
Linus Walleijf6bc1782006-03-24 15:12:47 +000023772006-03-24 Linus Walleij <triad@df.lth.se>
2378
2379 * Beginning a file API, fixed some example program
2380 names and such.
2381
Linus Walleij6946ac52006-03-21 06:51:22 +000023822006-03-18 Linus Walleij <triad@df.lth.se>
2383
2384 * Fixed up callback interface to a simpler version,
2385 the old one was bloated stuff from libnjb anyway.
2386 Bump to 0.0.2.
2387
Linus Walleij9b28da32006-03-16 13:47:58 +000023882006-03-16 Linus Walleij <triad@df.lth.se>
2389
2390 * Fixed the .h file and implementation so you really only
2391 need this one .h file to interface the library.
2392
Linus Walleij80124062006-03-15 10:26:09 +000023932006-03-15 Linus Walleij <triad@df.lth.se>
2394
2395 * Added three device information retrieval functions.
2396
Linus Walleij15e344f2006-03-06 15:15:00 +000023972006-03-06 Linus Walleij <triad@df.lth.se>
2398
2399 * Moving some things around to structure the source. More
2400 will be needed...
2401
Linus Walleij93218602006-02-27 08:53:38 +000024022006-02-27 Linus Walleij <triad@df.lth.se>
2403
2404 * Release libmtp 0.0.1 so people have something to play with,
2405 what the heck. Probably saves someones day.
2406
Linus Walleij95698cd2006-02-24 10:40:40 +000024072006-02-24 Linus Walleij <triad@df.lth.se>
2408
2409 * Deltr example program to delete tracks, plus corresponding
2410 interface call.
2411
Linus Walleij17e39f72006-02-23 15:54:28 +000024122006-02-23 Linus Walleij <triad@df.lth.se>
2413
2414 * Fixed up sendtr program and metadata tagging function that is
2415 used after sending files.
2416
Linus Walleij394bbbe2006-02-22 16:10:53 +000024172006-02-22 Linus Walleij <triad@df.lth.se>
Linus Walleijeb8c6fe2006-02-03 09:46:22 +00002418
Linus Walleij394bbbe2006-02-22 16:10:53 +00002419 * Untested gettr.c and sendtr.c programs to get and send tracks
2420 created.
2421
Linus Walleijeb8c6fe2006-02-03 09:46:22 +000024222006-01-30 Linus Walleij <triad@df.lth.se>
2423
2424 * Created the initial GNU source directory structure.
2425 * Added the most basic files.