A recent discussion on the Openwall oss-security Mailing List talked about the article "33 Vulnerabilities in cJSON" that got me searching where in my systems is it used... it turned out, for me, only iperf currently seems to need it :-/ ... or at least so I thought.
Given the (claimed) non-maintenance mode of https://github.com/DaveGamble/cJSON I was wondering how deeply dependent is iperf on cjson ...
Digging deeper it is getting weird... I see that there is a local copy of it inside iperf: https://github.com/esnet/iperf/blob/master/src/cjson.c then on my Gentoo systems it is linked to system-wide cjson...
On Gentoo linux, it looks like iperf is coded to require system-wide cjson via a patch:
That raises some questions:
- Can iperf be compiled without JSON output (couldn't find any obvious way) ?
- Why was cJSON brought in-tree and what version is it?
- Will it be easy/wise to use out-of-tree (installed in the OS) library?
- Does
iperf team need to triage (at least) those 33 vulnerabilities, since I assume they are contained in the distributed cjson, and patch what is needed?
A recent discussion on the Openwall oss-security Mailing List talked about the article "33 Vulnerabilities in cJSON" that got me searching where in my systems is it used... it turned out, for me, only
iperfcurrently seems to need it :-/ ... or at least so I thought.Given the (claimed) non-maintenance mode of https://github.com/DaveGamble/cJSON I was wondering how deeply dependent is iperf on cjson ...
Digging deeper it is getting weird... I see that there is a local copy of it inside iperf: https://github.com/esnet/iperf/blob/master/src/cjson.c then on my Gentoo systems it is linked to system-wide cjson...
On Gentoo linux, it looks like iperf is coded to require system-wide cjson via a patch:
In the current situation (until cJSON is fixed upstream) this brings nothing, but at least it shows that the external lib is not that hard to use...
That raises some questions:
iperfteam need to triage (at least) those 33 vulnerabilities, since I assume they are contained in the distributed cjson, and patch what is needed?