[foreign-memaccess+abi] RFR: 8294309: Downcall and Upcall unboxing code should reject heap segments
Jorn Vernee
jvernee at openjdk.org
Tue Oct 4 12:03:15 UTC 2022
Recently I noticed that we don't check for heap segments anymore when unboxing memory segments to be passed to native code as addresses. This allows someone to pass a heap segment, which will be unboxed simply by calling `MemorySegment::address` which for heap segments returns the byte offset into the array. This is of course not a valid pointer.
This patch changes the unboxing logic to reject heap segments with an `IllegalArgumentException`.
-------------
Commit messages:
- reject heap segments passed as addresses
Changes: https://git.openjdk.org/panama-foreign/pull/737/files
Webrev: https://webrevs.openjdk.org/?repo=panama-foreign&pr=737&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8294309
Stats: 300 lines in 7 files changed: 234 ins; 53 del; 13 mod
Patch: https://git.openjdk.org/panama-foreign/pull/737.diff
Fetch: git fetch https://git.openjdk.org/panama-foreign pull/737/head:pull/737
PR: https://git.openjdk.org/panama-foreign/pull/737
More information about the panama-dev
mailing list