blob: c8f81081eeb3beff1ec55028526d7752d52eed15 [file] [log] [blame]
Richard Lowa7de0182009-05-03 22:33:33 +000012009-05-03 Richard Low <richard@wentnet.com>
2
3 * src/libmtp.c: add external property types just like file
4 types so any property can be retrieved/set. Add function
5 LIBMTP_Is_Property_Supported to determine if a property is
6 supported for a given object type. Add function
7 LIBMTP_Get_Allowed_Property_Values to get alowed range/enum
8 of a property value. Make
9 LIBMTP_Get_Representative_Sample_Format get the size parameter
10 to allow us to determine the maximum size for a representative
11 sample.
12 * src/libmtp.h.in: ditto
13 * src/libusb-glue.c: update to check the handler function return
14 value so the handler can return PTP_ERROR_CANCEL to cancel the
15 transfer.
16
172009-05-02 Richard Low <richard@wentnet.com>
18
19 * src/ptp-pack.c: add a NULL check
20
212009-04-18 Richard Low <richard@wentnet.com>
22
23 * src/ptp-pack.c: add terminating NULL character
24
252009-04-11 Richard Low <richard@wentnet.com>
26
27 * src/libusb-glue.c: Make get_playlist_extension return type
28 const char *
29 * src/libusb-glue.h: ditto
30 * src/libusb-glue.c: In probe_device_descriptor, check to see if
31 dev->config is NULL before going round the first loop
32 * src/libmtp.c: Add LIBMTP_Get_File_To_Handler,
33 LIBMTP_Send_File_From_Handler, LIBMTP_Get_Track_To_Handler,
34 LIBMTP_Send_Track_From_Handler functions to get/send files/tracks
35 from/to handler functions. Add modificationdate to file and track
36 structs. Add LIBMTP_FILETYPE_ALBUM and LIBMTP_FILETYPE_PLAYLIST
37 filetypes.
38
Linus Walleij4096c882009-03-16 23:32:34 +0000392009-03-17 Linus Walleij <triad@df.lth.se>
40
41 * src/device-flags.h: discovered a new device that cannot even
42 read out battery level but still claims to be able to. Sigh.
43 * src/libusb-glue.h: flag macro.
44 * src/music-players.h: flag the Slacker.
45 * src/libmtp.c: avoid battery level getting on these devices.
46 * configure.ac: preparing for 0.3.7.
47 * src/Makefile.am: preparing for 0.3.7 (libmtp.so.8.2.2)
Linus Walleijb7bd2452009-03-16 23:44:41 +000048 * Release libmtp 0.3.7.
Linus Walleij4096c882009-03-16 23:32:34 +000049
Linus Walleijd98e8972009-03-08 22:57:17 +0000502009-03-08 Linus Walleij <triad@df.lth.se>
51
52 * src/libmtp.c: refactored OGG extenstion check again, same
53 code in three places, broke it out and made it foolproof
54 (hopefully) in one single spot.
55
Linus Walleijb84b3852009-03-04 15:11:08 +0000562009-03-04 Linus Walleij <triad@df.lth.se>
57
58 * src/libusb-glue.c: patch from Marcus to fix an issue
59 with retransmit originally reported by Florent Pillet.
60
Linus Walleij5c1499e2009-02-21 06:54:29 +0000612009-02-21 Linus Walleij <triad@df.lth.se>
62
63 * src/libmtp.c: some additional NULL checks from
64 Florent Pillet.
65
Linus Walleij30b3e022009-02-18 22:41:20 +0000662009-02-18 Linus Walleij <triad@df.lth.se>
67
68 * src/libmtp.c: error report from RedHat BZ
69 http://bugzilla.redhat.com/show_bug.cgi?id=485627
70 led to strange code for detecting anonymous OGG files
71 being rewritten to handle NULL filenames and filenames
72 that do not exceed 4 chars.
73
Linus Walleijafac36b2009-01-30 20:39:13 +0000742009-01-30 Linus Walleij <triad@df.lth.se>
75
76 * src/libmtp.c: store albums and playlists in the default
77 music folder if no default folder for albums resp.
78 playlists has been detected.
79
Linus Walleijb17b9f12009-01-21 23:59:40 +0000802009-01-22 Linus Walleij <triad@df.lth.se>
81
82 * configure.ac: bump to 0.3.6 and release.
Linus Walleij4096c882009-03-16 23:32:34 +000083 * src/Makefile.am: interface bump to libmtp.so.8.2.1
Linus Walleijb17b9f12009-01-21 23:59:40 +000084
Linus Walleij7e3b3072009-01-19 22:51:17 +0000852009-01-16 Linus Walleij <triad@df.lth.se>
86
87 * src/ptp.c: sync to upstream.
88 * src/ptp.h: dito.
89
Linus Walleij2eaaff02009-01-15 21:30:36 +0000902009-01-15 Linus Walleij <triad@df.lth.se>
91
92 * src/libmtp.c: include fixes from Yuri Pankov for *BSD.
93 * src/playlist-spl.c: dito.
94 * examples/*.c: (more or less) dito.
95
Linus Walleijf67c1ad2009-01-14 21:39:50 +0000962009-01-14 Linus Walleij <triad@df.lth.se>
97
98 * src/device-flags.h: new device flag for broken
99 SendObjectPropList, as found broken in MEU202
100 * src/music-players.h: use the new flag.
101 * src/libmtp.c: implement this device flag.
102 * src/libusb-glue.h: dito.
103
Linus Walleij5b4a4d22009-01-10 12:18:14 +00001042009-01-10 Linus Walleij <triad@df.lth.se>
105
106 * src/libmtp.h.in: mingw32 fixes from James Ravenscroft.
Linus Walleija0e863b2009-01-10 22:15:57 +0000107 * src/libmtp.c: dito. Replaced "rindex" with "strrchr"
Linus Walleij5b4a4d22009-01-10 12:18:14 +0000108 * src/Makefile.am: dito.
109 * examples/albumart.c: dito.
110
Linus Walleijdd987c32009-01-06 00:35:05 +00001112009-01-06 Linus Walleij <triad@df.lth.se>
112
113 * src/Makefile.am: patch from Rafael Laboissiere removing a
114 build artifact in distclean.
115
Linus Walleij2242b022009-01-02 01:44:00 +00001162009-01-02 Linus Walleij <triad@df.lth.se>
117
118 * examples/connect.c: usage patch from Riley Patterson.
119 * examples/sendtr.c: dito. Plus only try to add track to an
120 album if and only if an album name was given.
121 * examples/newfolder.c: real bad bug fixed, didn't even work
122 due to bad args check.
123 * examples/sendfile.c: another bad bug...
124 * examples/common.h: include <config.h> not "config.h"
125 * src/unicode.h: no reason for this to include config.h!
126
Linus Walleijcb229572008-12-21 13:17:59 +00001272008-12-21 Linus Walleij <triad@df.lth.se>
128
129 * Release libmtp 0.3.5.
130
Linus Walleija89a7942008-12-14 23:19:34 +00001312008-12-15 Nathan Bullock <nathanbullock@gmail.com>
132
133 * src/libmtp.c: get folders to a flat list and we get O(n) searching
134 instead of the previous O(n^2) algorithm!
135
Linus Walleijb9255212008-12-13 22:26:26 +00001362008-12-13 Linus Walleij <triad@df.lth.se>
137
138 * examples/detect.c: make mtp-detect dump out default-capabilities.xml
139 if such a file exists on the device.
Linus Walleij2a84ca42008-12-14 00:00:23 +0000140 * m4/stdint.m4: update to newer macro from libgphoto2.
141 * m4/byteorder.m4: update to newer macro from libgphoto2.
142 We find these here:
143 http://gphoto.svn.sourceforge.net/viewvc/gphoto/trunk/m4/
144 * configure.ac: fix the renamed _stdint.h too.
145 * Doxyfile.in: some config option got obsolete.
Linus Walleijfc973122008-12-14 01:10:26 +0000146 * libmtp.c: start to use PTP error redirection to the libmtp error
147 stack. This also makes it possible to stop the annoying debug prints.
Linus Walleijd1e14e02008-12-14 01:07:30 +0000148 * libusb-glue.c: dito.
Linus Walleijfc973122008-12-14 01:10:26 +0000149 * ptp.c: sync to upstream.
150 * ptp.h: sync to upstream.
Linus Walleijb9255212008-12-13 22:26:26 +0000151
Linus Walleijd8a2fae2008-12-02 12:20:17 +00001522008-12-02 Linus Walleij <triad@df.lth.se>
153
154 * examples/util.c: another NULL check.
155
Linus Walleij73fecc42008-11-25 21:17:22 +00001562008-11-25 Linus Walleij <triad@df.lth.se>
157
158 * src/libmtp.c: fix a bug on handling folder children with an illegal
159 ID of 0. Occured in the ZEN Xi-Fi in the "Recordings" folder, when
160 that is created on the device.
161
alistair_boyle5e5fcb72008-11-17 14:38:19 +00001622008-11-17 Alistair Boyle <alistair.js.boyle@gmail.com>
163
alistair_boyle5e5fcb72008-11-17 14:38:19 +0000164 * configure.ac: change release to 0.3.5.
165 * libmtp.c: change metadata const*const to *const to allow playlist_id
166 to be modified by LIBMTP_Update_Playlist. (Samsung playlists)
167 * libmtp.h.in: match libmtp.c
168
Linus Walleij1ccd5862008-11-11 12:33:01 +00001692008-11-11 Linus Walleij <triad@df.lth.se>
170
171 * src/libmtp.c: allow for playlists with zero tracks on them,
172 also in update.
173
Linus Walleijd49955b2008-11-09 17:20:00 +00001742008-11-09 Linus Walleij <triad@df.lth.se>
175
176 * src/ptp.h: sync from upstream.
177 * src/ptp.c: sync from upstream.
178 * src/ptp-pack.c: sync from upstream.
179
Linus Walleij54c468c2008-11-07 22:36:15 +00001802008-11-07 Linus Walleij <triad@df.lth.se>
181
182 * Release libmtp 0.3.4.
183 * configure.ac: let's release 0.3.4.
184 * src/Makefile.am: compatible API and ABI.
185
Linus Walleij753a46a2008-11-05 09:10:52 +00001862008-11-05 Linus Walleij <triad@df.lth.se>
187
188 * src/libmtp.c: fix the association type problem on
189 LIBMTP_Create_Folder(). This causes folders not to
190 work properly on some devices!!
191
Linus Walleij3bc0d7f2008-11-01 23:06:24 +00001922008-11-01 Linus Walleij <triad@df.lth.se>
193
194 * src/ptp.h: sync to upstream.
195 * src/ptp.c: sync to upstream.
196 * src/ptp-pack.c: introduce Richards bugfix on top of
197 upstream and take advantage of the ptp_debug() function.
198 * src/libusb-glue.c: make ptp_debug() non-static since
199 ptp-pack.c needs it.
200
Linus Walleijcf8dc2b2008-10-21 13:58:36 +00002012008-10-21 Linus Walleij <triad@df.lth.se>
202
203 * src/device-flags.h: actually the SanDisks cannot handle
204 PTP_OPC_DateModified at ALL, not even as part of the
205 initial update so rename the flag to something sensible.
206 * src/music-players.h: consequental changes.
207 * src/libmtp.c: disable all use of PTP_OPC_DateModified if
208 flag is set, not just updates.
209
Linus Walleij37588142008-10-16 19:10:47 +00002102008-10-16 Linus Walleij <triad@df.lth.se>
211
212 * src/device-flags.h: new flag for broken updates of
213 PTP_OPC_DateModified.
214 * src/music-players.h: tag all SanDisk devices with this
215 flag. Bug appeared in them.
216 * libmtp.c: avoid updating PTP_OPC_DateModified on broken
217 devices.
218
Linus Walleijc8abc922008-09-28 18:38:42 +00002192008-09-28 Alvin <alvinbeach@gmail.com>
220
221 * src/libmtp.c: fix several bugs in Ogg filetype support.
222
Richard Lowff16bfa2008-09-26 19:23:08 +00002232008-09-26 Richard Low <richard@wentnet.com>
224
225 * src/libmtp.c: check propdesc before setting props in
226 create_new_abstract_list()
227
Linus Walleijf12e3052008-09-25 22:00:40 +00002282008-09-25 Linus Walleij <triad@df.lth.se>
229
230 * configure.ac: bump to 0.3.3.
231 * src/Makefile.am: interface to .so.8.1.0
232 * Release as 0.3.3.
233
Linus Walleij8d8c4352008-09-23 23:04:16 +00002342008-09-24 Linus Walleij <triad@df.lth.se>
235
236 * src/libmtp.h.in: add new filename setting functions, patch
237 from Florent Mertens <flomertens@gmail.com>.
238 * src/libmtp.c: implementation.
239 * src/playlist-spl.c: consequental changes.
240 * src/libmtp.sym: consequental changes.
Linus Walleijfb7212f2008-09-24 20:30:13 +0000241 * Fixup patch from Alvin later this day.
Linus Walleij8d8c4352008-09-23 23:04:16 +0000242 * Note to self: remember to bump soname to .so.8.1.0.
243
Richard Low4d9165f2008-09-23 20:13:17 +00002442008-09-23 Richard Low <richard@wentnet.com>
245
246 * src/libmtp.c: check for NULL storage
247 * src/libusb-glue.c: return PTP_RC_OK on zero read
248 * src/music-players.h: give Samsung YP-10 DEVICE_FLAG_NO_ZERO_READS
249
Linus Walleij97c351b2008-09-22 08:22:20 +00002502008-09-22 Linus Walleij <triad@df.lth.se>
251
252 * src/libmtp.c: make sure we don't try to fit a new file onto
253 a ROM storage. Add some pretty-print to FourCC codecs so
254 you can actually understand the enumerations.
255
Linus Walleij4347fda2008-09-19 22:28:45 +00002562008-09-20 Joe Nahmias <joe@nahmias.net>
257
258 * examples/sendtr.c: added option to specify which
259 storage_id the track should be copied.
260
Linus Walleijeb5d5fe2008-09-19 22:01:48 +00002612008-09-20 Linus Walleij <triad@df.lth.se>
262
263 * configure.ac: bump to 0.3.2.
264 * src/Makefile.am: bump to libmtp.so.8.0.2, compatible
265 interface.
266 * Release this as 0.3.2 mainly to get the Creative fixes out.
267
Linus Walleij2832a202008-09-17 18:58:20 +00002682008-09-17 Linus Walleij <triad@df.lth.se>
269
270 * src/libmtp.h.in: new helper macros from
271 Alvin <alvinbeach@gmail.com> plus some docs.
272
Linus Walleij780b3902008-09-11 22:17:00 +00002732008-09-12 Linus Walleij <triad@df.lth.se>
274
275 * src/music-players.h: drop bug flags off the Creative devices.
276 I am confident that the bugs they were masking have been
277 fixed now.
278
Richard Low4d93a992008-09-07 12:52:14 +00002792008-09-07 Richard Low <richard@wentnet.com>
280
281 * src/music-players.h: added Panasonic P905i
282
Linus Walleijb67fecc2008-09-05 10:41:30 +00002832008-09-05 Marcus Meissner <meissner@suse.de>
284
285 * src/libmtp.sym: update symbol export table.
286 * src/Makefile.am: fix up some magic for symbol export.
287
Linus Walleijf3296622008-09-04 20:53:56 +00002882008-09-04 Linus Walleij <triad@df.lth.se>
289
290 * src/libmtp.c: look up the filename for playlists if the name is
291 missing or not properly set. Not doing the same for albums -
292 these must have proper metadata.
293 * src/music-players.h: more players as usual.
294 * examples/sendtr.c: more warnings.
295
Linus Walleij9d00c1b2008-08-31 18:17:08 +00002962008-08-31 Linus Walleij <triad@df.lth.se>
297
298 * src/ptp.h: sync to upstream.
299 * src/ptp.c: sync to upstream.
300
Linus Walleij2f622812008-08-30 22:06:58 +00003012008-08-30 Chris Bagwell <chris@cnpbagwell.com>
302
303 * src/libusb-glue.c: make it possible to have per-command
304 or otherwise altered timeout values for different PTP
305 request/response sequences.
306 * src/libusb-glue.h: dito.
307 * src/libmtp.c: increase USB timeout to 30s when getting
308 a complete track listing off the device.
309 * src/music-players.h: as a consequence, the Sirus Stiletto
310 no longer needs any brokenness flag.
311
3122008-08-30 Linus Walleij <triad@df.lth.se>
313
314 * src/ptp.c: sync to upstream.
315
Linus Walleijeb144392008-08-28 14:43:38 +00003162008-08-28 Linus Walleij <triad@df.lth.se>
317
318 * examples/sendtr.c: fix non-strdup():ed strings to be
319 copied, patch courtesy of Juanan Pereira.
320
Linus Walleij5b17d8f2008-08-25 20:55:15 +00003212008-08-25 Linus Walleij <triad@df.lth.se>
322
323 * src/Makefile.am: bump interface a patchlevel. (Fully
324 compatible.)
325 * configure.ac: bump version to 0.3.1.
326 * Release as libmtp 0.3.1.
327
Linus Walleije1be4b92008-08-18 08:49:22 +00003282008-08-18 Linus Walleij <triad@df.lth.se>
329
330 * src/libusb-glue.c: some vartype and return flunkies.
Linus Walleij8b8c8502008-08-18 19:58:36 +0000331 * configure.ac: check for locale.h
332 * examples/util.c: set locale to pick up environment.
Linus Walleije1be4b92008-08-18 08:49:22 +0000333
Linus Walleij06e42322008-08-16 23:34:32 +00003342008-08-17 Linus Walleij <triad@df.lth.se>
335
336 * src/libusb-glue.c: some handling of ptp_usb_getdata()
337 when passed in data size was 0xffffffffU, data
338 sent in first transaction was ignored, fix by
339 Rob Woolley.
Linus Walleijdeddc342008-08-16 23:52:06 +0000340 * src/ptp-pack.c: sync in from upstream libgphoto2.
341 * src/README: move relevant stuff to README.
342 * README: see above.
Linus Walleij06e42322008-08-16 23:34:32 +0000343
Linus Walleijf3c44052008-08-16 21:14:56 +00003442008-08-15 Alistair Boyle <alistair.js.boyle@gmail.com>
345
346 * src/playlist-spl.c: added handling of Samsung's
347 proprietary .spl playlist format.
348 * src/playlist-spl.h: dito.
349 * src/device-flags.h: new flags for Samsung playlists.
350 * src/music-players.h: assign flags.
351 * src/libusb-glue.h: convenience macros.
352 * src/libmtp.c: integrate Samsung playlists.
353
Linus Walleij59765e82008-08-15 07:17:12 +00003542008-08-15 Linus Walleij <triad@df.lth.se>
355
356 * examples/Makefile.am: break out utility functions
357 (currently only checklang()) to a separate file.
358 * examples/util.h: dito.
359 * examples/util.c: dito.
360 * examples/detect.c: dito.
361 * examples/sendtr.c: dito.
362 * examples/connect.c: dito.
363
Linus Walleij25d5c212008-08-14 06:49:13 +00003642008-08-14 Linus Walleij <triad@df.lth.se>
365
366 * src/libmtp.c: add some documentation to file and track
367 listing functions to that it's clear that you have to
368 inspect storage_id and parent_id in order to group files
369 into storages and/or folders.
370
Linus Walleij07bb5382008-07-31 20:21:09 +00003712008-07-31 Linus Walleij <triad@df.lth.se>
372
373 * src/music-players.h: several new devices and flags.
374
Linus Walleije80d6bd2008-06-23 23:11:42 +00003752008-06-24 Linus Walleij <triad@df.lth.se>
376
377 * TODO: updates.
378 * src/Makefile.am: bump interface to libmtp.so.8.0.0.
379 It's NOT compatible!
380 * RELEASE libmtp 0.3.0 and let the apps developers have
381 their apps fixed!
382
Linus Walleijea68f1f2008-06-22 21:54:44 +00003832008-06-22 Linus Walleij <triad@df.lth.se>
384
385 * src/libmtp.h.in: removed the parenthandle argument from
386 LIBMTP_Send_File_From_File(),
387 LIBMTP_Send_File_From_File_Descriptor(),
388 LIBMTP_Send_Track_From_File(),
389 LIBMTP_Send_Track_From_File_Descriptor(),
390 LIBMTP_Create_New_Playlist() and
391 LIBMTP_Create_New_Album()
392 Now you must pass in parent ID from a metadata or
393 filedata set. Use the respective field of the
394 file, track, playlist or album struct to pass in
395 a parent handle when calling these functions from
396 now on. The bonus for changing your code is that you
397 can now also pass in a storage_id with any metadata
398 set! Consequently LIBMTP_Create_Folder() was
399 altered to accept THREE metadata arguments: name,
400 parent_id and storage_id. All calls to any of these
401 functions in any referring code need to be altered to
402 use this scheme. It should be quite self-evident for
403 most code and easy to perform.
404 * src/libmtp.c: changed outlined above were implemented.
405 * examples/newfolder.c: consequental changes.
406 * examples/sendfile.c: consequental changes.
407 * examples/sendtr.c: consequental changes.
408 * examples/albumart.c: consequental changes.
409 * examples/newplaylist.c: consequental changes.
410 * examples/files.c: consequental changes.
411 * examples/tracks.c: correct misleading strings.
412
Linus Walleij8f7f1aa2008-06-15 19:00:23 +00004132008-06-15 Linus Walleij <triad@df.lth.se>
414
415 * src/libmtp.c: only look for default folders in the
416 root folder on the primary storage, even.
417
Linus Walleijc40c9bf2008-06-13 23:24:17 +00004182008-06-14 Linus Walleij <triad@df.lth.se>
419
420 * src/libmtp.c: only look for default folders in the
421 primary storage, and only try to put files there
422 if they are targetting the primary storage.
423
Linus Walleij56c63952008-06-08 21:55:58 +00004242008-06-08 Linus Walleij <triad@df.lth.se>
425
426 * configure.ac: check for the langinfo.h header.
427 * examples/connect.c: check charset properly.
428 * examples/sendtr.c: dito.
429 * src/music-players.h: new devices galore.
430
Linus Walleij335a81c2008-06-02 23:01:00 +00004312008-06-03 Linus Walleij <triad@df.lth.se>
432
433 * src/device-flags.h: new device flag for devices that
434 always need to have their device descriptor probed.
435 * src/music-players.h: generously add this flag to all
436 SanDisk devices. The e280v2 and Fuze are known to be
437 especially problematic.
438 * src/libusb-glue.h: helper macro.
439 * src/libusb-glue.c: massage "OS Descriptor" on demand
440 when opening the device.
Linus Walleij5e202562008-06-03 11:35:05 +0000441 * src/music-players.h: detailed info and flags for the
442 SanDisk Sansa players. More to be done, probably.
Linus Walleij335a81c2008-06-02 23:01:00 +0000443
Linus Walleijfec4d562008-06-01 22:30:36 +00004442008-06-02 Linus Walleij <triad@df.lth.se>
445
446 * src/libusb-glue.c: refactor PTP_USB to use the raw
447 device and its contained deviceinfo to store and
448 retrieve the device flags. (This is starting to look
449 object oriented...)
450 * src/libusb-glue.h: accessor functions to simplify
451 switching on the device flags and increase the code
452 readability.
453 * src/libmtp.c: use the new accessor functions.
454
Linus Walleij64691b72008-05-31 22:55:18 +00004552008-06-01 Linus Walleij <triad@df.lth.se>
456
457 * src/libmtp.c: use LIBMTP_Detect_Raw_Devices() and
458 LIBMTP_Open_Raw_Device() inside
Linus Walleij3c643252008-05-31 23:22:28 +0000459 LIBMTP_Get_First_Device() refactoring. Move
460 params creation into this file.
461 * src/libusb-glue.c: move params creation away
462 from here.
Linus Walleij64691b72008-05-31 22:55:18 +0000463
Linus Walleij9b146182008-05-29 22:42:54 +00004642008-05-30 Linus Walleij <triad@df.lth.se>
465
466 * src/libusb-glue.c: unused variable.
467 * examples/detect.c: switch to using raw device
468 interface for opening devices.
469
Linus Walleij9d22ce02008-05-28 20:39:29 +00004702008-05-28 Linus Walleij <triad@df.lth.se>
471
Linus Walleija700d222008-05-28 23:06:14 +0000472 * src/libmtp.c: internally using the raw devices to
473 get a list of devices.
Linus Walleij9d22ce02008-05-28 20:39:29 +0000474 * src/ptp.c: sync to upstream.
475 * src/ptp.h: dito.
476 * src/ptp-pack.c: dito.
Linus Walleija700d222008-05-28 23:06:14 +0000477 * src/libmtp.h.in: move raw device detection to use
Linus Walleijbdb89bd2008-05-28 23:32:35 +0000478 error codes. Add interface to open a raw device!
Linus Walleija700d222008-05-28 23:06:14 +0000479 * src/libusb-glue.h: make the old device list internal,
480 use raw device in interface for configuring USB.
481 * src/libusb-glue.c: fix up error messages. Move the
482 raw device detection interface to use error codes.
483 * examples/detect.c: fix up error messages. Use error
484 codes for raw devices.
Linus Walleij9d22ce02008-05-28 20:39:29 +0000485
Linus Walleij817579a2008-05-23 21:21:40 +00004862008-05-23 Linus Walleij <triad@df.lth.se>
487
488 * src/libmtp.c: after sending a file, look up the
489 resulting file metadata from the cache to make sure
490 that parent_id is identical to that the file actually
491 gets on the device. If root folder (0) is selected, we
492 hardcode thing to 0xffffffffu to be used as parent,
493 but it will probably end up being 0 for example.
Linus Walleijfcb43422008-05-23 21:53:55 +0000494 Also fix an issue with ptp_mtp_getobjectproplist()
495 sometimes returning a NULL pointer while still
496 claiming there are props in the list.
Linus Walleija4e6bdc2008-05-23 22:31:53 +0000497 * src/libusb-glue.h: add a function to get the preferred
498 playlist extension.
Linus Walleij5ba40402008-05-23 21:36:54 +0000499 * src/libusb-glue.c: "written" variable in
500 ptp_usb_sendreq() may end up uninitialized if
501 ptp_write_func() fails. Initialize it to 0.
Linus Walleija4e6bdc2008-05-23 22:31:53 +0000502 Get the prefered playlist extension.
Linus Walleij817579a2008-05-23 21:21:40 +0000503
Richard Lowbb9fb4a2008-05-18 14:49:34 +00005042008-05-18 Richard Low <richard@wentnet.com>
505
506 * src/device-flags.h: added
507 DEVICE_FLAG_BROKEN_SET_SAMPLE_DIMENSIONS device flag
508 * src/music-players.h: ditto. Also set Samsung YH-999 to
509 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL based on users
510 experience.
511 * src/libmtp.c: added
512 DEVICE_FLAG_BROKEN_SET_SAMPLE_DIMENSIONS device flag
513
Linus Walleijf106aa62008-05-04 22:55:51 +00005142008-05-05 Linus Walleij <triad@df.lth.se>
515
516 * src/libusb-glue.c: assign device name and flags to
517 detected raw devices, slowly preparing to move to
518 using the raw device detection internally as well.
519
Linus Walleij10e0ce72008-05-04 19:20:33 +00005202008-05-04 Linus Walleij <triad@df.lth.se>
521
522 * src/libmtp.h.in: move useful filetype macros here so
523 external programs can use them.
524 * src/libmtp.c: consequental changes.
525 * examples/sendtr.c: use the new macro to detect track
526 content.
527
Linus Walleij31b74292008-05-02 23:29:06 +00005282008-05-03 Johannes Huber <johub1180@gmx.at>
529
530 * src/libmtp.h.in: add interface for setting album composer,
531 needed for classical albums, on abstract albums.
532 * src/libmtp.c: implement it.
533 * examples/albums.c: consequental changes.
534 * examples/connect.c: dito.
535 * examples/sendtr.c: dito.
536 * examples/tracks.c: dito.
537 * AUTHORS: new contributor.
538
Linus Walleij46651f32008-04-26 23:30:19 +00005392008-04-27 Linus Walleij <triad@df.lth.se>
540
541 * src/libmtp.c: recognize audio files as tracks, since this
542 is what WMP does. (e.g. it sets playlength on movies
543 to enable skip bar) also define macros for audio/video/both
544 types and tidy up a bit.
545
Linus Walleij63fd1e62008-04-23 23:49:43 +00005462008-04-24 Linus Walleij <triad@df.lth.se>
547
548 * src/libmtp.h.in: added preliminary interface for getting
549 raw devices.
550 * src/libusb-glue.c: the implementation is all here!
551 * src/libusb-glue.h: add some bus and device fields to the
552 internal device list.
553 * examples/detect.c: exercise the raw device detection code.
554
Linus Walleij88feb2e2008-03-26 00:26:20 +00005552008-03-26 Linus Walleij <triad@df.lth.se>
556
557 * examples/pathutils.c: fix a folder identification bug,
558 courtesy of Dr Nicholas Jacobs.
559
Linus Walleij5ce59db2008-03-12 21:22:58 +00005602008-03-12 Linus Walleij <triad@df.lth.se>
561
Linus Walleij161fcce2008-03-12 22:02:59 +0000562 * configure.ac: bad mailing list address. (Marcus) Bump to
563 version 0.3.0.
564 * examples/hotplug.c: switch from using "info.bus" to
565 using "info.subsystem" to identify USB events. (Marcus).
Linus Walleij5ce59db2008-03-12 21:22:58 +0000566 * src/libmtp.c: add parent_id to albums and playlists,
567 based on a patch by Ali Shah.
568 * src/libmtp.h.in: dito.
569 * examples/playlists.c: consequental changes.
570 * examples/albums.c: consequental changes.
571 * This will be a new major revision of the API/ABI no
572 matter what.
573
Linus Walleij1018c162008-03-07 23:11:58 +00005742008-03-08 Linus Walleij <triad@df.lth.se>
575
576 * src/libusb-glue.c: left debug prints on :-(
Linus Walleij907905b2008-03-07 23:33:02 +0000577 * configure.ac: set to 0.2.6.1
Linus Walleij1018c162008-03-07 23:11:58 +0000578 * Release as 0.2.6.1
579
Linus Walleijb8f78c72008-03-02 20:22:56 +00005802008-03-02 Linus Walleij <triad@df.lth.se>
581
582 * configure.ac: prepare 0.2.6 release.
583 * src/Makefile.am: bump to compatible interface,
584 * src/ptp.c: sync in upstream, a Sansa fix!
585 * src/ptp.h: sync in upstream.
586 * doc/Doxyfile.in: retire obsoleted parameters.
587 * Release this as 0.2.6!
588
Richard Low641d1e32008-02-24 20:47:20 +00005892008-02-24 Richard Low <richard@wentnet.com>
590
591 * src/music-players.h: add DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL
592 for a broken Philips player.
593
Linus Walleijc12e1752008-02-18 22:45:45 +00005942008-02-18 Linus Walleij <triad@df.lth.se>
595
596 * examples/pathutils.c: fix up item ID typing to uint32_t,
597 handle file names passed in as arguments at suggestion from
598 anonymous mail list user.
599 * examples/pathutils.h: move a function static.
600
Linus Walleij75fe2bf2008-02-12 07:34:35 +00006012008-02-12 Nicolas Pennequin <nicolas.pennequin@free.fr>
602
603 * examples/sendtr.c: add transferred tracks to albums if possible.
604
Linus Walleij3191bba2008-02-10 21:16:25 +00006052008-02-10 Scott Snyder <snyder@fnal.gov>
606
607 * src/libusb-glue.c: finally fix up the short header detection
608 to skip over zero packets when encountered.
609 * examples/pathutils.c: fix a problem where all files sent has
610 to include a "." (period).
611
Linus Walleijbebc6d52008-02-06 00:17:58 +00006122008-02-06 Linus Walleij <triad@df.lth.se>
613
614 * src/libusb-glue.c: wait for response > 0 instead of > 2.
615
Linus Walleijce245a82008-01-28 10:25:13 +00006162008-01-28 Linus Walleij <triad@df.lth.se>
617
Linus Walleij0801cd52008-01-29 22:19:15 +0000618 * src/libmtp.c: LIBMTP_Get_Filemetadata() return metadata for
619 folders (associations) too. There is really no reason why it
620 shouldn't and it's good for use internally.
621 LIBMTP_Get_Filelisting_With_Callback() will still not return
622 any associations however. We want to use the folder functions
623 for that.
624
6252008-01-28 Linus Walleij <triad@df.lth.se>
626
Linus Walleijce245a82008-01-28 10:25:13 +0000627 * src/libmtp.h.in: withdraw LIBMTP_Set_Object_Parent() function,
628 no known devices will support this.
Linus Walleij8be2c032008-01-28 21:23:47 +0000629 * src/libmtp.c: dito. Fix up some problems with the
630 LIBMTP_Set_Object_Filename() function.
Linus Walleijce245a82008-01-28 10:25:13 +0000631
Linus Walleij399807b2008-01-27 22:05:12 +00006322008-01-27 Linus Walleij <triad@df.lth.se>
633
634 * src/libmtp.c: fix up some minor things and documentation on
635 the object handling functions.
636
Linus Walleijde8193f2008-01-27 14:55:31 +00006372008-01-27 Florent Mertens <flomertens@gmail.com>
638
639 * src/libmtp.h.in: new functions to rename object filenames
640 and change object parents. Good when modifying the device
641 as a file system, LIBMTP_Set_Object_Filename(),
642 LIBMTP_Set_Object_Parent().
643 * src/libmtp.c: implementation.
644
Linus Walleij00411ee2008-01-27 12:24:51 +00006452008-01-27 Linus Walleij <triad@df.lth.se>
646
647 * src/libusb-glue.c: re-read response from device until
648 it atleast exceeds two bytes. This fixes a problem with
649 the Samsung YP-U3 when populated with many, many songs.
650
Richard Lowa11a6ad2008-01-21 17:23:55 +00006512008-01-21 Richard Low <richard@wentnet.com>
652
653 * src/music-players.h: add Thomson Lyrca HC308A, remove
654 incorrect ID for Creative Zen 8GB
655
Richard Low36e447c2008-01-20 15:24:55 +00006562008-01-20 Richard Low <richard@wentnet.com>
657
658 * src/libmtp.c: add LIBMTP_Get_Representative_Sample()
659 * src/libmtp.h.in: ditto
660
6612008-01-14 Linus Walleij <triad@df.lth.se>
Linus Walleij2350b712008-01-14 22:54:37 +0000662
663 * src/libmtp.c: add LIBMTP_Get_Manufacturername(). Remember
664 to bump soname (compatible) in 0.2.6 (or whatever we name it).
665 0.3.0 perhaps?
666 * src/libmtp.h.in: dito.
667 * src/libmtp.c: detect default folders named "Datacasts" and
668 "Texts".
669
Richard Low36e447c2008-01-20 15:24:55 +00006702008-01-11 Linus Walleij <triad@df.lth.se>
Linus Walleij7fcaa372008-01-11 00:48:06 +0000671
672 * examples/pathutils.c: recognize .bin files as firmware,
673 used by e.g. RockBox developers. Doesn't cost anything to
674 add.
675
Richard Low36e447c2008-01-20 15:24:55 +00006762008-01-08 Linus Walleij <triad@df.lth.se>
Linus Walleij89daa092008-01-08 22:35:39 +0000677
678 * configure.ac: bump to 0.2.5.
679 * src/Makefile.am: interface to libmtp.so.7.0.2
680 (compatible).
681 * Release as libmtp 0.2.5. Why not?
682
Linus Walleij0b75ab62007-12-28 00:47:34 +00006832007-12-28 Linus Walleij <triad@df.lth.se>
684
685 * src/libmtp.c: make libmtp use PTP_OPC_AlbumArtist on albums,
686 instead of the (seldom present) PTP_OPC_Artist tag. Use both
687 if both are supported. We're not setting AlbumArtist on regular
688 tracks though, what's the point, and what does it mean if this
689 differs from Artist??
690
Linus Walleija3544f62007-11-30 01:20:04 +00006912007-11-30 Linus Walleij <triad@df.lth.se>
692
693 * src/music-players.h: new flag for the YP-T10.
694 * src/device-flags.h: define the new flag, that is needed
695 to support Ogg files on these devices.
696 * src/libmtp.c: recognize and report Ogg support, set type
697 to unknown when transferring.
698
Linus Walleijcc2cf972007-11-22 20:23:43 +00006992007-11-22 Linus Walleij <triad@df.lth.se>
700
701 * configure.ac: bump to 0.2.4.
702 * src/Makefile.am: bump age of soversion (compatible).
703 * RELEASE 0.2.4 mainly to get some new device support out there.
704
Linus Walleijbc550bc2007-11-08 23:25:09 +00007052007-11-09 Linus Walleij <triad@df.lth.se>
706
707 * src/libusb-glue.c: avoid probing deeper into interfaces
708 that have a string describing them as "MTP" after a
709 suggested patch from Alexander Kanavin <ak@sensi.org>.
Linus Walleij20c3b672007-11-09 19:02:19 +0000710 * examples/albumart.c: patch from Chris Waters <xtifr@debian.org>
711 replacing calls to atoi() with calls to strtoul(). Since
712 object ID:s are unsigned long, atoi() would reject too
713 high object IDs. The patch also fix a few memory leaks.
714 THANKS DEBIAN! We love our downstream!
715 * examples/newplaylist.c: dito.
716 * examples/pathutils.c: dito.
717 * examples/thumb.c: dito.
Linus Walleijbc550bc2007-11-08 23:25:09 +0000718
Linus Walleij5f42ef42007-11-05 22:58:50 +00007192007-11-05 Linus Walleij <triad@df.lth.se>
720
721 * src/libmtp.c: use OPFF codes instead of DPFF codes,
722 we're dealing with objects, not device props.
723 * src/ptp.c: silence some OPFF freeing warnings.
724
Linus Walleij3e4b1142007-11-01 23:54:16 +00007252007-11-02 Linus Walleij <triad@df.lth.se>
726
727 * src/libusb-glue.c: try to repair header here instead of
728 ignoring error in ptp.c.
Linus Walleij1d0e84f2007-11-02 21:05:35 +0000729 * src/music-players.h: flag some more Creative devices as
730 broken getting all files.
731 * src/Makefile.am: reference the 2 new .h files.
Linus Walleij3e4b1142007-11-01 23:54:16 +0000732
Linus Walleij8f4bb042007-10-31 08:59:12 +00007332007-10-31 Linus Walleij <triad@df.lth.se>
734
735 * src/ptp.c: bring cache handling into this file.
736 * src/ptp.h: dito.
737 * src/libmtp.c: consequential changes.
738
Linus Walleij1a673de2007-10-29 23:10:05 +00007392007-10-30 Linus Walleij <triad@df.lth.se>
740
741 * src/music-players.h: split this off as a shared file
742 between us and libgphoto2 so we get out of the syncing
743 nightmare.
Linus Walleij3e667ae2007-10-29 23:29:39 +0000744 * src/device-flags.h: split out this as well, Marcus
745 might want it.
Linus Walleij8f4bb042007-10-31 08:59:12 +0000746 * src/libusb-glue.c: consequential movement.
Linus Walleij3e667ae2007-10-29 23:29:39 +0000747 * src/libmtp.c: reference new flag file.
Linus Walleij0b89a7e2007-10-30 22:21:15 +0000748 * src/ptp.c: sync in upstream.
749 * src/ptp.h: dito.
Linus Walleij1a673de2007-10-29 23:10:05 +0000750
Linus Walleij08c90082007-10-25 20:29:53 +00007512007-10-25 Linus Walleij <triad@df.lth.se>
752
753 * Release 0.2.3. Nice bunch of cleaned-up code, sad we had
754 too bump soversion but such is life.
755
Linus Walleijfb28b632007-10-23 21:56:18 +00007562007-10-23 Linus Walleij <triad@df.lth.se>
757
758 * src/libmtp.c: make LIBMTP_Send_File_From_File_Descriptor()
759 survive the case where device->storage is NULL. This happens
760 on the Nokia 3110c.
761
Linus Walleij7752b952007-10-19 20:11:46 +00007622007-10-19 Linus Walleij <triad@df.lth.se>
763
764 * src/libmtp.c: bring the cache handling code together at the
765 end of the file, refactor so as to avoid code duplication,
Linus Walleij4d0deea2007-10-19 21:27:48 +0000766 do things in one place only and looking good. Get folder
767 list recursively instead, this works better with fast dir
768 retrieveal I think.
Linus Walleij7752b952007-10-19 20:11:46 +0000769
Linus Walleij26d42da2007-10-18 14:02:02 +00007702007-10-18 Linus Walleij <triad@df.lth.se>
771
772 * src/libmtp.c: fix the deletion of cached properties when
773 removing objects. This code was seriously broken.
774
jefferaida9687e2007-10-16 16:44:15 +00007752007-10-16 Jeff Mitchell <kde-dev@emailgoeshere.com>
776
Linus Walleijc5908a02007-10-16 20:42:08 +0000777 * src/libusb-glue.c: remove the previously-concatenated vendor
778 and product string "name" field as it's now redundant
779 * src/Makefile.am: interface to libmtp.so.7.0.0 (incompatible,
780 device_entry_struct members changed)
781 * examples/hotplug.c: port to use vendor and product instead of
782 name, also some useful commenting in the fdi file
jefferaida9687e2007-10-16 16:44:15 +0000783
Linus Walleij06542122007-10-14 22:13:48 +00007842007-10-15 Linus Walleij <triad@df.lth.se>
785
786 * src/libusb-glue.c: repair headers, don't just ignore them.
Linus Walleijf9267e92007-10-15 21:07:37 +0000787 Add support for broken set object proplist devices. Motorola
788 RAZR2 V8 has this problem.
789 * src/libusb-glue.h: flag for broken set object proplist.
790 * libmtp.c: avoid broken set object proplist.
Linus Walleij06542122007-10-14 22:13:48 +0000791
jefferaida9687e2007-10-16 16:44:15 +00007922007-10-09 Jeff Mitchell <kde-dev@emailgoeshere.com>
793
Linus Walleijc5908a02007-10-16 20:42:08 +0000794 * src/libusb-glue.c: add separate vendor and product strings
795 in device entry structs
jefferaida9687e2007-10-16 16:44:15 +0000796 * src/libmtp.h.in: update device entry structs to reflect this
797
Linus Walleija91f8892007-10-04 21:25:22 +00007982007-10-04 Linus Walleij <triad@df.lth.se>
799
800 * src/libusb-glue.c: rm some pointless confusing defines
801 inherited from libgphoto2.
Linus Walleij2ec6ff52007-10-04 22:20:43 +0000802 * configure.ac: bump to 0.2.2
803 * src/Makefile.am: interface to libmtp.so.6.0.2 (compatible)
804 * Release as 0.2.2. Now is as good time as ever. Release
805 early and release often.
Linus Walleija91f8892007-10-04 21:25:22 +0000806
Linus Walleij41e75b22007-10-03 21:58:06 +00008072007-10-03 Linus Walleij <triad@df.lth.se>
808
809 * src/libusb-glue.c: tag the OLD Creative devices with
810 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL, after clear
811 indications that it was broken when retrieveing folders
812 on all those devices. The newer devices (those supporting
813 32bit object size) presumably does not have this limitation.
814
Linus Walleijca2a1702007-10-02 20:41:45 +00008152007-10-02 Linus Walleij <triad@df.lth.se>
816
817 * src/libmtp.c: devices which represented file size with a
818 32bit value (some Creative devices) would return a bananas
Linus Walleij1d877372007-10-02 21:21:57 +0000819 file size. Fixed it up by...
820 * src/libmtp.h.in: recycling the uint8_t "interface"
Linus Walleijddaba2f2007-10-02 21:20:30 +0000821 field in the device struct as a holder of the object size
822 for the device. This will make the new library binary
823 compatible with version 0.2.1 since no-one should *ever*
824 dereference that value (which used to be the USB interface
825 number and is now the object size).
Linus Walleijca2a1702007-10-02 20:41:45 +0000826 * examples/files.c: display 64bit file sizes in hex correctly.
827
Richard Low99a93e82007-09-29 08:16:08 +00008282007-09-29 Richard Low <richard@wentnet.com>
829
830 * src/libmtp.c: avoid crash on failed connect
831
Linus Walleij8e3af002007-09-28 19:21:54 +00008322007-09-28 Linus Walleij <triad@df.lth.se>
833
834 * src/libusb-glue.h: introduce a new device flag for devices that
835 have broken PTP headers, first encountered on the Creative
836 ZEN 8GB.
837 * src/libusb-glue.c: attempt to begin to work around the broken
838 PTP headers.
839
Linus Walleij29f03ba2007-09-25 19:22:12 +00008402007-09-25 Linus Walleij <triad@df.lth.se>
841
842 * src/libusb-glue.h: add a new device flag for devices that don't
843 like it if you release the interface (or try to clear endpoints).
844 * src/libusb-glue.c: dito, implement this flag, tag all SanDisk
845 Sansa devices with it except for the Linux-based Sansa Connect.
846
Richard Low61edc1a2007-09-23 10:35:48 +00008472007-09-23 Richard Low <richard@wentnet.com>
848
849 * src/libusb-glue.c: updated some device flags, removed second
850 call to ptp_getdeviceinfo
851 * src/libmtp.c: property cache fixes
852
Linus Walleij7783b9b2007-09-22 22:10:44 +00008532007-09-23 Linus Walleij <triad@df.lth.se>
854
855 * src/libmtp.c: wrapped updating of playlists and albums into an
856 abstract function so we do it consistently. Added support for
857 tagging on modification date to files, tracks, playlists and
858 albums.
859
Linus Walleij580aff72007-09-21 13:02:19 +00008602007-09-21 Linus Walleij <triad@df.lth.se>
861
862 * src/libusb-glue.c: flag the Samsung YH-820 with
863 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL after tests by Stephan
864 Fabel.
865
Linus Walleijda17cda2007-09-18 21:12:05 +00008662007-09-18 Linus Walleij <triad@df.lth.se>
867
868 * src/libusb-glue.c: stop the endpoint unhalting/unstalling when
869 closing the USB device. It was AYBABTU the Samsungs
870 (and others).
871
Linus Walleij724f0102007-09-17 20:10:12 +00008722007-09-17 Linus Walleij <triad@df.lth.se>
873
874 * src/libusb-glue.c: silenced weirdo error message.
875
Linus Walleijb644b412007-09-16 21:46:02 +00008762007-09-16 Linus Walleij <triad@df.lth.se>
877
878 * src/ptp.c: cancellation working *as it should*
879 * src/ptp.h: dito.
880 * src/libusb-glue.c: dito.
881 * src/libusb-glue.h: dito.
882 * src/libmtp.c: dito.
883 * src/libmtp.h.in: new error code for cancellation.
884
Richard Lowe9f205f2007-09-16 16:25:50 +00008852007-09-16 Richard Low <richard@wentnet.com>
886
887 * src/libusb-glue.c: only read descriptors for devices we
888 don't know since it breaks on some devices
Richard Lowd7bcab52007-09-16 16:30:20 +0000889 * src/libmtp.c: a couple of bugs fixed in metadata retreival
Richard Lowe9f205f2007-09-16 16:25:50 +0000890
Linus Walleij3e418e22007-09-15 20:30:14 +00008912007-09-15 Linus Walleij <triad@df.lth.se>
892
893 * src/ptp.c: get cancellation of xfers working.
894 * src/libusb-glue.c: dito.
895 * src/libusb-glue.h: dito.
896 * src/libmtp.c: dito.
897
Linus Walleijf43558d2007-09-14 17:59:20 +00008982007-09-14 Linus Walleij <triad@df.lth.se>
899
900 * src/ptp.h: sync in upstream to get cancellation prototypes.
Linus Walleijbd3bf9e2007-09-14 19:31:54 +0000901 * src/libusb-glue.c: first try to implement cancellation.
Linus Walleij997d3ec2007-09-14 21:29:54 +0000902 * src/libmtp.c: dito. Bugfix to one of Marcus' realloc():s.
Linus Walleijf43558d2007-09-14 17:59:20 +0000903
Linus Walleij1e9a0332007-09-12 19:35:56 +00009042007-09-12 Marcus Meissner <meissner@suse.de>
905
906 * src/ptp-pack.c: sync to upstream, rewrote packing to use
907 a static array to be qsort():ed when reading in proplists.
908 * src/ptp.c: reflect changes.
909 * src/ptp.h: reflect changes.
910 * src/libmtp.c: reflect changes.
911
Linus Walleij71b8c0f2007-09-06 09:09:14 +00009122007-09-06 Linus Walleij <triad@df.lth.se>
913
914 * examples/hotplug.c: edit up into a udev ruleset that is
915 inexorably complicated but probably compatible with most
916 udev versions out there. Now please DON'T update udev
917 styles again!
918
Richard Low17cec172007-09-05 20:43:51 +00009192007-09-05 Richard Low <richard@wentnet.com>
920
921 * src/libmtp.c: album fixups
922
Linus Walleij50d47a52007-09-05 07:59:40 +00009232007-09-05 Linus Walleij <triad@df.lth.se>
924
925 * examples/hotplug.c: use old udev style by default, use new
926 if requested explicitly by a -U switch.
927
Linus Walleij6bf68b42007-09-03 22:50:02 +00009282007-09-04 Linus Walleij <triad@df.lth.se>
929
930 * src/libmtp.c: make sure we query recursively supplying each
931 storage ID in turn, so we spin over storages. Also check
932 what storage may be available to store a file, if the first
933 one fails, try the next!
934
Linus Walleija0b7d042007-08-31 23:57:31 +00009352007-09-01 Linus Walleij <triad@df.lth.se>
936
937 * src/ptp-pack.c: make the resulting MTP proplist sorted by
938 object ID.
Linus Walleij70ac9772007-09-01 18:59:28 +0000939 * hotplug.sh.in: explicitly call BASH instead of just sh. Warn
940 if script is not run as root.
Linus Walleija0b7d042007-08-31 23:57:31 +0000941
Linus Walleijf4592072007-08-29 10:19:25 +00009422007-08-29 Linus Walleij <triad@df.lth.se>
943
944 * examples/Makefile.am: move include define from AM_CFLAGS to
945 AM_CPPFLAGS (as it should be) bug found by Petar Petrov
946 <pesho.petrov@gmail.com>.
Linus Walleijb0ab5482007-08-29 21:08:54 +0000947 * src/libusb-glue.c: strange misleading message corrected. Fix
948 up the horrid interface passing back-and-forward and confusing.
949 * src/libusb-glue.h: dito.
950 * src/libmtp.c: rid interface references, that's a USB issue!
951 * src/libmtp.h.in: flag interface number in device struct as retired.
Linus Walleijf4592072007-08-29 10:19:25 +0000952
Linus Walleij1b87ea72007-08-28 07:53:09 +00009532007-08-28 Linus Walleij <triad@df.lth.se>
954
955 * src/libmtp.c: retire the horrid, broken, stream send facility that
956 does not work on any device since they all want to know the file
Linus Walleij8533bf72007-08-28 10:03:59 +0000957 size in advance. Add in some code to fall back on the recursive
958 metadata retrieveal if getting the whole long list fails.
Linus Walleij6d0cf972007-08-28 09:48:19 +0000959 * src/libusb-glue.c: tag all Sansas as having broken GetObjectPropList
Linus Walleijc4108242007-08-28 20:38:27 +0000960 when all tags for all objects are requested. Scan each INTERFACE
961 of the device for device descriptors.
Linus Walleij1b87ea72007-08-28 07:53:09 +0000962
Linus Walleijd3b78572007-08-24 21:28:24 +00009632007-08-24 Linus Walleij <triad@df.lth.se>
964
965 * src/libusb-glue.h: new device flag to strip all non-7bit chars from
966 filenames on some lame devices.
967 * src/libusb-glue.c: tag the Philips Shoqbox with this flag.
968 * src/libmtp.c: strip the non-7bit chars from filenames if that
969 flag is set.
970 * src/unicode.h: introduce a 7bit-strip helper function.
971 * src/unicode.c: dito.
972
Linus Walleij29559562007-08-22 21:38:04 +00009732007-08-22 Linus Walleij <triad@df.lth.se>
974
975 * src/libmtp.c: deal with setting of metadata sets for u16/u32:s that
976 are ranges or enums, rounding and twiddling if need be. This is
977 needed because some new devices (like the TrekStor Sweez,
978 has duration defined as a range: MIN 0, MAX 65535000, STEP 1
979 and Sandisk Sansa c240 has duration as range: MIN 0, MAX 2147483000,
980 STEP 1000) whereas old devices would just accept any value.
981
Richard Lowd47b9212007-08-16 21:14:23 +00009822007-08-16 Richard Low <richard@wentnet.com>
983
984 * src/ptp-pack.c: allow packing of NULL strings
985
rreardon21a3a9d2007-08-15 10:56:31 +00009862007-08-15 Robert Reardon <rreardon@monkshatch.vispa.com>
987
988 * src/libmtp.c: return device max values for representative
rreardon65b47322007-08-15 15:17:54 +0000989 samples.
rreardon21a3a9d2007-08-15 10:56:31 +0000990
Richard Low92cb2692007-08-15 09:35:23 +00009912007-08-15 Richard Low <richard@wentnet.com>
992
993 * src/libusb-glue.c: added Philips Shoqbox
994
Linus Walleij53c5f4e2007-08-13 08:27:58 +00009952007-08-13 Linus Walleij <triad@df.lth.se>
996
997 * src/ptp.c: sync to upstream.
998
Linus Walleijdb906232007-08-07 15:59:09 +00009992007-08-07 Linus Walleij <triad@df.lth.se>
1000
1001 * configure.ac: bump to 0.2.1.
1002 * src/Makefile.am: interface to libmtp.so.6.0.1.
1003 * Release libmtp 0.2.1!
1004
Linus Walleijdbcc8242007-08-05 22:31:26 +000010052007-08-06 Linus Walleij <triad@df.lth.se>
1006
Linus Walleije23000a2007-08-06 20:47:17 +00001007 * configure.ac: tag on the large file support compilation flag.
Linus Walleij07795772007-08-06 18:44:06 +00001008 * src/libmtp.c: smack up the data file transfer function so it
1009 works again and *finally* should support 64bit sizes!
Linus Walleijd2778d12007-08-06 19:24:58 +00001010 Then wrapped the track sending function around the file
1011 sending function so there is no more pointless code duplication
Linus Walleij05358382007-08-06 20:46:35 +00001012 giving rise to ever more bugs. Enable LFS, Large File Support so
1013 we can handle 64bit files properly.
1014 * examples/sendtr.c: shape up print-outs, LFS support.
Linus Walleijd2778d12007-08-06 19:24:58 +00001015 * examples/sendfile.c: dito.
Linus Walleij07795772007-08-06 18:44:06 +00001016
10172007-08-06 Linus Walleij <triad@df.lth.se>
1018
Linus Walleijdbcc8242007-08-05 22:31:26 +00001019 * src/ptp.c: fixed a stray error print bug.
1020 * src/libmtp.c: overhaul of all proplist setting to follow the same
1021 design pattern. Probably fixed a few opd memory leaks along the road.
1022
Richard Lowfd86bd12007-08-05 09:41:06 +000010232007-08-05 Richard Low <richard@wentnet.com>
1024
1025 * src/libmtp.c: send 64 bit filesize
1026
Linus Walleijd9d28d52007-08-04 19:01:18 +000010272007-08-04 Linus Walleij <triad@df.lth.se>
1028
1029 * src/libmtp.c: fix up the 64bit filesize and tracksize support.
1030 There were some bugs...
Linus Walleij529d08f2007-08-04 19:20:00 +00001031 * src/Makefile.am: tweak interface revision so that we produce
1032 libmtp.so.6 now.
1033 * configure.ac: bump library revision to 0.2.0.
Linus Walleij2f049902007-08-04 20:02:39 +00001034 * examples/hotplug.c: switch to use ATTR{} instead of SYSFS{}
Linus Walleijdbcc8242007-08-05 22:31:26 +00001035 * Release libmtp 0.2.0!
Linus Walleijd9d28d52007-08-04 19:01:18 +00001036
Richard Low25bf8002007-08-04 08:36:53 +000010372007-08-04 Richard Low <richard@wentnet.com>
1038
1039 * src/libusb-glue.c: add Sansa m240 (a different ID to before)
1040 Give the Toshiba Gigabeat S
1041 DEVICE_FLAG_BROKEN_MTPGETOBJPROPLIST_ALL.
1042
10432007-08-03 Marcus Meissner <meissner@suse.de>
Linus Walleij960ebb62007-08-03 21:38:34 +00001044
1045 * m4/byteorder.m4: byteorder fixes.
1046
Richard Lowcc265902007-07-30 20:14:12 +000010472007-07-30 Richard Low <richard@wentnet.com>
1048
1049 * src/ptp-pack.c: fix up array packing
1050
Linus Walleijabf54752007-07-30 19:51:54 +000010512007-07-30 Linus Walleij <triad@df.lth.se>
1052
1053 * src/ptp-pack.c: try to get a uniform 64 bit
1054 support, use some old macro code.
1055
Richard Lowc3f5fc32007-07-29 09:40:50 +000010562007-07-29 Richard Low <richard@wentnet.com>
1057
1058 * src/libmtp.c: 64 bit filesize support for tracks
1059 * src/ptp-pack.c: ditto
1060 * src/ptp.h: ditto
1061
Richard Low39a147a2007-07-27 20:18:01 +000010622007-07-27 Richard Low <richard@wentnet.com>
1063
1064 * src/libmtp.c: Some better NULL checks
1065
Linus Walleijc51a4312007-07-27 06:28:39 +000010662007-07-27 Linus Walleij <triad@df.lth.se>
1067
1068 * examples/hotplug.c: changed subsystem from "usb_device"
1069 to "usb". Presumably a change in the kernel some time ago.
1070
Richard Lowbd14bf42007-07-21 11:25:11 +000010712007-07-21 Richard Low <richard@wentnet.com>
1072
1073 * src/libmtp.c: Correctly bail out of LIBMTP_Get_Storage
1074
Linus Walleij5d533bb2007-07-17 21:48:57 +000010752007-07-17 Linus Walleij <triad@df.lth.se>
1076
1077 * examples/reset.c: Add a device reset program.
1078 * src/libmtp.c: Add reset command.
1079 * src/ptp.c: dito, and sync in upstream changes.
1080 * src/ptp.h: dito, and sync in upstream changes.
1081 * src/ptp-pack.c: sync in upstream changes.
1082
Richard Low0fa83522007-07-17 20:05:08 +000010832007-07-17 Richard Low <richard@wentnet.com>
1084
1085 * src/libmtp.c: Added some more (paranoid) NULL checks
1086
Richard Low8e8d9d42007-07-14 10:36:50 +000010872007-07-14 Richard Low <richard@wentnet.com>
1088
1089 * src/libmtp.c: Add a NULL check
1090
10912007-07-13 Richard Low <richard@wentnet.com>
Richard Low14afeb72007-07-13 19:11:56 +00001092
1093 * src/libusb-glue.c: add Disney MixMax
1094
Linus Walleij9521e2b2007-07-10 21:50:42 +000010952007-07-11 Linus Walleij <triad@df.lth.se>
1096
1097 * src/libmtp.c: put in Tero's name in the preamble.
1098 * src/libusb-glue.c: make the dump function sump out the zuper zecret
1099 devize dezcriptorz in clear text hex.
1100
Linus Walleij3e13dda2007-07-09 22:42:17 +000011012007-07-10 Linus Walleij <triad@df.lth.se>
1102
Linus Walleijc51a4312007-07-27 06:28:39 +00001103 * examples/hotplug.c: force HAL OGG support on iriver devices.
1104 They all have it! Also force for two other devices that does
1105 this.
Linus Walleij3e13dda2007-07-09 22:42:17 +00001106
Linus Walleij2b218852007-07-07 20:16:36 +000011072007-07-07 Linus Walleij <triad@df.lth.se>
1108
1109 * src/libusb-glue.h: new flag for the case when getting the object
1110 property list of all metadata for all objects is broken.
1111 * src/libusb-glue.c: tentatively tag a Philips device with this flag.
1112 * src/libmtp.c: fixed usage of returned pointers from realloc(),
1113 introduce new flag.
1114
tsaarnia3eb60a2007-07-06 17:41:30 +000011152007-07-05 Tero Saarni <tero.saarni@gmail.com>
1116
1117 * src/libmtp.c: update cache when manipulating objects instead of
1118 always flushing the whole cache.
1119
Linus Walleij338ade42007-07-03 20:44:08 +000011202007-07-03 Linus Walleij <triad@df.lth.se>
1121
1122 * src/libmtp.c: use the params->proplist metadata cache. Help
1123 rid all flush_handles() you can in order to add even more to
1124 the efficiency of the cache.
1125
Linus Walleijf0bf4372007-07-01 21:47:38 +000011262007-07-01 Linus Walleij <triad@df.lth.se>
1127
1128 * src/ptp.c: sync to upstream gPhoto source.
1129 * src/ptp.h: dito.
1130 * src/ptp-pack.c: dito.
1131 * src/libmtp.c: use the params->objectinfo object info cache to
1132 speed things up considerably. This is exactly what libgphoto2
1133 does so now we move closer to upstream. I believe this also
1134 fixes quite a few memory leaks because we weren't freeing the
1135 strings inside the objectinfo previously.
1136
Linus Walleije60d56b2007-05-28 22:13:12 +000011372007-05-29 Linus Walleij <triad@df.lth.se>
1138
1139 * src/libmtp.c: use the set object prop list command to set album
1140 props if available. Follow metadata set design pattern used for
1141 tracks; check first if the object type can set name/artist/genre.
1142
jefferaida9687e2007-10-16 16:44:15 +000011432007-05-24 Jeff Mitchell <kde-dev@emailgoeshere.com>
jefferaif28f2a12007-05-24 23:07:41 +00001144
Linus Walleije60d56b2007-05-28 22:13:12 +00001145 * hotplug.sh.in: Properly install the HAL FDI rules if
jefferaie3f1bba2007-05-24 23:27:13 +00001146 the user so chooses to when prompted.
1147
jefferaida9687e2007-10-16 16:44:15 +000011482007-05-24 Jeff Mitchell <kde-dev@emailgoeshere.com>
jefferaie3f1bba2007-05-24 23:27:13 +00001149
Linus Walleije60d56b2007-05-28 22:13:12 +00001150 * examples/hotplug.c: Fix/update HAL output to conform
jefferaif28f2a12007-05-24 23:07:41 +00001151 to new specs. Fix whitespacing to be consistent.
1152
Richard Low34a624a2007-05-17 12:32:35 +000011532007-05-17 Richard Low <richard@wentnet.com>
1154
1155 * src/libusb-glue.c: added Samsung YH-920
1156
Linus Walleij99466e32007-05-11 21:42:53 +000011572007-05-11 Linus Walleij <triad@df.lth.se>
1158
1159 * examples/hotplug.c: output a usb.ids map if need be.
1160 * sync-usbids.sh: script to assist in comparing our device
1161 database to the linux-usb database so we can submit new
1162 entries to it more easily. Please extend this until it
1163 creates automated diff:s if you can!
1164
Linus Walleij229b24b2007-05-09 22:10:55 +000011652007-05-10 Linus Walleij <triad@df.lth.se>
1166
1167 * src/libusb-glue.c: some new devices, some rewording etc.
1168
Linus Walleij4fa9d5e2007-05-05 20:35:56 +000011692007-05-05 Linus Walleij <triad@df.lth.se>
1170
1171 * src/libusb-glue.h: removed the DUALMODE flag, it's pointless and
1172 equal to the problem solved by the UNLOAD_DRIVER flag.
1173 * src/libusb-glue.c: dito, move the only DUALMODE flag into an
Linus Walleij1327a852007-05-06 19:47:38 +00001174 UNLOAD_DRIVER flag. Added Archos Gmini.
Linus Walleij4fa9d5e2007-05-05 20:35:56 +00001175
Richard Low6711f442007-05-05 19:00:59 +000011762007-05-05 Richard Low <richard@wentnet.com>
1177
1178 * src/libusb-glue.c: added Philips PSA610
1179 * src/libmtp.c: code to recursively get object handles for each
1180 assoc.
Linus Walleij4fa9d5e2007-05-05 20:35:56 +00001181 * src/ptp.h: ditto
Richard Low6711f442007-05-05 19:00:59 +00001182
Richard Low1869d272007-04-28 13:55:17 +000011832007-04-28 Richard Low <richard@wentnet.com>
1184
1185 * src/libusb-glue.c: new device
1186
Linus Walleijeccaae02007-04-26 08:19:03 +000011872007-04-26 Linus Walleij <triad@df.lth.se>
1188
Linus Walleij4fa9d5e2007-05-05 20:35:56 +00001189 * src/libusb-glue.c: memory leak: dangling, unused pointer killed.
Linus Walleijeccaae02007-04-26 08:19:03 +00001190
Linus Walleijadce4a52007-04-23 07:28:11 +000011912007-04-23 Linus Walleij <triad@df.lth.se>
1192
1193 * src/libmtp.h.in: extend LIBMTP_album_t to include fields for
1194 artist and genre. This is sort of required so we must change
1195 the API to have it working properly.
1196 * src/libmtp.c: dito. Reflect changes in implementation.
1197
Linus Walleij953504f2007-04-18 19:01:11 +000011982007-04-18 Linus Walleij <triad@df.lth.se>
1199
1200 * src/ptp.c: sync to upstream gPhoto source.
1201 * src/ptp.h: dito.
1202
Richard Low3637e1a2007-04-17 21:25:10 +000012032007-04-17 Richard Low <richard@wentnet.com>
1204
1205 * src/libusb-glue.c: new device
1206
Richard Low856f3452007-04-13 11:21:26 +000012072007-04-13 Richard Low <richard@wentnet.com>
1208
1209 * src/libusb-glue.c: new devices
1210
Linus Walleijfd531632007-04-12 19:49:58 +000012112007-04-12 Linus Walleij <triad@df.lth.se>
1212
1213 * examples/hotplug.c: fix GOTO style in udev map.
1214
Linus Walleije73f74a2007-04-02 08:51:35 +000012152007-04-02 Linus Walleij <triad@df.lth.se>
1216
1217 * examples/files.c: some WIN32 64bit prefix fixup.
1218 * examples/tracks.c: dito.
1219
tedbullockcd9f4992007-03-29 06:00:40 +000012202007-03-28 Ted Bullock <tbullock@canada.com>
1221
Linus Walleije73f74a2007-04-02 08:51:35 +00001222 * examples/*.c: Print library version number on execution of examples.
1223 * src/libmtp.h.in: New version number string to aid version echoing.
tedbullockcd9f4992007-03-29 06:00:40 +00001224
Linus Walleij3968f362007-03-26 19:50:05 +000012252007-03-26 Linus Walleij <triad@df.lth.se>
1226
1227 * configure.ac: bump version to 0.1.5, release 0.1.5!
1228 * src/Makefile.am: bump lib interface revision to libmtp.so.5.2.1,
1229 backwards compatible to libmtp.so.5.
1230
Richard Low057ea772007-03-24 13:37:38 +000012312007-03-24 Richard Low <richard@wentnet.com>
1232
1233 * src/libusb-glue.c: fixed bug in zero read code
1234
Linus Walleije7df6532007-03-23 08:20:06 +000012352007-03-23 Linus Walleij <triad@df.lth.se>
1236
1237 * src/libmtp.c: refactored MTP property list handling code to make
1238 things simple. Removed the flag for MTP enhanced: there are devices
Linus Walleij3968f362007-03-26 19:50:05 +00001239 that will not work without MTP enhanced (for example the Samsung
1240 YP-K5 will only support setting object property lists, not
1241 individual object properties, leaving out parts of the MTP basic
1242 subset), thus we are allowed to reverse-engineer and implement this
1243 for interoperability. I also made the output from
1244 LIBMTP_Dump_Device_Info() considerably more verbose, plotting out
1245 the ranges and possible enumerated values of all object properties.
1246 For example you can see that the secret values associated with
1247 Audible.com property 0xda01 is an enumerated value that can be
1248 2, 3 or 4 (etc).
Linus Walleije7df6532007-03-23 08:20:06 +00001249
Richard Low15731fe2007-03-22 20:27:20 +000012502007-03-22 Richard Low <richard@wentnet.com>
1251
1252 * src/ptp.c: PTP_OC_MTP_SetObjPropList implementation
1253 * src/ptp.h: ditto
1254 * src/libmtp.c: Use PTP_OC_MTP_SetObjPropList when updating track
1255 metadata.
1256
Richard Lowbf2675c2007-03-18 18:20:26 +000012572007-03-18 Richard Low <richard@wentnet.com>
1258
1259 * src/libusb-glue.c: new devices. Some of the Samsung players may
Richard Low6c8fea42007-03-18 19:11:52 +00001260 need DEVICE_FLAG_NO_ZERO_READS to be set - I only know the YP-K5
1261 needs it.
Richard Lowbf2675c2007-03-18 18:20:26 +00001262
Linus Walleij2be40c72007-03-16 15:19:44 +000012632007-03-16 Linus Walleij <triad@df.lth.se>
1264
1265 * src/libusb-glue.h: introducing yet another device flag for the
1266 irivers bugged firmwares, this is for the Alzheimer disease that
1267 cause irivers to forget that OGG files are OGG files.
1268 * src/libmtp.c: dito.
1269 * src/libusb-glue.c: introduce this flag for all iriver devices.
1270 * examples/pathutils.c: found a (small) bug.
1271
Linus Walleijd1292842007-03-12 11:52:00 +000012722007-03-12 Linus Walleij <triad@df.lth.se>
1273
1274 * Makefile.am: cleanup patch from Rafael Laboissiere.
Linus Walleija4942fc2007-03-12 19:23:21 +00001275 * src/libusb-glue.c: refactored device detection code to
1276 immediately test if the device is in the known devices list if it
1277 does not feature a MTP device descriptor. This fixes the problem
1278 of not being able to mix devices with proper descriptors and
1279 non-detected devices.
Linus Walleijd1292842007-03-12 11:52:00 +00001280
Linus Walleijc2c96972007-03-07 08:12:31 +000012812007-03-07 Linus Walleij <triad@df.lth.se>
1282
1283 * src/libusb-glue.c: remove libgphoto2 functions that we
1284 don't use.
Linus Walleij45a86372007-03-07 09:36:19 +00001285 * src/libusb-glue.h: export the free_mtpdevice_list() function,
1286 new signature of find_usb_devices().
1287 * src/libmtp.c: shrink code, pass as list of devices instead of
1288 several huge arrays between libmtp.c and USB glue layer in
1289 libusb-glue.c using the nifty list struct defined in libusb-glue.h.
Linus Walleijd24a7ab2007-03-07 21:48:43 +00001290 * Eventually release libmtp 0.1.4.
Linus Walleijc2c96972007-03-07 08:12:31 +00001291
Linus Walleijbfcb7922007-03-06 20:14:04 +000012922007-03-06 Linus Walleij <triad@df.lth.se>
1293
1294 * src/libusb-glue.c: rewrote one more function to be
1295 non-recursive, perhaps I found the remaining bug, just
1296 cannot see that right now, will test tomorrow.
1297
Linus Walleijf27d1cd2007-03-05 14:23:00 +000012982007-03-05 Linus Walleij <triad@df.lth.se>
1299
1300 * src/libmtp.c: rewrite recursive function to linear.
1301 * src/libusb-glue.h: create a wrapper type for the
1302 device list instead of abusing the libusb device "next"
1303 field in our code.
1304 * src/libusb-glue.c: rewrite all recursive functions to
1305 linear, use wrapper objects, don't copy the libusb device
1306 struct, instead just store a pointer to it. This magically
1307 solved a bug...
1308
Linus Walleij82265222007-03-04 19:47:08 +000013092007-03-04 Linus Walleij <triad@df.lth.se>
1310
1311 * src/Makefile.am: bump library interface to libmtp.so.5.2.0
1312 backwards compatible with any libmtp.so.5 interface, for
1313 imminent libmtp 0.1.4 release.
1314
tedbullock848009b2007-03-03 23:20:12 +000013152007-03-03 Ted Bullock <tbullock@canada.com>
tedbullock36f2afb2007-03-03 22:16:44 +00001316
1317 * src/libusb-glue.c: Don't echo warnings about reading a single
Linus Walleij82265222007-03-04 19:47:08 +00001318 extra byte on devices in which DEVICE_FLAG_NO_ZERO_READS has
1319 been set
tedbullock848009b2007-03-03 23:20:12 +00001320 * src/libmtp.c: New API function to retrieve the number of devices
Linus Walleij82265222007-03-04 19:47:08 +00001321 in a list of connected devices
tedbullock848009b2007-03-03 23:20:12 +00001322 * src/libmtp.h: New API function to retrieve the number of devices
Linus Walleij82265222007-03-04 19:47:08 +00001323 in a list of connected devices
tedbullock848009b2007-03-03 23:20:12 +00001324 * examples/detect.c: Use new API function to count number of devices
Linus Walleij82265222007-03-04 19:47:08 +00001325 that were detected
tedbullock36f2afb2007-03-03 22:16:44 +00001326
tedbullock848009b2007-03-03 23:20:12 +000013272007-03-03 Linus Walleij <triad@df.lth.se>
Linus Walleij049f50c2007-03-03 20:30:43 +00001328
1329 * src/libusb-glue.h: Tiresome ramblings to explain exactly what
tedbullock848009b2007-03-03 23:20:12 +00001330 the (now renamed) device flag DEVICE_FLAG_NO_ZERO_READS really
Linus Walleij049f50c2007-03-03 20:30:43 +00001331 means.
1332 * src/libusb-glue.c: Renamed flag. Indent code :-) Reading the code
1333 and being impressed by our ability to iron out the root cause
Linus Walleij4cec9872007-03-03 21:00:53 +00001334 of this kinda weird thing... Fix a few compile warnings.
Linus Walleij049f50c2007-03-03 20:30:43 +00001335
Richard Low4fd59d62007-03-03 16:34:37 +000013362007-03-03 Richard Low <richard@wentnet.com>
1337
1338 * src/libusb-glue.c: (hopefully) fixed iRiver read errors. Enabled
1339 get object prop lists for Clix since it appears to work.
1340 * src/libusb-glue.h: ditto
1341 * src/ptp.h: ditto
1342
Linus Walleij8a5b8852007-02-28 14:25:39 +000013432007-02-28 Linus Walleij <triad@df.lth.se>
1344
1345 * src/ptp.h: Upstream accepted our patch so synced it in.
1346
Linus Walleij07fde342007-02-27 06:09:46 +000013472007-02-27 Linus Walleij <triad@df.lth.se>
1348
1349 * src/ptp.c: Synced in upstream version which removes the
1350 offending line.
Linus Walleij56b037f2007-02-27 08:04:01 +00001351 * src/libmtp.c: replaces strcmp() for strcasecmp() in folder
1352 detection since Windows and some devices (such as iRivers)
1353 ignore case and user capital letters for default folders.
Linus Walleij07fde342007-02-27 06:09:46 +00001354
tedbullock6c060952007-02-26 19:07:23 +000013552007-02-22 Ted Bullock <tbullock@canada.com>
1356
Linus Walleij07fde342007-02-27 06:09:46 +00001357 * src/ptp.c: Comment out line in ptp_exit_fd_handler that was
1358 closing a file descriptor. This is not the responsibility of
1359 the PTP Layer. Defect and solution found by Rob Reardon
tedbullock6c060952007-02-26 19:07:23 +00001360
Linus Walleij304433d2007-02-26 08:02:47 +000013612007-02-26 Linus Walleij <triad@df.lth.se>
1362
Linus Walleij07fde342007-02-27 06:09:46 +00001363 * src/libmtp.c: Implement a check for PTP_OC_MTP_SetObjectPropValue
1364 in the LIBMTP_Update_Track_Metadata() function, there are
1365 obviously devices that do not support this, but only
1366 PTP_OC_MTP_SetObjPropList instead (such as the Samsung YH 925-GS),
1367 but we haven't implemented that yet. Problems are
Linus Walleij304433d2007-02-26 08:02:47 +00001368 atleast reported correctly now.
1369
Richard Low4eb01122007-02-24 10:11:32 +000013702007-02-24 Richard Low <richard@wentnet.com>
1371
1372 * src/libusb-glue.c: Fix incorrect transfer sizes causing zero
1373 write issues
1374
Linus Walleij039d1dd2007-02-23 22:34:07 +000013752007-02-23 Linus Walleij <triad@df.lth.se>
1376
1377 * src/libmtp.c: Undeprecate getting first device code.
1378
Richard Low0f794762007-02-23 22:06:27 +000013792007-02-23 Richard Low <richard@wentnet.com>
1380
1381 * src/libmtp.c: Fix crash when no devices connected
1382
tedbullock2b45f2e2007-02-23 20:16:37 +000013832007-02-23 Ted Bullock <tbullock@canada.com>
1384
1385 * examples/detect.c: Stub out probe functionality
Richard Low0f794762007-02-23 22:06:27 +00001386 * src/libusb-glue.c: Remove old uni-device cruft code
1387 * src/libusb-glue.h: Remove old uni-device cruft code
tedbullock433d2172007-02-23 22:39:12 +00001388 * Replace LIBMTP_ERROR_N0_DEVICE_ATTACHED with
1389 LIBMTP_ERROR_NO_DEVICE_ATTACHED across entire project
tedbullock2b45f2e2007-02-23 20:16:37 +00001390
tedbullock20eb8202007-02-23 00:33:36 +000013912007-02-22 Ted Bullock <tbullock@canada.com>
1392
1393 * examples/albums.c: Updated to use new multi device code
tedbullock51649202007-02-23 03:04:33 +00001394 * examples/tracks.c: Updated to use new multi device code
1395 * examples/files.c: Updated to use new multi device code
tedbullock20eb8202007-02-23 00:33:36 +00001396
tedbullocke7713642007-02-18 23:10:09 +000013972007-02-18 Ted Bullock <tbullock@canada.com>
1398
1399 * src/libmtp.c: Altered the function LIBMTP_Get_First_Device
Linus Walleij039d1dd2007-02-23 22:34:07 +00001400 to wrap around the multi device API. Also added deprecation
1401 warnings to avoid using this function
tedbullocke7713642007-02-18 23:10:09 +00001402
Richard Lowd284f072007-02-17 08:52:41 +000014032007-02-17 Richard Low <richard@wentnet.com>
1404
Richard Low02724f62007-02-17 09:47:26 +00001405 * src/libusb-glue.c: Debug output fixes and read/write sizes changed
Richard Low507e7fe2007-02-17 09:04:42 +00001406 * src/libmtp.c: memset params to 0 to avoid freeing unalloced
1407 memory
Richard Low02724f62007-02-17 09:47:26 +00001408 * src/ptp.h: read/write sizes changed
Richard Lowd284f072007-02-17 08:52:41 +00001409
rreardonbc730092007-02-15 14:32:20 +000014102007-02-15 Robert Reardon <rreardon@monkshatch.vispa.com>
rreardon34511b12007-02-15 14:27:56 +00001411
1412 * src/libmtp.c: Fix a segfault in new error handling code.
1413
Linus Walleij68b19c02007-02-15 11:50:37 +000014142007-02-15 Linus Walleij <triad@df.lth.se>
1415
1416 * src/libmtp.c: Adding some sanity checks to error stack code.
Linus Walleij3d78c4c2007-02-15 12:18:12 +00001417 * examples/newplaylist.c: LGPL boilerplate, crediting Robert.
1418 * examples/playlists.c: LGPL boilerplate.
1419 * examples/sendfile.c: LGPL boilerplate, crediting me and Chris.
1420 * examples/sendtr.c: LGPL boilerplate, crediting me, Chris,
1421 Shaun, Enrique.
1422 * examples/thumb.c: LGPL boilerplate, crediting Robert.
1423 * examples/tracks.c: LGPL boilerplate.
1424 * examples/trexist.c: LGPL boilerplate, crediting noone.
Linus Walleij68b19c02007-02-15 11:50:37 +00001425
tedbullock69a445b2007-02-15 07:41:04 +000014262007-02-15 Ted Bullock <tbullock@canada.com>
1427
1428 * examples/folders.c: Updated to use new multi device code
1429 * src/libmtp.c: Fixed potential memory leaks
Linus Walleij57c2eff2007-02-15 12:02:04 +00001430 * src/libusb-glue.c: Fixed potential memory leaks and fixed device
1431 release segfault for multiple devices
tedbullock69a445b2007-02-15 07:41:04 +00001432
tedbullock0f033cb2007-02-14 20:56:54 +000014332007-02-14 Ted Bullock <tbullock@canada.com>
1434
Linus Walleij57c2eff2007-02-15 12:02:04 +00001435 * src/libusb-glue.c: Wrote three new recursive functions to avoid
1436 extreme levels of multiple indirection and to clean the code up
1437 a bit for multiple devices.
1438 * examples/detect.c: Adjusted function calls to use new multiple
1439 device code.
tedbullock0f033cb2007-02-14 20:56:54 +00001440 * src/libmtp.h.in: Added prototype for LIBMTP_Release_Device_List
1441
Linus Walleij2d3f7b82007-02-14 09:24:20 +000014422007-02-12 Ted Bullock <tbullock@canada.com>
1443
1444 * src/libmtp.c: Two new functions (create_usb_mtp_devices and
Linus Walleij57c2eff2007-02-15 12:02:04 +00001445 LIBMTP_Get_Connected_Devices) to add support for multiple devices
1446 to client applications
Linus Walleij2d3f7b82007-02-14 09:24:20 +00001447 * src/libmtp.h: Added LIBMTP_Get_Connected_Devices as a publicly
Linus Walleij57c2eff2007-02-15 12:02:04 +00001448 accessible function
Linus Walleij2d3f7b82007-02-14 09:24:20 +00001449 *libusb-glue.c: Renamed connect_mtp_devices to find_usb_devices
1450 *libusb-glue.h: Renamed connect_mtp_devices to find_usb_devices
1451
Linus Walleij2a1e3a42007-02-12 08:18:31 +000014522007-02-09 Ted Bullock <tbullock@canada.com>
1453
1454 * src/libusb-glue.c: Addressed a number of potential memory leaks in
Linus Walleij57c2eff2007-02-15 12:02:04 +00001455 the new multiple device code
Linus Walleij2a1e3a42007-02-12 08:18:31 +00001456
Linus Walleij7b7a0e22007-02-05 18:22:27 +000014572007-02-05 Linus Walleij <triad@df.lth.se>
1458
1459 * src/libmtp.h.in: LGPL boilerplate.
1460 * src/libusb-glue.h: LGPL boilerplate.
1461 * src/unicode.h: LGPL boilerplate.
1462 * src/util.h: LGPL boilerplate.
Linus Walleij543badf2007-02-05 19:07:38 +00001463 * examples/albumart.c: LGPL boilerplate, crediting Andy.
1464 * examples/pathutils.h: LGPL boilerplate, crediting Chris.
1465 * examples/pathutils.c: LGPL boilerplate, crediting me and Chris.
1466 * examples/common.h: LGPL boilerplate.
1467 * examples/albums.c: LGPL boilerplate, crediting Chris.
1468 * examples/connect.c: LGPL boilerplate, crediting Chris.
1469 * examples/delfile.c: LGPL boilerplate, crediting me and Chris.
1470 * examples/detect.c: LGPL boilerplate.
1471 * examples/emptyfolders.c: LGPL boilerplate, crediting Andy.
1472 * examples/files.c: LGPL boilerplate.
1473 * examples/folders.c: LGPL boilerplate.
1474 * examples/format.c: LGPL boilerplate.
1475 * examples/getfile.c: LGPL boilerplate, crediting me and Chris.
1476 * examples/getplaylist.c: LGPL boilerplate.
1477 * examples/hotplug.c: LGPL boilerplate, crediting me and Marcus.
1478 * examples/newfolder.c: LGPL boilerplate, crediting me and Chris.
Linus Walleij7b7a0e22007-02-05 18:22:27 +00001479
Linus Walleija8a19cc2007-02-02 22:13:17 +000014802007-02-02 Linus Walleij <triad@df.lth.se>
1481
1482 * src/ptp.c: sync upstream.
1483 * src/ptp.h: dito.
1484 * src/ptp-pack.c: dito.
1485 * src/libmtp.c: make changes necessary to handle
1486 the new iconv(3) code in ptp-pack.c. People will have to
Linus Walleij073c4172007-02-02 22:26:33 +00001487 use recent stdlibc, glibc or libiconv. Also call new memory
Linus Walleij2f45d222007-02-02 22:47:39 +00001488 clean-up functions. Fix LGPL boilerplate text.
1489 * src/unicode.c: Fix LGPL boilerplate text.
1490 * src/utils.c: Fix LGPL boilerplate text.
1491 * src/libusb-glue.c: Fix LGPL boilerplate text.
Linus Walleija8a19cc2007-02-02 22:13:17 +00001492
Linus Walleij550d6d52007-01-24 14:32:51 +000014932007-01-24 Ted Bullock <tbullock@canada.com>
1494
1495 * src/libusb-glue.c: new function to retrieve multiple device
1496 instances.
1497 * src/libusb-glue.h: dito.
1498 * src/libmtp.h.in: new error codes.
1499
Linus Walleij070e9b42007-01-22 08:49:28 +000015002007-01-22 Linus Walleij <triad@df.lth.se>
1501
1502 * examples/albumart.c: use the new errostack.
1503 * examples/delfile.c: dito.
1504 * examples/detect.c: dito.
1505 * examples/emptyfolders.c: dito.
1506 * examples/format.c: dito.
1507 * examples/getfile.c: dito.
1508 * examples/getplaylist.c: dito.
1509 * examples/newfolder.c: dito.
1510 * examples/newplaylist.c: dito.
1511 * examples/playlists.c: dito.
1512 * examples/sendfile.c: dito.
1513 * examples/sendtr.c: dito.
1514 * examples/thumb.c: dito.
1515 * src/libmtp.c: add some errors to the stack so we can
1516 see how it's to be used. (Just a first try...)
Linus Walleij552ba322007-01-22 11:49:59 +00001517 * src/libusb-glue.c: move the LIBMTP_Get_Supported_Devices()
1518 function into this file cause it only return USB devices
1519 anyway and could be renamed LIBMTP_Get_Supported_USB_Devices()
1520 (but let's not do that renaming since it would break the API).
1521 For now let's understand this is a USB-only function by
1522 simply putting it in the libusb-glue.c file.
Linus Walleij070e9b42007-01-22 08:49:28 +00001523
15242007-01-22 Ted Bullock <tbullock@canada.com>
1525
1526 * src/libusb-glue.c: first hack at creating an interface
1527 to retrieve multiple devices.
1528 * src/libmtp.h.in: new error codes related to multiple devices.
1529
Richard Low7059ed42007-01-21 09:33:34 +000015302007-01-21 Richard Low <richard@wentnet.com>
1531
1532 * src/libusb-glue.c: more new devices
1533
Linus Walleij2715c442007-01-20 22:35:29 +000015342007-01-20 Linus Walleij <triad@df.lth.se>
1535
1536 * src/libmtp.h.in: error stack handling like in libnjb.
1537 just bare bones implementation as of now but the idea
1538 should be clearly visible. TODO: add a plethora of
1539 errors and adjust examples to make use of the error
1540 stack.
1541 * src/libmtp.c: dito.
1542
Richard Lowa98d0542007-01-20 12:31:07 +000015432007-01-20 Richard Low <richard@wentnet.com>
1544
1545 * src/libusb-glue.c: new device 'Philips PSA235'
1546
Linus Walleij85a4c032007-01-16 20:42:18 +000015472007-01-16 Linus Walleij <triad@df.lth.se>
1548
1549 * configure.ac: bump and release 0.1.3.
1550 * src/Makefile.am: bump interface REVISION. Nothing changed
1551 externally really.
1552
Linus Walleijd85d2bb2007-01-11 21:32:48 +000015532007-01-11 Linus Walleij <triad@df.lth.se>
1554
1555 * src/libmtp.sym: updated symbol table for mingw32 but does
1556 anyone use this? Also I believe one could auto-generate
1557 this some way, just haven't figured out how... Perhaps with
1558 a funky script that massage libmtp.h if nothing else.
1559
Richard Low4df32f82007-01-11 20:04:39 +000015602007-01-11 Richard Low <richard@wentnet.com>
1561
1562 * src/libusb-glue.c: a zero read fix
1563 * src/libmtp.c: fix spelling mistake
1564
Linus Walleijc49c6372007-01-09 00:18:51 +000015652007-01-09 Linus Walleij <triad@df.lth.se>
1566
1567 * src/libusb-glue.c: repair callbacks, structure the code just
1568 a little bit.
1569 * src/libmtp.c: don't assign values to writes or reads, use the
1570 PTP transport intrinsics instead.
1571
Linus Walleij15af8532007-01-07 12:45:20 +000015722007-01-07 Orson Teodoro <orsonteodoro@yahoo.com>
1573
1574 * src/ptp.h: Encoding profile.
1575 * src/ptp.c: Dito.
1576
Linus Walleij58b62792007-01-07 12:38:59 +000015772006-01-07 Linus Walleij <triad@df.lth.se>
1578
1579 * src/libusb-glue.c: (re)introduce de-halting of endpoints
1580 as this is needed by VMWare emulation. Must check whether
Linus Walleijb97379b2007-01-07 12:42:20 +00001581 this causes problems for other archs! Problem was reported
1582 by Orson Teodoro under i686 Gentoo, with a suggested patch.
Linus Walleij58b62792007-01-07 12:38:59 +00001583
Linus Walleija0323272007-01-07 12:21:30 +000015842006-01-07 Marcus Meissner <meissner@suse.de>
1585
1586 * src/ptp.c: sync to upstream libgphoto2.
1587 * src/ptp.h: dito.
1588 * src/ptp-pack.c: dito.
1589 * libusb-glue.c: fixes to move low-level functions
1590 out of ptp.c and into this libmtp-specific portion.
1591 libgphoto2 has been similarly altered to use a usb.c
1592 file for the low-level stuff. (This was a long needed
1593 split anyway.)
1594
Linus Walleij58b62792007-01-07 12:38:59 +000015952007-01-03 Richard Low <richard@wentnet.com>
Richard Low68f45882007-01-03 10:08:31 +00001596
1597 * src/libusb-glue.c: fix zero write bug
Richard Lowef05b892007-01-03 21:18:56 +00001598 * src/ptp.c: ditto
Richard Low68f45882007-01-03 10:08:31 +00001599
Linus Walleij99ed83c2007-01-02 18:46:02 +000016002007-01-02 Linus Walleij <triad@df.lth.se>
1601
1602 * src/libusb-glue.c: fix up comments, remove things
1603 refering to stuff we don't have.
1604
Richard Lowb89ea942007-01-02 11:47:19 +000016052007-01-02 Richard Low <richard@wentnet.com>
1606
1607 * src/libmtp.c: another try at split headers/packet sizes
1608 * src/ptp.c: ditto
1609 * src/libusb-glue.c: ditto
1610
Linus Walleijc70a6df2007-01-01 22:19:08 +000016112007-01-01 Linus Walleij <triad@df.lth.se>
1612
1613 * src/libmtp.c: move default setting of split headers
1614 off to ptp.c open session.
1615 * src/ptp.c: dito.
1616
Richard Low021421e2007-01-01 18:08:57 +000016172007-01-01 Richard Low <richard@wentnet.com>
1618
1619 * src/libmtp.c: split headers/packet size fix
1620 * src/ptp.c: ditto
1621 * src/ptp.h: ditto
1622 * src/libusb-glue.c: ditto
1623
Linus Walleijfa2d1d12007-01-01 17:08:13 +000016242007-01-01 Orson Teodoro <orsonteodoro@yahoo.com>
1625
1626 * src/ptp.h: changed some WMDRMND def codes to AAVT def codes.
1627 addition of AAVT error codes.
1628 * src/ptp.c: changes to reflect modifications done in ptp.h
1629
Linus Walleija5ab8c42006-12-31 09:25:36 +000016302006-12-31 Linus Walleij <triad@df.lth.se>
1631
1632 * configure.ac: bump to 0.1.2.
1633 * src/Makefile.am: bump interface revision. (Compatible.)
1634 * RELEASE 0.1.2.
1635
Linus Walleij02ee8802006-12-30 17:27:58 +000016362006-12-30 Linus Walleij <triad@df.lth.se>
1637
1638 * examples/pathutils.c: reflect new filetypes.
1639 * examples/sendtr.c: dito.
1640
Linus Walleij5fb47132006-12-30 15:35:48 +000016412006-12-30 Orson Teodoro <orsonteodoro@yahoo.com>
1642
1643 * src/ptp.h: added WMDRMPD, WMDRMND, WMPPD, WPDWCN extension
1644 codes. added more format object codes flac, m4a, 3gp, aac,
1645 xml, xls, ppt, etc. 0x9101-0x910B identfiers are infixed
1646 with WMDRMPD. Added more object properties codes (0xDCD3-0xDD72).
1647 Added more device property codes.
1648 Changed PTP_OFC_MTP_WindowsImageFormat to 0xb881 reflect spec.
1649 * src/ptp.c: added changes to reflect new extensions, object
1650 codes, device property codes.
1651 * src/libmtp.c: modified mp4 to reflect it is a container format
1652 not a codec. Added more descriptions in init_filemap(). mp4
1653 container format is ambiguous in
1654 LIBMTP_Send_File_From_File_Descriptor(). Audio? video? both?.
1655 mp4 searched in video by default. Added comments about this.
1656 Added support for the new format object types.
1657 * src/libmtp.h.in: added constants to reflect changes to
1658 init_filemap().
1659
Richard Lowedd61832006-12-30 12:38:18 +000016602006-12-30 Richard Low <richard@wentnet.com>
1661
1662 * src/libusb-glue.c: fixed bug in debug printing
1663
Richard Lowa6c924c2006-12-29 17:44:28 +000016642006-12-29 Richard Low <richard@wentnet.com>
1665
1666 * src/libmtp.c: Made abstract list creation to be more
1667 WMP like
1668 * src/libusb-glue.c: added Philips GoGear SA9200
Richard Lowa679b1c2006-12-29 20:08:14 +00001669 * src/ptp-pack.c: fixed packing bug in ptp_pack_OI
Richard Lowa6c924c2006-12-29 17:44:28 +00001670
Linus Walleij784ac3f2006-12-29 10:36:51 +000016712006-12-29 Marcus Meissner <meissner@suse.de>
1672
1673 * src/ptp.h: API changes for libgphoto2 to use the file
1674 retrieveal functions.
1675 * src/ptp.c: dito.
1676 * src/libusb-glue.c: changes in libmtp reflecting the new
1677 API for libgphoto2.
1678
Linus Walleij8609af32006-12-28 21:25:17 +000016792006-12-28 Linus Walleij <triad@df.lth.se>
1680
Linus Walleije2e21182006-12-28 22:36:59 +00001681 * configure.ac: making older autotools happy. Bump to 0.1.1.
Linus Walleij3a3d24d2006-12-28 22:35:58 +00001682 * src/Makefile.am: bump interface for release, also autotools.
1683 * RELEASE libmtp 0.1.1.
Linus Walleij8609af32006-12-28 21:25:17 +00001684
Linus Walleijd6735f72006-12-19 13:38:29 +000016852006-12-19 Matthew Wilcox <matthew@wil.cx>
1686
1687 * src/ptp.c: fix a (serious) short file bug.
1688
Richard Lowaf20b5d2006-12-17 18:00:59 +000016892006-12-17 Richard Low <richard@wentnet.com>
1690
1691 * src/libmtp.c: don't bail out on failures when setting
1692 metadata.
1693
Linus Walleij037a1252006-12-16 20:36:52 +000016942006-12-16 Linus Walleij <triad@df.lth.se>
1695
1696 * src/ptp.c: sync to upstream.
1697 * src/ptp.h: dito.
1698 * src/ptp-pack.c: dito.
1699
Linus Walleijf8491912006-12-15 10:23:30 +000017002006-12-15 Linus Walleij <triad@df.lth.se>
1701
1702 * src/libmtp.h.in: make the format function take a storage as
1703 parameter. Add comments to device storage.
1704 * src/libmtp.c: dito, fix up some code and docs.
1705 * examples/format.c: make the format command comply with
1706 the new API.
1707
Linus Walleije1ac07e2006-12-14 19:38:59 +000017082006-12-14 Linus Walleij <triad@df.lth.se>
1709
1710 * src/libmtp.c: make get_first_storage_freespace() always query
1711 the first storage when the space is requested. And some other
1712 janitorial stuff.
1713
Linus Walleijb01d18b2006-12-13 12:49:15 +000017142006-12-13 Linus Walleij <triad@df.lth.se>
1715
1716 * src/libusb-glue.c: one more device.
1717 * examples/detect.c: compilation warnings fixed.
1718
rreardon3d583062006-12-13 10:10:27 +000017192006-12-13 Robert Reardon <rreardon@monkshatch.vispa.com>
1720
1721 * src/ptp.c: add 0xD901 flag as BuyNow property of objects.
1722 * src/ptp.h: ditto.
1723
Linus Walleijcd849362006-12-13 12:37:58 +000017242006-12-12 Daniel Williams <danielw@iinet.net.au>
Linus Walleij9e1b0812006-12-12 19:22:02 +00001725
1726 * src/libmtp.h.in: revamped storage API.
1727 * src/libmtp.c: dito.
1728 * examples/detect.c: dito.
1729
rreardon73d02c92006-12-12 16:45:30 +000017302006-12-12 Robert Reardon <rreardon@monkshatch.vispa.com>
rreardond2ddb632006-12-12 12:13:21 +00001731
1732 * src/libmtp.c: Send_Representative_Sample() updated to
1733 set image height and width, or audio duration and size.
1734
Linus Walleijd0f67702006-12-07 09:56:46 +000017352006-12-07 Linus Walleij <triad@df.lth.se>
1736
Linus Walleija05b9802006-12-08 08:50:30 +00001737 * src/libmtp.h.in: support firmware object type. (Dangerous.)
1738 * src/libmtp.c: dito.
1739
17402006-12-07 Linus Walleij <triad@df.lth.se>
1741
Linus Walleijd0f67702006-12-07 09:56:46 +00001742 * src/libmtp.c: default text folder detection (used in Samsung
1743 Yepp T9) also add a few "My Foo" folder strings, remove the
1744 "remaining directories" kludge.
1745 * src/libmtp.h.in: default text folder.
1746
Linus Walleijf1b02f22006-12-06 09:03:23 +000017472006-12-06 Linus Walleij <triad@df.lth.se>
1748
1749 * src/libmtp.h.in: extend the respresentative sample API a bit.
1750 * src/libmtp.c: dito.
1751 * examples/albumart.c: free memory after use.
1752 * examples/thumb.c: dito.
Linus Walleij8a08c212006-12-06 20:12:30 +00001753 * RELEASE this as libmtp 0.1.0!
Linus Walleijf1b02f22006-12-06 09:03:23 +00001754
Linus Walleijfdef4ae2006-12-05 16:15:51 +000017552006-12-04 Linus Walleij <triad@df.lth.se>
1756
1757 * src/ptp.c: enable split headers on sending object lists again.
1758
17592006-12-04 Robert Reardon <rreardon@monkshatch.vispa.com>
rreardond11473f2006-12-05 10:18:46 +00001760
1761 * src/libmtp.c: abstract Send_Representative_Sample() so
1762 it can send samples for any format that supports it
1763 * src/libmtp.h.in: same as above
1764 * examples/albumart.c: altered to use new abstract function above
1765 * example/thumb.c: sample program to upload thumbnails
1766 * example/Makefile.am: add sample thumbnail program
1767
Linus Walleijbdfaac22006-12-03 22:32:19 +000017682006-12-03 Linus Walleij <triad@df.lth.se>
1769
1770 * src/libmtp.c: check space on disk before sending
1771 tracks or files.
Linus Walleij7e3f2762006-12-03 22:52:05 +00001772 * src/libmtp.h.in: refactor LIBMTP_Send_Album_Art()
1773 into LIBMTP_Send_Representative_Sample().
1774 * src/libmtp.c: dito.
1775 * examples/albumart.c: dito.
Linus Walleijbdfaac22006-12-03 22:32:19 +00001776
Linus Walleijfa3fbe32006-12-02 20:47:32 +000017772006-12-02 Marcus Meissner <meissner@suse.de>
1778
1779 * examples/Makefile.am: make sure symlinks really end
1780 up in the correct dir.
1781
Linus Walleij6eab3b32006-11-30 22:58:21 +000017822006-11-30 Linus Walleij <triad@df.lth.se>
1783
1784 * src/ptp.c: make Matthews patch thread-safe and fix it
1785 so it will handle more than one surplus packet.
1786 * src/ptp.h: dito.
1787
Richard Lowab0d22d2006-11-30 22:17:49 +000017882006-11-30 Richard Low <richard@wentent.com>
1789
1790 * src/libmtp.c: memset PTPObjectInfo structs to 0
1791
Linus Walleij4bf38dd2006-11-30 21:27:29 +000017922006-11-30 Matthew Wilcox <matthew@wil.cx>
1793
1794 * src/ptp.c: on some devices, surplus packet data is
1795 sometimes returned during read, i.e. a header of the
1796 next package is typically attacked to the incoming
1797 data, as if someone was sending several packets at
1798 once. If this happens we buffer the surplus packet.
Linus Walleijef1e6352006-11-30 22:07:16 +00001799 * src/libusb-glue.c: revert my own mistakes by making
1800 them Windows-only.
Linus Walleij4bf38dd2006-11-30 21:27:29 +00001801
Linus Walleij9901e222006-11-30 12:28:19 +000018022006-11-30 Linus Walleij <triad@df.lth.se>
1803
Linus Walleij2978f1a2006-11-30 14:00:26 +00001804 * configure.ac: this *is* gonna be libmtp 0.1.0!
1805 * src/Makefile.am: age interface to 4-0-0 to indicate that
1806 intefaces have been removed.
Linus Walleij9901e222006-11-30 12:28:19 +00001807 * src/libmtp.h.in: removed external object interface.
1808 * src/libmtp.c: dito. Made all object manipulation functions
1809 static.
1810
Richard Lowc7d48d22006-11-29 18:24:55 +000018112006-11-29 Richard Low <richard@wentnet.com>
1812
1813 * src/libusb-glue.c: added new devices
1814
Linus Walleij7beba572006-11-29 08:56:12 +000018152006-11-29 Linus Walleij <triad@df.lth.se>
1816
1817 * src/libusb-glue.c: remove some pointless #include <>
1818 clutter, call usb_set_configuration() as needed by
1819 Windows.
1820 * src/libmtp.c: various fixups to enable use of Windows
1821 <io.h> include file.
1822 * README.windows.txt: added a quick porting guide for
1823 MSVC by Farooq Zaman.
1824
Linus Walleijcf42f452006-11-28 08:32:49 +000018252006-11-28 Linus Walleij <triad@df.lth.se>
1826
1827 * src/libmtp.h.in: removed filetype mapping API. We can handle
1828 everything inside of libmtp now so no need for this.
1829 * src/libmtp.c: dito.
1830
Linus Walleij72e9c2b2006-11-28 08:14:00 +000018312006-11-27 Linus Walleij <triad@df.lth.se>
Linus Walleij64ad9ae2006-11-27 11:23:26 +00001832
1833 * examples/files.c: unsigned int sized printout.
1834 * examples/tracks.c: sort of the same.
Linus Walleij72e9c2b2006-11-28 08:14:00 +00001835 * Makefile.am: HAL style map output by default.
Linus Walleij64ad9ae2006-11-27 11:23:26 +00001836
Richard Low6c0a6ce2006-11-26 10:42:08 +000018372006-11-26 Richard Low <richard@wentnet.com>
Linus Walleijb7426d12006-11-25 23:19:11 +00001838
Richard Low6c0a6ce2006-11-26 10:42:08 +00001839 * src/libmtp.c: object handles for proplists
1840 * src/ptp-pack.c: ditto
1841 * src/ptp.c: ditto
1842 * src/ptp.h: ditto
1843
Linus Walleijf73de152006-11-25 21:44:44 +000018442006-11-25 Marcus Meissner <marcus@jet.franken.de>
1845
1846 * examples/hotplug.c: adding HAL style XML output for
1847 the devices.
1848 * examples/Makefile.am: fixing a bug in the automake
1849 file (pathutils.h missing!)
1850 * Makefile.am: fix the problem with re-making sources
1851 (you had to run ./autogen.sh before!)
1852
Linus Walleijfe677ac2006-11-23 13:35:00 +000018532006-11-23 Linus Walleij <triad@df.lth.se>
1854
1855 * src/libusb-glue.h: add a new bug flag for devices that
1856 have broken PTP_OC_MTP_GetObjPropList implementations.
1857 * src/libusb-glue.c: state that all iRivers have this problem.
1858 * src/libmtp.c: disable the user of ptp_mtp_getobjectproplist()
1859 for these devices.
1860
18612006-11-21 Robert Reardon <rreardon@monkshatch.vispa.com>
rreardonbddc0f82006-11-21 13:44:42 +00001862
1863 * src/libmtp.c: set handle ids for new objects to 0 when
1864 creating new albums and playlists.
1865
Linus Walleij2f5ed5c2006-11-21 07:40:29 +000018662006-11-21 Linus Walleij <triad@df.lth.se>
1867
1868 * src/libmtp.c: enabled enhanced mode for metadata retrieval
1869 by default.
Linus Walleij9be685b2006-11-21 09:44:53 +00001870 * src/libmtp.c: fixed the problem with sending files using
1871 enhanced commands.
Linus Walleij2f5ed5c2006-11-21 07:40:29 +00001872
Linus Walleij277cd532006-11-20 14:57:46 +000018732006-11-20 Linus Walleij <triad@df.lth.se>
1874
1875 * src/ptp.h: sync to upstream libgphoto2
1876 * src/ptp.c: dito.
1877 * src/ptp-pack.c: dito.
Linus Walleij8ae78bb2006-11-20 21:45:52 +00001878 * src/libmtp.c: check for zerolength files/tracks.
Linus Walleij277cd532006-11-20 14:57:46 +00001879
18802006-11-20 Andy Kelk <andy@mopoke.co.uk>
mopoke31364442006-11-20 04:53:04 +00001881
1882 * src/libmtp.h.in: add "parent_id" property to LIBMTP_track_struct.
1883 * src/libmtp.c: get "parent_id" property when reading tracks.
mopoke33744bb2006-11-20 04:55:32 +00001884 * examples/emptyfolders.c: new example program for pruning empty
1885 folders. (does a dummy run by default).
mopoke31364442006-11-20 04:53:04 +00001886
Linus Walleij277cd532006-11-20 14:57:46 +000018872006-11-19 Robert Reardon <rreardon@monkshatch.vispa.com>
rreardon508705f2006-11-19 21:27:22 +00001888
rreardonbbb4e562006-11-19 22:16:11 +00001889 * src/libmtp.c: use enhanced MTP commands to create playlists and
1890 send files
rreardon508705f2006-11-19 21:27:22 +00001891 * examples/newplaylist.c: demo program for creating new playlists
rreardona7220ad2006-11-19 21:36:46 +00001892 * examples/Makefile.am: add demo newplaylists program
rreardon508705f2006-11-19 21:27:22 +00001893
Linus Walleijcd849362006-12-13 12:37:58 +000018942006-11-19 Daniel Williams <danielw@iinet.net.au>
Linus Walleij48a2d462006-11-19 14:07:59 +00001895
1896 * src/libusb-glue.c: fix error on reconnect.
1897
Linus Walleij277cd532006-11-20 14:57:46 +000018982006-11-18 Richard Low <richard@wentnet.com>
Richard Lowef925022006-11-18 09:06:10 +00001899
1900 * src/ptp.c: tidy up ptp_usb_getdata
1901
Linus Walleij277cd532006-11-20 14:57:46 +000019022006-11-17 Richard Low <richard@wentnet.com>
Richard Low91354812006-11-17 22:44:05 +00001903
1904 * src/libmtp.c: fixed parent handle for uploaded tracks
1905
Linus Walleij277cd532006-11-20 14:57:46 +000019062006-11-17 Robert Reardon <rreardon@monkshatch.vispa.com>
Linus Walleije6605692006-11-17 09:18:52 +00001907
1908 * src/libmtp.c: fixed up album art using enhanced commands.
1909
Linus Walleij277cd532006-11-20 14:57:46 +000019102006-11-16 Richard Low <richard@wentnet.com>
Richard Low8d82d2f2006-11-16 20:37:43 +00001911
1912 * src/libmtp.c: a crude implementation of ptp_mtp_getobjectproplist
1913 * src/ptp.c: ditto
1914 * src/ptp.h: ditto
1915 * src/ptp-pack.c: ditto
1916
Linus Walleij277cd532006-11-20 14:57:46 +000019172006-11-16 Robert Reardon <rreardon@monkshatch.vispa.com>
Linus Walleij9e68bc12006-11-16 15:59:18 +00001918
Linus Walleijccf28ce2006-11-16 16:06:38 +00001919 * src/libmtp.c: use enhanced MTP commands to create albums and
1920 add detection of the default album folder.
1921 * src/libmtp.h.in: add a holder for album default folder.
Linus Walleij9e68bc12006-11-16 15:59:18 +00001922
Linus Walleij277cd532006-11-20 14:57:46 +000019232006-11-15 Richard Low <richard@wentnet.com>
Richard Low8b42ca32006-11-15 08:52:17 +00001924
1925 * src/ptp-pack.c: set string buffer to correct size.
1926
Linus Walleij277cd532006-11-20 14:57:46 +000019272006-11-14 Richard Low <richard@wentnet.com>
Richard Lowe1ab2642006-11-14 08:34:49 +00001928
1929 * examples/tracks.c: really use undeprecated API entry.
1930
Linus Walleij277cd532006-11-20 14:57:46 +000019312006-11-13 Richard Low <richard@wentnet.com>, Linus Walleij <triad@df.lth.se>
Linus Walleij3fcfea52006-11-13 07:07:36 +00001932
1933 * src/libmtp.h.in: add LIBMTP_Get_Tracklisting_With_Callback()
Richard Lowdc0b6c72006-11-13 09:22:23 +00001934 and LIBMTP_Get_Filelisting_With_Callback()
Linus Walleij3fcfea52006-11-13 07:07:36 +00001935 * src/libmtp.c: dito, deprecate LIBMTP_Get_Tracklisting()
Richard Lowdc0b6c72006-11-13 09:22:23 +00001936 and LIBMTP_Get_Filelisting()
Linus Walleij3fcfea52006-11-13 07:07:36 +00001937 * examples/tracks.c: use undeprecated API entry.
Richard Lowdc0b6c72006-11-13 09:22:23 +00001938 * examples/connect.c: ditto.
1939 * examples/detect.c: ditto.
1940 * examples/files.c: ditto.
Linus Walleij3fcfea52006-11-13 07:07:36 +00001941 * src/ptp.c: working on getting object prop lists.
1942 * src/ptp.h: dito.
1943
Linus Walleij277cd532006-11-20 14:57:46 +000019442006-11-12 Richard Low <richard@wentnet.com>
Richard Lowe1f06922006-11-12 16:38:39 +00001945
1946 * src/libusb-glue.c: added Zen Vision W to devices
1947
Linus Walleij277cd532006-11-20 14:57:46 +000019482006-11-07 Richard Low <richard@wentnet.com>
Richard Low4c60f6e2006-11-07 20:36:42 +00001949
1950 * src/libmtp.c: added checks for supported properties
1951
Linus Walleij277cd532006-11-20 14:57:46 +000019522006-11-06 Richard Low <richard@wentnet.com>
Richard Low64fa3992006-11-06 21:24:11 +00001953
1954 * src/libmtp.c: added a check for NULL filenames in
1955 LIBMTP_Get_Folder_List.
1956
Linus Walleij99310d42006-11-01 08:29:39 +000019572006-11-01 Linus Walleij <triad@df.lth.se>
1958
1959 * src/libmtp.h.in: set/get uint8 to/from objects
1960 * src/libmtp.c: send object property list.
1961 * src/ptp.c: dito.
1962 * src/ptp.h: dito.
1963 * src/ptp-pack.c: dito.
1964
mopoke90be30e2006-10-30 08:47:41 +000019652006-10-29 Andy Kelk <andy@mopoke.co.uk>
1966
1967 * examples/albumart.c: simple tool for adding album art.
1968 * src/libmtp.c: graceful handling of players not supporting
1969 abstract album objects.
1970
Linus Walleij0c33ec02006-10-27 10:15:40 +000019712006-10-27 Linus Walleij <triad@df.lth.se>
1972
1973 * src/Makefile.am: bump library interface to reflect the new
1974 album methods.
1975 * configure.ac: bump to 0.0.22 for the next release.
1976
19772006-10-27 Andy Kelk <andy@mopoke.co.uk>
1978
1979 * src/libmtp.c: add support form abstract audio/video albums.
1980 * src/libmtp.h.in: dito.
1981
Linus Walleij7347d0f2006-10-23 07:23:39 +000019822006-10-23 Linus Walleij <triad@df.lth.se>
1983
1984 * src/libmtp.c: retire opcode rendering (moved to ptp.c)
1985 * src/ptp.c: sync to upstream.
1986 * src/ptp.h: dito.
1987 * src/ptp-pack.c: dito.
1988
Linus Walleij9efe75f2006-10-20 09:09:45 +000019892006-10-20 Linus Walleij <triad@df.lth.se>
1990
1991 * Release 0.0.21 to get all the new device support out.
1992
Linus Walleij501ba4d2006-10-16 06:17:04 +000019932006-10-16 Linus Walleij <triad@df.lth.se>
1994
1995 * configure.ac: bump to 0.0.21.
1996 * src/libusb-glue.c: add code to unload a kernel driver for
1997 the primary interface if it is already in use under Linux.
1998 * src/libusb-glue.h: add a device flag to make this possible.
1999
Linus Walleij37253292006-10-11 08:38:14 +000020002006-10-11 Linus Walleij <triad@df.lth.se>
2001
2002 * examples/delfile.c: patch from Chris Debenham
2003 straingtening out the command-line interface a bit
2004 more.
2005
Linus Walleij43ff8fc2006-10-10 11:16:53 +000020062006-10-10 Linus Walleij <triad@df.lth.se>
2007
Linus Walleij37253292006-10-11 08:38:14 +00002008 * examples/delfile.c: patch from Chris Debenham to make
2009 this command take an optional filename as parameter
2010 instead of file ID.
Linus Walleij43ff8fc2006-10-10 11:16:53 +00002011
Linus Walleij955e6ba2006-09-26 16:55:10 +000020122006-09-26 Linus Walleij <triad@df.lth.se>
2013
2014 * libmtp.pc.in: require libusb instead of just linking it.
2015 * configure.ac: bump release to 0.0.20 and release.
2016
Linus Walleijb1318d12006-09-25 14:59:26 +000020172006-09-25 Linus Walleij <triad@df.lth.se>
2018
2019 * examples/evolution-sync.sh: example script to illustrate
2020 to to transfer calendar, task and contact information
2021 to a device supporting this.
2022
Linus Walleij4ef39e62006-09-19 14:11:52 +000020232006-09-19 Linus Walleij <triad@df.lth.se>
2024
2025 * src/libmtp.h.in: fixed attribute IDs to be 16bit.
2026 * src/libmtp.c: dito.
2027 * examples/sendfile.c: support vcard3.
2028
Linus Walleijf248fdd2006-09-16 20:11:40 +000020292006-09-16 Linus Walleij <triad@df.lth.se>
2030
2031 * configure.ac: bump to 0.0.19 and release. There are some
2032 new devices as well.
Linus Walleij5b5c7852006-09-16 20:23:37 +00002033 * src/unicode.c: retire unused code.
Linus Walleijf248fdd2006-09-16 20:11:40 +00002034
Linus Walleijb8bfcb22006-09-13 12:14:28 +000020352006-09-13 Linus Walleij <triad@df.lth.se>
2036
2037 * examples/format.c: formatting test program.
2038 * examples.Makefile.am: added format.
2039
Linus Walleij13374a42006-09-13 11:55:30 +000020402006-09-13 Andy Kelk <andy@mopoke.co.uk>
2041
2042 * src/libmtp.h.in: added interface to format storage.
2043 * src/libmtp.c: dito.
2044 * src/ptp.c: dito.
2045 * src/ptp.h: dito.
2046
Linus Walleijd31e6192006-09-12 07:55:27 +000020472006-09-12 Linus Walleij <triad@df.lth.se>
2048
2049 * configure.ac: bump release. Released 0.0.18 yesterday.
2050 * src/libmtp.c: do not try to read battery max level unless
2051 the device supports it. (Bug occurred on Toshiba Gigabeat
2052 P10.)
2053
Linus Walleijd5d51c82006-09-11 06:57:50 +000020542006-09-11 Linus Walleij <triad@df.lth.se>
2055
2056 * src/libusb-glue.c: messed around a bit with device descriptor
2057 detection so as to bring closer to libgphoto2 detection algorithm.
2058 I've seen things that might be false positives, possibly USB mass
2059 storage devices with additional MSFT descriptors to indicate they
2060 have Janus DRM.
2061 * src/libmtp.c: use UCS-2-INTERNAL if we're not on glibc. glibc
2062 knows that UCS-2 is in machine endianness but Darwin and *BSD does
2063 not. Detect C library and switch accordingly.
2064 * src/unicode.c: retire old unicode code only keep things we cannot
2065 live without. Remove the own internal UCS-2 conversion engine and
2066 the internal iconv() engine and use the one already available in
2067 PTPParams.
2068 * src/unicode.h: dito.
2069
Linus Walleij0558ac52006-09-07 06:55:03 +000020702006-09-07 Linus Walleij <triad@df.lth.se>
2071
2072 * src/libusb-glue.h: added device flags so we can make
2073 the code behave differently on certain devices.
2074 * src/libusb-glue.c: dito, plus removed some debug prints.
2075 * src/libmtp.c: docs.
2076 * src/libmtp.h.in: added device_flags to device list struct.
2077 * src/Makefile.am: bumped to compatible library interface.
2078 * configure.ac: bump version to 0.0.18 (0.0.17 released
2079 yesterday).
2080
Richard Low6ec2cc12006-09-06 16:59:16 +000020812006-09-06 Richard Low <richard@wentnet.com>
2082
2083 * src/libusb-glue.c: changed packet sizes to improve
2084 transfer speeds.
2085 * src/libmtp.c: changed packet sizes to improve transfer
2086 transfer speeds. Also stopped extra ptp_getobjectinfo
2087 calls when getting directories on connect.
2088
Linus Walleij7f0c72e2006-09-06 13:01:58 +000020892006-09-06 Linus Walleij <triad@df.lth.se>
2090
2091 * src/libusb-glue.c: fixed some endpoint size detection
2092 and sending special file sizes stuff. Real hairy bug...
2093 Also messed around a bit with the callbacks.
2094 * src/libmtp.c: changes for callback size detection.
2095
Linus Walleija9310fa2006-09-04 06:47:42 +000020962006-09-04 Linus Walleij <triad@df.lth.se>
2097
2098 * src/libmtp.c: bug in streaming code, use defined USB_BULK_HDR_SIZE
2099 instead of magic values.
2100
Linus Walleijd7aa5b22006-09-02 11:52:31 +000021012006-09-02 Linus Walleij <triad@df.lth.se>
2102
Linus Walleijcd3eb3d2006-09-02 21:33:22 +00002103 * src/libmtp.c: add some code to have
2104 LIBMTP_Send_File_From_File_Descriptor() accept a stream
2105 if size is set to (uint64_t) -1, plus documentation fixes.
2106 I don't think the streaming code will work but whoever want
2107 to experiment with it has a place to start.
2108 * examples/refactortest.c: removed. Who uses this?
Linus Walleijd7aa5b22006-09-02 11:52:31 +00002109
Linus Walleijda9500d2006-08-30 13:17:06 +000021102006-08-30 Linus Walleij <triad@df.lth.se>
2111
2112 * configure.ac: version bump.
2113 * src/libmtp.c: more debug prints.
2114 * src/libusb-glue.c: new iRiver device called Clix. By
2115 the way I released libmtp 0.0.16 yesterday.
2116
Linus Walleija823a702006-08-27 21:27:46 +000021172006-08-28 Linus Walleij <triad@df.lth.se>
2118
2119 * configure.ac: version bump.
2120 * src/ptp-pack.c: upstream has committed my patch giving full
2121 unicode support in libgphoto2 ptp2 camlib. No need for
2122 any more ugly workarounds, plus we now have full unicode
2123 filenames!
2124 * src/ptp.c: dito.
2125 * src/ptp.h: dito.
2126 * src/libmtp.c: revamp to use the new unicode support in
2127 libgphoto2.
2128 * src/unicode.c: remove unused functionality.
2129 * src/unicode.h: dito.
2130
Linus Walleijee73ef22006-08-27 19:56:00 +000021312006-08-27 Linus Walleij <triad@df.lth.se>
2132
2133 * configure.ac: version bump. Release all these fixes
2134 as 0.0.15.
2135 * src/libusb-glue.c: fixed sucky errors. Added callback
2136 code when reading files.
2137 * src/libusb-glue.h: const correctness.
2138 * src/libmtp.h.in: finally fixup the type on the callbacks.
2139 * src/libmtp.c: more accurate sending callbacks. Callbacks
2140 when getting files also, working correctly. Typeing of
2141 callbacks now OK.
2142 * examples/getfile.c: some display bar cosmetic fixup.
2143 * TODO: lots of the things todo are now done.
2144
Linus Walleijd214b9b2006-08-26 22:08:37 +000021452006-08-26 Linus Walleij <triad@df.lth.se>
2146
2147 * configure.ac: version bump.
2148 * src/libmtp.c: fix bug and reinstate callbacks.
2149 * src/libusb-glue.h: dito.
2150 * src/libusb-glue.c: dito.
2151
Linus Walleije7f44be2006-08-25 19:32:29 +000021522006-08-25 Linus Walleij <triad@df.lth.se>
2153
2154 * src/libmtp.c: use the new file descriptor sender function.
2155 Going to release this as 0.0.13.
2156 * src/ptp.c: upstream accepted patches synced in.
2157 * src/ptp.h: dito.
2158
Linus Walleijeab650b2006-08-21 23:26:37 +000021592006-08-22 Linus Walleij <triad@df.lth.se>
2160
Linus Walleij80d134a2006-08-22 21:41:37 +00002161 * src/libusb-glue.c: found a real nasty endpoint bug,
2162 code from libgphoto2 was assuming max packet size of
2163 512 bytes while it is 64 when a USB 2.0 device is
2164 plugged into an UHCI hub.
2165
21662006-08-22 Linus Walleij <triad@df.lth.se>
2167
Linus Walleijeab650b2006-08-21 23:26:37 +00002168 * configure.ac: bump to 0.0.13, also released 0.0.12 now.
2169
Linus Walleij924236a2006-08-20 22:17:58 +000021702006-08-21 Linus Walleij <triad@df.lth.se>
2171
2172 * src/libmtp.c: fixup mmap() usage and add madvise()
Linus Walleij96c62432006-08-21 10:04:02 +00002173 as result of experiments by Gavin McCullagh. Upstream
2174 accept patch to get files directly to file descriptor.
Linus Walleij3ec86312006-08-21 13:25:24 +00002175 Move iconv() converters into device struct for thread
2176 safety.
Linus Walleij96c62432006-08-21 10:04:02 +00002177 * src/ptp.c: sync to upstream which merges patch to get
2178 file directly to file descriptor.
2179 * src/ptp.h: dito.
Linus Walleij3ec86312006-08-21 13:25:24 +00002180 * src/unicode.c: move iconv() converters into the device
2181 struct for thread safety.
2182 * src/unicode.h: dito.
Linus Walleij924236a2006-08-20 22:17:58 +00002183
Linus Walleij30658792006-08-19 22:18:55 +000021842006-08-20 Linus Walleij <triad@df.lth.se>
2185
2186 * src/libmtp.h.in: set friendly name and sync partner,
2187 rename ownername to friendlyname.
2188 * src/libmtp.c: dito.
2189 * examples/detect.c: reflect changes.
2190 * src/Makefile.am: interface is incompatible so age it.
2191
Linus Walleijfae27482006-08-19 20:13:25 +000021922006-08-19 Linus Walleij <triad@df.lth.se>
2193
2194 * src/libmtp.h.in: add function to get syncronization
2195 partner for the device.
2196 * src/libmtp.c: dito.
2197 * examples/detect.c: use that function.
2198 * src/Makefile.am: backward-compatible interface bump.
2199
Linus Walleij16571dc2006-08-17 20:27:46 +000022002006-08-17 Linus Walleij <triad@df.lth.se>
2201
2202 * configure.ac: bump to 0.0.12 and require iconv.h.
2203
22042006-08-16 Linus Walleij <triad@df.lth.se>
2205
2206 * src/unicode.c: remove bigendian weirdness and switch
2207 to using iconv() instead.
2208 * src/unicode.h: dito.
2209 * src/libmtp.c: reflect changes.
2210
Linus Walleij3e188f12006-08-09 20:46:05 +000022112006-08-09 Linus Walleij <triad@df.lth.se>
2212
2213 * Release libmtp 0.0.11.
2214
Linus Walleij2eb884b2006-08-04 19:17:36 +000022152006-08-04 Linus Walleij <triad@df.lth.se>
2216
2217 * src/libmtp.c: patch from Dan Aloni to make sendfile
2218 use mmap and avoid memory drainage.
Linus Walleij9eb3d312006-08-04 19:25:59 +00002219 * src/libusb-glue.c: patch from Andy Kelk to avoid
2220 exit():ing when the interface cannot be claimed.
Linus Walleij232943d2006-08-04 19:26:53 +00002221 * configure.ac: version bump.
Linus Walleij2eb884b2006-08-04 19:17:36 +00002222
Linus Walleijaa4b0752006-07-26 22:21:04 +000022232006-07-27 Linus Walleij <triad@df.lth.se>
2224
2225 * Release libmtp 0.0.10.
2226
Linus Walleij17b55ea2006-07-26 13:54:00 +000022272006-07-26 Linus Walleij <triad@df.lth.se>
2228
2229 * src/libusb-glue.c: new SanDisk devices.
Linus Walleij00cf0642006-07-26 20:40:59 +00002230 * src/libmtp.c: only set metdata properties supported by
2231 the device, duh.
Linus Walleijaa4b0752006-07-26 22:21:04 +00002232 * src/ptp.c: sync to upstream.
2233 * src/ptp.h: sync to upstream.
2234 * configure.ac: bump to 0.0.10.
Linus Walleij17b55ea2006-07-26 13:54:00 +00002235
Linus Walleijc187cb92006-06-22 17:58:13 +000022362006-06-22 Linus Walleij <triad@df.lth.se>
2237
2238 * Release libmtp 0.0.9.
2239
Linus Walleij8ab54262006-06-21 07:12:28 +000022402006-06-21 Linus Walleij <triad@df.lth.se>
2241
2242 * src/libmtp.h.in: added function to retrieve supported
2243 filetypes.
2244 * src/libmtp.c: ditto.
2245 * examples/detect.c: use that function.
2246
Linus Walleijcf223e62006-06-19 09:31:53 +000022472006-06-19 Linus Walleij <triad@df.lth.se>
2248
2249 * src/unicode.c: support all endianness, detect
2250 byte-order-mark
2251 * src/unicode.h: ditto.
2252 * src/libmtp.c: ditto.
2253 * examples/detect.c: use proper tempfile function.
2254 * src/libmtp.h.in: add some more track properties.
2255 * src/libmtp.c: ditto.
2256 * examples/tracks.c: ditto.
2257
Linus Walleij2e4b5f92006-06-16 14:00:49 +000022582006-06-16 Linus Walleij <triad@df.lth.se>
2259
2260 * src/libmtp.h.in: new interfaces for single metadata post
2261 retrieveal.
2262 * src/libmtp.c: ditto.
2263 * examples/playlists.c: display track info using the new
2264 individual track metadata retrieveal method.
2265 * examples/getplaylist.c: ditto.
2266
Linus Walleij05ccbe72006-06-13 07:46:58 +000022672006-06-13 Linus Walleij <triad@df.lth.se>
2268
2269 * src/libmtp.h.in: added default folders to device struct.
Linus Walleij545c7792006-06-13 15:22:30 +00002270 Add some new function prototypes.
Linus Walleij05ccbe72006-06-13 07:46:58 +00002271 * src/libmtp.c: discover and use the default folders if
Linus Walleij545c7792006-06-13 15:22:30 +00002272 we can find them. Retrieve device secure time and cert
2273 out of sheer curiosity.
2274 * src/ptp.c: sync to libgphoto2 with my patches.
2275 * src/ptp.h: ditto.
Linus Walleij05ccbe72006-06-13 07:46:58 +00002276
Linus Walleij438bd7f2006-06-08 11:35:44 +000022772006-06-07 Linus Walleij <triad@df.lth.se>
2278
2279 * src/libmtp.h.in: new playlist API and refactorings.
2280 * src/libmtp.c: ditto, and refactorings.
2281 * src/unicode.h: const correctness.
2282 * src/unicode.c: ditto.
2283 * examples/playlists.c: new example program.
2284 * configure.ac: bump to 0.0.9
2285 * src/Makefile.am: bump library interface.
2286
Linus Walleij52e3ac52006-06-05 10:30:00 +000022872006-06-05 Linus Walleij <triad@df.lth.se>
2288
2289 * examples/sendtr.c: fixed annoying bug that made this
2290 program totally useless.
2291 * src/libmtp.c: cosmetics.
2292 * configure.ac: bump to 0.0.8.
2293
Linus Walleij345a3372006-06-03 20:55:25 +000022942006-06-03 Linus Walleij <triad@df.lth.se>
2295
2296 * src/libmtp.c: metadata bugs, album name and genre
2297 confused. Fixe it and released libmtp 0.0.7.
2298
Linus Walleijdc09dc02006-06-01 14:23:41 +000022992006-06-01 Linus Walleij <triad@df.lth.se>
2300
2301 * Released libmtp 0.0.6.
2302
Linus Walleij549ec4d2006-05-31 19:59:52 +000023032006-05-31 Linus Walleij <triad@df.lth.se>
2304
2305 * src/libmtp.c: fixed mapping for JPEG vs JFIF
2306 * src/libmtp.h.in: added proper type for JPEG
2307 * examples/sendfile.c: send proper JPEG type
2308
Linus Walleijd3fdd972006-05-30 15:51:37 +000023092006-05-30 Flavien Lebarbe <flavien+libmtp@lebarbe.net>
2310
2311 * src/libmtp.c: fixed a bug in update metadata due to
2312 bad use of return code.
2313 * src/libusb-glue.c: fixed a loop exiting problem with
2314 good 'ol GOTO.
2315
Linus Walleij9b1fcd92006-05-29 08:35:29 +000023162006-05-29 Linus Walleij <triad@df.lth.se>
2317
2318 * src/libusb-glue.c: one more device.
2319 * doc/examples.h: produce correct documentation.
2320 * configure.ac: bump to 0.0.6.
Linus Walleijf67bca92006-05-29 09:33:39 +00002321 * src/ptp.c: sync to libgphoto2.
2322 * src/ptp.h: ditto.
2323 * src/ptp-pack.c: ditto.
Linus Walleijf0f3d482006-05-29 14:10:21 +00002324 * src/libmtp.c: fixed all filetype API related functions
2325 not to use any PTP intrinsic defines at all, made all
2326 parameters to functions use the internal libmtp interface
2327 enumerations and definitions. Removed LIBMTP_Release():
2328 we can live with the memory lost during init. You're not
2329 supposed to re-initialize the device. Consequently removed
2330 the delete function that cleaned the filetype assoc list.
2331 * examples/refactortest.c: reflect changes.
Linus Walleij9b1fcd92006-05-29 08:35:29 +00002332
ravelox088180b2006-05-26 23:55:40 +000023332006-05-26 Dave Kelly <libmtp@ravelox.co.uk>
2334
2335 * src/libmtp.c: refactored object handling to be more generic
2336 * src/libmtp.h.in: ditto
2337 * examples/refactortest.c: Added simple example to use refactoring
2338 * examples/getplaylist.c: Added example to extract playlist data
Linus Walleij9b1fcd92006-05-29 08:35:29 +00002339 * src/ptp.c: Re-added ptp_get/set_objectreferences to allow
2340 for playlist handling
2341 * src/ptp.h: ditto
ravelox088180b2006-05-26 23:55:40 +00002342
Linus Walleij1fd2d272006-05-08 09:22:01 +000023432006-05-08 Linus Walleij <triad@df.lth.se>
2344
2345 * src/libmtp.h.in: add simple detection function.
2346 * src/libusb-glue.c: implement MTP "OS descriptor" for
2347 looking for MTP devices.
2348 * examples/detect.c: make it possible to do very
2349 rudimentary detection with "detect -p".
2350 * configure.ac: bump to 0.0.5.
2351
Linus Walleij685137f2006-05-07 18:09:02 +000023522006-05-07 Linus Walleij <triad@df.lth.se>
2353
2354 * COPYING: since we no longer use any parts of libptp2
2355 and only files from libgphoto2, we switch to the GNU
2356 Lesser General Public License (GNU LGPL). libptp2 is
2357 a derived work from libgphoto2, and so is libmtp, there
2358 are no remnants of libptp2 in libmtp anymore.
2359
Linus Walleij16c51f02006-05-04 13:20:22 +000023602006-05-04 Linus Walleij <triad@df.lth.se>
2361
2362 * examples/sendfile.c: fixes some more filetypes.
Linus Walleij453813c2006-05-04 19:46:43 +00002363 * src/libmtp.c: respectfully rearranged to use a filetype mapping
2364 table.
2365 * src/ptp-pack.c: real nasty unicode packing bug.
2366 * Release libmtp 0.0.4.
Linus Walleij16c51f02006-05-04 13:20:22 +00002367
Linus Walleijd6a49972006-05-02 08:24:54 +000023682006-05-02 Linus Walleij <triad@df.lth.se>
2369
2370 * src/libmtp.c: general shaping up for release. All track
2371 and file sending functions now respects a parent ID to be
2372 sent along with files and tracks.
2373 * src/libmtp.h.in: dito.
2374 * src/libusb-glue.c: dito.
2375 * examples/sendfile.c: interface dependency changes.
2376 * examples/sendtr.c: dito.
2377
Linus Walleijc60275a2006-04-30 10:58:11 +000023782006-04-30 Linus Walleij <triad@df.lth.se>
2379
2380 * src/ptp.c: sync upstream.
2381 * src/ptp.h: dito.
2382
Linus Walleij370c68d2006-04-27 14:19:01 +000023832006-04-27 Linus Walleij <triad@df.lth.se>
2384
2385 * examples/sendfile.c: first file sender program based
2386 on API implementation and changes by Chris Allegretta.
2387 * examples/Makefile.am: new program, new entry.
2388 * src/libmtp.c: reflect this new functionality.
2389 * src/libmtp.h.in: dito.
2390
Linus Walleijb02a0662006-04-25 08:05:09 +000023912006-04-25 Linus Walleij <triad@df.lth.se>
2392
2393 * Rebased the sources around libgphoto2 instead.
2394 This was a major revision...
2395 * src/ptp.c: imported libgphoto2 version verbatim.
2396 * src/ptp.h: imported libgphoto2 version, minor patch.
2397 * src/ptp-pack.c: imported libgphoto2 version, minor patch.
Linus Walleij9a96f0b2006-04-25 08:46:59 +00002398 * src/ptp-pack.h: dropped, libgphoto2 does not use it.
Linus Walleijb02a0662006-04-25 08:05:09 +00002399 * src/mtp.c: dropped, since all functions are now in ptp.c
2400 * src/mtp-pack.c: dropped, same reason.
2401 * src/mtp.h: dropped, same reason.
2402 * src/mtp-pack.h: dropped, same reason.
2403
Linus Walleije5f3ad42006-04-21 07:44:36 +000024042006-04-21 Linus Walleij <triad@df.lth.se>
2405
Linus Walleij902c0b92006-04-21 10:52:48 +00002406 * Released libmtp 0.0.3
2407 * Bumped source to 0.0.4
2408
24092006-04-21 Linus Walleij <triad@df.lth.se>
2410
Linus Walleije5f3ad42006-04-21 07:44:36 +00002411 * src/ptp-pack.c: GCC 4.x compilation patch from
2412 Diego Pettenò.
Linus Walleija06a2792006-04-21 07:52:26 +00002413 * src/libusb-glue.c: New Samsung device and some
2414 from libgphoto2.
Linus Walleij9c6ca022006-04-21 10:24:15 +00002415 * src/ptp.h: some defines from libgphoto2 to get
2416 a bit more compatible.
2417 * src/libmtp.c: Added a folder API implementation by
2418 Dave "ravelox" Kelly.
2419 * src/libmtp.h.in: dito.
2420 * examples/folders.c: dito.
2421 * examples/newfolder.c: dito.
2422 * examples/trexist.c: dito.
Linus Walleije5f3ad42006-04-21 07:44:36 +00002423
Linus Walleij6fd2f082006-03-28 07:19:22 +000024242006-03-28 Linus Walleij <triad@df.lth.se>
2425
2426 * m4/*: updated macros to work with GCC 4.1.0.
2427 * examples/hotplug.c: new program to create device
2428 ID lists.
2429 * libmtp.rules: now an auto-generated file.
2430 * libmtp.usermap: now an auto-generated file.
2431
Linus Walleijf6bc1782006-03-24 15:12:47 +000024322006-03-24 Linus Walleij <triad@df.lth.se>
2433
2434 * Beginning a file API, fixed some example program
2435 names and such.
2436
Linus Walleij6946ac52006-03-21 06:51:22 +000024372006-03-18 Linus Walleij <triad@df.lth.se>
2438
2439 * Fixed up callback interface to a simpler version,
2440 the old one was bloated stuff from libnjb anyway.
2441 Bump to 0.0.2.
2442
Linus Walleij9b28da32006-03-16 13:47:58 +000024432006-03-16 Linus Walleij <triad@df.lth.se>
2444
2445 * Fixed the .h file and implementation so you really only
2446 need this one .h file to interface the library.
2447
Linus Walleij80124062006-03-15 10:26:09 +000024482006-03-15 Linus Walleij <triad@df.lth.se>
2449
2450 * Added three device information retrieval functions.
2451
Linus Walleij15e344f2006-03-06 15:15:00 +000024522006-03-06 Linus Walleij <triad@df.lth.se>
2453
2454 * Moving some things around to structure the source. More
2455 will be needed...
2456
Linus Walleij93218602006-02-27 08:53:38 +000024572006-02-27 Linus Walleij <triad@df.lth.se>
2458
2459 * Release libmtp 0.0.1 so people have something to play with,
2460 what the heck. Probably saves someones day.
2461
Linus Walleij95698cd2006-02-24 10:40:40 +000024622006-02-24 Linus Walleij <triad@df.lth.se>
2463
2464 * Deltr example program to delete tracks, plus corresponding
2465 interface call.
2466
Linus Walleij17e39f72006-02-23 15:54:28 +000024672006-02-23 Linus Walleij <triad@df.lth.se>
2468
2469 * Fixed up sendtr program and metadata tagging function that is
2470 used after sending files.
2471
Linus Walleij394bbbe2006-02-22 16:10:53 +000024722006-02-22 Linus Walleij <triad@df.lth.se>
Linus Walleijeb8c6fe2006-02-03 09:46:22 +00002473
Linus Walleij394bbbe2006-02-22 16:10:53 +00002474 * Untested gettr.c and sendtr.c programs to get and send tracks
2475 created.
2476
Linus Walleijeb8c6fe2006-02-03 09:46:22 +000024772006-01-30 Linus Walleij <triad@df.lth.se>
2478
2479 * Created the initial GNU source directory structure.
2480 * Added the most basic files.