From: Yasuhiro M. <mat...@gm...> - 2014-02-27 07:05:29
|
Hi. UUID in hashing parameters is not 20bytes always. https://github.com/denydias/libhashab#libgpod-extension-to-make-it-talk-to-ipod-nano-6th-generation On iPod nano 6g, uuid (mean FirewireGuid) 8bytes. So uuid contains bytes which isn't zero-filled. Below is a patch. Please check and include. diff --git a/src/itdb_device.c b/src/itdb_device.c index c72dd45..80995de 100644 --- a/src/itdb_device.c +++ b/src/itdb_device.c @@ -1899,7 +1899,7 @@ gboolean itdb_device_get_hex_uuid (const Itdb_Device *device, unsigned char uuid return FALSE; } memset (uuid, 0, 20); - result = itdb_hex_from_string (uuid, 20, uuid_str); + result = itdb_hex_from_string (uuid, strlen (uuid_str) / 2, uuid_str); return (result == 0); } -- - Yasuhiro Matsumoto |