summaryrefslogtreecommitdiffstats
path: root/tests/test-fw-id.c
diff options
context:
space:
mode:
authorjcsjcs <jcsjcs@f01d2545-417e-4e96-918e-98f8d0dbbcb6>2007-09-24 14:59:33 +0000
committerjcsjcs <jcsjcs@f01d2545-417e-4e96-918e-98f8d0dbbcb6>2007-09-24 14:59:33 +0000
commit3d54de27eddcfa14a5313a22bb09374e8a37aaa8 (patch)
tree4f335a85ef383828ec9d6979fa78fc40a23af043 /tests/test-fw-id.c
parent86e1c0ae7a8eac138cce370c2c07cea8c5b6f0a0 (diff)
** code courtesy of Christophe Fergeau **
* src/itdb_itunesdb.c (mk_mhbd): write extended header needed for new iPod Nanos (3G Video) and iPod Classics. src/itdb_device.c src/itdb_device.h: Code to parse SysInfoExtended and SysInfo for the FireWireGUID. You must either copy the iPod description XML file to Device/SysInfoExtended or add a line 'FirewireGuid: 000A27....' to Device/SysInfo. You can get your FirewireGuid by using the tests/test-fw-id test program. * src/sha1.c src/sha1.h src/itdb_sha1.c src/itdb_sha1.h New files for obscure hash generation code. * src/Makefile.am: added new files. * tests/test-checksum.c tests/test-fw-id.c tests/Makefile.am: test programs to retrieve the FirewireGuid and calculate/write the obscure hash. git-svn-id: https://gtkpod.svn.sf.net/svnroot/gtkpod/libgpod/trunk@1698 f01d2545-417e-4e96-918e-98f8d0dbbcb6
Diffstat (limited to 'tests/test-fw-id.c')
-rw-r--r--tests/test-fw-id.c65
1 files changed, 65 insertions, 0 deletions
diff --git a/tests/test-fw-id.c b/tests/test-fw-id.c
new file mode 100644
index 0000000..9ec40e9
--- /dev/null
+++ b/tests/test-fw-id.c
@@ -0,0 +1,65 @@
+/*
+| Copyright (C) 2007 Christophe Fergeau <teuf@gnome.org>
+|
+| This program is free software; you can redistribute it and/or modify
+| it under the terms of the GNU General Public License as published by
+| the Free Software Foundation; either version 2 of the License, or
+| (at your option) any later version.
+|
+| This program is distributed in the hope that it will be useful,
+| but WITHOUT ANY WARRANTY; without even the implied warranty of
+| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+| GNU General Public License for more details.
+|
+| You should have received a copy of the GNU General Public License
+| along with this program; if not, write to the Free Software
+| Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+|
+| iTunes and iPod are trademarks of Apple
+|
+| This product is not supported/written/published by Apple!
+|
+*/
+
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <time.h>
+#include <libintl.h>
+
+#include "itdb.h"
+#include "itdb_device.h"
+
+int
+main (int argc, char *argv[])
+{
+ Itdb_Device *device;
+ char *fwid;
+
+ if (argc < 2) {
+ g_print ("Usage: %s <mountpoint>\n", g_basename (argv[0]));
+ return 1;
+
+ }
+
+ device = itdb_device_new ();
+ if (device == NULL) {
+ return 1;
+ }
+
+ itdb_device_set_mountpoint (device, argv[1]);
+
+ fwid = itdb_device_get_sysinfo (device, "FirewireGuid");
+ if (fwid == NULL) {
+ g_print ("Couldn't find firewire ID\n");
+ return 1;
+ } else {
+ g_print ("FireWire ID: %s\n", fwid);
+ }
+
+ return 0;
+}