pupnp is an SDK for development of UPnP device and control point applications. Prior to 2.0.2, raw_to_int in upnp/src/genlib/net/http/httpparser.c parses Content-Length with strtol and casts the resulting long to a 32-bit int before the caller stores it as unsigned int. On LP64 systems, values greater than INT_MAX can truncate or wrap, so the HTTP parser can accept a body length different from the declared value. A remote adjacent-network peer can use the resulting parser disagreement to leave bytes to be interpreted as another request in persistent or proxied contexts, or can make a worker wait for an extremely large body and cause denial of service. This issue is fixed in 2.0.2.
{
"cna_assigner": "GitHub_M",
"cwe_ids": [
"CWE-190",
"CWE-444"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/57xxx/CVE-2026-57488.json"
}{
"extracted_events": [
{
"cpe": "cpe:2.3:a:pupnp_project:pupnp:*:*:*:*:*:*:*:*",
"range": [
{
"introduced": "0"
},
{
"fixed": "2.0.2"
}
],
"source": "CPE_RANGE"
},
{
"range": [
{
"fixed": "de9602aef34ff722f3630d66c9be8eaa0aa9f012"
}
],
"source": "REFERENCES_COMMIT"
},
{
"original_tag": "release-2.0.2",
"range": [
{
"fixed": "280cff736ee0a2384d8a67011382e6fe76a51167"
}
],
"source": "REFERENCES_TAG"
}
]
}
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-57488.json"
[
{
"deprecated": false,
"digest": {
"function_hash": "52107601416279361396342264133200996176",
"length": 476
},
"id": "CVE-2026-57488-69243614",
"signature_type": "Function",
"signature_version": "v1",
"source": "https://github.com/pupnp/pupnp/commit/280cff736ee0a2384d8a67011382e6fe76a51167",
"target": {
"file": "ixml/test/poc_ghsa_q54q.c",
"function": "main"
}
},
{
"deprecated": false,
"digest": {
"line_hashes": [
"126528744541291585577717740039077305530",
"339594212184460321697196847161674809500",
"108528195538912872274950596667562277593",
"321873966975304117737949142843250479384",
"13328766987634585328565258111883138297",
"191154829625342299465754533809387161555",
"33575766138784758045824919559617938158",
"297119645506903675736680340305452815209",
"293528894643267873609713504708947142189",
"151781130923603371780479222887979692437",
"166245721840225423225498112712213010226",
"273890038443142684137740251753881073421"
],
"threshold": 0.9
},
"id": "CVE-2026-57488-72e0fdfd",
"signature_type": "Line",
"signature_version": "v1",
"source": "https://github.com/pupnp/pupnp/commit/de9602aef34ff722f3630d66c9be8eaa0aa9f012",
"target": {
"file": "upnp/src/genlib/net/http/httpparser.c"
}
},
{
"deprecated": false,
"digest": {
"function_hash": "302012692096135902020334449600205234882",
"length": 362
},
"id": "CVE-2026-57488-c8d35f95",
"signature_type": "Function",
"signature_version": "v1",
"source": "https://github.com/pupnp/pupnp/commit/de9602aef34ff722f3630d66c9be8eaa0aa9f012",
"target": {
"file": "upnp/src/genlib/net/http/httpparser.c",
"function": "raw_to_int"
}
},
{
"deprecated": false,
"digest": {
"line_hashes": [
"334027813865936129438216410789017650661",
"54295986294101972822852762588617473092",
"55486358970535260111721862803837298368",
"479395375871184399048480116120362544"
],
"threshold": 0.9
},
"id": "CVE-2026-57488-faedecba",
"signature_type": "Line",
"signature_version": "v1",
"source": "https://github.com/pupnp/pupnp/commit/280cff736ee0a2384d8a67011382e6fe76a51167",
"target": {
"file": "ixml/test/poc_ghsa_q54q.c"
}
}
]
"2026-10-28T10:57:57Z"