libplist++3 - Library for handling Apple Binary and XML Property Lists

Distribution: openSUSE 42.1
Repository: openSUSE Update Oss all
Package name: libplist++3
Package version: 1.12
Package release: 4.1
Package architecture: x86_64
Package type: rpm
Installed size: 108.19 KB
Download size: 39.74 KB
Official Mirror:
libplist is a library for handling Apple Binary and XML Property Lists.



  • libplist++ = 1.12
  • libplist++3 = 1.12-4.1
  • libplist++3(x86-64) = 1.12-4.1


  • libplist++ < 1.12


    Install Howto

    Install libplist++3 rpm package:

    # zypper install libplist++3


    • /usr/lib64/
    • /usr/lib64/
    • /usr/share/doc/packages/libplist++3/AUTHORS
    • /usr/share/doc/packages/libplist++3/COPYING
    • /usr/share/doc/packages/libplist++3/COPYING.LESSER
    • /usr/share/doc/packages/libplist++3/NEWS
    • /usr/share/doc/packages/libplist++3/README


    2017-01-31 - - Add 0001-Prevent-OOB-heap-buffer-read-by-checking-input-size.patch This patch (from upstream, rebased) prevents an OOB heap buffer read which could allow attackers to obtain sensitive information from process memory or cause a DoS (bsc#1021610, CVE-2017-5545).

    2017-01-25 - - Fixed CVE-2017-5209 and boo#1019531: The base64decode function in base64.c allows attackers to obtaiin sensitive info from process memory or cause a denial of service (buffer over-read) via split encoded Apple Property List data. - Added patch CVE-2017-5209.patch * Rework base64decode to handle spliti encoded data correctly * The credit goes to Nikias Bassen <>, here's just a backport of the upstream commit

    2014-10-21 - - Enable %check as it is provided by libplist and improves quality

    2014-10-17 - - Update to version 1.12 * Fix plist_from_bin() changing value nodes to key nodes in dictionaries * Avoid exporting non-public symbols * Prevent crash in plist_from_bin() when parsing unusual binary plists * Fix crash in String|Key::GetValue() and actually make C++ interface work * Fix memory leaks in new_xml_plist() and parse_real_node() * Fix header guards to conform to C++ standard * Update Cython based Python bindings and remove plist_new_key() * Fix key nodes not being output correctly if they contained XML entities * Fix handling and storage of signed vs. unsigned integer values * Fix date handling to respect the "Mac Epoch" instead of "Unix Epoch" * Remove plist_set_type() as it should not be used * Fix deprecated macros to work with older LLVM/Clang * Fix various shadowed declarations * Add documentation to explicitly describe memory buffer ownership * Fix memory leak in plist_from_bin() * Add various test cases based on fixes * Fix wrong timezone related date/time conversion of date nodes * Fix endian detection on MIPS architecture * Fix parallel build for autotools

    2014-06-16 - - update version 1.11 * Deprecated plist_dict_insert_item() in favor of plist_dict_set_item() * Updated cython bindings for Python 3.x * Removed swig python bindings * Changed build system to autotools * Added new plist_dict_merge() function * WIN32 (MinGW) + OSX compilation fixes * Made base64 decoding thread safe - remove patch: libplist-1.8-pkgconfig.patch * upstream fixed - added plist.pxd, needed by python-imobiledevice build

    2013-04-15 - - Added url as source. Please see

    2012-08-28 - - license update: LGPL-2.1+ LGPL-2.1 can be relicensed to GPL without further permission. No need to explicitly call out the GPL as a license option. Fedora has been using LGPL-2.1+ for awhile so gain compatibility there too

    2012-04-09 - - Allow compilation on 11.4 by disabling cython bindings

    2012-04-02 - - Update to version 1.8 * Add Cython based Python bindings * Fix memory corruption in libcnary * Fix building on Big Endian systems * Removed glib dependency, libplist now uses bundled libcnary * Fix building of Python bindings with GCC 4.6 - Do not build SWIG bindings for Python - Remove gcc46_build_fix.patch due to upstream fixes - Update pkgconfig patch

    2012-01-31 - - Remove redundant tags/sections per specfile guideline suggestions - Parallel building using %_smp_mflags