1. 21 4月, 2021 1 次提交
  2. 27 1月, 2021 3 次提交
  3. 26 1月, 2021 1 次提交
  4. 15 1月, 2021 4 次提交
  5. 19 11月, 2020 3 次提交
  6. 15 11月, 2020 1 次提交
  7. 06 11月, 2020 2 次提交
  8. 05 11月, 2020 2 次提交
  9. 01 9月, 2020 3 次提交
  10. 12 8月, 2020 2 次提交
  11. 09 8月, 2020 3 次提交
  12. 08 8月, 2020 2 次提交
  13. 07 8月, 2020 3 次提交
  14. 20 7月, 2020 1 次提交
  15. 02 7月, 2020 1 次提交
    • S
      build: Add a symbol version to all exported symbols for glibc · ca80d512
      Simon McVittie 提交于
      The --default-symver linker option attaches a default version definition
      (the SONAME) to every exported symbol. It is supported since at least
      GNU binutils 2.22 in 2011 (older versions not tested).
      
      With this version definition, newly-linked binaries that depend on the
      jansson shared library will refer to its symbols in a versioned form,
      preventing their references from being resolved to a symbol of the same
      name exported by json-c or json-glib if those libraries appear in
      dependency search order before jansson, which will usually result in
      a crash. This is necessary because ELF symbol resolution normally uses
      a single flat namespace, not a tree like Windows symbol resolution.
      At least one symbol (json_object_iter_next()) is exported by all three
      JSON libraries.
      
      Linking with -Bsymbolic is not enough to have this effect in all cases,
      because -Bsymbolic only affects symbol lookup within a shared object,
      for example when parse_json() calls json_decref(). It does not affect
      calls from external code into jansson, unless jansson was statically
      linked into the external caller.
      
      This change will also not prevent code that depends on json-c or
      json-glib from finding jansson's symbols and crashing; to prevent
      that, a corresponding change in json-c or json-glib would be needed.
      
      Adding a symbol-version is a backwards-compatible change, but once
      added, removing or changing the symbol-version would be an incompatible
      change that requires a SONAME bump.
      
      Resolves: https://github.com/akheron/jansson/issues/523
      (when combined with an equivalent change to json-c).
      Signed-off-by: NSimon McVittie <smcv@collabora.com>
      ca80d512
  16. 24 5月, 2020 1 次提交
  17. 23 5月, 2020 1 次提交
    • T
      Handle vsnprintf corner cases. · 38b001ed
      Tobias Stoeckmann 提交于
      The function vsnprintf returns a negative value on error, e.g. on
      an invalid format. It's best to return NULL in such a case.
      
      Also avoid a signed integer overflow if vsnprintf returns INT_MAX.
      This is undefined behaviour in C and has to be avoided.
      
      A negative value is returned with a call like:
      json_sprintf("%111111111111111s", "", "");
      
      INT_MAX is returned with a call like:
      json_sprintf("%647s%2147483000s", "", "");
      38b001ed
  18. 08 5月, 2020 3 次提交
  19. 06 5月, 2020 2 次提交
  20. 05 5月, 2020 1 次提交