Nathaniel McCallum
b8bb078cc2
Add JSON_EMBED encoding flag
...
The JSON_EMBED encoding flag causes the opening and closing characters
of the top-level array ('[', ']') or object ('{', '}') to be omitted
during encoding. This feature makes it possible to concatenate multiple
arrays or objects in the stream output. It also makes it possible to
perform outputs of partial composes.
One such example of a partial compose is when outputting a JWE object.
The output is a JSON object. But it has one top-level attribute
("ciphertext") that can grow out of proportion with the rest of the
metadata. With the JSON_EMBED flag, the other metadata can be composed
ahead of time and dumped during the beginning of output, where the
"ciphertext" and "tag" attributes can be streamed out in chunks. Thus,
the header material can be composed with Jansson and the ciphertext
itself can be composed manually.
2017-02-27 15:09:03 -05:00
Petri Lehtinen
3c51112063
Merge pull request #328 from npmccallum/master
...
Helper functions for network IO
2017-01-31 08:45:40 +02:00
Nathaniel McCallum
1672bb5a65
Implement json_dumpfd() and json_loadfd()
...
The primary use of these functions is easy loading
and dumping from stream sockets.
Signed-off-by: Nathaniel McCallum <npmccallum@redhat.com>
2017-01-27 09:15:18 +01:00
Nathaniel McCallum
b900967f6f
Implement json_dumpb()
...
This function encodes the json_t object to a pre-allocated buffer.
It compliments the already existing json_loadb() function and is
useful for parsing JSON-RPC (among other protocols) when sent over
datagram sockets.
Signed-off-by: Nathaniel McCallum <npmccallum@redhat.com>
2017-01-26 16:16:24 +01:00
Petri Lehtinen
746c2c3a99
Merge pull request #321 from quiet/master
...
parens for LONG_LONG_INT in cmake
2016-11-16 07:11:03 +02:00
Brian Armstrong
2af820fb99
parens for LONG_LONG_INT in cmake
...
when this is defined as "", cmake bails with an error about arguments in
if
2016-11-12 18:58:38 -08:00
Petri Lehtinen
bc5741fb1a
Merge pull request #314 from martinlindhe/condition-always-true
...
part of conditional expression is always true (!done)
2016-10-24 21:47:49 +03:00
Petri Lehtinen
575f951b3e
Merge pull request #311 from robertmu/master
...
Fix passing redundant argument to error_set()
2016-10-24 21:45:50 +03:00
Petri Lehtinen
0cac862bbc
Merge pull request #309 from halfaleague/larger-json-buffers
...
Allow parsing of buffers larger than 2GB on most 64 bit arch.
2016-10-24 21:42:30 +03:00
Martin Lindhe
4467bf243f
part of conditional expression is always true (!done), found with pvs-studio
2016-10-19 16:39:26 +02:00
Robert Mu
ddd1e1f223
Fix passing redundant argument to error_set()
2016-10-07 22:11:19 +08:00
Luke Carmichael
d1e97737d6
Allow parsing of buffers larger than 2GB on most 64 bit arch.
...
size_t is usually 64 bits on most architectures -- this allows for larger .json files
2016-10-01 22:06:34 -04:00
Petri Lehtinen
98be7da3e2
doc: Change version to 2.10-dev
2016-09-18 14:52:26 +03:00
Petri Lehtinen
08cb7b6d6f
doc: Change version to 2.9
2016-09-18 14:52:17 +03:00
Petri Lehtinen
b02db47881
jansson 2.9
2016-09-18 14:35:05 +03:00
Petri Lehtinen
074bb3838f
Update copyrights for 2016
2016-09-18 14:17:03 +03:00
Petri Lehtinen
3ba3b23fdc
Merge branch '2.8'
2016-09-16 08:05:48 +03:00
Matthew Johnston
e9fcab08fb
Add install targets to be optional
2016-09-16 08:05:13 +03:00
Yuriy Romanenko
bdaf7584db
Added test files to .gitignore
2016-09-16 08:05:13 +03:00
Petri Lehtinen
889280c976
Don't include jansson_config.h in dist tarballs
...
Fixes #306
2016-09-16 08:02:26 +03:00
Petri Lehtinen
f9e7aa5eeb
Merge pull request #305 from warmwaffles/master
...
Allow install targets to be optionally defined
2016-09-12 07:46:52 +03:00
Matthew Johnston
9258671924
Add install targets to be optional
2016-09-11 00:04:49 -05:00
Petri Lehtinen
a2bbb44d96
Merge pull request #303 from groman2/yr-dev
...
Added test files to .gitignore
2016-09-08 07:59:04 +03:00
Yuriy Romanenko
16b516f976
Added test files to .gitignore
2016-09-07 10:13:52 -07:00
Petri Lehtinen
86196250b8
Merge branch '2.8'
2016-09-01 07:07:57 +03:00
Petri Lehtinen
ada5372cff
Fix another typo
2016-09-01 07:06:25 +03:00
Petri Lehtinen
f11c1b9466
Merge pull request #302 from yujunz/patch-1
...
Fix typo
2016-09-01 07:05:20 +03:00
Yujun Zhang
811a30691e
Fix typo
2016-09-01 08:44:08 +08:00
Petri Lehtinen
7d1af52ab4
Merge pull request #301 from npmccallum/master
...
Add support for the cleanup attribute in GCC/Clang
2016-08-31 17:57:23 +03:00
Nathaniel McCallum
63b9fd0552
Add support for the cleanup attribute in GCC/Clang
...
The new json_auto_t macro allows easy declaration of json_t types that
automatically decrement at the end of their scope.
2016-08-31 08:57:57 -04:00
Petri Lehtinen
b45745118d
doc: Fix json_error_t::position type
...
Fixes #300
2016-08-31 12:18:25 +03:00
Petri Lehtinen
0ffecdbade
doc: Fix json_error_t::position type
...
Fixes #300
2016-08-31 12:17:03 +03:00
Petri Lehtinen
ab1ba69027
Set documentation version to 2.9-dev
2016-08-30 21:19:51 +03:00
Petri Lehtinen
a5610c8895
Set documentation version to 2.8
2016-08-30 21:19:13 +03:00
Petri Lehtinen
012c5f0eca
jansson 2.8
2016-08-30 21:09:28 +03:00
Petri Lehtinen
a931aace16
jansson 2.8
2016-08-26 20:35:52 +03:00
Petri Lehtinen
14573dc920
Merge pull request #293 from akheron/object-insertion-order
...
Always preserve insertion order of object items
2016-08-25 20:20:34 +03:00
Petri Lehtinen
71594af7d5
Merge pull request #298 from pasiopou/oom-crash
...
OOM crash
2016-08-11 22:15:01 +03:00
Andreas Pasiopoulos
6a4b3f878d
Conform to c89
2016-08-11 18:51:29 +03:00
Andreas Pasiopoulos
86fdf76f79
Check the allocation was successful before freeing existing hashtable buckets
...
and increasing hashtable order
Fixes a crash observed when there is OOM in hashtable_do_rehash
2016-08-11 17:48:29 +03:00
Andreas Pasiopoulos
835290dfdf
Add a test case for OOM while allocating memory
2016-08-11 17:18:46 +03:00
Petri Lehtinen
7daffabf07
Fix a typo
2016-06-24 06:55:49 +03:00
Petri Lehtinen
9df267054f
Always preserve insertion order of object items
2016-06-20 21:10:23 +03:00
Petri Lehtinen
8f067962f6
Merge pull request #290 from Thynix/documentation
...
Polish API documentation
2016-06-20 07:29:29 +03:00
Steve Dougherty
603fdc9154
doc: fix code block formatting
2016-06-17 10:45:47 -04:00
Petri Lehtinen
520340998f
Merge pull request #289 from akheron/simplify-snprintf-checks
...
Simplify snprintf and vsnprintf checking for Visual Studio
2016-06-03 12:29:55 +03:00
Petri Lehtinen
2d710d832f
appveyor.yml: Build on all Visual Studio versions
2016-06-03 12:08:36 +03:00
Steve Dougherty
a8c834c882
doc: improve conciseness
...
The object_to_key_iter() example is now formatted like
json_object_foreach() and json_object_foreach(). The edited descriptions were
redundant, and the removed headers didn't add useful information.
2016-06-01 11:27:22 -04:00
Steve Dougherty
7438cc8ba8
doc: correct argument names
...
The function signatures use "json", not "root".
2016-06-01 11:27:22 -04:00
Petri Lehtinen
72fd2fec4c
Simplify snprintf and vsnprintf checking for Visual Studio
2016-05-30 11:51:39 +03:00