Mercurial > hg > openjdk > jdk7 > jdk
changeset 4302:fe27fe44ac51
7016985: (launcher) implement safe secure dll loading
Reviewed-by: mchung
author | ksrini |
---|---|
date | Thu, 03 Mar 2011 14:16:57 -0800 |
parents | d489f00d6c65 |
children | 0efa64f13302 afcc1530e68b |
files | src/windows/bin/java_md.c |
diffstat | 1 files changed, 12 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/windows/bin/java_md.c Wed Mar 02 05:35:14 2011 -0800 +++ b/src/windows/bin/java_md.c Thu Mar 03 14:16:57 2011 -0800 @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -1212,11 +1212,22 @@ return findBootClass(env, classname); } +typedef BOOL (WINAPI *pfn_SetDllDirectory)(LPCTSTR); + void InitLauncher(boolean javaw) { INITCOMMONCONTROLSEX icx; + // Launcher links with kernel32 + HMODULE hKernel32 = GetModuleHandle(TEXT("kernel32.dll")); + pfn_SetDllDirectory fn = (pfn_SetDllDirectory) GetProcAddress(hKernel32, + "SetDllDirectory"); + if (fn != NULL) { + // Exclude CWD from Dll search path + fn(""); + } + /* * Required for javaw mode MessageBox output as well as for * HotSpot -XX:+ShowMessageBoxOnError in java mode, an empty