I would also get Valerie's review before you push this since she is more
familiar with this area, but I have a couple of comments:
1. Please add an appropriate noreg label to the bug.
2. The code on lines 65-69 introduces an undesirable dependency on
sun.security.action for the JDK 9 modularization work. Please replace
this with a nested PrivilegedAction subclass, or a lambda expression
instead:
AccessController.doPrivileged((PrivilegedAction<String>) () ->
System.getProperty("os.name"));
(plus you will need to write some additional code to convert that to a
boolean.)
--Sean
On 07/14/2014 11:08 AM, Ivan Gerasimov wrote:
Hello!
It was reported that trying to use DIRECT as the preferred protocol
results in the CardException to get thrown under MacOSX.
It turn out to be a problem of pcscd-lite implementation of the API:
From the source code [1] it can be seen that the SCardConnect()
function expects its argument dwPreferredProtocol to be non-zero.
Windows driver normally accepts zeros [2].
Could you please help review the fix?
BUGURL: https://bugs.openjdk.java.net/browse/JDK-8046343
WEBREV: http://cr.openjdk.java.net/~igerasim/8046343/0/webrev/
Sincerely yours,
Ivan
[1]
http://pcsc-lite.sourcearchive.com/documentation/1.2.9-beta9-1/winscard__clnt_8c-source.html
[2]
http://msdn.microsoft.com/en-us/library/windows/desktop/aa379473(v=vs.85).aspx