summaryrefslogtreecommitdiffstats
path: root/src/plist.h
AgeCommit message (Collapse)AuthorFilesLines
2023-04-16Add new output-only formats and Define constants for the different plist formatsGravatar Nikias Bassen1-0/+6
This commit introduces constants for the different plist formats, and adds 3 new human-readable output-only formats: - PLIST_FORMAT_PRINT: the default human-readable format - PLIST_FORMAT_LIMD: "libimobiledevice" format (used in ideviceinfo) - PLIST_FORMAT_PLUTIL: plutil-style format Also, a new set of write functions has been added: - plist_write_to_string - plist_write_to_stream - plist_write_to_file Plus a simple "dump" function: - plist_print See documentation for details.
2021-06-22[clang-tidy] Remove pointless constGravatar Rosen Penev1-1/+1
The const is actually misplaced. const plist_t evaluates to void *const instead of const void *. const qualification of the former makes no sense in function declarations. Found with misc-misplaced-const Signed-off-by: Rosen Penev <rosenp@gmail.com>
2016-11-18Improve plist_dict_set_item performance for large dictionaries with hash tableGravatar Nikias Bassen1-0/+1
2016-09-19Change internal storage of PLIST_DATE values from struct timeval to doubleGravatar Nikias Bassen1-1/+0
This removes the timeval union member from the plist_data_t structure. Since struct timeval is 2x64bit on 64bit platforms this member unnecessarily grew the union size to 16 bytes while a size of 8 bytes is sufficient. Also, on 32bit platforms struct timeval is only 2x32bit of size, limiting the range of possible time values. In addition the binary property list format also stores PLIST_DATE nodes as double.
2016-06-29xplist: Plug memory leak when converting PLIST_UID nodes to XMLGravatar Nikias Bassen1-0/+1
In node_to_xml nodes of type PLIST_UID are temporarily converted to a PLIST_DICT for an appropriate XML output. Therefore a PLIST_KEY and a PLIST_UINT node is created and inserted into the PLIST_DICT node. Upon completion, the child nodes of the PLIST_DICT node are detached from the original node and freed, however the data of the child nodes - the key string and the uint value - are not. This commit fixes it.
2014-10-03Avoid exporting non-public symbolsGravatar Nikias Bassen1-5/+17
2011-05-28Add missing includeGravatar Nikias Bassen1-0/+1
2011-05-27Make libplist glib freeGravatar Nikias Bassen1-7/+6
2009-11-10Do not export internal functions symbols.Gravatar Jonathan Beck1-4/+4
2009-10-28Format sources to ANSI style using AStyle (astyle --style=ansi).Gravatar Jonathan Beck1-14/+16
2009-10-28Fix build for MSVC9.Gravatar Jonathan Beck1-0/+5
2009-04-28Merge ascii and unicode handling in PLIST_STRING using UTF-8. Remove unicode ↵Gravatar Jonathan Beck1-1/+0
related declaration in API (breaks API&ABI)
2009-03-27Use (void) instead of () in functions prototype.Gravatar Jonathan Beck1-1/+1
2009-02-15Add more regression test and fix Integer and Real type handling.Gravatar Jonathan Beck1-1/+1
2009-02-14Fix some memory leaks.Gravatar Jonathan Beck1-1/+1
2009-02-09Make it compile on MSVC 2005.Gravatar Jonathan Beck1-2/+0
2009-01-29Clean some old stuff.Gravatar Jonathan Beck1-3/+0
2009-01-29Add some static declarations.Gravatar Jonathan Beck1-3/+0
2009-01-29Remove duplicate uint64_t accessor.Gravatar Jonathan Beck1-1/+0
2009-01-29Remove dangerous functions from pulic API.Gravatar Jonathan Beck1-0/+3
2009-01-22Add Unicode support.Gravatar Jonathan Beck1-2/+1
2009-01-08Add edition and reading fonctions so that handling plist is less confusing.Gravatar Jonathan Beck1-1/+0
Fix indent.
2009-01-04handle date tag.Gravatar Jonathan Beck1-0/+1
2009-01-04more warning fixes.Gravatar Jonathan Beck1-1/+1
2009-01-04fix some warnings and correct binary tag enum (false and true were inverted).Gravatar Jonathan Beck1-1/+1
2009-01-04Setup warning flags and fixes missing static attribute for local funtions.Gravatar Jonathan Beck1-0/+2
2008-12-13Refine API and fix some warnings.Gravatar Jonathan Beck1-2/+2
2008-12-13Add plutil and do some cleaning.Gravatar Jonathan Beck1-32/+9
2008-12-12Change from Base64 encoded buffers to real buffers. Base64 decoding/encoding ↵Gravatar Jonathan Beck1-2/+2
only happens in xml plists.
2008-12-12Fix some bugs in binary plist generation.Gravatar Jonathan Beck1-11/+9
2008-12-11move stuff around to make code more organized.Gravatar Jonathan Beck1-0/+15
2008-12-10add bplist writting capability.Gravatar Jonathan Beck1-23/+0
2008-12-08cleanup binary parsing and move stuff around.Gravatar Jonathan Beck1-1/+17
2008-12-01cleanup unused functions.Gravatar Jonathan Beck1-12/+0
2008-12-01continue migration to new plist API.Gravatar Jonathan Beck1-0/+1
2008-11-30complete xml plist abstraction and migrate lockdownd_hello to new plist API.Gravatar Jonathan Beck1-4/+8
2008-11-30Continue abstraction of xml and binary plist.Gravatar Jonathan Beck1-39/+9
2008-11-28Start an abstraction of xml and binary plistGravatar Jonathan Beck1-0/+35
2008-11-25fix some warnings and indentGravatar Jonathan Beck1-4/+7
2008-11-24Added binary-plist support (tweaked slightly to move stuff around)Gravatar Zach C1-0/+38
Signed-off-by: Matt Colyer <matt@colyer.name> fix makefile to take correct main function into account
2008-09-01Enforce a modified kr style.Gravatar Matt Colyer1-5/+5
Use "make indent" from now on before committing.
2008-08-12Cleaned up plist.c, added doxygen docs.Gravatar Matt Colyer1-1/+2
2008-08-05Fixed Zach's name. I feel dumb, sorry about that.Gravatar Matt Colyer1-1/+1
2008-08-05Zack's final changes to the pairing.Gravatar Matt Colyer1-0/+1
2008-08-05Store certificates and private keys as PEM files instead of storing them in ↵Gravatar Jonathan Beck1-0/+1
config file. Added functions to generate proper pairing request. Signed-off-by: Matt Colyer <matt@colyer.name>
2008-08-05Added function to handle <data> tag in dict.Gravatar Jonathan Beck1-0/+1
Signed-off-by: Matt Colyer <matt@colyer.name>
2008-08-04Zack's C. rewrite of usbmux (with a few additions by Matt Colyer).Gravatar Matt Colyer1-0/+1
2008-08-01I copied the wrong legal headers into the code. Opps.Gravatar Matt Colyer1-11/+12
2008-07-30Added documentation and licensing information.Gravatar Matt Colyer1-2/+17
2008-07-29Autotooled the project with very basic versioning support.Gravatar Matt Colyer1-0/+17