Bug 2001062

Summary: backport build fix to add symbol versions
Product: Red Hat Enterprise Linux 8 Reporter: Eric Garver <egarver>
Component: janssonAssignee: Xin Long <lxin>
Status: CLOSED ERRATA QA Contact: qe-baseos-daemons
Severity: medium Docs Contact:
Priority: unspecified    
Version: 8.5CC: psutter, todoleza
Target Milestone: rcKeywords: Rebase, Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: jansson-2.14-1.el8 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
: 2001066 (view as bug list) Environment:
Last Closed: 2022-05-10 15:24:40 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 2001066    

Description Eric Garver 2021-09-03 16:58:12 UTC
Multiple JSON libraries have the same API functions. This can cause the wrong function to be used if there are multiple JSON libraries in the dynamic library list. This may manifest as a segfault or very odd behavior. Fixing these libraries will of course require recursive version bumps and rebuilds of packages that use them so they utilize the versioned symbol.

The "very odd behavior" case is very interesting. See this firewalld bug report:

  https://github.com/firewalld/firewalld/issues/819

In the firewalld case, python GI module pulls in libmount which pulls in libcryptsetup which pulls in json-c.

Example conflict: libnftables uses libjansson. libcryptsetup uses json-c. It's not clear which json_object_get() function will be used.

Note: JSON-GLib is also likely affected. But I did not track down any fixes on their end. If 2/3 of the libraries are versioned then I _think_ it should be okay.

--

firewalld bug report: https://github.com/firewalld/firewalld/issues/819
guestfs bug report: bug 1923971
jansson bug report: https://github.com/akheron/jansson/issues/460
json-c bug report: https://github.com/json-c/json-c/issues/621

Upstream fixes:

  jansson: https://github.com/akheron/jansson/pull/540
  json-c: https://github.com/json-c/json-c/pull/639

Comment 11 errata-xmlrpc 2022-05-10 15:24:40 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (jansson bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2022:2061