Commit Graph
966 Commits
Author SHA1 Message Date
Björn Esser eec4df641c Detect broken RDRAND during initialization.
Some CPUs advertise RDRAND in CPUID, but return
0xFFFFFFFF unconditionally.  To avoid locking up
later, test RDRAND during initialization, and if
it returns 0xFFFFFFFF, mark it as nonexistent.

Also fix a possible segmentation fault in CPUID check.

This commit is a squashed backport of the following
commits on the master branch:

  * 0e5bbcaa16
  * 4d36b0287d
  * 8086314026
2020-05-25 13:06:21 +02:00
Eric Hawicz 4467e94110 Merge pull request #608 from besser82/topic/besser82/json-c-0.14/CVE-2020-12762
json-c-0.14: Fix CVE-2020-12762 - json-c through 0.14 has an integer overflow and out-of-bounds write ...
2020-05-15 21:02:37 -04:00
Björn Esser 5d6fa33141 Fix CVE-2020-12762.
This commit is a squashed backport of the following commits
on the master branch:

  * 099016b7e8
  * 77d935b7ae
  * d07b910149
  * 519dfe1591
  * a59d5acfab
  * 26f080997d
2020-05-15 07:59:40 +02:00
Eric Haszlakiewicz 228881c8fc Issue #585: don't install config.h
(cherry picked from commit 8b511c402b)
2020-04-21 01:18:06 +00:00
Eric Haszlakiewicz bae2f10c43 Generate docs for the 0.14 release. json-c-0.14-20200419 2020-04-19 03:40:50 +00:00
Eric Haszlakiewicz 4824a38318 Bump version to 0.14 and shared library version to 5.0.0 2020-04-19 03:40:37 +00:00
Eric Haszlakiewicz 31ab57ca8b Fill in the ChangeLog for the upcoming 0.14 release. 2020-04-19 01:31:48 +00:00
Eric Haszlakiewicz 9ed00a694b Fill in a few more pre-release steps to match what we've done for the 0.14 release.
Move the list of contributors to the AUTHORS file.
2020-04-19 01:28:24 +00:00
Eric Haszlakiewicz 4badbe9c20 Rewrite the issued_closed_for_* files so they display a bit nicer. 2020-04-18 03:22:52 +00:00
Eric Haszlakiewicz 0a95f98b8d Explicitly mark several things in json_tokener deprecated. 2020-04-18 02:42:46 +00:00
Eric Haszlakiewicz ecb9354bb1 Re-do clang-format. 2020-04-18 02:14:13 +00:00
Eric Haszlakiewicz 23ddcbd4da Make json_abort() internal to json_object.c 2020-04-18 02:05:37 +00:00
Eric Haszlakiewicz 5cc11289b4 Make json_tokener_validate_utf8() internal to json_tokener.c, and improve the docs a bit. 2020-04-18 02:02:06 +00:00
Eric Haszlakiewicz 4dc0f1718e Merge pull request #582 from dota17/list_closed_issue_pr
add the list of issues& prs closed
2020-04-17 13:32:17 -04:00
dota17 4313465f25 update 2020-04-17 09:47:30 +08:00
dota17 8bdb420d0f manual adjustment 2020-04-16 16:30:14 +08:00
dota17 6bf6a9e248 add the list of issues& prs closed 2020-04-16 16:15:04 +08:00
Eric Haszlakiewicz a9114392b4 Merge pull request #524 from dota17/addTestCase_obj_token
Increase coverage
2020-04-15 23:35:21 -04:00
Eric Haszlakiewicz 04bb0fca73 Merge pull request #581 from Jehan/wip/Jehan/no-strict-prototypes-windows
CMakeLists: do not enforce strict prototypes on Windows.
2020-04-15 23:32:59 -04:00
dota17 b14363ae32 remove unsuitable case 2020-04-15 20:06:12 +08:00
Jehan 8c33d1c3c9 CMakeLists: do not enforce strict prototypes on Windows.
On Windows, or at least when cross-built with Mingw-w64, build fails
because strict prototype fails on an included file (thus nothing we can
do about in json-c code):

> from /home/jehan/dev/src/json-c/json_util.c:44:
> /home/jehan/.local/share/crossroad/roads/w64/json-c/include/minwindef.h:196:3: error: function declaration isn't a prototype [-Werror=strict-prototypes]
>   196 |   typedef INT_PTR (WINAPI *FARPROC) ();
>       |   ^~~~~~~
> /home/jehan/.local/share/crossroad/roads/w64/json-c/include/minwindef.h:197:3: error: function declaration isn't a prototype [-Werror=strict-prototypes]
>   197 |   typedef INT_PTR (WINAPI *NEARPROC) ();
>       |   ^~~~~~~
> /home/jehan/.local/share/crossroad/roads/w64/json-c/include/minwindef.h:198:3: error: function declaration isn't a prototype [-Werror=strict-prototypes]
>   198 |   typedef INT_PTR (WINAPI *PROC) ();
>       |   ^~~~~~~

Let's just disable the errors for Windows build.
2020-04-15 13:03:11 +02:00
Eric Haszlakiewicz 7fb8d56458 Merge pull request #580 from besser82/topic/besser82/fix_cmake_tests
Fix CMake tests for enforced strict prototypes.
2020-04-14 15:17:21 -04:00
Björn Esser 053eaa61d7 Fix CMake tests for enforced strict prototypes. 2020-04-14 20:42:32 +02:00
Eric Haszlakiewicz ab5425a6a6 Merge pull request #527 from dota17/arraylist_test
Arraylist testcase
2020-04-14 10:28:16 -04:00
Eric Haszlakiewicz 511edb51a4 Merge pull request #579 from besser82/topic/besser82/strict-prototypes
Enforce strict prototypes.
2020-04-14 10:25:13 -04:00
dota17 2876fcc137 clang-format two test_util_file.c and test_object_iterator.c 2020-04-14 10:15:27 +08:00
chenguoping 8096125618 Increased the test coverage of json_util.c from 76% to 90.3%. 2020-04-14 10:10:47 +08:00
chenguoping f56c5c1a60 Increased the test coverage of json_object_iterator.c from 0% to 100% 2020-04-14 10:03:58 +08:00
dota17 74bbe349c4 clang-format test1.c 2020-04-14 09:20:51 +08:00
chenguoping 110c60fcdd fix valgrind errors 2020-04-14 09:13:29 +08:00
chenguoping 76e1472808 testcase for array_list 2020-04-14 09:13:06 +08:00
Björn Esser d0dc3489dc Enforce strict prototypes. 2020-04-13 11:29:52 +02:00
Eric Haszlakiewicz 4742a2ab1d Merge pull request #578 from besser82/topic/besser82/pkgconfig_install
CMake: Install pkgconfig file in proper location by default
2020-04-12 20:52:01 -04:00
Björn Esser 165e6f58fc CMake: Install pkgconfig file in proper location by default
The default location for pkconfig files on most systems is:
  ${CMAKE_INSTALL_LIBDIR}/pkgconfig

Thus the file should get installed in there by default.
2020-04-12 19:21:54 +02:00
Eric Haszlakiewicz 8269f90956 Merge pull request #577 from besser82/topic/besser82/json_c_version_test_verbose_on_fail
Be verbose on failing json_c_version test.
2020-04-11 22:35:40 -04:00
Björn Esser 5e699f7f73 Be verbose on failing json_c_version test. 2020-04-11 21:09:31 +02:00
Eric Haszlakiewicz c58d56ab7c Merge pull request #576 from besser82/topic/besser82/increase_coverage
Test coverage for json_c_version.
2020-04-11 14:45:45 -04:00
Eric Haszlakiewicz d52f1ff2c1 Merge pull request #575 from besser82/topic/besser82/cosmetics
Small cosmetics.
2020-04-11 14:18:37 -04:00
Björn Esser d47fb12e85 Test coverage for json_c_version. 2020-04-11 12:33:59 +02:00
Björn Esser 73a2ed115a Remove multiple trailing newlines at EOF. 2020-04-11 10:35:42 +02:00
Björn Esser fd0ae5aba6 gitignore: Add build folder. 2020-04-11 09:41:04 +02:00
Björn Esser 78cd37fb18 Clean trailing white-space. 2020-04-11 09:41:04 +02:00
Björn Esser 37355cf0e6 Fix line terminators to be UNIX. 2020-04-11 09:40:57 +02:00
Eric Haszlakiewicz 270dc2f999 Update README.md to remove autoconf instructions in favor of cmake. 2020-04-11 03:24:51 +00:00
Eric Haszlakiewicz 0734c5303d Merge pull request #572 from besser82/topic/besser82/cmake_fixes
Small fixes to CMakeLists
2020-04-10 22:08:27 -04:00
Chen 69ceb38f2f Merge pull request #573 from besser82/topic/besser82/coverage
Fix coveralls submission.
2020-04-11 09:31:43 +08:00
Björn Esser 0dac15c1ca Fix coveralls submission.
coveralls-cpp is dead and does not work anymore.
Fortunately there is coveralls-lcov available.
2020-04-10 18:07:38 +02:00
Björn Esser e756777c92 CMake: Check whether BSYMBOLIC is supported by the linker.
Linking with '-Bsymbolic-functions' is supported for ELF-binaries, only.
2020-04-10 17:29:35 +02:00
Björn Esser 58670ec64e CMake: Build Doxygen documentation out-of-tree. 2020-04-10 14:20:57 +02:00
Björn Esser a989651bd4 CMake: Fix appending of linker flags.
There was a typo in `CMAKE_SHARED_LINKER_FLAGS`.
2020-04-10 14:16:02 +02:00