Description
Oxenstored 32->31 bit integer truncation issues Integers in Ocaml are 63 or 31 bits of signed precision. The Ocaml Xenbus library takes a C uint32_t out of the ring and casts it directly to an Ocaml integer. In 64-bit Ocaml builds this is fine, but in 32-bit builds, it truncates off the most significant bit, and then creates unsigned/signed confusion in the remainder. This in turn can feed a negative value into logic not expecting a negative value, resulting in unexpected exceptions being thrown. The unexpected exception is not handled suitably, creating a busy-loop trying (and failing) to take the bad packet out of the xenstore ring.
No analysis available yet.
Remediation
No remediation available yet.
Tracking
Sign in to view the affected projects.
Advisories
| Source | ID | Title |
|---|---|---|
Debian DSA |
DSA-5272-1 | xen security update |
References
History
No history.
Status: PUBLISHED
Assigner: XEN
Published:
Updated: 2024-08-03T13:03:45.972Z
Reserved: 2022-10-03T00:00:00.000Z
Link: CVE-2022-42324
No data.
Status : Modified
Published: 2022-11-01T13:15:12.017
Modified: 2024-11-21T07:24:45.167
Link: CVE-2022-42324
No data.
OpenCVE Enrichment
No data.
Weaknesses
Debian DSA