[jdk21u-dev] RFR: 8009550: PlatformPCSC should load versioned so
Andrew John Hughes
andrew at openjdk.org
Mon Feb 12 19:22:14 UTC 2024
On Mon, 12 Feb 2024 19:01:19 GMT, Andrew John Hughes <andrew at openjdk.org> wrote:
> Hi all,
>
> This pull request contains a backport of commit [328b3810](https://github.com/openjdk/jdk/commit/328b381075ab81fd3f899e49e4d71ef19ea28862) from the [openjdk/jdk](https://git.openjdk.org/jdk) repository. It applies cleanly to 21u-dev and builds fine without modification.
>
> The commit being backported was authored by myself on 31 Oct 2023 and was reviewed by Valerie Peng and Thomas Stuefe. It allows the PCSC library to pick up a wider range of libpcsclite libraries without the user having to explicitly specify the library on the command-line. Notably, it solves an issue on RHEL where having the `pcsc-lite-libs` package installed is not sufficient for it to be used by OpenJDK, as it intentionally only provides `/usr/lib64/libpcsclite.so.1` not `/usr/lib64/libpcsclite.so`.
>
> We have been applying a simpler version of this patch to RHEL packages for the last decade without issue. In the majority of cases, it will make the smartcard library work where it hasn't by default before, as a larger range of filenames is now checked.
>
> The only potential compatibility risk I can see is that a system with both `libpcsclite.so.2` and `libpcsclite.so.1`, where `libpcsclite.so` links to `libpcsclite.so.2`. Unpatched, this would load `libpcsclite.so.2` while it would load `libpcsclite.so.1` when patched. This behaviour is actually preferable, as the OpenJDK code is designed around the `.1` API (and even `.0` on Solaris) and the situation very unlikely, given even the new libpcsclite 2.0 library still uses `libpcsclite.so.1`.
>
> Thanks.
> @gnu-andrew Please do not rebase or force-push to an active PR as it invalidates existing review comments. Note for future reference, the bots always squash all changes into a single commit automatically as part of the integration. See [OpenJDK Developers’ Guide](https://openjdk.org/guide/#working-with-pull-requests) for more information.
Needed to re-run tests.
-------------
PR Comment: https://git.openjdk.org/jdk21u-dev/pull/255#issuecomment-1939380736
More information about the jdk-updates-dev
mailing list