Please review this fix for SunMSCAPI storing and removing certs in 
`CURRENTUSER` even when a `LOCALMACHINE` keystore is selected.

The native `storeCertificate` and `removeCertificate` methods currently use 
`CertOpenSystemStore`, which opens the `CURRENTUSER` store.
This fix passes the store location through JNI and uses `CertOpenStore` with 
`CERT_SYSTEM_STORE_LOCAL_MACHINE` for `LOCALMACHINE` keystores.

The manual regression test `LocalMachineStore` verifies certificate placement 
and deletion; the test requires administrator privileges.

Testing:
- `LocalMachineStore`
- manual `keytool -genkeypair`, `-list` and `-delete`


---------
- [x] I confirm that I make this contribution in accordance with the [OpenJDK 
Interim AI Policy](https://openjdk.org/legal/ai).

-------------

Commit messages:
 - 8328184: SunMSCAPI ignores LOCALMACHINE when storing and removing 
certificates
 - Add regression test

Changes: https://git.openjdk.org/jdk/pull/33785/files
  Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=33785&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8328184
  Stats: 144 lines in 3 files changed: 128 ins; 0 del; 16 mod
  Patch: https://git.openjdk.org/jdk/pull/33785.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/33785/head:pull/33785

PR: https://git.openjdk.org/jdk/pull/33785

Reply via email to