RFR 8200468: Port the native GSS-API bridge to Windows

Weijun Wang weijun.wang at oracle.com
Thu Apr 12 04:50:49 UTC 2018

Hi Valerie

I updated the webrev at


The only change is that I prepend "GSS_DLLIMP" to all gss_* functions in gssapi.h. The file has the following lines

 283 #if defined (_WIN32) && defined (_MSC_VER)
 284 # ifdef GSS_DLL_FILE
 285 #  define GSS_DLLIMP __declspec(dllexport)
 286 # else
 287 #  define GSS_DLLIMP __declspec(dllimport)
 288 # endif
 289 #else
 290 # define GSS_DLLIMP
 291 #endif

I added it so the exact same header file can be used to write a native GSS-API library which would export these functions.

Is this OK? Tests run fine with both MIT krb5 and Heimdal libraries.


> On Apr 4, 2018, at 10:19 AM, Weijun Wang <weijun.wang at oracle.com> wrote:
> Hi All
> Please take a review at
>  http://cr.openjdk.java.net/~weijun/8200468/webrev.00/
> Like in *nix, native GSS-API bridge is turned on by setting -Dsun.security.jgss.native=true. Please note there is no default native GSS-API library on Windows and you need to supply your own, like this:
> java -Dsun.security.jgss.native=true -Dsun.security.jgss.lib=/path/to/gssapi64.dll App ...
> You can manually test the change with
> jtreg -Dnative.krb5.libs=j=,n=/path/to/gssapi64.dll test/jdk/sun/security/krb5/auto/BasicProc.java
> Thanks
> Max
> p.s. You can get a gssapi64.dll from https://web.mit.edu/KERBEROS/kfw-4.1/kfw-4.1.html.

More information about the security-dev mailing list