Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | bplist: Move realloc from parse_unicode_node() into plist_utf16be_to_utf8()HEADmaster | Nikias Bassen | 2023-05-14 | 1 | -11/+12 |
| | | | | | It is very confusing to handle the reallocation (buffer shrinking) outside of the actual conversion function. | ||||
* | Make sure function signatures match their declarations in the public header | Nikias Bassen | 2023-05-14 | 2 | -7/+7 |
| | |||||
* | Windows: Use winsock2.h instead of sys/time.h when using MSVC | Nikias Bassen | 2023-05-13 | 2 | -1/+7 |
| | |||||
* | Add space before PRI* macros, some compilers do not like it | Nikias Bassen | 2023-05-13 | 6 | -18/+18 |
| | |||||
* | Move PLIST_API to the headers | Nikias Bassen | 2023-05-13 | 7 | -192/+198 |
| | |||||
* | Silence another false 'shadows builtin function' warning on MinGW | Nikias Bassen | 2023-05-07 | 1 | -0/+3 |
| | |||||
* | Silence false 'shadows builtin function' warning on MinGW | Nikias Bassen | 2023-05-07 | 1 | -0/+3 |
| | |||||
* | Silence more compiler warning on 32bit systems | Nikias Bassen | 2023-05-07 | 1 | -22/+22 |
| | |||||
* | Silence compiler warning on 32bit systems | Nikias Bassen | 2023-05-05 | 1 | -1/+1 |
| | |||||
* | Update doxygen config and document undocumented macros | Nikias Bassen | 2023-05-05 | 2 | -84/+22 |
| | |||||
* | autoconf: small update to configure.ac | Nikias Bassen | 2023-04-30 | 1 | -1/+1 |
| | |||||
* | autoconf: Allow disabling build of test suite | Nikias Bassen | 2023-04-24 | 2 | -1/+12 |
| | |||||
* | Add a PLIST_OPT_NONE value to plist_write_options_t | Nikias Bassen | 2023-04-24 | 1 | -0/+1 |
| | |||||
* | git-version-gen: Prevent multiple lines of output | Nikias Bassen | 2023-04-24 | 1 | -0/+1 |
| | |||||
* | Updated NEWS for release2.3.0 | Nikias Bassen | 2023-04-21 | 1 | -0/+25 |
| | |||||
* | test: Fix tests for distcheck | Nikias Bassen | 2023-04-21 | 2 | -1/+2 |
| | |||||
* | Remove unnecessary const to silence compiler warning | Nikias Bassen | 2023-04-21 | 4 | -4/+4 |
| | |||||
* | Update soversion | Nikias Bassen | 2023-04-21 | 1 | -1/+1 |
| | |||||
* | docs: Updated manpage | Nikias Bassen | 2023-04-21 | 1 | -0/+3 |
| | |||||
* | plistutil: Add -p command line switch to print plist in human-readable format | Nikias Bassen | 2023-04-21 | 1 | -0/+27 |
| | |||||
* | C++: Remove deprecated Insert() | Nikias Bassen | 2023-04-21 | 2 | -6/+0 |
| | |||||
* | Fix build | Nikias Bassen | 2023-04-21 | 1 | -0/+1 |
| | |||||
* | Update .gitignore | Nikias Bassen | 2023-04-21 | 1 | -0/+3 |
| | |||||
* | Add C++ interface test | Sébastien Gonzalve | 2023-04-21 | 8 | -0/+203 |
| | |||||
* | C++: Add dictionary and array size method | Nikias Bassen | 2023-04-21 | 4 | -0/+10 |
| | | | | Thanks @Cryptiiiic for the contribution. | ||||
* | bplist: Fix offset range check | Nikias Bassen | 2023-04-21 | 1 | -1/+1 |
| | | | | Credit to OSS-Fuzz | ||||
* | Remove deprecated plist_dict_insert_item() | Nikias Bassen | 2023-04-19 | 2 | -17/+0 |
| | |||||
* | Add plist_read_from_file() to interface, update plist_from_memory() | Nikias Bassen | 2023-04-19 | 4 | -48/+75 |
| | | | | | | | | | | plist_read_from_file() is a convenience function that will open a given file, checks its size, allocates a buffer large enough to hold the full contents, and reads from file to fill the buffer. Then, it calls plist_from_memory() to convert the data to plist format. A (breaking) change had to be made so that plist_from_memory() will also return the parsed format in its 4th argument (if non-NULL). | ||||
* | Add new output-only formats and Define constants for the different plist formats | Nikias Bassen | 2023-04-16 | 11 | -22/+1637 |
| | | | | | | | | | | | | | | | | | | 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. | ||||
* | Fix build without --enable-debug | Nikias Bassen | 2023-02-07 | 5 | -0/+9 |
| | |||||
* | [github-actions] Fix build for CodeQL workflow again | Nikias Bassen | 2023-02-07 | 1 | -1/+1 |
| | |||||
* | [github-actions] Fix build for CodeQL workflow | Nikias Bassen | 2023-02-07 | 1 | -15/+4 |
| | |||||
* | Add function to interface to allow enabling/disabling error/debug output for ↵ | Nikias Bassen | 2023-02-07 | 7 | -0/+45 |
| | | | | | | the format parses This makes the `-d` option work in plistutil that wasn't doing anything | ||||
* | plistutil: Add command line switch to allow sorting of the output plist | Nikias Bassen | 2023-02-06 | 2 | -6/+26 |
| | |||||
* | libcnary: Updated typedefs of node_t and node_list_t to contain pointer | Nikias Bassen | 2023-02-06 | 10 | -134/+143 |
| | | | | | This makes the code more readable. Obviously all the code that uses it is also updated. | ||||
* | Fix plist_sort() by swapping the nodes in the tree instead of their data | Nikias Bassen | 2023-02-05 | 1 | -29/+33 |
| | | | | | | | The problem was that we swapped potential child node data between nodes, but their parents would not be updated that way, leading to double frees or segmentation faults when freeing a plist. This commit instead fixes this by swapping the actual nodes in the tree. | ||||
* | Add new plist_sort() function | Nikias Bassen | 2023-02-03 | 2 | -0/+69 |
| | |||||
* | Add lowercase begin/end iterator functions | Daniel | 2023-02-03 | 4 | -0/+48 |
| | | | ... for Dictionary and Array | ||||
* | Add PList::Array iterator member functions | Daniel | 2023-02-03 | 2 | -0/+27 |
| | | | | | ... returning both iterators and const_iterators: * PList::Array::Begin() * PList::Array::End() | ||||
* | bplist: Fix handling of PLIST_NULL node type | Nikias Bassen | 2023-01-31 | 2 | -0/+2 |
| | |||||
* | jplist: Fix handling of PLIST_NULL type when converting to JSON | Nikias Bassen | 2023-01-31 | 1 | -0/+3 |
| | |||||
* | xplist: Add missing newline to debug message | Nikias Bassen | 2023-01-19 | 1 | -1/+1 |
| | |||||
* | jplist: Add missing newline to debug message | Nikias Bassen | 2023-01-19 | 1 | -1/+1 |
| | |||||
* | oplist: Prevent too many levels of recursion to prevent stack overflow | Nikias Bassen | 2023-01-18 | 1 | -1/+9 |
| | | | | Credit to OSS-Fuzz | ||||
* | oplist: Fix another OOB read | Nikias Bassen | 2023-01-17 | 2 | -0/+8 |
| | | | | Credit to OSS-Fuzz | ||||
* | Updated README.md with CodeQL badge | Nikias Bassen | 2023-01-16 | 1 | -0/+1 |
| | |||||
* | Rename PLIST_UINT to PLIST_INT and add plist_new_int() and plist_get_int_val() | Nikias Bassen | 2023-01-16 | 17 | -62/+382 |
| | | | | | | | | | | | | This properly supports getting and setting signed or unsigned integer values. Also, a new helper function plist_int_val_is_negative() was added to determine if a given #PLIST_INT node has a negative value or not. The old type PLIST_UINT is defined as a macro with the value of PLIST_INT for backwards compatibility. This commit also adds int vs. uint support to the C++ interface, and the python bindings in a hopefully useful way. | ||||
* | oplist: Fix another OOB read | Nikias Bassen | 2023-01-13 | 2 | -0/+4 |
| | | | | Credit to OSS-Fuzz | ||||
* | [github-actions] CodeQL: Update checkout to v3 | Nikias Bassen | 2023-01-11 | 1 | -1/+1 |
| | |||||
* | [github-actions] build: Update checkout and upload-artifact to v3 | Nikias Bassen | 2023-01-11 | 1 | -6/+6 |
| |