Skip Menu |

This queue is for tickets about the DBD-SQLite CPAN distribution.

Report information
The Basics
Id: 75494
Status: rejected
Priority: 0/
Queue: DBD-SQLite

People
Owner: Nobody in particular
Requestors: pause.perl.org_ [...] t_jeremykister.com
Cc:
AdminCc:

Bug Information
Severity: Critical
Broken in:
  • 1.29
  • 1.35
  • 1.36_02
Fixed in: (no value)



Subject: file is encrypted or is not a database on iPhone4
Using coredev.nl's perl on iphone 3gs or iphone 4 on iOS 5.0.1, I try to open /var/mobile/Library/AddressBook/AddressBook.sqlite, but I get an error: DBD::SQLite::db prepare failed: file is encrypted or is not a database at g.pl line 8. the sqlite3 command works just fine: # echo "SELECT value FROM ABMultiValue WHERE label = 1;" | sqlite3 /var/mobile/Library/AddressBook/AddressBook.sqlitedb (267) 555-6888 (267) 555-6999 2675550669 When copied over to a debian box, dbd::sqlite reads AddressBook.sqlite just fine. dbd::sqlite works fine on several other databases on the iphone; the only one I've found that it's confused about is AddressBook. if anyone is interested in helping fix this problem, i'd gladly let you ssh into my iphone for dev/testing.
Subject: g.pl
#!perl use DBI; use strict; my $dsn = 'DBI:SQLite:dbname=/var/mobile/Library/AddressBook/AddressBook.sqlitedb'; my $dbh = DBI->connect($dsn); my $sql = "SELECT value FROM ABMultiValue WHERE label = 1"; my $sth = $dbh->prepare($sql); $sth->execute;
a (hopefully) empty AddressBook.sqlitedb that illustrates the problem.
Subject: AddressBook.sqlitedb
Download AddressBook.sqlitedb
application/octet-stream 368k

Message body not shown because it is not plain text.

This is simply because the database is encrypted to protect privacy, and decrypting is out of this module's scope. Please refer to other resources to learn how to decrypt (via iTunes, or via some other ways). I close this ticket as rejected for now. Thanks. On Sat Mar 03 09:29:54 2012, JKISTER wrote: Show quoted text
> Using coredev.nl's perl on iphone 3gs or iphone 4 on iOS 5.0.1, I try
to Show quoted text
> open /var/mobile/Library/AddressBook/AddressBook.sqlite, but I get an
error: Show quoted text
> > DBD::SQLite::db prepare failed: file is encrypted or is not a
database Show quoted text
> at g.pl line 8. > > the sqlite3 command works just fine: > # echo "SELECT value FROM ABMultiValue WHERE label = 1;" | sqlite3 > /var/mobile/Library/AddressBook/AddressBook.sqlitedb > (267) 555-6888 > (267) 555-6999 > 2675550669 > > When copied over to a debian box, dbd::sqlite reads AddressBook.sqlite > just fine. > > dbd::sqlite works fine on several other databases on the iphone; the > only one I've found that it's confused about is AddressBook. > > if anyone is interested in helping fix this problem, i'd gladly let
you Show quoted text
> ssh into my iphone for dev/testing.
On Sat Mar 03 01:26:11 2012, ISHIGAKI wrote: Show quoted text
> This is simply because the database is encrypted to protect privacy, > and decrypting is out of this module's scope. Please refer to other > resources to learn how to decrypt (via iTunes, or via some other ways).
so you're saying the sqlite3 binary is automatically decrypting it? how is that possible? how in the world would dbd::sqlite on a debian box automatically decrypt it? i don't think you read/understood my comments. Show quoted text
> I close this ticket as rejected for now. Thanks.
ya, that was kinda rude.
On Fri Mar 02 19:29:54 2012, JKISTER wrote: Show quoted text
> Using coredev.nl's perl on iphone 3gs or iphone 4 on iOS 5.0.1, I try to > open /var/mobile/Library/AddressBook/AddressBook.sqlite, but I get an error: > > DBD::SQLite::db prepare failed: file is encrypted or is not a database > at g.pl line 8.
ends up the problem is either fixed in DBD::SQLite 1.39 or else the issue is the way DBD::SQLite 1.26 is compiled on the coredev.nl perl repository. I compiled DBD::SQLite 1.39 myself on iphone5/ios6.1 and it is working just fine. no funny "encrypted" errors on sms.db nor AddressBook.sqlite.
Thanks for the update. On Fri Jul 26 15:37:17 2013, JKISTER wrote: Show quoted text
> On Fri Mar 02 19:29:54 2012, JKISTER wrote:
> > Using coredev.nl's perl on iphone 3gs or iphone 4 on iOS 5.0.1, I try > > to > > open /var/mobile/Library/AddressBook/AddressBook.sqlite, but I get an > > error: > > > > DBD::SQLite::db prepare failed: file is encrypted or is not a > > database > > at g.pl line 8.
> > ends up the problem is either fixed in DBD::SQLite 1.39 or else the > issue is the way DBD::SQLite 1.26 is compiled on the coredev.nl perl > repository. > > I compiled DBD::SQLite 1.39 myself on iphone5/ios6.1 and it is working > just fine. no funny "encrypted" errors on sms.db nor > AddressBook.sqlite.
On Fri Jul 26 02:37:17 2013, JKISTER wrote: Show quoted text
> I compiled DBD::SQLite 1.39 myself on iphone5/ios6.1 and it is working > just fine. no funny "encrypted" errors on sms.db nor > AddressBook.sqlite.
For Google: I have put my DBD::Sybase fixup for iOS in my Cydia repo @ http://kister.net/cydia. CoreDev.nl may include the change in the future.
On Thu Aug 01 15:41:59 2013, JKISTER wrote: Show quoted text
> For Google: > I have put my DBD::Sybase fixup for iOS in my Cydia repo @ > http://kister.net/cydia. CoreDev.nl may include the change in the > future.
DBD::SQLite, of course.