summaryrefslogtreecommitdiffstats
path: root/src/oplist.c
AgeCommit message (Collapse)AuthorFilesLines
2023-02-07Add function to interface to allow enabling/disabling error/debug output for ↵Gravatar Nikias Bassen1-0/+5
the format parses This makes the `-d` option work in plistutil that wasn't doing anything
2023-02-06libcnary: Updated typedefs of node_t and node_list_t to contain pointerGravatar Nikias Bassen1-6/+5
This makes the code more readable. Obviously all the code that uses it is also updated.
2023-01-18oplist: Prevent too many levels of recursion to prevent stack overflowGravatar Nikias Bassen1-1/+9
Credit to OSS-Fuzz
2023-01-17oplist: Fix another OOB readGravatar Nikias Bassen1-0/+7
Credit to OSS-Fuzz
2023-01-16Rename PLIST_UINT to PLIST_INT and add plist_new_int() and plist_get_int_val()Gravatar Nikias Bassen1-2/+2
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.
2023-01-13oplist: Fix another OOB readGravatar Nikias Bassen1-0/+3
Credit to OSS-Fuzz
2023-01-11oplist: Plug another memory leak occurring on parse errorGravatar Nikias Bassen1-0/+1
Credit to OSS-Fuzz
2023-01-11oplist: Plug some more memory leaks occuring when parsing failsGravatar Nikias Bassen1-4/+5
2023-01-09oplist: Add more bound checks to prevent OOB readsGravatar Nikias Bassen1-2/+32
2023-01-09oplist: Fix OOB read by checking bounds properlyGravatar Nikias Bassen1-1/+6
Credit to OSS-Fuzz
2023-01-09oplist: Fix use-after-free by setting free'd pointer to NULLGravatar Nikias Bassen1-0/+1
Credit to OSS-Fuzz
2023-01-09oplist: Plug memory leaks occurring when parsing failsGravatar Nikias Bassen1-0/+7
2023-01-08Add support for OpenStep plist formatGravatar Nikias Bassen1-0/+861