Author serhiy.storchaka
Recipients d9pouces, eric.araujo, jrjsmrtn, markgrandi, ned.deily, python-dev, r.david.murray, ronaldoussoren, serhiy.storchaka
Date 2014-01-15.13:41:07
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <10968208.iVZtreeuru@raxxla>
In-reply-to <1389792061.85.0.772622569527.issue14455@psf.upfronthosting.co.za>
Content
> However, I have no idea how to write that file using Apple's APIs.

Look in CFBinaryPList.c. It have a code for creating 128-bit integers:

	    CFSInt128Struct val;
	    val.high = 0;
	    val.low = bigint;
	    *plist = CFNumberCreate(allocator, kCFNumberSInt128Type, &val);

And I suppose that you have at least one way to create such file -- just 
convert plist file in XML format to binary format.

> Keep in mind that this module is intended for interop with Apple's data
> format.

Apple's tool can read and write integers from 2**63 to 2**64-1.

Here is a patch against current sources.
Files
File name Uploaded
plistlib_big_ints.patch serhiy.storchaka, 2014-01-15.13:41:06
History
Date User Action Args
2014-01-15 13:41:07serhiy.storchakasetrecipients: + serhiy.storchaka, ronaldoussoren, ned.deily, eric.araujo, r.david.murray, jrjsmrtn, python-dev, d9pouces, markgrandi
2014-01-15 13:41:07serhiy.storchakalinkissue14455 messages
2014-01-15 13:41:07serhiy.storchakacreate