RFR: 8218547: Simplify JLI_Open on Windows in native code (libjli) - was : RE: RFR : 8217093: Support extended-length paths in parse_manifest.c on windows
Baesken, Matthias
matthias.baesken at sap.com
Fri Mar 22 14:37:20 UTC 2019
Hello, here is the new webrev .
I took over and adjusted coding from os::open + create_unc_path functions in os_windows.cpp in hotspot :
http://cr.openjdk.java.net/~mbaesken/webrevs/8218547.0/webrev/
Best regards, Matthias
> -----Original Message-----
> From: Baesken, Matthias
> Sent: Donnerstag, 21. März 2019 14:30
> To: Langer, Christoph <christoph.langer at sap.com>; Alan Bateman
> (Alan.Bateman at oracle.com) <Alan.Bateman at oracle.com>
> Cc: 'Chris Hegarty' <chris.hegarty at oracle.com>; 'core-libs-
> dev at openjdk.java.net' <core-libs-dev at openjdk.java.net>
> Subject: 8218547: Simplify JLI_Open on Windows in native code (libjli) - was :
> RE: RFR : 8217093: Support extended-length paths in parse_manifest.c on
> windows
>
> Hi Alan + Christoph, coming back to
> https://bugs.openjdk.java.net/browse/JDK-8218547 .
>
> We wanted to check for the whole flow (in JLI_Open on Windows ) , e.g.
> checking whether only CreateFileW can be used instead of open.
>
> I think there is already a similar solution available in the codebase .
>
> See the os::open + create_unc_path functions in os_windows.cpp in
> the hotspot coding .
>
> There "simple" open is used for shorter paths ( < MAX_PATH) ; for larger
> paths an elp / unc path is constructed and _wopen is used on the elp/unc
> path :
>
>
> if (strlen(path) < MAX_PATH) {
> ret = ::open(pathbuf, oflag | O_BINARY | O_NOINHERIT, mode);
> } else {
> errno_t err = ERROR_SUCCESS;
> wchar_t* wpath = create_unc_path(pathbuf, err);
> ....
> ret = ::_wopen(wpath, oflag | O_BINARY | O_NOINHERIT, mode);
>
>
> I think we should do it the same way in JLI_Open . Is that fine with you?
> Unfortunately I think we cannot easily reuse the HS coding, so the have to
> take it over to jli .
>
> Best regards, Matthias
>
>
>
> > -----Original Message-----
> > From: Baesken, Matthias
> > Sent: Mittwoch, 6. Februar 2019 09:56
> > To: Langer, Christoph <christoph.langer at sap.com>
> > Cc: Chris Hegarty <chris.hegarty at oracle.com>; core-libs-
> > dev at openjdk.java.net; Alan Bateman (Alan.Bateman at oracle.com)
> > <Alan.Bateman at oracle.com>
> > Subject: RE: RFR : 8217093: Support extended-length paths in
> > parse_manifest.c on windows
> >
> > Hi Christoph+Alan, I opened
> >
> >
> > https://bugs.openjdk.java.net/browse/JDK-8218547
> >
> > JDK-8218547 : use CreateFile without open on Windows in jdk native code
> >
> >
> > To check for the usage of CreateFile (CreateFileW) without open .
> >
> >
> > Best regards, Matthias
> >
More information about the core-libs-dev
mailing list