Add JSON API for Asterisk.
authorDavid M. Lee <dlee@digium.com>
Fri, 11 Jan 2013 22:31:42 +0000 (22:31 +0000)
committerDavid M. Lee <dlee@digium.com>
Fri, 11 Jan 2013 22:31:42 +0000 (22:31 +0000)
commit7695ea2643456ab0c837f958cc484d26529e1098
tree7abdff9c18abeac805e93f788d6e51b835796df7
parent2db3cc2e26bc275c0a3e372a53fe25f2a7b4cc7a
Add JSON API for Asterisk.

This provides a JSON API by pulling in and wrapping the Jansson JSON
library[1]. The Asterisk API basically mirrors the Jansson
functionality, with a few minor tweaks.

 * Some names have been asteriskified to protect the innocent.
 * Jansson provides both reference-stealing and reference-borrowing
   versions of several API's. The Asterisk API is exclusively
   reference-stealing for operations that put elements into arrays and
   objects.
 * No support for doubles, since we usually don't need that.
 * Coming along for the ride is the ast_test_validate macro, which made
   the unit tests much easier to write.

 [1]: http://www.digip.org/jansson/

(issue ASTERISK-20887)
(closes issue ASTERISK-20888)
Review: https://reviewboard.asterisk.org/r/2264/

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@378915 65c4cc65-6c06-0410-ace0-fbb531ad65f3
12 files changed:
build_tools/menuselect-deps.in
configure
configure.ac
contrib/scripts/install_prereq
include/asterisk/autoconfig.h.in
include/asterisk/json.h [new file with mode: 0644]
include/asterisk/test.h
main/Makefile
makeopts.in
res/res_json.c [new file with mode: 0644]
res/res_json.exports.in [new file with mode: 0644]
tests/test_json.c [new file with mode: 0644]