json-c 0.12 released

150 views
Skip to first unread message

Eric Haszlakiewicz

unread,
Apr 11, 2014, 8:10:10 PM4/11/14
to jso...@googlegroups.com
I am pleased to announce the release of json-c v0.12. Thank you to
everyone that contributed to this release.

Tarballs may be obtained from:
https://s3.amazonaws.com/json-c_releases/releases/json-c-0.12.tar.gz
https://s3.amazonaws.com/json-c_releases/releases/json-c-0.12-nodoc.tar.gz

Or you can clone the source directly from github:
https://github.com/json-c/json-c/tree/json-c-0.12

The checksums on the tarballs are:
SHA256(json-c-0.12-nodoc.tar.gz)=
6fd6d2311d610b279e1bcdd5c6d4f699700159d3e0786d e8306af7b4bc94fb35
SHA256(json-c-0.12.tar.gz)=
000c01b2b3f82dcb4261751eb71f1b084404fb7d6a282f06074d 3c17078b9f3f

These can be verified by running "openssl sha -sha256 json-c-0.12.tar.gz"

Docs are available at http://json-c.github.io/json-c/

A brief summary of the changes:

* Address security issues:
* CVE-2013-6371: hash collision denial of service
* CVE-2013-6370: buffer overflow if size_t is larger than int

* Avoid potential overflow in json_object_get_double

* Eliminate the mc_abort() function and MC_ABORT macro.

* Make the json_tokener_errors array local. It has been deprecated for
a while, and json_tokener_error_desc() should be used instead.

* change the floating point output format to %.17g so values with
more than 6 digits show up in the output.

* Remove the old libjson.so name compatibility support. The library is
only created as libjson-c.so now and headers are only installed
into the ${prefix}/json-c directory.

* When supported by the linker, add the -Bsymbolic-functions flag.

* Various changes to fix the build on MSVC.

* Make strict mode more strict:
* number must not start with 0
* no single-quote strings
* no comments
* trailing char not allowed
* only allow lowercase literals

* Added a json_object_new_double_s() convenience function to allow
an exact string representation of a double to be specified when
creating the object and use it in json_tokener_parse_ex() so
a re-serialized object more exactly matches the input.

* Add support NaN and Infinity
Reply all
Reply to author
Forward
0 new messages